ken1flanのブログ

自己紹介・最近やってることなどを書くつもりです。

WEB+DB PRESS Vol.133 メモ

雑誌を積ん読にしないように、各記事にチマっとずつ何か書いて、形に残そうと思います。

対象は↓です。 gihyo.jp

特集1 識者がたどり着いた最適解 TypeScript最新活用 リンタ,バンドラ,ランタイム,エッジ

  • TypeScript、まだあんまり触ってないんですよね…。
  • 仕事に入れたくなるといいなぁ…。

第1章:広がるTypeScriptの活躍領域 フロントエンドからサーバサイド,そしてエッジへ ……うひょ(鈴木 僚太)

  • うーむ…フロントのコードであんまりテストを書かないんだったら、明らかに間違った型で来たときにコンパイルエラーになって、リリースする前に気づけるのか…。結構よさそうな気がします…。
  • 使いたくなってきました。

第2章:リンタ,フォーマッタの定番設定 ESLint,typescript-eslint,Prettier ……sosukesuzuki(鈴木 颯介)

  • 一人プロジェクトにリンタとフォーマッタは必需品。安心して使えそうです。
  • package.jsonにlintを設定できるのは知りませんでした。

第3章:トランスパイラとバンドラに見るRust化の波 Babel,webpack,SWC,turbopack ……うひょ(鈴木 僚太)

  • トランスパイラの歴史…!そういえばそうでした。
  • バンドラは…まさか、サイズを小さくするのが原点だったとは知りませんでした…。
  • SWCが速くてプラグインもあり、よさそう…?
    • Next.jsも一緒に気になってきました。
  • いろんなツールがRust化されてますね…。

第4章:多様化するランタイム 動向の紹介とNestJS/GraphQLによる実践 ……れこ(井上 真吾)

  • サーバサイドとフロントエンドを同じ言語にできるのは…結構メリットありますよね…。
  • 現状のプロジェクトでは入れられないけど…あとで試しにやってみなければ…。

第5章:Webアプリケーションにおけるエッジ Edge Workerの意義と可能性 ……あざらし(宮本 将)

  • CDNのエッジで動くのかあ…。ちょっと気になります…。
  • ポストされてきたデータについて簡単に検査するのは、たしかに使えそう…。
  • クライアントでやっていたタグマネージャー的なものをエッジでやるのはおもしろそう。

特集2 コミッター直伝! 速習Ruby 3.2 Wasm対応,ReDoS対策,性能改善

  • …うち、まだRuby3.2を使えない><
    • 頼んますよ、AWSさん…。
  • Wasmは…CDNのエッジでもいけるのか…!結構いいかもしれません。

第1章:WebAssembly/WASIへの対応 Rubyプログラムをブラウザで動かせるように ……遠藤 侑介

  • RubyKaigiで聴いたものを、もっとゆっくり書いてもらった感じ。
  • CDNのエッジは夢があるなあ…。

第2章:ReDoSへの対策 アルゴリズムの改良とタイムアウトの実装 ……遠藤 侑介

第3章:新しい機能の追加,改良 文法拡張,Dataクラスの導入,エラーメッセージの改善 ……遠藤 侑介

  • Dataクラス、よさそう…。
  • あー…エラーまわりの表示が改善されてるの、ありがたい…。
  • アップデートしたいのに、まだできない…。AWS、たのむ…。

第4章:新しいメソッドの追加,改良 組み込みクラスのパターンマッチ対応,Time.newの機能強化,Enumerator.product,Integer#ceildiv…… ……遠藤 侑介

  • MatchDataのパターンマッチ対応、めっちゃ使えそう…。
  • IO.timeout いいかも。
  • メタプログラミングが捗りそうなメソッド群が…。
  • Exception#detailed_message、よさそう…。今までメモ用にもう一個例外を投げちゃってました。

第5章:仕様変更,性能改善 ruby2_keywordsの厳格化,Unicode 15対応,実用段階になったYJIT ……遠藤 侑介

  • YJIT、MJITが楽しみ…。
    • あと、arm64も対応になったのであれば…armタイプのインスタンスでも効果があるってことですよね…。

特集3 Tailwind CSS実践入門 まず作ってから,あとで共通化する

第1章:ユーティリティファーストとは何か 従来の課題を解決する大胆なアプローチ ……安田 祐平

  • 読む前に想像したメリットのほかに、完全なピクセル単位などの自由はないので、ちゃんと統一感が出るです。
    • bootstrapでユーティリティクラス使ってるときに実感しました。
  • デメリット…読みにくくなる。たしかにそうですね…。

