tomoima525's blog

Androidとか技術とかその他気になったことを書いているブログ。世界の秘密はカレーの中にある!サンフランシスコから発信中。

あなたのしらない米国所得申告システム

確定申告の時期なので、米国の一風変わった(?)所得申告システム(Information Return)と連携するアプリケーションを開発した話について書こうと思う。 米国の所得申告 所得申告システム、FIRE 不思議なファイルフォーマット みよ、これがメジャーの仕様書だ …

シリコンバレーで起業したCTOの一日

「今って一日どう過ごしてるんですか?」「小さい子供いながら起業って大変じゃないですか?」 ってたまに聞かれるので、平日の朝から晩までの様子を書いてみる。 答えから言うと、”気を張らずロングランでやっていく”スタンスをとることでなんとかなる(なんと…

プロンプトエンジニアリングってソフトウェア開発?と感じるあなたへ ~ LLM開発とソフトウェア開発の違いの話

この記事はLLM開発におけるプロンプトエンジニアリングに違和感がある人に向けた、捉え方を変えてみたら少し印象が変わるかも、という提案をするものです。 かくいう自分もなんだか普通のソフトウェア開発とは異なると感じていました。この違和感の言語化を…

免税に使う在留証明書手続きには罠がある

数ヶ月ほど前に日本に旅行したときに免税のための在留証明書を発行したのですが、面倒だったのでメモ。 要点 “2年前から在留していた”ということを証明する書類を持っていく 手続きはなるべく窓口でやる ラップトップPCを持っていく です。ちなみにこの手続…

TypeScript の AWS Lambda function を2000倍見栄え良くする

AWS Lambda Advent Calendar 13日目の記事です。 qiita.com 今回は AWS Lambda function で TypeScript の 関数を書くときにコンソール上で2000倍(※当社比)見栄え良くする方法を書きます。 ちなみにここでの"見栄えの良さ"はAWS コンソール上での読みさすさ…

LLM開発のいろはをおさらいする~手法からツール、開発ノウハウまで

最近PoCやサービス開発を通じて、どっぷりLLMの開発をしています。この記事では最近の大規模言語モデル(LLM)を使ったアプリケーション開発の種類や手法、ツール群について一通りまとめました。よくあるチャットボットからReActといった最先端のものまで、こ…

Amazonのサーバレス→モノリス移行記事から学ぶこと

今年の3月頃、Amazon Prime のテックブログでストリーミング監視システムのマイクロサービスをモノリスに作り替えて90%コストを削減した記事が投稿され、ソフトウェア業界に波紋を呼びました。この記事の真相はなんだったのか、我々が学ぶべきことはなんだ…

Mom testによる効果的なインサイトを得るユーザーインタビュー

mom test 最近ユーザーインタビューを沢山しています。いかに自分のバイアスを持ち込まずに課題を見つけるかに腐心しているのですが、その中でとても役に立っているMom testという手法について紹介します。 Mom testとは 失敗する質問例 Mom testのエッセン…

ベイエリアで痔になった男

先日痔になってしまいました。すでに完治したものの、えらく大変だったので、どのように対応し、どのような薬が役に立ったか書きます。おもしろおかしく読んでやってください。 ※ ※

暗号学をCouseraで学び直した。ソフトウェアエンジニアに役立つ内容だった

修了書 couseraでスタンフォード大学が提供する暗号学のコースを修了しました。新生児の誕生という忙しい時期で心折れかけましたが、早起きや歩きながら講義を受けたりしなんとか乗り切りました。 www.coursera.org 内容素晴らしかったので、おすすめの理由…

Lambda LayerからRustベースのWebAssemblyを使用する

最近、とあるRustベースのモジュールを、Lambda function(Node.js)のサーバレスプロジェクトで利用できるか調査しました。その際に、 WebAssembly (wasm)をLambda Layerからどう活用するか検証したので、記事にまとめました。 RustベースのWebAssemblyを使用…

Self-Sovereign Identity の概要と考察

近年アイデンティティの新たな管理技術として注目されている Self-Sovereign Identity について、その発展や技術要素、現実世界におけるユースケースなどについて網羅的に解説している本書について、概要と考察をまとめました。

ゼロ知識証明を学ぶ ZKUniversity を修了しました

zku 3 月から参加していたゼロ知識証明を学ぶプログラム ZKUniversity を先日修了し、卒業生の NFT も貰ったので、感想や最終プロジェクトについて書き残します。 zku graduate NFT ZKUniversity とは Learn to Earn コースの構成 受講の感想 最初がつらい。…

海外出張中に Covid-19 にかかると大変

表題の通りなのですが、アムステルダムにて Devconnect というカンファレンスに参加した際に Covid-19(コロナ)が陽性となってしまい、2 週間も滞在を延長することになってしまいました。この記事では陽性診断から陰性になるまでの経緯と、海外出張先で Covid…

アムステルダムで Web3 カンファレンス Devconnect に参加した

2022年 4/17 - 4/25 にかけてアムステルダムで開催された Devconnect というカンファレンスに参加したので、そこで得た知見、ブロックチェーンや web3 が向かう先について感じたことをまとめます。 Devconnect とは 参加したイベント Layer2 Amsterdam zkSum…

パスワードレス認証サービスMagicとAmplify(Cognito)を使った認証システム

これは AWS Amplify Advent Calendar 2021 https://qiita.com/advent-calendar/2021/amplify 20日目の記事です。 Magic は Email や今はやりの web3 におけるパスワードレス認証を実現するためのツールです。 magic.link Magicのパスワードレス認証 AWS Ampl…

プロダクト思考とプロジェクト思考を理解し、優れたプロダクト、チームを作り出す方法

ツイッターで偶然見かけたプロダクト開発に関する一連のツイートが、プロダクトチームと経営陣、あるいは開発メンバーやプロダクトマネジャーの間に起きる摩擦を見事に言語化していました。 As they grow in size, teams within megacorps and startups tend…

ブロックチェーン知識ゼロから Solana ハッカソンに参戦するまでの学習記録

つい先日、Solana というブロックチェーンを使ったオンラインハッカソンに参加し、1 つのプロダクトをローンチしました。この記事はブロックチェーンについて全く無知の状態から2ヶ月後にスマートコントラクト(Solana ではプログラムと呼びます)を書き、ア…

ビジネス版マッチングサービス Lunchclub で人に沢山会っている話と英会話に困らない質問リスト

7 月に入って諸事情*1により時間が余裕ができたので、自分の世界を広げる行動の一環として、積極的に人と会うようにしている。"人に会う"といってもまだまだ対面で会うことは難しいので、もっぱらオンラインで。さまざまなジャンルの人と話すツールとして Lu…

Provisioned Concurrency を Amplify 上の Lambda Function で利用する方法

Provisioned Concurrency は、Lambda 関数を常にクラウド上に起動させておく機能です。Amplify はこの機能をサポートしていませんが、CloudFormation ファイルをカスタマイズすることで Provisioned Concurrency の生成を自動化することができます。この記事…

「なんとなく元気がない」状態には名前があり対応が必要だと全マネジャーは知っていたほうが良い

ポッドキャスト Today I Learned FMの28 回目はメンタルヘルスの話題について話しました。この記事はその収録に関する追記です。

初回の AppStore レビューで7回リジェクトされたので項目と対応をまとめとく

最近パイロットアプリを AppStore にリリースしました。最初の審査は通常よりもきびしいという噂の通り、いや、噂を通り越して審査を通るまでに 7 回リジェクト(メタリジェクト含む)され、休日も挟んで 12 日ほどかかりました。しんどかった気持ちを供養する…

AmplifyでひとつのResource内に複数のLambda functionを作る

背景 Amplify で新しい Function を追加すると、CloudFormation 上に新しいスタックが作成されます。プロジェクトの立ち上げ期はどんどん機能追加していくものですが、プロジェクトやチームの規模が大きくなると問題になる可能性があります。CloudFormation …

公園で出会った4ヶ国語話すベビーシッターが教えてくれた子供の多言語習得の秘訣

先日公園の砂場で娘と遊んでいたところ、向こうから2歳くらいの男の子とはつらつとした年配の女性がやってきた。ほどなくして娘が男の子と一緒に遊び始めたので、なんとはなしにその女性(Tさん)と立ち話を始めた。

Serverless Framework で作る mono repo AWS プロジェクト構成

サーバーレスなアーキテクチャを実現するサービスは世の中いくつか存在します。その中でも Serverless Framework(serverless.com) はベンダーに依存せずサーバーレス構築を提供するユニークなサービスです。サポートするベンダーも AWS, Google, Azure とい…

React Apollo MockProvider の知見をまとめた

MockProviderはReact Apolloクライアントのリクエストや結果をモックするのに推奨されている方法です。サンプルコードを見る限りではいい感じに動くように見えますが、実際に使うとなると、結構ハマりどころがあります。MockProviderの使い方のヒントについ…

React Nativeの次世代アーキテクチャTurboModuleとJSIの話

stand.fm 社が主催する React Native 勉強会にて Catching up with TurboModules という題名で未だ全容がはっきりしない TurboModules について発表しました。 speakerdeck.com この記事は発表では伝えきれない部分を補うものとなっています。 現状の Native…

Google Speech To Textでそこそこ使える書き起こしツールを作る

奥さんが自分のメディアを持っていて日々サステナビリティや育児について発信しており、その一環で色々な方にインタビューをしています。 www.misamisaz.com インタビューページ インタビューは録音した音源をもとに対話形式で書き起こすわけなのですが、こ…

Apollo Client v3 アップデートのハマりどころまとめ

先日会社のプロジェクトにて、ようやくApollo Clientをv3にアップデートしました。今回のメジャーアップデートはいくつか大きな変更点があり、我々のプロジェクトでは影響を受けたファイルは合計300以上になりました。この記事ではどのような変更があったの…

ポスト COVID-19にシリコンバレーは終焉するのか、あるいはポッドキャストを始めた話

先日 JABI(Japan America Business Initiatives)というグループが主催するイベントにて"シリコンバレースタートアップのリモート開発"という題目で登壇しました。おおまかな概要としては、 ベイエリアでは採用コストの問題からリモートチームを国内外につく…