はてブログ

はてなブックマーク新着エントリーの過去ログサイトです。



タグ Islands in the byte stream

新着順 人気順 5 users 10 users 50 users 100 users 500 users 1000 users
 
(1 - 25 / 163件)

『JavaScriptプログラマーのためのTypeScript厳選ガイド』を執筆しました - Islands in the byte stream

2024/11/04 このエントリーをはてなブックマークに追加 123 users Instapaper Pocket Tweet Facebook Share Evernote Clip JavaScriptプログラマー TypeScript

JavaScriptプログラマーのためのTypeScript厳選ガイド という本を書きました。JavaScript中級者でTypeScript初心者のプログラマーに向けたTypeScriptの入門書です。 これまで何度かTypeScriptの記事を書いてきました。 TypeScript再入門 ― 「がんばらないTypeScript」で、JavaScriptを“柔らかい”静的型付き言語に|ハイ... 続きを読む

Starleyに転職しました - Islands in the byte stream

2024/09/17 このエントリーをはてなブックマークに追加 57 users Instapaper Pocket Tweet Facebook Share Evernote Clip こども fastly Cotomo 生成AI サー

FastlyからStarleyに転職しました。Starleyは音声会話型おしゃべりAIアプリ「Cotomo」(コトモ)を開発している会社です。 cotomo.ai StarleyはFastlyとは打って変わってB2Cのスタートアップです。今回の転職ではせっかくなので生成AIに多少なりとも関わりたいと思っていて、Starleyはその点でがっつり生成AIを使ったサー... 続きを読む

『Rustで作るプログラミング言語』を読んで、かねてから構想していた自作言語を形にした - Islands in the byte stream

2024/07/09 このエントリーをはてなブックマークに追加 100 users Instapaper Pocket Tweet Facebook Share Evernote Clip rust ネイティブコード プログラミング言語 言語 書籍

Rustで作るプログラミング言語という書籍が先日発売されました。簡単なプログラミング言語を作ってバイトコードに変換して実行したりネイティブコードに変換して実行してみよう、という本で、大変面白く読みました。最終的にかなり本格的な言語になるので、これを元にするとわりとちゃんとした言語を作れそうです。 この... 続きを読む

デイリーポータルZの新着記事をBlueskyに投稿するbotを作った - Islands in the byte stream

2023/12/22 このエントリーをはてなブックマークに追加 9 users Instapaper Pocket Tweet Facebook Share Evernote Clip Bluesky github.com 秒読み bot 消滅

デイリーポータルZの新着記事をBlueskyに投稿するbotを作りました。 github.com デイリーポータルZは2024年1月1日から独立した会社になるようですが、状況から察するに実態としては消滅まで秒読みと思われます。インターネットからデイリーポータルZが無くなるのは寂しいので、どこかの企業がスポンサーになってくれるこ... 続きを読む

40代の男性プログラマーが5ヶ月の育休を取った件 - Islands in the byte stream

2023/09/07 このエントリーをはてなブックマークに追加 11 users Instapaper Pocket Tweet Facebook Share Evernote Clip 育休 長子 5ヶ月 40代 育児

次子のために5ヶ月の育休をとった記録です*1。 家族構成は、外資勤務フルタイムワーカーの私、同じく外資勤務フルタイムワーカーの妻、長子のmfx氏(2017年9月生まれ)、そして次子のrfx氏(2022年6月生まれ)という四人家族です。 私が育児休業をとったのはrfx氏の育児のためです。妻がはrfxの誕生の1ヶ月前から産休に... 続きを読む

4ヶ月の育休をとる - Islands in the byte stream

2022/12/05 このエントリーをはてなブックマークに追加 20 users Instapaper Pocket Tweet Facebook Share Evernote Clip 育休 4ヶ月 プログラマー

2022年の6月に第二子であるrfxを受け入れました。それに伴い、この12月から4月第1週いっぱいまで、約4ヶ月の育休をとることにしました。 第一子であるmfxのときは育休はとらなかったので、はじめての育休です。なんならプログラマーとして働き始めてから十余年、1ヶ月以上休みをとるのは初めてです。 rfxが産まれてから... 続きを読む