第2章:Tailwind CSSの基本 開発環境へのインストール,設定ファイルの記述,エディタの設定 ……安田 祐平

  • PostCSS - a tool for transforming CSS with JavaScript…また知らないツールが…。CSSを作るためのツールだそうです。
  • カラーパレットの定義ね…。うちのは…ヘンな名前のものが一杯あります…。
    • ファイルの先頭に気をつけることとか書いておこうかなぁ…。
  • ユーティリティしかないと聞いてたけど、プラグインでフォームとかあって安心しました…。
    • bootstrapから卒業できるかも…?
  • おっと!定義されている機能でも一部のブラウザで動かないことがあるそう…。これはちょっと使いにくいかも…。
  • 公式VSCodeプラグイン…助かります。
  • お…コードフォーマッターもある…!いい!

第3章:Tailwind CSSの活用 ユーティリティクラス,修飾子,カスタムスタイル ……安田 祐平

  • そんなに苦労はしなそう。
  • ::before、::afterはあんまり見かけてこなかった形の書き方になってるけど…クラスで書けるのは結構いいかも…。
  • なんと…ピクセル単位の自由もあるんですね…。
    • <div class="top-[117px]">
    • 明らかに特殊だから…多用しちゃダメなのはみんなわかってくれるよね…?

第4章:Tailwind CSSとデザイン より良いデザインのためにCSSはどうあるべきか ……安田 祐平

  • tailwindとfigma、結構仲がよさそう
    • FigmaからTailwind HTMLを 生成するプラグインの開発 - Speaker Deck
    • tailwind入れるときには、デザイナーさんに相談しよう、そうしよう…。
    • 開発者が実装したコンポーネントは…部分テンプレートで切るならこうやる、的な…。
      • デザイナーのものはどういった理屈でなんだろう…?うまくSassで扱えるなら使いたい気持ち。
    • あ…複数列のコンポーネント、ブレイクポイントを使わずとも書けるのか…。
    • デザインをコードに起こすの、やっぱりプロの仕事ですよね…。

特別企画 今こそシェルスクリプト ツールを自由につないでWeb開発を効率化!

  • 案外使わないひとが多いので、こういった特集はいいかも。
  • 自分もおさらいと思って読んでいきます…!

第1章:シェルスクリプトの現在の価値 ツールとツールをつなぐグルーとしての役割 ……木利 友一

  • 100行以上になる場合は他の言語で…。
    • 仕事でデカイのを書いたことがあります…ごめんなさい…。
      • でも、同じ仕事をC/C++でやるの、キツかったんです…。

第2章:基礎知識のおさらい グルーとして使うために知っておくべきこと ……木利 友一

  • catを呼び出すSimple Commandsの例…猫を呼び出したい!わざとかなw
  • 出力を標準出力と標準エラー出力で分けられるの、ホントスゴい設計だと思う…。
  • ShellCheckいいですよね…。自分も入れてます!

www.shellcheck.net

第3章:ツールをつなぐ grep,cut,sort,uniq,sed,xargs,reviewdog…… ……木利 友一

  • reviewdogがいます…!Web+DBっぽいですね。
  • 大好きUNIXコマンドばっかりですw
    • jqも最近仲間入りしたかも。
  • xmlsmartlet…初めて聞きました…。XML面倒だなって思っていたので…覚えておきます。

第4章:身近な課題を解決する さあシェルスクリプトを書いてみよう! ……木利 友一

  • textlint、terraform fmt…いい例が多いですね…。
  • またreviewdogイジるときに見直します!

連載

Goに入りては…… ── When In Go... 【第35回】Go 1.20からの複数エラーの一括報告 ……使いどころと実装の注意点 ……牧 大輔

  • 複数のエラーを返せるの、いいなぁ…!
    • 利用者がどう扱うのかを想像しておいたほうがいい…。

現場のPython ── システム開発も! 機械学習も! 【第17回】Django ORM道場 ……クエリの基本を押さえ,より良い型を身に付けよう ……清水川 貴之

  • Django、ORMあるのかー。
  • 理想のSQLからORMを組む…って便利なのかなぁ…。
    • まぁ、そうしてるけど。
    • 構造のイメージはSQLよりORMのほうが書きやすいし。
  • ループの中で足りない項目を1つずつ取得はあるあるですねw
    • ログは大事です!
  • 自分は普段Railsですが…気をつけることは同じですね。

