Rubellum fly light

ほぼPHP日記

戦術的プログラミングと戦略的プログラミング

A Philosophy of Software Designを読んで、「戦術的プログラミング」と「戦略的プログラミング」という用語を知ったので抜粋意訳メモ。 戦術的プログラミング(Tactical programming) ほとんどのプログラマーがプログラミングするときに取り組む方式。 機能…

GitHub Copilot 所感

所属する会社がGitHub Enterpriseを契約しており、少し前からGitHub Copilotを使えるようになっていました。 めちゃくちゃ便利だったので、プライベートでもめでたく(?)課金しました。 月なら$10、年なら$100です。おそらく使わなくなることはないので年間$1…

rerunを使ったファイル変更検知と再実行:golang+echo編

rerun(ruby製)を使うとファイルの変更を検知してコマンドを再実行できます。 Webアプリケーションの開発中、ファイルを変更したらアプリケーションサーバーを再起動させています。 github.com 下記は.goファイルの変更を検知してgo run 〜コマンドを再実行す…

Sequel で特定のカラムを指定するときは Sequel[:table][:column]

Ruby でサクッと DB にアクセスするときに Sequel をよく使っています。 同名カラムを持つテーブルをJOINするときはどちらのテーブルのカラムかを指定しますが、Sequelでの指定方法を忘れがちなので備忘録がてらメモを残します。 下記のようなフォーマットで…

HTTPリクエストを手順に送るだけの小さなワークフローエンジンを作って試行錯誤中

ライティングソフトウェアを読んで、サービス指向なアーキテクチャでクローラを作っています。 サービス指向なアーキテクチャの簡易図 この中で〜Managerはワークフローエンジンによって処理を順に実行するだけのサービスとなっています。 処理自体は主に下…

お試し GitOps

GitOps を試すために Kubernetes のクラスタと ArgoCD をVPS(VM4台)に構築し、自前サイトをのっけてみた。 そもそも k8s を触ったことなかったので、AWSやGCPのマネジメントクラスタを利用せず、自前で小さいクラスタを構築した。 ひとまず GitOps できる…

PHPで雑にカラーコードを生成する

PHP

適当な文字列のmd5ハッシュから6文字だけ切り出し、頭に#をつけることで雑にカラーコードを生成できる。 PHPでの例。

PHPでissetを書くのが面倒なときに??(Null 合体演算子)を使う

Android アプリ開発をはじめた

Androidアプリ開発をはじめた。 ひとまずニュースアプリみたいなやつをつくっている。 Android Studio 普段 IntelliJ IDEA を使っているので、Xcodeより使い勝手に慣れててスムーズに開発に着手できてる。 ライブラリ OSSのライブラリが大量にあるので、PHP…

ボーン・コレクター/コフィン・ダンサーを読んだ

「ボーン・コレクター」は映画にもなっていて、地上波でも放映されていて、子供のころに何度かみた記憶がある。 アンジェリーナ・ジョリーと黒人のおじさん(いま調べたらデンゼル・ワシントンという俳優らしい)が出ていて、寝たきりのおじさんが探偵役っぽ…

データ構造を着飾るアプリケーション

最近、文章を書いてないのでリハビリがてら。 Google の"検索" Google 検索のすごいところは、「検索」でなく「ソート」なのだとどこかで見た。 検索結果を"どのような順"で表示するかが、むしろ重要なのだと。例えば、検索キーワードがページ内に多く含まれ…

LINE BOTでリッチメニューと新メッセージタイプのカルーセルタイプを使ってみる

LINE DEVELOPER DAYで知った「リッチメニュー」と新しいメッセージタイプ「カルーセル」を試したかったので、LINE BOTを作成してみた。 いわゆるチャットBOTで最初に作るものといえば、出退勤BOTか近隣レストラン検索かと思うので、今回は近隣レストラン検索…

Kitematic (Beta) 2.app は壊れているため開けません。

Docker for Mac をインストール後、メニューにkitematicの文字が。 早速、kitematicをダウンロード&起動すると、以下のエラーが発生。 Kitematic (Beta) 2.app は壊れているため開けません。 ゴミ箱に入れる必要があります。 どうやらAppの形式が古いからら…

「PHP RFC」でググってPHPの未来に思いを馳せる

RFCで公開されていた「pipe-operator」がF#っぽくて素敵でした。 見た目が奇抜すぎるので、仮に実装されたとしてもなかなか使えないような気も…。 PHP: rfc:pipe-operator # PSR7 Example $request = getGlobals() |> parseRequest($$) |> buildPsr7Request(…

後味が悪いことで有名な「ミスミソウ」がお安いらしいですよ、奥さん。

[まとめ買い] ミスミソウ(ぶんか社コミックス)作者: 押切蓮介メディア: Kindle版この商品を含むブログを見る

