タグ

ブックマーク / blog.3qe.us (20)

  • ブロッキングってそもそも何だよ - Lambdaカクテル

    さきほど別のブログ記事を書いていて(それはまたそのうち発射するけど)、その中でブロッキング処理とか同期的に扱う、という言葉を使った。 このときの自分の理解がこれ: ブロッキング 呼ぶと待たされる ノンブロッキング 呼んでも待たされない、すぐ返る そのときはJavascriptの話をしていた。Javascriptはシングルスレッドの言語だ。そして、各種のAPIは基的にノンブロッキングに設計されている。つまり、コールバックを取るようになっていたり、Promiseを返すようになっているということだ。だから、処理系が提供する特殊な処理(例えばNodeが提供するhogehogeSync()といったもの)を利用しない限り、ブロックが原理的に起こらないし、あえてする理由もない。 という話を書いていて、でも重い計算処理は待たされるだろと思った。これはブロックしていることに他ならないのではないか、と。 し

    ブロッキングってそもそも何だよ - Lambdaカクテル
    ymm1x
    ymm1x 2024/08/01
  • 帯状疱疹にならないほうがいい3つの理由 - Lambdaカクテル

    帯状疱疹になったけどメリット1つもないのでそのダルさを啓蒙する記事。 あらすじ 2日くらい前から左の脇腹のあたり、場所といったらちょうど俺が椅子に腰掛けたときにTシャツのタグが触れるくらいの位置にブツブツができた。 最近暑かったし汗疹かなんかかな、と思って無視していた。もしくは最近洗濯洗剤を替えたから溶け残ってかぶれたかな、と思ってた。 が、なんか痛い!ブツブツした部位に触れるたびに、針が引っかかったような、魚の骨が喉に刺さる代わりに脇に刺さったような、イテテテ、くらいの痛みがある。かゆくはない。寝返り打つと痛い。人間にマチ針が刺さってる感じ。出来の悪いフランケンシュタインみたいな感じになっている。 なんやろな〜と悠長に構えてそのことをSlackとかに書いてたらそれは帯状疱疹かもしれないからとっとと病院行ったほうがいいド〜と言われたので近所の皮膚科に行ったというわけ。 ダルさポイント1:

    帯状疱疹にならないほうがいい3つの理由 - Lambdaカクテル
    ymm1x
    ymm1x 2024/07/24
  • Bashで$(cat foo.txt)していませんか?$(< foo.txt)しよう - Lambdaカクテル

    以下の文書はBashを使う前提の話。 Bashにはコマンド置換(Command substitution)というのがある。$(another-command)のように、$()でコマンドを括る記法だ。これを利用すると、括弧で括られたコマンドが実行され、その標準出力が文字列として取り出され、$()全体を置き換える。シェルスクリプトでは非常によく見る技術だ。 この$()でファイルの内容を読み出すというのを最近見た。このような用法は非常によく見る。 foo-command $(cat params.txt) しかし、より良い書き方があるのでこれを提唱したい。$(< params.txt)と書くことで全く同等のことができる。しかも速いのでこちらのほうが完全に上位互換となる。 foo-command $(< params.txt) この方法はBashのドキュメントのコマンド置換のコーナーにちゃんと書か

    Bashで$(cat foo.txt)していませんか?$(< foo.txt)しよう - Lambdaカクテル
  • すべてのコードやライブラリ自体が技術的負債である / 高利率な技術と低利率な技術 - Lambdaカクテル

    技術的負債という言葉がある。もともとは、「楽するために導入したが、メンテにコストがかかるようになってしまった技術や構成」くらいの意味合いで使われているように思う。しかし、そもそも全部が負債ではないか、というのがこのメモの趣旨である。 負債 同僚とSlackで会話していると、「けっきょくどの言語を利用しても負債になるときはなるし、大抵負債になる」といった話になった。言われてみればそうで、基的にコードというものは書いたそばから負債になっていく。去年書いたコードのことも思い出せない。 そんな中で思ったのだが、そもそも、負債になるコードと負債にならないコードとがあったり、技術が「負債化する」のではなく、コードや技術そのものが負債なのではないか。そして、どの言語で書こうが負債からは逃れることができない。負債にならないコードは存在しない。ゆえに、コードや技術は無ければ無いほど良い、ということになる。

    すべてのコードやライブラリ自体が技術的負債である / 高利率な技術と低利率な技術 - Lambdaカクテル
  • sed awk make 互換性 つらい うんざりザリガニ - Lambdaカクテル

    仕事でsedのコードをパパッと書いて使ったら、コードレビューで動かんと言われてしまった。そういえば、同僚はMacで、おれはLinuxだったな。 まぁsedならよくある話なので、しょうがないと思ってawkで同じことをした。awkは比較的もうちょっと互換性がある気がしているからだ(どっこいどっこいな気もする)。 しかしまだ動かないと言う。もう、大絶叫だ。アー。おしまいだ。カスがよ〜〜〜と思いつつ(社会人なので絶叫はしない)、よく調べてみるとmakeの互換性だった。というのも、試しにbrew install makeしてGNU Makeで試してみてくれ、と言ったら、あっさり動いたからである。実はsedもawkも悪くなくて、そいつを呼び出してるmakeに互換性がなかった。ごめんな、お前たち悪くなかったよ。でもそれはそうと互換性はない。 define foobarstring ... endef #

    sed awk make 互換性 つらい うんざりザリガニ - Lambdaカクテル
  • JSONの差分を取ってJSON Patchを得るにはdiffsonがおすすめ - Lambdaカクテル

    こういうツイートを見た。 Scala (or Java) で、jsonのdiffをpatchファイルみたいな感じでわかりやすいテキストで出力してくれるライブラリないかなあ。そしてjacksonに依存してないといいな— Arthur (@Arthur1__) 2024年1月13日 現代のプログラミングではJSONの差分を取ったり、逆にパッチを当てるということがよくある。可能ならそれがPretty Printできると良い。 JSONの差分をScalaで取る方法についていくつか調べてみたのでメモ。 JSONの差分をどう表現する? JSON Patch diffson diffsonでJSON Patchを生成する diffsonでJSON Patchを適用する diffsonでJSON Merge Patchを生成する diffsonでJSON Merge Patchを適用する JSON Pat

    JSONの差分を取ってJSON Patchを得るにはdiffsonがおすすめ - Lambdaカクテル
  • エンジニアの生産性を支える楽観主義 - Lambdaカクテル

    あなたはポジティブっつー言葉は好きですか。自分はそんなに好きじゃない。好きじゃない人に読んでほしい気がする記事。 自分はひねくれているのでポジティブという言葉があまり好みではない。精神論っぽいし、どうしたってポジティブにならない物事もあるからだ。たとえば人が死んで落ち込んでいるときにポジティブになれというのはもはや無謀だ。ポジティブという言葉には価値判断が練り込まれている。だから無闇矢鱈にこの言葉を使っても現状を歪めるだけになる。現状を歪めるとおかしなことが起こる。だから好きではない。 とはいっても、ポジティブであったほうがよいのは確かだ。 そんな中、楽観的(optimistic)、だったらすごく便利そうだなと思った。これは現状に対する価値判断を含んでいない。現状を肯定した上で、じゃあどういう態度を取りますか?という言葉だ。 そもそも楽観的とはなんなのか。自分だったらこう考える。暮らしのレ

    エンジニアの生産性を支える楽観主義 - Lambdaカクテル
    ymm1x
    ymm1x 2024/01/06
  • CloudFront+S3構成だった自分のサイトをCloudflare+R2に移行した - Lambdaカクテル

    自分のウェブサイト( http://www.3qe.us/ )をCloudFront+S3構成からCloudflareを使った構成に乗り換えたので、ひっかかった点やつまづいた点などをメモしておく。 結論としては普通に移行できたが、メールとの兼ね合いでDNSまわりでちょっと配慮が必要な部分があるかも、といった具合。試したいときは全部読んでからチャレンジしよう。 ウェブサイトの静的配信にCloudFrontとS3を使っていた モチベーション: ALBのコストが高い Cloudflare 構成 Cloudflare Pages Cloudflare+ Denoflare + R2 修正 R2のstatic hosting機能を直接使う 手順 Webサイト追加 R2バケット作成 APIトークン作成 Denoflareでworkerをデプロイする 完了 まとめ オチ 参考文献 ウェブサイトの静的配信

    CloudFront+S3構成だった自分のサイトをCloudflare+R2に移行した - Lambdaカクテル
  • 去年は182本の記事を書いた人から見た、技術的なアウトプットに疲弊しないようにするコツ - Lambdaカクテル

    文脈: blog.arthur1.dev 自分は割とガンガンアウトプットする方で、たまにバズって嬉しいという品質のブログ(これ)をやっている。普段どのような心構えでやっているのか、そして続けるコツみたいなものについて書いてみようと思う(参考になるかは全くわかりません)。 あと一応断っておくと、タイトルにある "去年書いた182の記事" は非-技術的な記事も含んでいる(けど、だいたい技術記事なので許してほしい)。 どういうときに書くか どういうモチベーションで書くか どういうときにバズるか どのようにして続けるか 余談: 箇条書きの型を統一する 参考文献 あわせて読みたい どういうときに書くか 自分は基的にブログを「1年前(後)の自分が泣いて喜ぶ記事」というテイで書いている。自分が知りたかったことは他人も知りたかったはずだという仮説で書いていて、それを知りたかった人の総量はその技術のシェ

    去年は182本の記事を書いた人から見た、技術的なアウトプットに疲弊しないようにするコツ - Lambdaカクテル
    ymm1x
    ymm1x 2023/01/11
  • Nothing Phone買った、ガジェットとしてかなり良い - Lambdaカクテル

    でも結構話題になってたと思うけど、Nothing Phoneが最近ようやく日でも発売開始されて、それなりに流通しだしている。 自分はいちはやくゲットしたかったのでスペインAmazonで購入したんだけど、スペイン人がのんびりしているのか、なんの事情があるのか、結局日発売よりも遅いタイミングで到着してしまった。 ブルーレイかなんかが入ってそうな感じの箱が届く 箱が面白くて、チョコボールの封のあのビニールとか、ポッキーの箱みたいに、ビリビリと一周させて開封するようになっている。 びりびり すると、体とアクセサリー類を引っ張り出せる引き出しが登場して、超かっこいいスマホがお目見えするという仕掛けになっていて面白い。 じゃん! 完全にNothingの手玉に取られているというか、わくわくを感じさせるように演出が設計されているな~と思う。面白い。 保護シートでシールされた状態で出てくる うお

    Nothing Phone買った、ガジェットとしてかなり良い - Lambdaカクテル
    ymm1x
    ymm1x 2022/08/22
  • GitHub Actionのジョブ実行画面からPull Requestを辿れるようにした - Lambdaカクテル

    こういうのを作りました。 ジョブに紐付いたPull Requestへのリンクが表示される 行ったこと: リンクを生成するジョブを1つ生やした 綺麗な表示はStep Summary機能 (後述) の力を借りている ジョブ実行画面からPull-Reqに戻りたい GitHub Actionsのジョブ実行画面には、その実行元となったPull Requestへのリンクが存在しないため、困っていた。 よくあるシチュエーション: Pull Requestを見るとジョブがコケていた 様子を見に行くうちに履歴がどんどん深くなる -- ジョブ画面内での遷移はどんどんヒストリが積まれる Pull Requestに戻れなくなってしまう この話を同僚にしたところ共感の嵐だった。したがって隠れた需要がありそうだということが判明し、うまくやる方法を考えることにした。 結果、GitHub Action上でPull-Req

    GitHub Actionのジョブ実行画面からPull Requestを辿れるようにした - Lambdaカクテル
  • どのくらい人間の知性(と未来)を信頼するか(信じるしかないのだけれど) - Lambdaカクテル

    ここ最近、難しい話題や事件がたてつづけに起こって、滅入る。COVID-19の流行は終わる兆しを見せず、周期的に感染者数が増減している。みんなどこか疲れていて、マスクを外すことにあまり躊躇しなくなりつつある。世界的な話題としては、ロシアウクライナへ武力で侵攻し、数ヶ月経過した今でも戦況は膠着しがちで、終わりの見えない破壊と殺戮が行われている。そんな中、そこそこ近所の県で安倍元総理がよくわからん男に射殺(射殺と呼ぶにはいささか粗末な武器だったが)されてしまい、国中が騒然とし、戦慄し、あまりに信じがたいことが起こったので、どうしたらよいものかと互いの目を見合わせている。民主主義への暴挙としてテレビやネット的には消化されつつあるのだけれど、政治変革を目論んだテロリストが起こしたいかにもなテロではなく、たまたま不運なことになった人間が狂ってしまい、たまたまそこに大物政治家が現れ、運悪く銃の当たり所

    どのくらい人間の知性(と未来)を信頼するか(信じるしかないのだけれど) - Lambdaカクテル
  • 追われたり追われなかったりする人生と、巨大テック企業 - Lambdaカクテル

    id:kiryuanzu のTweetをたまたま見て、うなってしまった。 学生時代、前半で単位が取れなかったり後期は就活のために色々やったりで何かに追われるような感覚が常にあったように思うけど、社会人になってからはそういった感覚がなく穏やかな精神で保ち続けていることにやっと自覚し始めたのでその心持ちでどう人生をやっていくかを考えた方が良さそうに思う— 桐生あんず (@anzu_mmm) 2022年4月28日 たしかに自分も単位に追われる大学時代を送っていた。キャンパスには、浮世離れした悠長な感覚もフワフワ漂っていたし、それとは別に就活の名のもとに暗い光が外から差し込んできて、卒業する頃には社会という黒い太陽が登りはじめ、あたり一面を染め上げていくような不穏さも同時に存在していたのが、今となっては懐かしい。さきほど目の検査をしに大学病院に行ったけれど、そこもなんだか悠長な感じがしてキャンパス

    追われたり追われなかったりする人生と、巨大テック企業 - Lambdaカクテル
    ymm1x
    ymm1x 2022/04/30
  • ○ー○ー○○ー○ー○ーに当てはまる言葉をWikipediaから探してくるツールを自作した - Lambdaカクテル

    anond.hatelabo.jp 特定のリズムにあてはまる日語を頑張って探したくなることがたまにある。そして、定期的に↑のような記事が流行っては、仕事が手につかなくなる!このままでは、○ー○ー○○ー○ー○ーを考える時間によって日のGDPが押し下げられてしまう。 そこで機械の力を借りて特定のリズムを持った言葉を探せるようにした。 github.com 自分のマシンだと、だいたい2分で目当ての言葉を探してくれるようになった。 使い方 仕組み 素材選び リズム形式 実装 で、○ー○ー○○ー○ー○ーはなんなの 航空機抵当法 ローラースルーGOGO 西洋の命数法 包頭軌道交通 西寧軌道交通 No Need 2 Worry 総合治療効用 結語 使い方 基的にリポジトリに書いてあるけれど、やることは2つ。Scalaなのでsbtが必要。 Wikipediaのデータを落としてきて解凍する sbt "

    ○ー○ー○○ー○ー○ーに当てはまる言葉をWikipediaから探してくるツールを自作した - Lambdaカクテル
    ymm1x
    ymm1x 2022/04/18
  • 洗い物のインターフェイスを統一して全部食洗機に投入できるようにするといい - Lambdaカクテル

    先日食洗機を買ったけれど、フライパンだけは取っ手が食洗機に収まりきらずに洗えないという問題があった。仕方がないのでフライパンだけ手で洗っていたけれど、手で洗うためにはスポンジや通常洗剤を常時シンクに露出させておく必要があるがために、プログラミングで言うとフライパンのためだけに各種実装が行われているという不健全な状態になっていた。統一的に洗い物ができないのであれば、食洗機を導入したメリットが半減してしまう。 この問題を解消するためには、フライパンの大きさを小さくするか、取っ手が外せるフライパンを導入するしかない。今回は後者のアプローチをとることにした。 取っ手が取れるフライパン 最強 取っ手が取れるフライパンといってもいろいろなメーカーがある。例えばアイリスオーヤマも出している。一般に知名度でいえばティファールのフライパンが有名。 どう選ぶか。とりあえず一番知名度が高いということは、ユーザの

    洗い物のインターフェイスを統一して全部食洗機に投入できるようにするといい - Lambdaカクテル
    ymm1x
    ymm1x 2021/11/12
  • 独身会社員男性による、生活の崩壊を防ぐ珠玉のテクニクス集 - Lambdaカクテル

    今日は有休にしていたので会社の朝のスピーチを聞いてないのだけれど、同僚の生活が崩壊していて、チンするごはんとレトルトのハヤシライス、そしてポテチで生活していたところ順当に崩壊しているらしい。このままではチームが崩壊してしまう。なんとか私が防がねば。 さて、自分の生活もまあまあ崩壊しているが、崩壊を押し止めるために様々に対処しているので、そのテクニクスの一端をお見せすることで、同僚の生活の崩壊を防ぎ、あまつさえ生活が崩壊していない同僚からのアドバイスをいただこうという、持続可能性に配慮したエシカルな記事である。 カレーやハヤシは炭水化物枠です 鍋作ると良い パンより米のほうが良い気がする ちょっとはらへったら炭酸水買うと良い / 浄水器買うと良い 冷凍品買うとよい おやつ 便利な野菜 暮らしその他の知見 エコバッグ 時間錬成したほうがよいし、条件分岐減らしたほうがいい、ステートレスだと良い

    独身会社員男性による、生活の崩壊を防ぐ珠玉のテクニクス集 - Lambdaカクテル
  • チルダ(~)はどうしてホームディレクトリになるのか - Lambdaカクテル

    たまに忘れてコケたり,周りでも困っている人がいるようだったのでメモ. 追記(2020-09-06T11:25+09:00) この記事では仕組みのほうについて記述しており,由来については書いてなかったのですが,ブコメでホームディレクトリがチルダで表記されるようになった由来について幾人かの識者にご指摘いただきました. unix.stackexchange.com ちょうどHOMEキーと同じ場所にチルダキーがあったんですね.ありがとうございました. tl;dr ~/は$HOME/と同義である ~/が$HOME/に,ひいては実際の$HOME/の中身に展開されるのはシェル(e.g. bash, zsh, etc...)の拡張機能 シェルを使わなければその機能は使えないので,手で展開する必要がある シェルを使わない状況: プログラム中からパスをいじるような場合,DockerfileのCMDなど ~--

    チルダ(~)はどうしてホームディレクトリになるのか - Lambdaカクテル
    ymm1x
    ymm1x 2021/02/03
  • 本当に諦めて刺身にタンポポ乗せたほうがよいのか(その2 他記事への感想/読んで自分で考えるリテラシー) - Lambdaカクテル

    追記: 用菊へのリンクを追加しました note.mu ↑記事を読んだ.がバッテリーが足りなくなってしまったので途中で投稿してしまった. blog.3qe.us これはこれで話のスコープを小さくまとめることができたので良かったと思う. 一日電源に接続してバッテリーが97%まで回復した.同じUSB-Cであるスマホの電源があったので助かった形だ. 他記事情報 さて,冒頭の記事が投稿されてから様々な反響が巻き起こっている.活発な議論や意見交換が行われていて,とても良いことだと思う. www.megamouth.info この記事では,業態によっては人海戦術的な業務になっており,初心者が育ちにくい環境になっている,という点について触れている. また俺が前回書いた記事についての反応もある. soudai.hatenablog.com この記事では「プログラマを体系的に育てられる方法はあるか」という問

    本当に諦めて刺身にタンポポ乗せたほうがよいのか(その2 他記事への感想/読んで自分で考えるリテラシー) - Lambdaカクテル
  • 本当に諦めて刺身にタンポポ乗せたほうがよいのか(その1 プログラミングの勉強の順序の話) - Lambdaカクテル

    note.mu を読んだ.結論から先に書けや!といった旨のコメントをしてしまったが,「プログラミングを志す初心者のレベルが一定程度に達していない」という不満を表明している点については,同意する.自分も大学生であった頃に同期にプログラミングを教えた経験があるが,似た経験が多かったのである.ちょっと強く書いてしまってごめんネ. さて,初心者である以上,プログラミングについて知らないことがあるのは当然のことであるから,著者もその旨は了解しているはずだ. それを前提として考えてもプログラミングを身に付けるための知識や態度が身に付いていない初心者の存在こそを,彼(彼女)は憂いているのではないだろうか. この「学ぶ前提となるような知識や態度」について,上記記事の主張を見ながら,初心者が身に付けるべき知識・態度を探ってみてはどうだろう,と考え,この記事を書くに至った.俺は今正月で帰省中だが,充電器を実家

    本当に諦めて刺身にタンポポ乗せたほうがよいのか(その1 プログラミングの勉強の順序の話) - Lambdaカクテル
  • アウトプットに対する苦手意識について - Lambdaカクテル

    思った事とか勉強したことをまとめて書き出したり表現したりする、つまりアウトプットを、なかなか書けない時とするする書ける時というのがある。その違いは何なのかとか、アウトプットがうまくいかないときに、それを妨げている心理的障害は何なのかを掘り下げていくうちに、これ自体が一つのアウトプットになった。つまり今回は成功だ。 だいたい僕はアウトラインの途中らへんまでを構成して、そしてそれを半分くらい文章として肉付けしているあたりで厭になって辞めてしまうことが多いのだった。ブログの下書きにはそういった文書が積み重なっていて圧巻だ。 なんで途中で辞めてしまうのか。それはやはり劣等感と遠くでつながっている話であるようだった。僕はまず辞めてしまうタイミングに着目して、その時どういうふうに感じているか、自分と向き合ってみた。すると、僕がアウトプットの中途で書くのをやめてしまうのは、「大したことをやっているように

    アウトプットに対する苦手意識について - Lambdaカクテル
    ymm1x
    ymm1x 2018/04/13
  • 1