Code Day's Night

ichikawayのブログ

gitでリモートのブランチをローカルにcheckoutする簡単な方法

結論から書くと、 git fetch git checkout foo これでorigin/fooのブランチがローカルにチェックアウトできます。 今までは、 git fetch git checkout origin/foo git checkout -b foo というのをしていました。下記の方法の方がスタンダードかもしれません…

x86アセンブリで数字を画面表示するだけの実装が大変だった

最近お気に入りの低レイヤーガールというYoutubeチャンネルで、アセンブリでFizzBuzzを書くというのを見て自分でも実践してみました。 Youtube: FizzBuzzをアセンブリ言語で書きたい! x86アセンブリで画面表示するには、writeのsyscallを呼び出して、標準出…

任天堂スイッチのマインクラフトをサーバに繋ぐ方法

任天堂スイッチのマイクラをネットを使ってサーバに繋ぐのに苦労したため、やり方を書いておきます。親のアカウントだけであれば問題ないですが、子供の任天堂アカウントを繋ぐのに苦労した時の解決方法です。 任天堂のスイッチオンラインに加入(複数人で使…

Stripeのクレジットカード入力フォームで郵便番号入力を不要にする

stripe.jsを使ったフォームを構築すると、例えばVISAのカード番号を入力した時に動的に郵便番号フィールドがでてきて、そこも必須入力欄となる。 この場合、下記のようにstripe.elements()のelements.create()のオプションに、hidePostalCode trueを渡すと郵…

PHPerKaigi2019で自作ファミコンエミュレータの話をしてきたら最高だった(前編)

PHPerKaigi2019で登壇してきました。全体の感想などは後編に書きます。 カンファレンスで発表するのは3年ぶりぐらい。今回はPHPのファミコンエミュレータ実装をGolangで写経してた時の話をしてきました。 ファミコンエミュレータはPHPやGolang, Rustなどたく…

URLにアンカーの#(シャープ)がある場合に送信されるGETリクエスト

URLに含まれる#(シャープ)は、ページ内リンクアンカー、ハッシュ、フラグメントなどの名称があるが、#が入る場合のGETリクエストはどのようになっているか。 例えば http://example.com/foo/bar/#/1 というようなURLにGETリクエストする場合、ブラウザは#以…

なるほどわからない!と実装を繰り返して楽しむ自作ファミコンエミュレータの世界

最近、趣味でファミコンエミュレータをGo言語で実装しています。 github.com 世の中にはたくさんのファミコンエミュレータ実装があり、golangだけでもいくつもあるため何で同じ言語で実装するのかと言われると、楽しそうだからとしか言いようがありませんが…

dockerコマンドでよく使うもの amazonlinuxベース

普段はdocker-composeで操作していても、たまに使い捨てコンテナを扱いたい時がある。 そんな時にdockerコマンドだけで済ませる方法。 dockerイメージの作成、コンテナ起動、コンテナのシェル操作、コンテナ削除の説明。 Dockerfile amazonlinuxの最新を取得…

SQLでdatetimeの差を秒の整数で取得

MySQLのDATETIMEカラムの差を秒で取得する方法 startとendというカラムがDATETIMEだった場合、時間の差は select TIMEDIFF(`end`, `start`) で取得できる。この時、 00:12:13のようなフォーマットで返る これをさらにtime_to_sec関数で整数値の秒にする。 se…

CakePHPではDBカラムのSQLインジェクションに注意!

CakePHPアドベントカレンダー12日目の記事です。 市川@cakephperです。ちゃんとCakePHP使ってますよ! 丹精込めてVAddyを作ってます。 最近コンビニで常陸野ネストビール セッションIPAが売っててテンションが上がりますね。 CakePHP2,3のDBカラム名の扱い C…