ごらくらいふ

プログラミングしたりゲームしたり

型に語らせて in kotlin (and java ?)

某本の某コードをkotlin化している。 この本はちょっとしたイラッを無数に積み重ねる反面教師本だと感じている。 何を悪しとして何を良しとしたかの備忘録。 あまり手を加えず、本件とは無関係の要素を削ぎ落としたコード片が以下の通りである。 abstract cl…

Production環境のMastodonでnohup.outログがたまり続ける件を解決する

Mastodonを導入した際、npmコマンドだけバックグラウンドで稼働するようになっていなかったため、nohupを使ってバックグラウンドで稼働するようにした。 yajamon.hatenablog.com それ以降、nohup.outにログがダバダバと放出され続けている。 以下はログの一…

CentOS6.9にMastodonを導入する(Docker 不使用)

多分いろんなタイトルと被っちゃってると思う。でも伝わる文言がこれなんだ。許してほしい。 いちWebServiceインスタンスのためにOS入れ替えなんてしてられるか! 所詮Ruby on Rails、依存をかっさばきゃあいいんでしょう! Production-guide.mdに沿ってすす…

CentOS6.9にて、Apacheを2.4に更新した

前提 CentOS 6.9 Apache 2.2を使っている 経緯 MastodonをApache上で動かすため、WebSocket対応のリバースプロキシを提供するmod_proxy_wstunnelが必要だった。 これは、Apache 2.4.5以降で有効とのことなので、2.4系のパッケージを導入する必要が生まれた。…

genomirai.comのWORD_DUMPをパースする

おもむろに http://www.genomirai.com をやりたくなった。 プレイ中DUMPされた文字列が出力される場合があるが、ドラッグして選択しようとするとクリックが反応して先に進んでしまう。 ということでjavascriptコンソールに突っ込んで解決した。chromeでしか…

きょうの元気なうちに集中が切れてもできる仕事を組み立てよう。とかやる暇があったら動いたほうがマシ。

やることリスト書き出しとかするじゃないですか。 ダメになったパーの自分に向けて作業リスト作るのって、まぁ他人に作業指示書を作るのと同じであって、 詳細設計書とかいう机上の空論のかみっぺら。 メソッドひとつとっても本当に想定の値が取得できるか試…

Minecraftのバックアップが動作していなかったのを修正した作業ログ

放置状態のMinecraft、久しぶりに様子を見てみたらバックアップに失敗していた。 はてどうしたものかとcronからの通知を確認すると Date: Tue, 21 Feb 2017 04:00:01 +0900 (JST) minecraft_server.jar is running... suspending saves Backing up minecraft…

PS4のHDDを2TBに換装した

DL版主体でやってきた結果、ついに付属HDDの容量が尽きた。 わりと持ったほうだけど、FFXVやBloodBorneやら50GB級のもの買い出すと恐ろしいほど容量が減る。 作業は4Gamerを参考にしたら出来た。 www.4gamer.net 以上。 以下買ったHDDのアフィ。 Seagate 内…

ニコニコマイリストRSSをSlackに吸い上げて貰うようにした

yajamon.hatenablog.com feedlyで受けるの止めました。 記事の末尾にあるけど、通知先にSlackを選択したのなら、RSSインテグレーションで十分なのよね。 基本的にfeedlyにRSSを登録するのは以下を目的にしている。 新着を素早く受信するため 加えて、読むか…

Windows10でヘルプ(.hlp)が見れないので.chmを介してhtml化した

TSXBINのマクロヘルプが見たかったんだけれど、windowsお前ええ加減にしいや。 環境 Windows 10 Universal Extractor 2 Beta 4 HTML Help Workshop 4.74.8702.0 chmdecoder 2.2 (13.03.2014) 手順 chromeだかセキュリティソフトだかが「こんな得体の知れんし…

ps axで出るTIMEの書式はMMM:SS

結論 ps axコマンドで出力される書式にて、TIMEの書式はMMM:SS 経緯 「めっきり使ってないマイクラ鯖どうなってるかな」 「あれ?再起動できてなくない?」 # ps ax | head -1 && ps ax | grep forge PID TTY STAT TIME COMMAND 1046 ? Ss 0:00 SCREEN -h 10…

Swiftトレーニングとしてストップウォッチ書いた

標準アプリを模倣するのも良いものだ 得たもの Timerの使い方 Dateの使い方 DateFormatterの使い方を少し 結局String(format:)で済ませた guard節の使い方

cron実行時のPATHがどこで決められるのか調査した

経緯 CentOS鯖が2本ある Let's encryptの自動更新をしたくてシェルスクリプトを書き、cronに食わせた 2本の内1本から「コマンドが見つかりません」とエラーメールが飛んできた 環境 CentOS release 6.8 (Final) 原因 両方とも失敗していたが片方しかrootメー…

検索に使った正規表現はMarkdownにでも書いて残すと良い

気がする。 特定のリポジトリでしか使わない検索内容だったので、同じリポジトリの中にregexps.mdを作って書いた。 使い方も一緒に書いておけば忘れても大丈夫だ。 こんな感じで。 Match parameter name for obj-c (:\([^()]+?\))[^:\s]+?(?= [a-zA-z]+?:|$)…

手元の録画データをバックアップするときに選ぶAmazonのクラウドストレージサービスはGlacier? Unlimited Drive?

Mac Book Airを買ってから最近放置気味のデスクトップPC。 1TBもあったストレージがいつの間にか残り100GBと少し。 ところがインストールしたプログラムもホームフォルダ以下も大して消費していない。なぜか。 答え) C:/直下にあるプレイ動画の録画ファイル…