set -eのもとで特定のコマンドの終了ステータスを変数に入れるシェルスクリプトのスニペット - Islands in the byte stream

2021/12/15 このエントリーをはてなブックマークに追加 11 users Instapaper Pocket Tweet Facebook Share Evernote Clip シェルスクリプト set 変数 タスク スニペット

課題編 シェルスクリプトで「あるグローバルな状態を変える操作を行い、その結果をチェックし、状態をもとに戻す」みたいなタスクをするときに「その結果をチェックし」のところでコマンドの終了ステータスを変数に入れて置きたいみたいなことがあります。例えば、次のようなコマンド操作です。 set -e # グローバルな状... 続きを読む

GitHub ActionsからGitHub wikiを更新する - Islands in the byte stream

2021/07/04 このエントリーをはてなブックマークに追加 52 users Instapaper Pocket Tweet Facebook Share Evernote Clip GitHub Actions GitHub Wiki 運用

GitHub ActionsからGitHub wikiを更新したいことがたまにあります。たとえば、何かのメトリクスを見やすく整形したものなど、repositoryのデータを何らかの形で加工したドキュメントを作りたいときです。コード生成したmarkdownドキュメントをコミットしてもいいですが、それよりはシンプルで運用が楽です。 今回は、Git... 続きを読む

Fastly に入社しました - Islands in the byte stream

2019/09/26 このエントリーをはてなブックマークに追加 151 users Instapaper Pocket Tweet Facebook Share Evernote Clip fastly サーバーサイド 前職 Bit Journey

2019年9月9日からFastlyに入社しています。勤務地は東京です。今後ともよろしくお願いいたします。 前職の Bit Journey, Inc. では3年ほどKibelaのサーバーサイドやフロントエンドアプリの開発に関わりました。Bit Journey在職中に子供がうまれ、現在も夫婦で分担しながら子育てをしていますが、この子育て初期という大... 続きを読む

JavaScript libraryのREADMEにブラウザ互換性表バッジを表示することについての諸々 - Islands in the byte stream

2019/05/13 このエントリーをはてなブックマークに追加 17 users Instapaper Pocket Tweet Facebook Share Evernote Clip README decoder 諸々 MsgPack バッジ

ブラウザ互換性表 (a.k.a. browser matrix) とは、こういうやつです。 ブラウザ互換性表 TypeScriptで MessagePack encoder/decoder を実装した - Islands in the byte stream で作った msgpack/msgpack-javascript にこのバッジをつけようとして苦労しました。今回は単に一度やってみたかったというのもあって頑張りま... 続きを読む

TypeScriptで MessagePack encoder/decoder を実装した - Islands in the byte stream

2019/05/07 このエントリーをはてなブックマークに追加 25 users Instapaper Pocket Tweet Facebook Share Evernote Clip decoder TypeScript

npm install @msgpack/msgpack でインスコできます。 github.com もともとこのリポジトリには uupaaさんによる実装("classic") があったんですが、メンテされなくなって久しく npmjs.com にもリリースされていないという状況でした。 https://github.com/msgpack/msgpack-javascript/tree/classic その後kawanetさんが ... 続きを読む

TypeScriptの型情報を利用したCustom Transformerの現状確認 - Islands in the byte stream

2019/03/04 このエントリーをはてなブックマークに追加 15 users Instapaper Pocket Tweet Facebook Share Evernote Clip TypeScript AST Qiita エントリ 操作

TypeScriptのコンパイラ・プラグインとして振る舞いASTの操作を行えるcustom transformer (AST preprocessor) が実装されたのは TypeScript 2.4 (2017年) でした。 そのときの様子は次のエントリに非常によくまとまっています。 [TypeScript 2.4] custom transformer を利用して実行時に型情報を参照可能にする - Qiita ... 続きを読む

なぜTypeScriptに失望してしまうのか - Islands in the byte stream

