タグ

2022年6月20日のブックマーク (3件)

  • Next.js の非同期関数 piping と Error 設計

    getServerSideProps や API Routes で未認証リクエストを弾く方法はいくつかあります。例えば、公式では HOF(Higher-Order Function)を使った例が紹介されていて(withSession関数)認証要件ページで利用できるアプローチです。今回は別のアプローチとして、関数合成を用いたものを紹介します。 関数合成とは 現在 stage2 の Pipe Operator でご存じの方も多いと思いますが、reduce を使って複数の関数を合成するテクニックがあります。合成された関数はシリアルに実行され、戻り値が次関数の引数となり、演算することができます。例えば以下の例では、0 から順番に 100,200,300 と加算していき、最終的に 600 を得ることができます。 function pipeSync(...fns) { return (args) =>

    Next.js の非同期関数 piping と Error 設計
  • Visual Studio Code と Docker コンテナを使って開発する - Pepabo Tech Portal

    技術部データ基盤チームの @zaimy です。今回は、 Visual Studio Code(以下 VS Code)と Docker コンテナを使って開発環境を構築する方法を紹介します。 データ基盤エンジニアの開発環境として、Python を使用する単一コンテナを例に記述しますが、他の言語や Docker Compose を使う場合でも応用できます。 背景: M1 Mac (Monterey) に Python 3.8.12 をインストールできない 先日、業務で使用するマシンを Intel Mac から M1 Mac に切り替えたのですが、CPU アーキテクチャが異なることに加えて、OS のバージョンが上がったことで Apple Clang に下位互換性のない変更が入っており、業務上ある理由で必要な Python 3.8.12 のインストールが困難でした。 そこで、私の所属するチームは全員

    Visual Studio Code と Docker コンテナを使って開発する - Pepabo Tech Portal
  • ここがつらい! Slack API - Qiita

    半分ネタ記事です。あんまり真面目に書きません。 項目数が多いので,気力でなんとか書きます。分類は諦めます。 他にもある!っていうのがあったらコメント欄で教えて下さい。気が向いたら追記します。 公式の TypeScript 型定義がもはや型定義を諦めている 辛い度: ★★★★★ 辛い中でもこれはかなり上位に来るやつ。 こちらに OpenAPI 形式で仕様が定義されていて, https://github.com/slackapi/node-slack-sdk/tree/main/packages/web-api/types ここに仕様に基づいて TypeScript の型定義ファイルが吐かれるようになっています。 Git 管理されていないので,実際のリリースを見てみましょう。 https://unpkg.com/@slack/web-api@6.7.2/dist/response/Reacti

    ここがつらい! Slack API - Qiita