プログラミング略歴

Macと一緒にCodeWarriorを購入し、Macでプログラムを始める。
色々やってた。

中略

2ch専用ブラウザ「BathyScaphe」の一部を無理やり担当。BathyScapheのスペルを覚える。
AppleScriptメニューを作成するが、すぐ後にAppleAppleScriptメニューバーエクステンションを登場させ無事死亡。
スレッド一覧関連のデータベースをSqlite3で作成して遊んでたらマージされて大慌て、バギーすぎて死ぬ。
さらにしばらく後にCoreDataが発表されもう一度死亡。

当時のMail.appの「ルールエディタ」を動作を見て無理やり実装。あんまり使われていないようで草。
しばらく後、NSRuleEditorが発表されNSRuleEditorに移行。日本でNSRuleEditorを真面目に使った最初の人ぐらいになるがおそらく誰も知らない。
つか、NSRuleEditor自体誰も知らないんじゃねぇの??

何度か本体を正しいDocument-baseに直そう試みるがすべて失敗。

BathyScaphe本体には手を入れなくなり、プラグインばかり作るようになる。
当時のBathyScapheはプラグインを一つしかロードできない仕組みであったが、この制約を外すべくプラグインを複数ロード/管理するプラグインを作り、プラグイン製作に拍車がかかる。
複数のプラグインロード/管理機構を本体にマージ。

2chの要請によりBathyScapheがクローズドソースになることを契機にコミッタから外れる。

(以下重複時期あり)
ヤバいところからDLしてきたアニメを連続して再生させたいという理由でアニメ用ムービープレイヤ「XspfPlayer」及び管理アプリ「XspfManager」を作成。
オープニングスキップ機能(単に1:30スキップ)を搭載し発表したためバズッたが使い方説明などを全くしてなかったので一瞬で終わる。

BathyScapheのNSRuleEditor関連はこのアプリでテスト実装をしていた。

また。Finderラベルのようなラベルを設定できるUIであるHMLabelを作成してGitHubCocoa Controlsに公開。Cocoa Controlsで18だけスターが付く。GitHubで3つぐらいForkされる。

ヤバいところからDLすることがなくなったのでもうずっと放置中。

趣味の本の冊数が増えたので管理アプリを作成。
画像処理はよくわからなかったのでGNUのバーコードスキャナを利用してISBNを読んでAmazonからデータを取得するもの。
hatenaなどへの投稿機能付き。

某宇宙戦闘ネトゲをはじめたらギルド仲間から全く毛色が違う艦これを勧められる。
さらにTwitterでも艦これが話題になったので艦これ(Flashコンテンツ)を始める。
経験値の表示が「ドラクエ」方式なのに苛立ち、経験値記録アプリを作る。

経験値記録アプリが半自動だったため面倒くさくなり、通信データを覗き見て完全自動でデータを反映させるブラウザ一体型情報管理アプリを作る。
以前からネーミングセンスの悪さが気になっていたのでラノベ的な名前にしようと「艦娘は今日も元気です。」とする。
本人に宣伝する気力がないので知っている人は知っている程度。
当初開発言語はObjective-C。現在はSwift4.0に移行済み。

今まではCocoaに含まれていないものは可能な限りなんでも全部自分で作る方針だったのだが、Swiftに移行してから考えを改める。
SiftyJSONを採用。
SwiftyJSONを選んだ理由はゲーム鯖からの通信データの変更に耐えるようにゆるーいものを求めたため。

基本動作機構は
URLProtocolを利用し通信を傍受
JSONをCoreDataにマッピング
KVO/CocoaBindingsでUIに反映

ユーザーからミュート機能の要望がありWKWebViewのミュート機能実装。
ただしWKWebKitではURLProtocolでのFlashの通信データ傍受が不可能なことが発覚、無事死亡。
GitHubに公開。

通信エラーのやつ

まず、Spotlightで「Console」を検索。出てきた「Console.app」を起動
f:id:masakih:20160722200149p:plain


Console.appが起動したら左の「すべてのメッセージ」選択し、検索窓に「KCD」と入力

右のリストから「(日時)KCD: Connection Error!.」と書かれた行を探し、選択して「コピー」

f:id:masakih:20160722200614p:plain


ここのコメント欄に貼り付け

チケット #36475: 通信時にエラーがでる - 艦娘は今日も元気です。 - OSDN


してもらえますか?(ログイン不要です)

「艦娘は今日も元気です。」について(重要)

次回より「艦娘は今日も元気です。」の新リリースの告知を、はてなブログ、OSDNニュースおよびTwtter上では行いません。
リリース自体は同じペースで行う予定ですが場合によってはそれも停止いたします

以下理由