2019/01/05 このエントリーをはてなブックマークに追加 238 users Instapaper Pocket Tweet Facebook Share Evernote Clip Twitter TypeScript 失望 そこら 価値

TypeScriptに対する失望は2パターンあって、その理由は理解できるのですが、いずれにせよそこでTypeScriptを使わないとか捨てるという判断をするのはもったいないと思っています。この2つの失望を乗り越えてもなお、TypeScriptには導入する価値があります。 パターン1: JavaScriptに対する失望 そこらのブログやTwitter... 続きを読む

apollo-boost はサンプルコード専用と思ったほうがよい - Islands in the byte stream

2018/10/30 このエントリーをはてなブックマークに追加 17 users Instapaper Pocket Tweet Facebook Share Evernote Clip Apollo プロダクションコード Get started

TypeScript用のGraphQL clientであるところの Apollo ですが、これのGet Startedなどのドキュメントでは apollo-boost というパッケージを使っています。 www.apollographql.com しかし、 apollo-boost はサンプルコードをシンプルにするためのパッケージと考えたほうがよく、プロダクションコードでは apollo-boost で... 続きを読む

Reactをv16にアップグレードしたらuglifyjsの秘孔をついてハマった件 - Islands in the byte stream

2018/10/13 このエントリーをはてなブックマークに追加 41 users Instapaper Pocket Tweet Facebook Share Evernote Clip React Webpack 秘孔 Plugin ライブラリ

Reactが悪いわけではないんですが、たまたま秘孔をつくコードがReactないし関連するReact v16に依存するライブラリにあったんでしょうね。 Reactをv16にアップグレードしたら webpack で production build ができなくなった pluginを着脱しながら調べた結果、 uglifyjs がクラッシュしていることがわかった uglifyjs は... 続きを読む

プロジェクト固有のルールを指定できるLinterであるところのQuerlyがめちゃ便利 - Islands in the byte stream

2018/08/10 このエントリーをはてなブックマークに追加 31 users Instapaper Pocket Tweet Facebook Share Evernote Clip Linter RULES DSL AST Kibela

https://github.com/soutaro/querly Rubyを構文解析したASTに対して独自DSLでパターンマッチ&メッセージを出すツール プロジェクト固有の事情に配慮したLinterとして使える false positive 上等で注意喚起として使う たとえばKibelaの querly.yaml から一部抜粋するとこんな感じです。 rules: # ... - id: kibela.order... 続きを読む

DX: Developer Experience (開発体験)は重要だ - Islands in the byte stream

2018/06/28 このエントリーをはてなブックマークに追加 323 users Instapaper Pocket Tweet Facebook Share Evernote Clip Developer Experience デグレ 開発体験

DX: 開発体験とは、あるシステムを「気持ちよく開発・保守できるかどうか」を示すもの 開発者は開発・保守という体験を通じたそのシステムのユーザーであり、DXはUXの一種である DXがよいと日々の開発を楽しめるようになり、気持ちに余裕ができる 気持ちの余裕がでるとコードの品質があがり保守時のデグレも減らせる ま... 続きを読む

TypeScriptの `ReadonlyArray<T>` を使いやすくするためにtslintを活用する - Islands in the byte stream

2018/06/21 このエントリーをはてなブックマークに追加 26 users Instapaper Pocket Tweet Facebook Share Evernote Clip TypeScript tslint generics

最近、Kibelaのtslint configの Rule: array-type を "generics" にしました: + "array-type": [ + true, + "generic" + ], 以前は特に指定しておらず、 T[] と Array<T> が混在してていて、それでよしとしていました。今でも、混在することによるデメリットは特にないと思っていいます。ただ、 Array<T> には一つだけメ... 続きを読む

graphql-rubyの知見をscrapboxにまとめはじめた - Islands in the byte stream

2018/06/11 このエントリーをはてなブックマークに追加 10 users Instapaper Pocket Tweet Facebook Share Evernote Clip Scrapbox graphql-ruby gfx 知見 限定

