タグ

ブックマーク / laiso.hatenablog.com (14)

  • データベース中心の設計になってしまう問題と闘う - laiso

    『手を動かしてわかるクリーンアーキテクチャ 』の第二章の冒頭に登場する話題に共感したので紹介。 従来の多層アーキテクチャでは、データベースを中心にアプリケーションの 開発が行なわれます。この場合、Web 層はドメイン層に依存し、ドメイン層は 永続化層、つまり、データベースに依存することになります。そうなると、す べてのものは永続化層上に構築されることになり、その結果、いくつかの要因 が絡まり合って、問題が起きやすくなります。 手を動かしてわかるクリーンアーキテクチャ ヘキサゴナルアーキテクチャによるクリーンなアプリケーション開発 20p 手を動かしてわかるクリーンアーキテクチャ ヘキサゴナルアーキテクチャによるクリーンなアプリケーション開発 作者:Tom Hombergs,須田 智之インプレスAmazon 著者によれば、機能開発をデータベース中心に設計すると、ドメイン層と永続化層の密結合が

    データベース中心の設計になってしまう問題と闘う - laiso
    crexist
    crexist 2024/08/11
  • GitHub Copilot Workspace ファーストインプレッション - laiso

    概要 GitHub Copilot WorkspaceはAIが組み込まれた開発環境。「見えてきたプログラマー不要時代」で有名。テクニカルプレビュー中で、ウェイトリストに申請すると招待が来る。 githubnext.com 巷で言う”仕様書から開発自動化コーディングエージェント”とはちょっと違って、あくまでCopilot WorkspaceはCo-pilotの役割のみで、コーディングするのは自分、と考えると良い。今までブロック単位のコード補完だったものがレポジトリ全体に及んでる、というようなアナロジーだと思う。 自然言語を使用してタスクを指定し、AIが生成したコードの微調整、レビュー、繰り返しをユーザーが行うことができる。タスクの定義をIssueからインポートすると画像も認識する。 特徴 自然言語で目的(Task)、現在値・期待値(Specification)、変更計画(Plan)の各フェー

    GitHub Copilot Workspace ファーストインプレッション - laiso
    crexist
    crexist 2024/07/22
  • 更新されたら真っ先に聴いているおすすめポッドキャスト - laiso

    ポッドキャストはリスナーの存在が見えづらいらしく聴いてるとアピールしないと更新停止してしまいがちなので定期的に感想を書いていく 聴く環境について ポッドキャストの探し方 BUSINESS WARS / ビジネスウォーズ News Connect あなたと経済をつなぐ5分間 #ニュースコネクト Off Topic // オフトピック fukabori.fm バンクーバーのえんじに屋 texta.fm プログラム雑談 Misreading Chat mozaic.fm kkeethのエンジニア雑談チャンネル 購読一覧 聴く環境について クライアントはGoogle Podcastを使っているんですけど終了してしまうし*1最近はSpotifyに誘導されがちなので、今後移行先をどうしようか迷っている そもそもGoogle Podcastの購読一覧ってどこから見るんだろうと疑問だったが、https:/

    更新されたら真っ先に聴いているおすすめポッドキャスト - laiso
    crexist
    crexist 2024/01/01
  • 「しずかなインターネット」の技術スタックを調べる - laiso

    ポエム特化のZenn2との噂の「しずかなインターネット」を使いはじめたので、ユーザーとしてどんな技術が使われているのかを確認していく。 sizu.me おもむろにbuiltwith.comにかけてみる。 builtwith.com ここで分かる情報はブラウザのDevTools眺めてても得られるのであまり収穫はない。 前段にCloudflareのCDNサーバーがいて Next.jsで生成されたレスポンスを返している ことがわかる。 この時点ではキャッシュのみCloudflareなのか、Pages/WorkersでNext.jsのSSRごと動かしているのかは判断できない。 認証 Set-Cookie: __Secure-next-auth.session-token=が含まれているのでNextAuth.jsを使っているのが分かる。 next-auth.js.org Emailでサインアップする

    「しずかなインターネット」の技術スタックを調べる - laiso
    crexist
    crexist 2023/11/24
  • 人類には早過ぎるLLMの話 - laiso

    Sam Altman解任騒動は個人間の対立ではなく、組織構造の問題に注目すると感想が変わるなと思った。 www.nytimes.com この騒動についてはAIの安全性を重視する思想とOpenAIのビジネスの拡大を目指す戦略の衝突があるので、AIの安全性というトピックが重要になる。 僕は結構テクノロジー原理主義者みたいなところがあるので、自動車で人命が失なわれているとして人類が獲得した利益と比較できないし、SNSによって情報操作から暴動が起きたり、誹謗中傷で精神を病む人々が出現してもそれは—— まぁ困るよね・・(身内が事故やSNSで不幸にあったら絶対反転アンチになるだろうし) ぐらいの曖昧な態度だったんだけど、これをきっかけにAIの安全性についての研究等に関心を持つようになった。 安全性と言っても暴走ロボットが人類滅亡に向ってstep by stepで考えてください、みたいな昔のSF小説的な

    人類には早過ぎるLLMの話 - laiso
    crexist
    crexist 2023/11/23
  • いまさら振り返るRxSwift - laiso

    私とRxSwift 2013-2014年 2016-2017年 2018-2019年 何がIssueだったのか 非同期処理 Future/Promise パターンのかわり Observableパターン 宣言的UI 状態管理 どう解決されたか Swift Concurrency で非同期処理 UIKitからSwiftUIへ Combine やObservation おわりに 私とRxSwift 2013-2014年 C#な世界でLINQとかReactive Extensionsが高評価なことを知る。 iOSアプリ開発でもこれを生かせないかということを考えはじめる。ReactiveCocoaのことも知る。 MVVM for iOS - Speaker Deck サーバーサイド方面でもReactive Programming の話題が活発なことを知る。 netflixtechblog.com 直

    いまさら振り返るRxSwift - laiso
    crexist
    crexist 2023/10/29
  • Cursorはコードベースに質問できる - laiso

    VSCodeベースのCursorっていうGPT連携組込みエディタがあって、GitHub Copilot Chatと比較してみた。 cursor.sh 関心 読みテスト 脆弱性探知 OSS解析 書きテスト Cursor Copilot Chat 関心 GPTでソースコードからpatchを生成し続けたらプログラミングを自動化できるのでは???? - laiso ChatGPTのCode Interpreterのコードリーディング能力は結構優秀 - laiso で書いたようにコーディング(読み書き)を自動化したい。 Cursorをとくに薦めはしないけどLLM組込みエディタのUXの例としてわかりやすかったので紹介します。 読みテスト 脆弱性探知 例によって脆弱性診実習用アプリ(通称「やられサイト」)のSQLインジェクションを発見してもらうという会話をした。 ディレクトリを開いて「PHPファイルにS

    Cursorはコードベースに質問できる - laiso
    crexist
    crexist 2023/10/29
  • 最近のDHH「サーバーレスをやめろ」 - laiso

    (インターネットやめろジェネレーターで作成) Ruby on Rails生みの親であり最強の逆張りおじさんであるところのDHHが昨年あたりからしきりに脱パプリッククラウドの主張をしている。 これは彼らの会社が運用しているBasecampやHEYのインフラをAWSから自社保有のベアメタルサーバーへ移行しようとしているからで、実際に移行作業は進んでおり、今後5年間で700万ドルのサーバー費用を節約できるだろうという見込みがあるようだ。 world.hey.com world.hey.com あとタイトルに「サーバーレスをやめろ」と書いたけどDHHのファンボである筆者の誇張表現であり、サーバーレスというキーワードに関しての言及は正確には以下のポストを読んで欲しい。 world.hey.com この文章における「the computing cycles」とは、一台のコンピュータが持つ計算能力全体を

    最近のDHH「サーバーレスをやめろ」 - laiso
    crexist
    crexist 2023/03/02
  • Swiftがこの先生きのこるには - laiso

    Apple系デベロッパーの人たちがSwift普及のいかんともしがたい現状について話していたので考えてみた。 サーバーサイド用途 サーバーサイドSwiftは現状あまり利用したいケースが見当たらず、モバイルアプリ開発組織のマイクロサービス開発の共通化においてはJVMが枯れているのでKotlinの方に傾きがち。 WindowsVSCodeやIntelliJ系の非Xcode系開発環境のサポートのハードルも越えるぐらいモチベーションが必要である。 ただユーザー規模はそこそこあり、DenoDartやHaskellが有効な程度にはWeb開発用途には使えると思われる。苦労しそうだけど。 WasmWasmにしてブラウザサイドでコードを動かそうという向きもある。拡張用途では周辺ツールの多いRustやCのライブラリ資産のポートもありレッドオーシャンであることは変わりないが、Swiftに限らずWasmアプ

    Swiftがこの先生きのこるには - laiso
    crexist
    crexist 2022/07/14
  • Hotwireの感想 - laiso

    Hotwire https://hotwire.dev/ Turboを中心としたウェブアプリケーションのアーキテクチャの要素技術やコンセプトをPRするための名称 Hotwireというライブラリがあるわけではない 役割としてはMicro FrontendsとかReactのlearn once, write anywhereなどに似ている アプリケーション実装言語非依存だけど現状Railsアプリケーションしか実用できる基盤がない Hotwireの思想 アプリケーション開発者の生産性を上げることを目的にしていること サーバーサイド言語でフロントエンドを実装したいアレではなかった プログレッシブ(段階的に利用可能)であること 必要な技術だけを使い無駄なことをしないことで効率化する Hotwireが列挙する技術は1つづつ有効にできる クライアントサイドでViewを差分更新する現在の主流のシングルペー

    Hotwireの感想 - laiso
    crexist
    crexist 2021/01/24
  • この技術が分からん2020 - laiso

    2020年に作ったソフトウェアや開発技術をふりかえる で分かったことばかり書いたけど相変わらずなんべん勉強しても分からんな〜と思うことも多いのでそれもリストアップしてみることにした。 SQL 10年以上触っているはずだけど集合のイメージが頭に入ってこなくて全然文を組み立てられずにいる。ゆるふわORMを適当に使ってる。 CSS 10年以上触っているはずだけど制約のイメージが頭に入ってこなくて全然レイアウトを組み立てられずにいる。ゆるふわTailwindCSSを適当に使ってる。 Unity 何回もダウンロードして教材を買ってるんだけど。アセットを組み立てて何か意味のあるものを作るっている状態まで行かない。Flashは使いこなしていたはずなのになぜ UIデザイン 作る時に一定の理屈っぽいこだわりがあるんだけど、何か自分で作るというところまでいかない上に、深く理由を考えたことすらなかったので、こだ

    この技術が分からん2020 - laiso
    crexist
    crexist 2020/12/19
  • 個人開発者とCovid-19 Radarプロジェクト - laiso

    Endless road | During our roadtrip we turned off the highway… https://www.flickr.com/photos/98063470@N00/326044514 GitHubリポジトリ Covid19Radar に対して起ったことがかなり特殊な状況だったため、開発を追い掛けていた視線からレポートをします。 この記事の著者について 代表作のない個人アプリ開発者(かなしい) Covid-19 Radar Japan の人ではない GAFAMやCode for Japan の人でもない 4/8 Covid-19 Radarを発見する Covid-19 Radarとは、この時点ではシンガポールのTraceTogetherの日版を目指した個人開発者 廣瀬一海さんのアプリのリポジトリ 4月にContact Tracing技術について

    個人開発者とCovid-19 Radarプロジェクト - laiso
    crexist
    crexist 2020/06/22
  • どんなプログラミング技術の学習に投資すべきか考える時にやってること - laiso

    はじめに とにかく次の10年を生き残りたい - 怠惰を求めて勤勉に行き着く を読んでいて、かー自分もここ10年ぐらい同じような内省をし続けていたではないかと深く共感したので、その過程で身に付けたやり方を書くことにしました。 目的 プログラミング技術を学習する目的を決めます。僕の場合は ソフトウェアエンジニアとしての市場価値を上げる(他のエンジニアから尊敬されたい)とか 素晴しいアプリケーションを作れるようになりたい(エンジニア以外からも尊敬されたい) というものがあります。人によってはこれが「GAFAMNに入り渡米してメジャーデビュー」「OSSで一発当てる」「とにかくお金を稼いでアーリーリタイヤ」など様々かと思うので各自考えてください。 テーマ 目的が決ったら次は学習するテーマを決めます。僕の場合は「○○エンジニア」と呼称されている領域ごとに「この分野で先進的なネタは何だろう」というのをリ

    どんなプログラミング技術の学習に投資すべきか考える時にやってること - laiso
    crexist
    crexist 2020/02/06
  • スタートアップの技術選定とアプリケーションプラットフォーム - laiso

    photo by pexels.com *1 この記事を書いたきっかけ niconegoto.hatenadiary.jp 「PinQulをクローズします」にて事業のふりかえりをしている文章の中に「アプリビジネスは完全にダウントレンドにある」という一節があって、ここから話題が広がっていったのを機に上記の記事を読みました。そして色々思うところがあったのです。 アプリビジネスは完全にダウントレンドというのは自分も前から思っていた。リッチな体験、通知を遅れることはアプリの利点だが、他PFからの流入なども含めたプロダクトのコアな検証はwebモバイルが1番早いはず。— sadakoa (@sadako_a_) August 16, 2018 (Twitter上で多くの共感を集めた投稿) 例えば「モバイルアプリがWebに負けはじめた理由」ではWebアプリがモバイルアプリに比べて優れているでろうという点

    スタートアップの技術選定とアプリケーションプラットフォーム - laiso
    crexist
    crexist 2018/08/21
    やりたい(提供したい)ことと技術がきちんと一致しているか、という話だと思う。アプリさえ作っておけばOK、という話から本当にそれはアプリでやるべきことなのかというのを選定するフェーズに入ったということ
  • 1