PHPで複雑さに立ち向かう 【第11回】PHPコードをPHPで操作する ……構文解析の基本とPHP-Parser・Rectorの使い方 ……五十嵐 進士

  • PHPのコードの自動バージョン書き換えができるんですね。
  • Rubyでも構文解析の話結構聴いていたので、割と馴染みがありました。

github.com

Ruby 3標準添付ライブラリ紹介 【第11回】コードの実行速度を計測する ……benchmark/benchmark-ips/benchmark_driver ……西山 和広

  • ベンチマーク…!
  • オブジェクト生成の時間の差が有意になるほど…という速さが必要になるような仕事をしたことはまだありませんが…覚えておきます…!
  • 日夜こういったツールで速度改善を行ってる方には感謝です。おかげさまで普段快適に利用できています!

Perl Hackers Hub 【第77回】モジュールの自動インポートによる開発効率向上 ……PPIによる静的解析と,モジュールロードによる動的解析の組み合わせで実現 ……momochi,監修:牧 大輔,福本 貴之,松木 雅幸,大沢 和宏

  • 今はモジュールの自動インポートあるのか…いいなぁ…。
  • 今回は構文解析の話多いですね…。しばらく前のコード整形ツールと近いものもあると…。
  • 次回のWebアプリケーションのリプレイスって…気になります…。

フロントエンド コンポーネント駆動開発 【最終回】Radix UIによる高品質なUI開発 ……アクセシブルで自由にカスタマイズできるUIライブラリ ……吉井 健文

  • Radix UI…スタイルのあたっていないUIコンポーネント…便利そう!
  • ARIA APGW3Cによる一般的なデザインパターン
    • 読みたいけど、ひとりでがんばれそうにないやつだ…。だれか一緒に読んでくれないかな…。
  • ブラウザのキーボード操作…普段、まったく気にかけてませんでした…。Radix UI、いいですね…。

SREで開発を加速させる ── class SRE implements DevOps 【最終回】サービス運用技術の学び方 ……Site Reliability Engineerというキャリアを目指すには ……古川 雅大

  • まとめにふさわしい…。
  • また第一回から読み直したい気持ちになりました。

Javaで考える脱炭素化 ── グリーンなソフトウェアをはじめてみよう 【最終回】"Carbon Aware"なアプリケーションを目指して ……あなたの書いたJavaプログラムのCO2負荷は? ……末永 恭正

  • …なんというか、CO2排出量にだいぶ詳しくなれた感じがします。
  • そのうちに自社のでもやってみたい気がします。

コラム

サバンナ便り ── ソフトウェア開発の荒野を生き抜く 【第5回】テストピラミッド ……自動テストの信頼性を中長期的に保つ最適なバランス ……和田卓人

  • あ…なるほど…ピラミッド…。E2E→インテグレーション→ユニットの順に自然となりますが、たしかになるべく下のレイヤーで担保しようと思ってます。
  • でも、今の職場にテストを持ち込んだとき、最初はE2Eを書いて、最低限ビジネスで必要なものを担保できるようにしたんでした。その後、他をだんだん増やした感じです。

池澤春菜SF小説の歩き方 ──エンジニアリングの未来を描く名作たち 【第4回】ディファレンス・エンジン〜もう一つの未来へ ……あなたの知らないコンピュータたち ……池澤 春菜

  • 寝不足にさせられた天冥の標小川一水が出てる…!
  • 粘菌コンピュータのSFが…?気になる…。

ちょっと気になる隣の技術畑 【第10回】セキュリティリスクとの付き合い方 ……鈴木研吾さん ……日高 正博

  • いいはなしかも。
  • うちの話
    • まだ大したことはできていませんが…
    • ポリシーをみんなと納得しながら作ったので、今それを運用していく段階です。
    • しばらく運用ができたら、もう少し守備的なものを作っていこうと思っています。
  • ポリシーが決められていると、それを守るという建前ができるので、工数の説明にしやすいんじゃないかな…と思っています。
  • サプライチェーン攻撃、APIキー…。
  • [Podcastやってる…!](https://podcasts.apple.com/jp/podcast/secure-liaison/id1525600701

はまちちゃんわかばちゃんのREADER'S FORUM ── 読者のページ 【第84回】 ……はまちや2,竹原

  • Rubyのところでお便りが採用されたのはちょっとうれしいw