2018 - 06 - 10 graphql-rubyの知見をscrapboxにまとめはじめた scrapbox.io graphql-ruby の知見をまとめはじめた。 / “GraphQL for Ruby” https://t.co/PqotLzAdtV — FUJI Goro (@__gfx__) 2018年6月10日 なんで graphql-ruby 限定かというと、graphql-ru... 続きを読む

とても今更なCommonMarkのあれこれ - Qiita

2018/04/17 このエントリーをはてなブックマークに追加 10 users Instapaper Pocket Tweet Facebook Share Evernote Clip Qiita GFM CommonMark 出来事 現状

GFMにCommonMarkの仕様が反映された 詳しい話はこちらの記事をご参照頂ければ CommonMarkの現状 2017年4月版 - Islands in the byte stream 昔書いた記事 CommonMarkの仕様とか - Qiita から約半年後の出来事であった 一年前の事を今更記事にした理由は後述 CommonMarkの仕様が更新された CommonMark Spec 201... 続きを読む

発表資料: Elasticsearchによる 全文検索の実装 in Rails - Islands in the byte stream

2018/03/24 このエントリーをはてなブックマークに追加 108 users Instapaper Pocket Tweet Facebook Share Evernote Clip elasticsearch railsdm 実装 全文検索

2018 - 03 - 24 発表資料: Elasticsearchによる 全文検索の実装 in Rails Rails Developers Meetup 2018 (#railsdm) で話した資料です。 最初は elasticsearch-rails の使い方の話を中心にしようと思ったのですが、まず全文検索そのものの話を整理しないとそこにたどり着かないなということでその話を中心にしました。 ... 続きを読む

elasticsearch-rails から返るモデルが同値比較できなくてテストで困る問題 - Islands in the byte stream

2018/03/07 このエントリーをはてなブックマークに追加 13 users Instapaper Pocket Tweet Facebook Share Evernote Clip Rails ActiveRecord Pry gem こいつ

2018 - 03 - 07 elasticsearch-rails から返るモデルが同値比較できなくてテストで困る問題 elasticsearch-rails はElasticsearchとRails / ActiveRecordのインテグレーションをしてくれるgemです。 こいつを使っているとき、 特定条件下でモデル同士を比較するテストがコケるようになる という現象に悩まされてきました。pry... 続きを読む

DroidKaigi 2018で『すばらしきGraphQLのSEKAIへようこそ』という発表をしました - Islands in the byte stream

2018/02/09 このエントリーをはてなブックマークに追加 19 users Instapaper Pocket Tweet Facebook Share Evernote Clip SEKAI DroidKaigi クライアントサイド 実装

DroidKaigi 2018 に参加して発表してきました。 今回はDroidKaigiということでクライアントサイドの視点から解説しています。よって、サーバーサイドの実装についてはまったく触れていません。サーバーサイドの実装については以前発表をしたことがあるのでそちらもどうぞ。 RejectKaigi 2017で「GraphQL on Rails」という発表をしました - Bit Journey... 続きを読む

JavaScript Quiz: (new Array(2)).map($ => 'hello') === ? - Islands in the byte stream

2018/01/23 このエントリーをはてなブックマークに追加 22 users Instapaper Pocket Tweet Facebook Share Evernote Clip Hello map new Array I would

2018 - 01 - 23 JavaScript Quiz: (new Array(2).map($ => 'hello') を評価した値は? まあ、分かってしまえばなんということはないんですが、結構面食らいますね。 This sure isn't what I would have expected. pic.twitter.com/wNQ0CkycUn — Andy Hall (@fenom... 続きを読む

Ruby 2.5未満でRuby 2.5のStructのkeyword_initを使う - Islands in the byte stream

2018/01/22 このエントリーをはてなブックマークに追加 11 users Instapaper Pocket Tweet Facebook Share Evernote Clip struct feature Ruby 2.5

2018 - 01 - 22 Ruby 2.5未満でRuby 2.5のStructのkeyword_initを使う NEWS-2.5.0 - Documentation for Ruby trunk Struct.new takes keyword_init: true option to initialize members with keyword arguments. [Feature #1... 続きを読む

 
(1 - 25 / 163件)