Rのつく財団入り口

ITエンジニア関連の様々な話題を書いているはずのブログです。

【雑記】ブログ再起動後3年経過!

リブート3周年!

 熱中症警戒日も続いて首都圏では1日のコロナ感染者数が相変わらずだったりしますが、皆様いかがお過ごしでしょうか。ここは私的にお祝いをするエントリです。

 当ブログは最初は、はてなダイアリーだった2003年に開始、以前はかつての活動領域であった趣味ジャンルの「テーブルトークRPG」関連の記事をmixiやWebサイトと並行して載せていました。それが10年ぐらい続いて2013年ごろから一旦引退して休止。
 その後2017年7月にはてなブログに移行して復活、新たな活動領域をITエンジニア界隈に定め、現在に至ります。調べたら2017/7/23が最初の記事だったので月をまたいじゃいましたが、続けて3年が経ちました!
 お立ち寄り頂いたりスターやはてなブックマークで応援していただいた方、読者になっていただいた方、ブログ同士で繋がりができた方、Twitterなどオンラインで交流が生まれた方、オフラインのイベントなどで知り合うことのできた方々、皆様ありがとうございます。

続きを読む

【感想】『JavaScript Primer 迷わないための入門書』でモダンJS再入門 #jsprimer

JS完全に理解した……(し て ま せ ん)

 見出しはエンジニア界隈でお馴染みのダニング=クルーガー曲線のアレでございます。2020年6月に出たばかりの最新のJS本を読んだので書評です。
 570ページ余りの分厚さで電子版もあり。著者はECMAScriptの仕様にも関わっているazuさん、Angular日本ユーザー会代表のSuguru Inatomiさんと強力な布陣。ES2015(ES6)以降も進化を続けるJavaScriptについて、完全にES6をベースにしたモダンな入門書となっています。
 コンテンツはGitHubで管理されてオープンソースとして執筆され、様々な人がコントリビュートした結果が反映される面白い作り方になっています。Web版もすべて無料で参照できるのですが、こういう体系的な情報はまとまった本で学ぶことにしているので電子版で読みました。

続きを読む

【PHP】VSCodeでPHP開発環境を整えてみよう(2020年夏)【おすすめ拡張機能】

Visual Studio CodePHP開発しよう

 さて2015年4月にあのMicrosoftから登場、進化し続けているエディタのVisual Studio Code略してVSCode, VSC。徐々に人気を博して現在では実際の開発の現場でも、プログラミングに入門している方でも使っている方は多いと思います。各プログラム言語のサポートもどんどん進んでいますが、言語によってサポートの度合いには差がありました。

 僕もPHPではLaravelを使ったり自作フレームワークを使ってチーム開発する際、アーキテクトっぽい人として開発標準やアーキテクチャを定めてプロジェクトをリードしたり開発したりしていきます。その際の開発ツールはEclipsePDTプラグインVSCodeの2択、とすることが多かったです。
 ある程度以上の規模の開発になってくるとコードベースのクラス数も増えてきて、use文の名前空間を含めた補完、クラス名やメソッド名タイプ時の補完、引数の補完、メソッド定義元への正確なジャンプ……などが重要になってきます。インストールしただけのVSCodeに比べるとPleiadesパッケージから落としてきたEclipse+PDTの構成は最初からこのへんがかなり効くので、なんだかんだけっこう優秀だよな……という感じでした。
(※なおJetBrains社のPHP専用IDEである PhpStorm もかなり優秀という話もよく見聞きするのですが、有償のため当方では未確認です。PHPStorm使いの方スミマセン。
またAdobeファミリー製品が多かったりWeb制作寄りのところではAdobe Bracketsを使うパターンもあるのでしょうか。こちらも未確認のため除外です。)

 このように、VSCode自体は進化し続けているもののPHP周りのサポートは他の言語に比べていまひとつという感じが数年前はありました。
しかし2020年の最近改めて調べたところ、拡張機能周りもだいぶ揃ってきてVSCodeでのPHP開発環境はもう十分に整ってきたのが分かりました。このエントリでは、PHP開発環境を整えるためのVSCodeのおすすめ拡張機能や最近の定番のものを、開発の現場の視点から紹介していこうと思います。

続きを読む

