別にしんどくないブログ

技術のことや読書メモを書いています

#kansaits 1でTypeScriptのbuilt-in typesについて話します!

6/10に開催されるkansai.ts #1でTypeScriptに組み込まれている便利な型について話をします。 いつも通りスライドを公開しているので、もし興味あれば読んでフィードバックいただけると幸いです! 不備や質問もTwitter @shisama_までいただけると助かります!

speakerdeck.com

kansaits.connpass.com

GatsbyJSで英語日記を構築した

英語で短めの日記を書くのをやりたくてgatsby-starter-blogでサクッと構築しました。 https://diary.shisama.dev にしましたが、DNSの設定もこの記事を書く直前にしたので浸透していないためにNetlifyドメインにリダイレクトされるかもしれません。

diary.shisama.dev

この日記は継続して英語をアウトプットする習慣を身につけることを目的にしているため、とにかく短くてもいいし内容もどうでもいい日常の内容とかにする予定です。
そのため、見た目とかもほぼデフォルトです。タイトルも日付でいくつもりです。あと自分で構築した静的サイトの場合、技術的に実験する場所にもできます。GatsbyJSの土台の上に乗っているとはいえ思いついたことをやりたいと思います。

この日記を構築するにあたって最初はgatsby-starter-lumenを使う予定でしたが、記事ごとに書くメタ情報(titledateなど)がやたらと多く、だるかったのでgatsby-starter-blogにしました。

github.com

ホスティング先はNetlifyで行い、pushすればビルド&デプロイされると思っています。
そして、Gatsby最高だよ。めちゃくちゃ速い。Lighthouseで計測したらPerfomance 94点でした。

続けていく中で躓いたことや解決策が見つかれば英語・日本語ともにアウトプットしていきたいと思います。 日本語のブログ(このブログやQiita)も継続して続けたいと思います。

以上、最後までお読みいただきありがとうございました。

Node.js v12の気になる変更点について話すかも #kng6

登壇予定だった方がやむを得ない事情により、急遽登壇できなくなってしまったのでNode.js v12の変更点を話すかと思い資料を作りました。
まだ、発表枠は空けていますが2日前に登壇枠が空いたので流石に応募する人はいないようで、前日の今時点で応募が無いのでたぶん話す。応募があっても時間の配分によりますが、たぶん話すと思います。

例のごとく発表資料は先に公開します。

speakerdeck.com

もし不備などがありましたら、ブコメ@shisama_にメンション飛ばしていただけると助かります。

チームに必要な「5つの法則」とチェックリスト / 『THE TEAM 5つの法則』を読んだ

GWは実家に帰省していました。同様に帰省していた弟が『THE TEAM 5つの法則』という本を持ってきていました。書店でも見かけたことがある表紙だったのでパラパラと読み始めると面白かったので一気に全部読んでしまいました。

この本はよく言われる「良いチーム」への誤解を主張するところから始まります。  

例えば「目標を確実に達成するのが良いチームだ」「チームはコミュニケーションが多ければ多い方が良い」「みんなで話し合って決めるのが良いチームだ」といった当たり前のように良いと思われていることに対して、実は時にチームが十分にパフォーマンスを出せない原因になり得ると主張しています。著者は「チームの法則」を用いることで、こういった誰もが持つ誤った認識を解消し、本来あるべきチームの姿をつくることができると主張しています。

その法則は「5つの法則」に分類することができます。

  • Aim(目標設定)
    • チェックリスト
    • メモ
  • Boarding(人員選定)
    • チェックリスト
    • メモ
  • Communication(意思疎通)
    • チェックリスト
    • メモ
  • Decision(意思決定)
    • チェックリスト
    • メモ
  • Engagement(共感創造)
    • チェックリスト
    • メモ
続きを読む

v-kansai Vue.js/Nuxt.js meetup #5でamp-scriptについて話します。 #v_kansai

AMP Conf 2019から気になっていたamp-scriptについてVue.jsを交えて話をします。 本番までに修正するかもしれませんが、以下資料です。

speakerdeck.com

もし不備や質問があれば、ブコメTwitterで教えていただけると幸いです。

参考

Node.js v12で使えるJavaScriptの新機能

Node.js v12が4/23にリリースされました 🚀

Node.jsのCoreにも新しい機能が入りました。 また、APIの追加以外にもTLS1.3のサポートやhttp_parserがllhttpに代わったりしています。 詳しくは以下をご覧ください!

github.com

JavaScriptエンジンであるV8もバージョンアップしています。
Node.js v10のV8のバージョンは6.8でしたが、Node.js v12では7.4に大幅アップデートしています。
V8のバージョンが上がることによりJavaScriptの使える機能や構文が増えます。
今回はMathias氏のツイートをもとにNode.js v12から使えるJavaScript(ECMAScript)の新機能について紹介したいと思います。

続きを読む

『徳丸浩のWebセキュリティ教室』を読んだ

徳丸浩のWebセキュリティ教室

徳丸浩のWebセキュリティ教室

セキュリティの専門家として著名な徳丸先生が2015年に出版された本である。
170ページほどで薄めの本ながらWebのセキュリティに関して様々な事例や解説が紹介されている。
いくつか例を挙げると、XSSSQLインジェクションCSRFなどの説明やさくらVPSへの不正ログイン事件やGHOSTなどの事例をが書かれている。
本書序盤から度々出てくる「脆弱性はバグという意識を持つ」は開発者全員が意識しなければいけないと感じた。
あと発注者も意識が必要と書かれており、セキュリティ要件の提案と見積をRFPに盛り込んでおくことが勧められていた。
これにより発注側にもセキュリティ対策の責任を持つと開発者との責任のなすりつけ合いや逐一確認するといった無駄も省けて良さそうだと感じた。
またIPAの「安全なウェブサイトの作り方」や「セキュリティ実装チェックリスト」に沿って確認するのも勧められている。

www.ipa.go.jp

また「安全なウェブサイトの作り方」は2015年に改訂され、以下の脆弱性について詳細や対策を解説している。無料で公開されているので、セキュリティへの関心の第一歩として一読するのは良さそうである。

  1. SQLインジェクション
  2. 0Sコマンドインジェクション
  3. パス名パラメータの未チェック/ディレクトリトラバーサル
  4. セッション管理の不備
  5. XSS(クロスサイトスクリプティング)
  6. CSRF(クロスサイトリクエストフォージェリ)
  7. HTTPヘッダーインジェクション 8.メールヘッダーインジェクション
  8. クリックジャッキング
  9. バッファオーバーフロー
  10. アクセス制御や認可制御の欠落