OpenShiftのVagrantfileはParallelsには対応してないようだ

環境: OSX Yosemite, Parallels, Vagrant(v1.6.5) Vagrantのparallelsプラグインはインストール済み。 OpenShiftを引っ張ってくる。 $ mkdir -p $GOPATH/src/github.com/openshift $ cd $GOPATH/src/github.com/openshift $ git clone git://github.com/open…

Niche Readerをユーザー登録しなくても使えるようにした

Niche Reader - http://reader.nicheantenna.com/ 個人のWebサービスにメールアドレスを要求するのはよくない気がしてきたので、 URLにランダムなトークンを割り当てて、そのURL(トークン)を知っている人だけがアクセス出来る形にしてみた。 Gistのプライ…

LaravelでRSSリーダーを作っている

feedlyはスタイリッシュすぎるので、泥臭いRSSリーダーを作っている。Niche Reader http://reader.nicheantenna.com/未読管理機能は、消化に追われるたちなので意図的につけてない。 カテゴリのフィルタ機能は、必要になったら作る予定。。。高速化というか…

『Team Geak』を読んだ

年末なにか本を読もうと思って、Team Geakを読んだ。 リーダー(マネージャー)になるエンジニア向けの内容が多い。 以下、メモ。 ソフトウェア開発はチームスポーツである コードを隠さない コードや作業を隠してもいいことはない(≒ アイデア/意見を隠さな…

PHPのバージョン管理はphpbrewが使いやすいです

PHPのバージョンを管理するソフトウェアはphpbrewが一番使いやすいです。 なので、みなさんもphpbrewを使いましょう。c9s/phpbrew · GitHubインストール方法や使い方はREADMEを見るのが一番いいです。 インストールメモ 以下、自分向けのメモ。phpbrewのイン…

Module#prepend

Module#include クラスAがモジュールMをincludeすると、メソッドの探索順は A → M → …のようになる。 つまり、モジュールMはクラスAの親クラス側に差し込まれる。 module M def hello puts "M hello" end end class A include M def hello super puts "A hel…

Slimで改行のあるHTMLを出力する

SlimはHamlによく似たテンプレートエンジンです。 %記号がないので、より書きやすくて見やすいです。Slimで出力すると改行のないHTMLが出力されます。 今まで汚いなーと悩んでましたが、ドキュメントに整形(改行とインデント)して出力する方法が普通に書い…

package.el便利じゃないですかー!

VimのVundleやNeoBundleがすごく便利で、emacsでモダンなパッケージマネージャを使いたかったのだが、どれもパッとしなかった(当社比)(あと僕はemacsモヒカンではないので趣味趣向が合わなかった可能性があるという予防線を張っておきます)。 んでどうし…

最近やたらとよく見かける「自由なソフトウェア」について

最近とある御方のブログを読んで、「自由なソフトウェア」なるものに興味を持ったのでメモ。 自由なソフトウェアとは 自由なソフトウェアの定義などは以下のページが詳しい(というか本家)。 自由ソフトウェアとは? - GNUプロジェクト - フリーソフトウェア…

Rubyのオブジェクトについてのメモ

だいぶ曖昧なのは自分の理解が足りないため。 クラス/Class/classの表記方法について クラス/Class/classはすべて異なる(ものとして表記している)。 クラス オブジェクト指向における一般的な意味のクラス。 Class クラスを表現するのに使用される普通のオ…

お名前どっとコムの広告のアレ

注意力散漫なのか、毎回「安い!→そうでもなかった」ってなります。 最近のやつ。 以前のやつ。

Twitterでエゴサーチ

Twitterの検索はいろいろオプションがあってエゴサーチがはかどります。 いまの検索ワードはこんな感じ。 -to:rubellum -from:rubellum -@rubellum rubellum OR るべるむ OR ルベルム Google先生でもおなじみの「-」検索は素敵ですね。 関係ないツイートが引…

Kobitoのいいところ

改行。 説明 markdownにおける改行の仕様は以下のようになっている。 空白行に囲まれた複数行の文章(一行の場合も含む)がまとめて一つの段落として扱われます。 http://blog.2310.net/archives/6#paragraphs_and_line_breaks つまり、改行が<br />タグのように扱わ…

「半角/全角」よりもMacの「かな」「英数」の方が好き

Macには「半角/全角」キーがない。 代わりに、スペースの左側に英字入力(半角)に切り替える「英数」キー、右側に日本語入力(全角)に切り替えるを「かな」キーが用意されている。 「半角/全角」は日本語入力と英字入力を"トグル"するが、Macの「かな」および…

OS X Lionをインストールした

購入だけしてインストールはしてなかったOS X Lionを今更ながらインストールした。 クリーンインストールしようと思ったのだが、予想以上に難航したので、Snow LeopardのクリーンインストールしてからLionにアップデートした。新しい環境は、とても清々しい…