短いバージョン
 すごく猫るから(通信エラーが頻発するため)

ちょっと長いバージョン
 通信エラーが頻発し、それがおそらくSafariを起因しており、修正には相当な労力が必要
 しかし、社会人提督にはその時間がとれず、また、手元では通信エラーが発生しないため原因究明すらままならない
 このような状態のアプリを広く皆様に使っていただくのは本意ではないため

Mac用の主に艦これをするブラウザ 1.3beta19

1.3ベータ19出しました

艦娘は今日も元気です。 Wiki - 艦娘は今日も元気です。 - OSDN

更新履歴

  • 簡略表示時のドラム缶表記がバケツになっていた問題を修正
  • 「永続ストアの移行中にエラーが起きました」と表示され起動出来ない問題が修正されているかもしれない(未検証)


こんな機能あります

  • 進撃前に小破、中破、大破を確認出来ます
  • 改造可能な艦娘を簡単にチェック出来る改造可能艦リストが見れます
  • 取得可能艦娘数を設定するとその数になった時にお知らせしてくれます
  • 装備一覧を表示出来ます レベル、熟練度、どの娘が装備しているかも確認出来ます
  • 遠征、入渠の1分前に通知がでます
  • 建造完了時に通知がでます
  • 開発履歴保存できます
  • 建造履歴保存できます
  • ドロップ履歴保存できます
  • 汎用の簡易ブラウザがついてます
  • 泊地修理用の簡易タイマー
  • 改修工廠メニューの表示

とか

Mac用の主に艦これをするブラウザ 1.3beta18

1.3ベータ18出しました

艦娘は今日も元気です。 Wiki - 艦娘は今日も元気です。 - OSDN

更新履歴

  • スクリーンショットを取った時に落ちる可能性を低減した
  • 艦隊総レベルと艦隊総ドラム缶装備数を表示するようにした


こんな機能あります

  • 進撃前に小破、中破、大破を確認出来ます
  • 改造可能な艦娘を簡単にチェック出来る改造可能艦リストが見れます
  • 取得可能艦娘数を設定するとその数になった時にお知らせしてくれます
  • 装備一覧を表示出来ます レベル、熟練度、どの娘が装備しているかも確認出来ます
  • 遠征、入渠の1分前に通知がでます
  • 建造完了時に通知がでます
  • 開発履歴保存できます
  • 建造履歴保存できます
  • ドロップ履歴保存できます
  • 汎用の簡易ブラウザがついてます
  • 泊地修理用の簡易タイマー
  • 改修工廠メニューの表示

とか

Mac用の主に艦これをするブラウザ 1.3beta17

1.3ベータ17出しました

艦娘は今日も元気です。 Wiki - 艦娘は今日も元気です。 - OSDN

更新履歴


こんな機能あります

  • 進撃前に小破、中破、大破を確認出来ます
  • 改造可能な艦娘を簡単にチェック出来る改造可能艦リストが見れます
  • 取得可能艦娘数を設定するとその数になった時にお知らせしてくれます
  • 装備一覧を表示出来ます レベル、熟練度、どの娘が装備しているかも確認出来ます
  • 遠征、入渠の1分前に通知がでます
  • 建造完了時に通知がでます
  • 開発履歴保存できます
  • 建造履歴保存できます
  • ドロップ履歴保存できます
  • 汎用の簡易ブラウザがついてます
  • 泊地修理用の簡易タイマー
  • 改修工廠メニューの表示

とか

Mac用の主に艦これをするブラウザ 1.3beta16

1.3ベータ16出しました

艦娘は今日も元気です。 Wiki - 艦娘は今日も元気です。 - OSDN

更新履歴


ご注意ください
このバージョンより損傷状態(小破、中破、大破)の表示方法が変わります
大破進軍なきようお気をつけください


  • 補強増設装備スロットに装備可能なアイテムを通常装備すると短縮名称が表示される問題を解消した
  • 損傷状態(小破、中破、大破)の表示方法を変えた
  • 簡略表示で護衛退避状態を表示するようにした

こんな機能あります

  • 進撃前に小破、中破、大破を確認出来ます
  • 改造可能な艦娘を簡単にチェック出来る改造可能艦リストが見れます
  • 取得可能艦娘数を設定するとその数になった時にお知らせしてくれます
  • 装備一覧を表示出来ます レベル、熟練度、どの娘が装備しているかも確認出来ます
  • 遠征、入渠の1分前に通知がでます
  • 建造完了時に通知がでます
  • 開発履歴保存できます
  • 建造履歴保存できます
  • ドロップ履歴保存できます
  • 汎用の簡易ブラウザがついてます
  • 泊地修理用の簡易タイマー
  • 改修工廠メニューの表示

とか