【感想】『リファクタリング 既存のコードを安全に改善する (第2版)』:20年を経て生まれ変わる名著

伝説的名著の2版、題材はJavaScriptへ! (Pythonじゃなかったぞい)

 本の感想エントリです。外部から動かした際の動きを変えずにプログラムの内部構造を改善し、メンテしやすさや拡張しやすさ、コードを書いた人以外からの理解しやすさや扱いやすさを改善していく手法である「リファクタリング」。
 よくソフトウェア工学や開発の現場で出てくる単語ですが、このリファクタリングの教科書と言えばタイトルがそのまんまの『リファクタリング』。英語版は1999年刊行、腕に覚えのあるITエンジニアの方なら2000年代~2010年代にかけて読んでいる人の多い、あのマーチン・ファウラー大先生の有名な本でした。この頃世に出たオブジェクト指向デザインパターン、開発手法などの本と同様、言語の題材はJavaとなっています。
 その2版が計画されている、しかも今度は言語がJavaScript……というニュースが2018年に話題になりましたが、最近じっくり読むことができました。

続きを読む

【感想】『データ指向アプリケーションデザイン』:深遠なる分散データの新大陸への旅

 読破した分厚いオライリー本の感想記事です。本書ではCPUの速度がボトルネックになるようなものは演算指向アプリケーションと区別し、データの量や複雑さ、変化の速度が主題となるシステムを「データ指向」と位置づけて、特定技術に幅を狭めずに包括的に解説した本となっています。
 著者はイギリス、ケンブリッジ大学の分散システムの研究者 Martin Kleppmann氏。監訳者が斉藤太郎氏、訳者は玉川竜司氏。
 タイトルの『データ指向アプリケーションデザイン』の原題は Designing Data-Intensive Applications。よく使われる「オブジェクト指向」の原語は Object-Oriented ですが、本書の「指向」は Intensive で若干ニュアンスが違います。たまに見るデータ駆動、データドリブンなどともちょっと違いますね。
Intensive単体の意味は強い、激しい、徹底的、集中的など。アプリケーション設計の他の要素を軽んじたわけではなく、データとしての観点、データの構造や取り扱い方、データを扱う様々なテクノロジーに特に着目し、どこまでも奥深く深堀りした本という感じでしょうか。

続きを読む

【感想】『Design It! プログラマーのためのアーキテクティング入門』:モダンなアーキテクトへの地図とコンパス

 本の感想記事です。なかなか電子版が出ないので以前にAWS認定試験に受かった帰りに自分へのお土産用に物理本を買って積本に貯まっていたのですが、テレワーク中なのでじっくり読むことができました。
 原題は『Design It! From Programmer to Software Architect』。日本語版の副題の通り、プログラマーとしての活動からさらに上位に進みたい人や既にアーキテクトとして活動している人向けに、現代的なアーキテクティングの本質や手法、ソフトウェア・アーキテクトとしてのありかたを網羅した本となっています。原著は2017年刊行、日本語版は2019年11月。
 エンジニアがみんな大好き(あるいは眠くなる)オライリー本で380ページ弱ありますが本の物理サイズも小さく、内容も章と節で短い単位でまとまっているので割とすんなり読めます。アーキテクティングの見地からの用語は時々出てきますが、特定の技術の中に属する専門用語はそれほど出てこないのでそのへんも大丈夫です。
作者さん以外にも、各章には様々な立場で活動中の世界のアーキテクトの方々のコラムが出てきたりします。

 著者はIBM Watsonの開発にも携わりアジャイル関連のコミュニティでも活動しているMichael Keeling氏。序文でも様々人が本書を称賛しています。日本語版翻訳は様々な書籍の翻訳や日本Rubyの会で知られる島田浩二さん。またアジャイル関連の活動や本で知られる平鍋 健児さんが序文を飾っています。

続きを読む

【感想】『レガシーコードからの脱却』:既存のやり方を越えたその先の探求

レガシーコードからの脱却

 コロナウィルス騒動でIT系イベントの中止が相次ぐ最近ですが、技術書の感想エントリです。「ITエンジニア本大賞 2020」の技術書部門大賞も受賞した2019年9月刊行の本。名著の予感がしていたのでAWS認定に受かってから読むことにして、楽しみに取っておいてありました。

続きを読む