EntyのPayPal自動支払いがいつまでたっても停止しないのでPayPalでキャンセルした

大体の経緯 おっ、先月Paypal払い失敗して購読解除されて既に見れないのに今月分の請求だけは追加できたゾ。俺はどこから解約すればいいんだい???直接振り込み分も反映されてないな????? #Enty pic.twitter.com/ek11vItFe0— 内臓ぶち壊し系プログラ…

自分の.vimrcをgistからダウンロードする

gist idやraw_urlを目視確認してからcurlするのは人間のすることじゃない、ということで。 前提 jqが使える curlが使える gistにある.vimrcはpublicである .vimrcはちゃんと.vimrcという名前にしている 複数.vimrcがある場合は、一番ファイルサイズの大きい.…

URL listをcurlにパイプで渡してダウンロードしたい

jqでURL取り出してCurlに引き渡したかった。(しかも1件だけ) 「curl (標準出力 OR パイプ)」とかでggってもPostするデータをtextからとかそんなんばっか。 結論 # cat url_list.txt | xargs -n1 curl xargsコマンドを使って指定したコマンドを並列実行させ…

メソッドの責任について考えたログ

エラー処理という名のガードレールが無いプログラミングを続けてきた。 慣れないことを考えたので思案のログを残す。 条件設定 あるコレクションのメソッドにて、引数の識別子に一致する要素を探し、仕事をさせる。 この時、引数が存在しないとき(undefined…

typescript環境作りに2時間かかってたのでスクリプトを書いた

「あーたいぷすくりすとの環境つくろー」つって2時間かかってるのアホ過ぎてプッチン来たぞ— 焼きニー (@Yajamon) October 30, 2016 tscそのまま使ってwatchでもかけて居れば良かったのでは— 焼きニー (@Yajamon) October 30, 2016 「まずコード書こうよ」っ…

抱き枕カバーを洗った

時が来た。 ここ3年ほど荒れていた布団事情が改善され、抱きまくら封印を解く時が。 ファーファの中性洗剤でカバーを手もみ洗い。汚れる桶。 封印前からの汚れが出るわ出るわで謝罪した。 封印期間も長過ぎたので週一で洗って改善したほうがよさそうだ。 乾…

Everythingをアプリケーションランチャとして使う

Mac使ってると、spotlight検索でパパっとアプリケーションを起動できる点が本当に便利に感じる。 Windowsでも似たようなことできないかと思ってEverythingを取り出した。 Everything Search Engine 基本方針 Desktopにショートカット集積ディレクトリを作る …

WinMerge日本語版をSourceTreeのマージツールにセットした

結論 Diffコマンド WinMergeまでのPath 引数 -e -u -wl -wm -fr -dl 'Base file [read only]' -dm ' Theirs fise [read only]' -dr 'Mine file' -ar $BASE $REMOTE $LOCAL -o $MERGED 想定 3ペイン方式。 ペイン 役割 左ペイン Base file 中央ペイン Theirs …

好意をむやみに期待してはいけない

今朝はシンデレラガールズ4thライブの会場限定CDを求めてSSAに突撃した。 目的をまぁまぁ達成し、城とかぴにゃとかドールとか展示を堪能したんだけどやばい。この時点での多幸感がやばい。 さてLVに備えるだけだと息巻けば既にiPhone虫の息。 心許ない電池残…

Swift環境で定義するIBAction

Swift環境になってちょいちょい書き方が変わってわからなくなった点が増えた。 IBActionのつなぎ方について パターン コードでIBActionを書いて、UI部品と繋ぐ UI部品からコードに差し込む こっちのほうが良さそう コードでIBActionを書いて、UI部品と繋ぐ @…

StackViewで等サイズ等間隔で要素を配置する

stackviewを使って等サイズ等間隔に要素を配置したい。 パターン StackView + Constraints StackView こっちのほうが好き StackView + Constraints StackViewに要素を配置し、要素同士をEqual widthsで揃える 要素間の間隔はStackViewのプロパティSpacingで…

putty形式の公開鍵をOpenSSH形式に変換してサーバにSCPアップロードする

(あーやべーなーパスワードログインできるままだなー) 個別に記事になってたのでひとまとめした # Putty形式 -> OpenSSH形式 ssh-keygen -i -f id_rsa_putty.pub > id_rsa.pub # scp [オプション] [ユーザ名]@[ホスト名]:[ファイル名] [ローカルパス (.)は…

ヤフオク!にて、ライブチケットなどに対する違反商品通報の対策

シンデレラガールズ4th live、楽しみですね。 http://idolmaster.jp/event/cinderella4th.php チケットは無事入手できましたでしょうか。 私は無事会場チケット戦線に敗れ、いまライブビューイングチケットの抽選に祈りを捧げています。 (2016/08/22追記:…

CocoaPods Linking error 「ld: symbol(s) not found for architecture i386」

環境 Xcode Version 7.3.1 (7D1014) Base SDK - Latest iOS (iOS 9.3) 現象 CocoaPodsを導入して、いざdebug-buildしたら記事タイトルのエラーが発生した。 以下はそのログである。 Undefined symbols for architecture i386: "_FBSDKAppEventParameterNameC…

FacebookSDK 3.x -> 4.x : FBRequestConnection startWithGraphPath:completionHandler:が無くなったので FBSDKGraphRequest startWithCompletionHandler:を使う

記事タイトルキャメルケースでキッツキツだな。 結論 3.xにてGraphAPIを手軽に叩くため、FBRequestConnection startWithGraphPath:completionHandler:を使っていた。 4.xでは失くなってしまったのでFBSDKGraphRequest startWithCompletionHandler:を使った。…