並び順

ブックマーク数

期間指定

  • から
  • まで

4041 - 4080 件 / 16789件

新着順 人気順

*programmingの検索結果4041 - 4080 件 / 16789件

  • コード品質向上のテクニック:第51回 確信的な質問

    こんにちは。コミュニケーションアプリ「LINE」のモバイルクライアントを開発している石川です。 この記事は、毎週木曜の定期連載 "Weekly Report" 共有の第 51 回です。 LINEヤフー社内には、高い開発生産性を維持するための Review Committee という活動があります。ここで集まった知見を、Weekly Report と称して毎週社内に共有しており、その一部を本ブログ上でも公開しています。(Weekly Report の詳細については、過去の記事一覧を参照してください) 確信的な質問 ある開発者が、以下の関数 getOnlineUserStates のコードレビューの依頼を受けた状況を想定しましょう。 fun getOnlineUserStates(userIds: Set<UserId>): Map<UserId, UserState> { if (userI

      コード品質向上のテクニック:第51回 確信的な質問
    • テストでのデータベース単位の捉えかた - 日々常々

      データベース(に限らずあらゆる永続化リソース)を使用するテストをいかにして行うかはいつだって悩みの種です。この悩みは「どうやったらデータベースを使用するテストを行えるかわからない」ではなく「なんとかやってるけど、不満のようなものがある」というものになるかと思います。 やりかたはたくさんあるのですが、その優劣は条件なしに比較する意味がないくらい、条件に依存します。どんな選択肢も「この条件なら最適」と言えてしまうだけに、広いコンテキストで「こうするのがベスト」とも言いづらいのです。 前提 xUnit Test Patterns を下敷きにします。 ユニットテストでの話です。他でもある程度通じます。 具象イメージはSpringBootを使用するWebアプリケーションです。そこまでべったりな内容ではありませんが、背景にあるとご理解ください。他でもそれなりに通じます。 データベースを使用するテストで

        テストでのデータベース単位の捉えかた - 日々常々
      • COBOLをJavaで「リライト」の愚、SI企業の良識はどこに?

        SI企業の強み・弱みを分析し、SIビジネスの先行きについてまとめた書籍『SI企業の進む道 業界歴40年のSEが現役世代に託すバトン』。同書から抜粋し、「誰も指摘しなかったSI企業の課題」を連載で指摘する。今回は、SIerがユーザー企業の要望に応えられない根源的な理由を探る。(技術プロダクツユニットクロスメディア編集部) 既存ITシステムの問題をユーザー企業以上に理解しているのはSIerである。ところが、その問題をユーザー企業に説明し、対策をとろうとはしない。ではなぜ、SIerのIT技術者たちは口を閉ざしているのだろうか。 その答えはこうだ。問題を説明した後に「では、どうすればいい?」と問われても答えられないからである。つまり、既存ITシステムの変革をどのように行えばいいのか分からないのだ。 情報処理推進機構(IPA)が平成29年に出したレポート「システム再構築を成功に導くユーザガイド」には

          COBOLをJavaで「リライト」の愚、SI企業の良識はどこに?
        • Gitブランチフロー規約

          免責事項 有志で作成したドキュメントである。フューチャーには多様なプロジェクトが存在し、それぞれの状況に合わせて工夫された開発プロセスや高度な開発支援環境が存在する。本ガイドラインはフューチャーの全ての部署/プロジェクトで適用されているわけではなく、有志が観点を持ち寄って新たに整理したものである相容れない部分があればその領域を書き換えて利用することを想定している。プロジェクト固有の背景や要件への配慮は、ガイドライン利用者が最終的に判断すること。本ガイドラインに必ず従うことは求めておらず、設計案の提示と、それらの評価観点を利用者に提供することを主目的としている掲載内容および利用に際して発生した問題、それに伴う損害については、フューチャー株式会社は一切の責務を負わないものとする。掲載している情報は予告なく変更する場合がある はじめに ​Gitブランチ管理の運用ルールをまとめる。以下の想定で作成

          • Claude CodeとGitHub Issueを使った全自動開発について

            Claude CodeとGitHub Issueを使った全自動開発について注意事項 #現在多数の方に閲覧されていますが、こちらの記事はまだ試験段階であり、改善の余地はたくさんあると考えています。 使用する際は十分ご注意ください。 このコードを使用したことで発生する不利益については、筆者は一切責任を負いません。 ご了承ください。 準備 #wikiは使用しないdocsディレクトリで管理するREADME.mdにプロジェクト概要を書くGitHub Issueのtemplateを作成する.github/ISSUE_TEMPLATE/配下先にIssueを作成しておくdocs/db-schema.md から docs/er.md を作成ログイン画面作成User一覧作成などなどghコマンドをインストールする出先からの実行専用スクリプト #Priority & issue番号で並び替えして最初のissueを

            • 「Linux」の習得に役立つゲーム5選--コマンドラインなどを無料で楽しく学ぼう

              多くの人は「『Linux』の習得はマニア向け」と考えがちだ。しかし、ありがたいことに、現在のデスクトップLinuxは非常に使いやすくなっている。導入をためらうような問題はほとんどなくなっており、心配する必要はない。今のLinuxディストリビューションでは、コマンドラインや高度なツール(例えば、「YaST」など)を使いこなす必要はない。 とはいえ、Linuxをより深く活用したい人や、Linux管理者としてのキャリアを目指す人にとっては、コマンドラインを含め、さらに多くの知識が求められるだろう。これを聞いて不安になる人もいるかもしれない。特に、ターミナルウィンドウを開いたことがない人や、コマンドを入力した経験がない人にとっては、ハードルが高く感じられるかもしれない。 「ゲーム化された学習」をまだ体験したことがない人は、ぜひ試してみてほしい。ゲームを使えば、学習が簡単になるだけでなく、楽しく続け

                「Linux」の習得に役立つゲーム5選--コマンドラインなどを無料で楽しく学ぼう
              • なぜプログラマはずっと夢中でいられるのか? - megamouthの葬列

                息子がずっとパソコンに向かっていて困っています。 暇さえあれば緑色の英字だらけの真っ黒な画面を見つめていて、正直言って、傍から見ていて異様ですし、少ない家族との会話の間も心ここにあらずといった様子です。 昨日など、私との会話を途中で打ち切ったと思うと、自室にかけこんで、夕食まで出てきませんでした。 プログラミングの勉強が進学や就職に有利といっても限度があります! 息子は本当にこのままで良いのでしょうか?ITエンジニアをしている夫は「ほっとけばよい」と話になりません。どこか相談できる病院を探したほうが良いでしょうか? ふむ、それは困ったことだね。息子さんはなかなか筋がいいようだ。(今どき、マトリックス風のエディタテーマを選ぶなんてところが特に) まず、お母さんに言っておきたいことは、ある時期のプログラマ、特にプログラミングを覚えて自分の思考が一定の成果と結びつきだした時期のプログラマにとって

                  なぜプログラマはずっと夢中でいられるのか? - megamouthの葬列
                • 快適なVSCode生活を!!

                  この記事は新歓ブログリレー2026の41日目の記事です。 はじめに こんにちは!! 主にアルゴリズム班とゲーム班で活動している25BのHaruです!! 新入生のみなさん、大学生活が始まってはや一週間が経ちましたが、キャンパスライフはいかがですか? さて、traPに入会した新入生の中には、「大学からパソコンでいろいろやってみたいけど、何すれば良いかわからない」という方も多くいるのではないでしょうか。 この記事では、プログラミングをするなら絶対使うことになるであろうVSCodeでの作業を快適にするあれこれをまとめていきます!! VSCodeってなに? VSCode (Visual Studio Code) は、Microsoftが提供している無料で超軽量で高性能なオープンソースエディタです。 要するに、めっちゃ凄いテキストエディタ(プログラムとか書くやつ)です。 世の中にはたくさんのテキストエ

                    快適なVSCode生活を!!
                  • たった200行の純粋なPythonコードだけで構成されGPTの学習と推論を実行できる「MicroGPT」をインタラクティブに解説

                    MicroGPTは作者のAndrej Karpathy氏によるとLLMをどこまで簡素化できるのかを10年にわたり追求した集大成とのことで、依存関係のない純粋なPythonで書かれた200行の単一ファイルのみであるにもかかわらずGPTに学習と推論を行わせることができます。動作原理についてはAndrej氏のブログで説明されていますが、より初心者向けにスクリプトを用いたインタラクティブな解説を行っているサイトが誕生していたのでどれくらいわかりやすいのか実際に体験してみました。 MicroGPT explained interactively | growingSWE https://growingswe.com/blog/microgpt ◆MicroGPTとはどんなモデルか MicroGPTは3万2000件の人名を通じて統計的パターンを学習し、あたかも実在するかのような人名っぽいものを生成する

                      たった200行の純粋なPythonコードだけで構成されGPTの学習と推論を実行できる「MicroGPT」をインタラクティブに解説
                    • Pwn2OwnでMicrosoft Teamsをハッキングして2000万円を獲得した方法/ Shibuya.XSS techtalk #12

                      Shibuya.XSS techtalk #12 の発表資料です。 English version is here: https://speakerdeck.com/masatokinugawa/pwn2own2022

                        Pwn2OwnでMicrosoft Teamsをハッキングして2000万円を獲得した方法/ Shibuya.XSS techtalk #12
                      • 「人間がコードを書く時代は終わった」議論は2種類のコードを混同している

                        ちょうど最近このような投稿を連続して見かけたので、「コード」が何を指しているのかの自分の理解を整理しておきます。 世の中的に見ればソフトウェアエンジニアは未だに売り手市場であると言えると思うので、上記の指摘について「そんなことはないはず」と反論する人も多いと思います。 また、上のRyanさんのツイートでも That's not to say SWEs don't have work to do と書かれています。これも「ソフトウェアエンジニアはコードを書く仕事なのだから、AIが書くようになるなら仕事がなくなるだろう」と解釈されがちなところを、そうではないと念を押しているのだと思います。 では、「AIがコードを書く」とはどういうことで、その場合にソフトウェアエンジニアの仕事はどうなるのでしょうか? ここで、我々がコードと呼んでいるものを区別することが理解に役立つと思います。 「コード」は大き

                          「人間がコードを書く時代は終わった」議論は2種類のコードを混同している
                        • iTerm2の連携機能によって意識せずにtmuxを使えて便利 - Mitsuyuki.Shiiba

                          Claude CodeのAgent Teamsおもしろいなーって思っている せっかく使うならtmuxで使うとAgent同士が会話している様子も見えて面白いよなぁって思うんだけど、僕は以前にtmuxをやめてiTerm2だけを使っていくことにしたんだよなー またtmuxをメインにする???いやーでもちょっと手間だなぁ・・・ってぼーっと考えてて、あ、そういえばiTerm2ってtmuxインテグレーションの機能があるんだったなって触ってみたら、これでいいじゃん!!!ってなった iTerm2のtmux integration tmux Integration - Documentation - iTerm2 - macOS Terminal Replacement iTerm2上で tmux -CC を実行するとtmuxが起動するんだけど、見た目はiTerm2なのだ。えっと、何を言ってるか意味がわから

                            iTerm2の連携機能によって意識せずにtmuxを使えて便利 - Mitsuyuki.Shiiba
                          • 開発生産性を上げるために開発をする前に考えていること - Findy Tech Blog

                            こんにちは。Findy Freelanceの開発チームでエンジニアをしている2boです。 この記事では私が開発生産性を上げるために開発をする前に考えていることについて書きます。 ここで「開発をする前」というのは次のようなタイミングを指します。 PdMなどから新規施策の仕様について相談を受けたとき 起票された開発Issueを最初に確認するとき 自分がIssueを作成するとき なぜこのタイミングで考えるかというと、開発を進める上での方向性を間違える可能性を減らし後から軌道修正をしやすくするためです。 なおこの記事においては、開発生産性を「開発成果物の提供価値を投入リソースで割ったもの」とします。 いくら頑張って開発をしても、そもそもやるべきことの方向性を大きく間違えると提供価値が0に近づくため開発生産性が低下します。 特に開発が高速なチームで方向性を誤ると高速に間違った方向へ進んでしまうことに

                              開発生産性を上げるために開発をする前に考えていること - Findy Tech Blog
                            • DevinとCursorを比較してみてわかった、マルチタスクエンジニアにはDevinこそが救世主である理由

                              DevinとCursorを比較してみてわかった、マルチタスクエンジニアにはDevinこそが救世主である理由 はじめに こんにちは。Ubieでプロダクト開発エンジニア兼社内入稿システムのPOをしている、えんぴつと申します。 「完全自律型AIソフトウェアエンジニア」Devinと、次世代AIコードエディタCursor。どちらも大きく注目されていますが、「実際どう使い分けるの?」「スクラムや日常業務に組み込むには?」と悩む方も多いのではないでしょうか。 私自身の業務内容としては、 プロダクトの実装 Epicの立案やPBIの起票 レビュー対応・ドキュメント整備 採用関連やチーム外のステークホルダーとのアライン という感じで開発以外のタスクもなにかと抱えています。 まとまった時間を取りづらいため、Devinのようにスキマ時間を使って開発タスクを進められる仕組みは本当にありがたいです。一方、Cursor

                                DevinとCursorを比較してみてわかった、マルチタスクエンジニアにはDevinこそが救世主である理由
                              • 衝撃!NotebookLMの「隠し機能」を解放する自動化ツール|tyo

                                Google NotebookLMは、複雑な資料を読み解き、対話を通じて知見を深めるための強力なツールとして、瞬く間に多くのユーザーを魅了しました 。 しかし、日常的に使い込むほどに、エンジニアやパワーユーザーの間ではある種の欲求不満が募るようになります 。 「生成されたコンテンツをまとめてダウンロードしたい」 「特定のリサーチプロセスを自動化したい」 「蓄積したデータを他のアプリケーションへシームレスにパイプライン化したい」 これらはすべて、Webインターフェースの制限に起因する壁です 。 こうした「Web版のその先」を求める層にとって、ブレイクスルーとなるプロジェクトが登場しました 。それが、非公式Python APIライブラリである「notebooklm-py」です 。 このライブラリは、NotebookLMが持つポテンシャルをプログラムから直接制御可能にすることで、私たちの知的生産

                                  衝撃!NotebookLMの「隠し機能」を解放する自動化ツール|tyo
                                • Twitter、複数の幹部を解雇

                                  米Twitterのコンシューマ担当ジェネラルマネジャー(GM)を務めるカイボン・ベイクプール氏は5月12日(現地時間)、パラグ・アグラワルCEOから解雇を言い渡されたとツイートした。 育児休暇中のベイクプール氏はアグラワル氏から「チームを別の方向に導きたいので去るように頼まれた」とツイートした。 収益担当GMのブルース・ファルク氏もアグラワル氏に解雇されたとツイートしたがその後そのツイートは削除し、Twitterでの自分の実績とチームへの感謝をツイートした。 両氏は、アグラワル氏がジャック・ドーシー氏の後任CEOに就任した際に結成した幹部チームに属していた。 アグラワル氏は両氏のツイートに対し、感謝のリプライを返している。 ベイクプール氏によると、製品担当上級副社長のジェイ・サリバン氏が暫定的に両氏の任務を引き継ぐ。サリバン氏はMozillaのCOO(最高執行責任者)やGrouponのCP

                                    Twitter、複数の幹部を解雇
                                  • typeとinterfaceって結局どう使い分ければ良いの?

                                    TypeScriptではtype alias syntax(型エイリアス構文)とinterface declaration(インターフェース宣言)を使って型を定義できます。 おおよそ両者同じことができるので、どちらを使うか迷います。 両者の使い分けに関する記事は沢山あります。 これらの記事を読んで基本的にはtypeを使えば良いと思っていました。 ですが最近以下のことがあり、typeとinterfaceの使い分けがわからなくなってしまいました。 typeよりもinterfaceの方がコンパイルのパフォーマンスが良いという話を耳にした。 interfaceしか使えない特定の機能を知った。 そこでtypeとinterfaceの違いを学んで、どう使い分ければよいかを整理しました。 type, interfaceそれぞれのメリット typeのメリット interfaceで表現できないことが表現できる

                                      typeとinterfaceって結局どう使い分ければ良いの?
                                    • Pull Requestを小さくする戦略 - 開発チームのパフォーマンス向上のための第一歩 - Agile Journey

                                      Agile Journeyをご覧の皆さん、こんにちは。ZOZOの御立田です。 私が所属する株式会社ZOZOは、「世界中をカッコよく、世界中に笑顔を。」を企業理念として掲げ、ファッションEC「ZOZOTOWN」、ファッションコーディネートアプリ「WEAR」などの各種サービスの企画・開発・運営や、「ZOZOSUIT」「ZOZOMAT」「ZOZOGLASS」などの計測テクノロジーの開発・活用をおこなっています。また、カスタマーサポート、物流拠点「ZOZOBASE」を運営しています。 ファッションコーディネートアプリ「WEAR」やショップスタッフの販売サポートツール「FAANS」を手がける、私が所属するブランドソリューション開発本部では、「開発生産性を3倍に」を目標に掲げ、多くの改善を進めています。 「開発生産性」をどのように定義するかには議論がありますが、まず私たちが向き合ったのは「仕事量の生産

                                        Pull Requestを小さくする戦略 - 開発チームのパフォーマンス向上のための第一歩 - Agile Journey
                                      • ソフトウェアエンジニアは、〇〇を作れと言われた時まず何から考えますか?プログラミング言語ですか?デザパタですか?

                                        回答 (23件中の1件目) 案件ですね。 「○○を作れ」という方がきっちりと仕様書を起こしてくれるなら問題ないのですが、要求仕様に対する「納入仕様書」を起こします。 それで依頼者と合意を取った上で設計に入ります。 「プログラミング言語ですか?デザパタですか?」何を言っているんでしょうね。そんなの後回しです。「まず、何を作るのか」が一番最初に来ます。 https://note.com/hantani/n/ndf51c3ece4ae 普段プログラム作る時も大体同じです。 案件定義 ユースケース シーケンス図 クラス図 ーーー(ここまではプログラム言語に依存しません)--- ...

                                          ソフトウェアエンジニアは、〇〇を作れと言われた時まず何から考えますか?プログラミング言語ですか?デザパタですか?
                                        • MCPサーバーを利用することはセキュリティ的に安全か?

                                          1. はじめに Model Context Protocol (以下、MCP) は、大規模言語モデル (LLM) と外部データソースやツールを連携させるための便利なオープンプロトコルです。 一方で、MCPサーバーは誰でも作成してGitHubで公開できるため、場合によっては悪意のあるコードが含まれている可能性も否定できません。自作のMCPサーバーに脆弱性を埋め込んでしまうのは自己責任ですが、実際には、公開されているMCPサーバーをマーケットプレイス経由で使用する場合、どの程度の安全性が期待できるのでしょうか? 本稿では、MCPサーバーのマーケットプレイスの現状と、利用する上での注意点について解説します。 1.1. TL;DR 「誰かが何かを保証してくれるわけで、自己責任で使いましょう」というのが前提です。その中でも一定信用して良いと思われるのは、以下の2つです。それ以外は、公式な保証がない状

                                            MCPサーバーを利用することはセキュリティ的に安全か?
                                          • Gemini 3 による知性の新時代

                                            Google and Alphabet CEO スンダー ピチャイからのメッセージ約 2 年前、これまで会社として取り組んできた中で最も科学的であり、プロダクトの一つである Gemini 時代が始まりました。それ以来、皆さんにこれほどご活用いただいていることに、喜びを感じています。AI による概要の月間利用者は現在、 20 億人に達し、Gemini アプリの月間ユーザー数は 6 億 5,000 万人を超え、Google Cloud のお客様の 70 %以上が Google の AI を活用しています。また、1,300 万人の開発者が Google の生成モデルを基盤に開発を進めています。これらは私たちが目の当たりにしているインパクトのほんの一端に過ぎません。 最先端のインフラから世界トップクラスの研究、モデル、ツール、そして世界中の何十億もの人々に届く製品に至るまで、AI イノベーションに

                                              Gemini 3 による知性の新時代
                                            • アジャイル、とりわけスクラム開発をやるときに立ち向かわなければならない壁の話 - freee Developers Hub

                                              この記事は freee Developers Advent Calendar 2022 の3日目です。 このドキュメントはなにかの答えをあたえるというより、アジャイルやスクラムを有効化させる上での障害はこれであるということを検討するためのドキュメントです。壁はすべての環境で発生するわけではないですが、そういう壁があるということを認識することで、転ばぬ先の杖となるような文章になることを目指しています。そして、その解決方法は示さず「意図的に不完全」にしています。これを読んで「なぜ意図的に不完全にしているのか」を味わっていただければと思います。(あるいは、私自身のエクスキューズかは読んでる皆様にその判断を委ねます) 前提: アジャイル開発とは アジャイルソフトウェア開発(以後、アジャイル開発)はアジャイルソフトウェア開発宣言で示されている価値の実現を目的とした開発手法です。宣言では4つの項目でそ

                                                アジャイル、とりわけスクラム開発をやるときに立ち向かわなければならない壁の話 - freee Developers Hub
                                              • なぜタスク管理をNotionからGitHub Projectsへ移行したのか - AI時代の開発効率を最大化する選択

                                                こんにちは。PIVOTでソフトウェアエンジニア、スクラムマスターを務めて(いる|いた)@tawachanです。 この記事では、PIVOTのプロダクトチームがNotionからGitHub Projectsへタスク管理ツールを移行した経緯と、具体的な実装方法について紹介します。 背景:AIファーストチームへの変革 詳細な背景については、前回の記事「スクラムからカンバンへの移行——ソフトウェアエンジニアがマネージャーになる時代に」で、チームの思想やプロセスの変化について紹介しました。今回は、その思想を支える具体的なツールの変化に焦点を当てます。 前回の記事で紹介したように、私たちのチームはAI時代の開発に合わせてプロセスを見直し、スプリントベースからカンバン方式へ移行しました。しかし、プロセスを変えるだけでは不十分でした。 開発速度が上がると、次に見えてくるのはツール自体のボトルネックです。特に

                                                  なぜタスク管理をNotionからGitHub Projectsへ移行したのか - AI時代の開発効率を最大化する選択
                                                • 新言語『TypoScript』を作った - Qiita

                                                  この記事は、クソアプリAdvent Calendar2021の20日目(ホノルル時間)の記事であると同時に、GMOペパボエンジニア Advent Calendar 2021の21日目(日本時間)の記事でもあります。 みなさん、TypeScript使ってますか?TypeScriptはJavaScriptの世界に秩序をもたらす素晴らしい言語ですね。 しかし世界には光の秩序だけでなく闇の混沌も必要です。 という訳で、JavaScriptに闇の混沌をもたらす新言語を作ってみました。 その名も『TypoScript』です。 TypoScript is 何 TypoScriptとは何か。まずはこちらのコードをご覧ください。 function fizz_buzz(count) { for (var i = 1; i <= caunt; i++) { if (i % 3 === 0 && i % 5 ==

                                                    新言語『TypoScript』を作った - Qiita
                                                  • 「AI駆動PM」と「SDD(仕様駆動開発)」で要件定義書・設計書の精度を劇的に向上させる方法|MAKE A CHANGE, inc

                                                    皆さん、AI駆動PM(プロジェクトマネジメント)していますか? 活用の度合いは各社・個人によると思いますが、私は最近「AI駆動PM」と「SDD(仕様駆動開発)」が非常に相性が良いのではないかと考えるようになりました。 きっかけはトランスコスモスさんの記事きっかけとなったのは、CodeZineのトランスコスモスさんのVibe Codingについての記事です。 この記事では、要件定義書を作成するにあたり、5つのLLMにレビューをさせて、3つ以上のLLMから承認がないと先に進めないシステムが紹介されていました。 このやり方を読んだとき「これだ」と思い、弊社でも取り入れてみることにしました。 SDD(仕様駆動開発)との組み合わせまず元となる要件定義書をどう作るか考えました。 日々AI駆動PMを実践しているので、ミーティングの議事録を元にLLMに「この議事録の内容から要件定義書を作成してください」と

                                                      「AI駆動PM」と「SDD(仕様駆動開発)」で要件定義書・設計書の精度を劇的に向上させる方法|MAKE A CHANGE, inc
                                                    • GopherがRust入門したので違いをまとめてみた

                                                      はじめに ウホウホ。 Rustを使い始めてちょうど2年くらい経って、すこしRustのことがわかってきたので、改めてGoとRustのそれぞれの違いを整理したいなと思いこの記事を書きました。 筆者はウェブ開発の経験しかないので、ウェブを中心にまとめています。 気づいたらかなりな量になってしまったのとGopher向けにRustを紹介するような記事になってしまいましたが、よければ読んでみてください。 筆者について Goを使い始めて7年ほど経っていて、これまでCLI/TUIツールをいくつか作ってきました。 スペシャリストではないですが、プロダクトでGoを書く分には特に問題ないレベルかなと思います。 Rustは2022年夏ころから使い始めてちょうど2年ほど経ちました。 なにかツールを作ったわけではないですが、勉強がてらにいくつか作ったもの・書いた本があります。 普通にRustを書く分には問題ないですが

                                                        GopherがRust入門したので違いをまとめてみた
                                                      • ikeryo1182.com - ikeryo1182 リソースおよび情報

                                                        This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

                                                          ikeryo1182.com - ikeryo1182 リソースおよび情報
                                                        • ライブラリゼロの20行でReduxもどきを実装して、Reduxを完全掌握しよう!!

                                                          はじめに Reduxは遠い昔に誕生したものなので、いまReduxを使っていない人も多いかもしれません。 Reduxは、出現当時はそれほど大きなソフトウェアではなかったのですが、ときが経つにつれて、いろいろな便利関数たちが現れてきて、そのせいで今からReduxを調べる人は、何が本質なのかを調べるのが難しくなっていると思います。 そこで3分でReduxもどきを実装しました。こちらです。20行!! じゃーん! JavaScriptでうごきます!! // 実装 const createStore = (reducer) => { let state = 0; const listeners = []; const dispatch = (action) => { const newState = reducer(state, action); state = newState; listeners

                                                            ライブラリゼロの20行でReduxもどきを実装して、Reduxを完全掌握しよう!!
                                                          • AIが優れているのではなくグーグルが劣化しただけ

                                                            「AIを使えばやりたいプログラミング言語のコーチがタダでしてもらえるんだぜ!」 くだらん。 昔のグーグルだったら「[プログラミング言語名] 勉強 やり方」でググったら最高にイカしたページにたどり着いた。 作りたいシステムがあっても「[言語名] [やりたいこと] コード」でググれば欲しかった情報がドンピシャでガッポガポ。 そんな黄金時代があった。 インターネットの黄金時代。 ADSLが世界をつなぎ始めた世界、ネットの海が光速で流れていなかった穏やかな時間。 あの頃、ネットの海から求めていた知恵を引き上げるのは今よりずっと簡単だった。 今のネットは汚れきったヘドロの塊であり素のまま飲めば猛毒となる巨大な汚水、まるで東京湾だ。 AIがやっていることはネット上に溢れた有象無象を濾し取って、少しだけ昔のインターネットに近づけるだけの作業でしかない。 昔はほんのちょっとした言葉の組み合わせでたどり着け

                                                              AIが優れているのではなくグーグルが劣化しただけ
                                                            • 脳に収まるコードの書き方 - hitode909の日記

                                                              アーキテクチャを理解可能にするために、同時に見るべき関心事は最大7個にしよう、という話がよかった。 よくわからない難しいコンポーネントの話をしてると、「これってこういうこと?」「それは〇〇という概念があって…」というのが延々と続いて、話が全然進まない、ということがある。 そういうときは、抽象を見つけるのに失敗していて、フラットに様々な概念を並べてしまっている、と言える。 適切に意味をまとめていって、中心概念と、それの付随する概念が最大6個となるように、六角形の花、ヘックスフラワーにプロットしよう、というアイデア。で、そのフラワーの1セルを拡大すると、さらに、中心概念と付随する概念6個、というかたちで、入れ子にしていく。 ソフトウェアの分割統治っていうと新しい話ではないけど、フラットな20個の概念に分割されても、覚えてられない。 この本では人間が一度に覚えていられるマジカルナンバーを参照して

                                                                脳に収まるコードの書き方 - hitode909の日記
                                                              • AIが勝手に議論を深めてくれる弁証法エンジンの構築|深津 貴之 (fladdict)

                                                                AI哲学者ヘーゲルさんに、無限に議論を思索してもらえる穢土転生コードを書いてみた。GPT3.5でも4でも動きます。 弁証法ってなに?ヘーゲルって哲学者おっさんが考えた、思索を深めるメソッド。 ある意見(テーゼ)に対して、あえて反対意見(アンチテーゼ)をいって、それから意見と反対意見を統合(ジンテーゼ)することで議論が深まるよ…というもの。 ・筋トレは健康によい(命題 = テーゼ) ・筋トレで体を壊すこともある(反対命題 = アンチテーゼ) ・筋トレは健康によいが、やりすぎや間違った方法には注意しなければいけない(総合命題=ジンテーゼ) みたいな考えかた。 以下、勝手に無限ループでヘーゲル先生が、弁証法を繰り返してくれるプロンプトです。 弁証法エンジンのプロンプトあなたはヘーゲルの仮想人格として振る舞う、形而上の弁証法シミュレーターです。 ユーザーの入力「仕事にいかずにゲームをしていたい」に

                                                                  AIが勝手に議論を深めてくれる弁証法エンジンの構築|深津 貴之 (fladdict)
                                                                • How to use bookmarks in bash/zsh

                                                                  Moving around your terminal effectively is going to make you more productive. Sometimes you need to quickly move between different projects or directories located in different places in your machine. For instance, maybe your code lives in ~/project/my-project, but the configuration of the server is in /etc/... Remembering locations is inefficient, and often they take longer to write. What if there

                                                                    How to use bookmarks in bash/zsh
                                                                  • Cloudflare、NGINXに代えて自社開発のRust製HTTPプロキシ「Pingora」をグローバルCDNに採用。性能向上しつつCPUとメモリ消費を3分の1に

                                                                    Cloudflare、NGINXに代えて自社開発のRust製HTTPプロキシ「Pingora」をグローバルCDNに採用。性能向上しつつCPUとメモリ消費を3分の1に CDNプロバイダのCloudflareは、同社のグローバルなCDNの基盤として長らく利用してきたNGINXに代えて、同社自身がRust製のHTTPプロキシである「Pingora」を開発し利用していることを明らかにしました。 Pingoraはすでに同社のCDNに採用され、毎日1兆回以上のリクエストを処理し、性能向上や数多くの新機能の提供を実現しつつ、従来と比較してCPUとメモリリソースの消費はいずれも3分の1程度に収まっているとのこと。 Pingoraは現時点でコードなどは公開されていませんが、いずれオープンソース化の計画についても明らかにするとCloudflareは説明しています。 Today we are excited t

                                                                      Cloudflare、NGINXに代えて自社開発のRust製HTTPプロキシ「Pingora」をグローバルCDNに採用。性能向上しつつCPUとメモリ消費を3分の1に
                                                                    • "The Essence of Software"が提唱する全く新しいソフトウェア設計の考え方|Idein株式会社

                                                                      (6/22 注:書き足りないと思っていた箇所を補って加筆修正しました) エンジニアのbonotakeです。Ideinに入ってかれこれ3年以上経ちますが、Ideinでブログ記事を書くのは初めてです。 今日は、ソフトウェア設計の全く新しい考え方について書かれた "The Essence of Software" という本の紹介をしたいと思います。 この本の著者はMIT教授でソフトウェア工学の世界的な研究者であるDaniel Jacksonです。形式手法Alloyの発明者、と言ったほうが通じる人には通じるかもしれません。形式手法とは、ありていにいえば、数理論理学を駆使してソフトウェアに潜むバグを論理的に駆逐する手法です。 (個人的な宣伝ですが、彼の書いたAlloyの本を以前翻訳して出版しました。) そんな彼が昨年11月に新著を出版したというので、ほぼその日に買いました。……ですが、本を開いてみる

                                                                        "The Essence of Software"が提唱する全く新しいソフトウェア設計の考え方|Idein株式会社
                                                                      • VS Code + GitHub Copilotで「”半自動”マルチエージェント」開発をやってみた

                                                                        はじめに 最近、AI開発のトレンドとして「マルチエージェント」という言葉をよく耳にするようになりました。 しかし、これを試すには複雑なPythonライブラリ(CrewAIやAutoGenなど)を導入したり、API利用料を気にしながらクラウドで動かしたりと、ハードルが高いのが現状です。 そこで本記事では、 普段使っている「VS Code」と「GitHub Copilot」だけ を使って、ローカル環境で疑似的にマルチエージェントシステムを構築・運用してみた事例を紹介します。 特別なツールや外部サービスは一切不要。「プロンプトファイルによる役割分担」という工夫だけで、いつもの開発体験がどう変わるのかを共有します。 そもそも「マルチエージェント」とは? 「マルチエージェント」を知らない方のために、簡単にイメージを説明します。 通常のチャットAI(ChatGPTやCopilot)が 「何でもできる一

                                                                          VS Code + GitHub Copilotで「”半自動”マルチエージェント」開発をやってみた
                                                                        • 因果推論100本ノック(1)因果効果とランダム割付

                                                                          はじめに 因果推論100本ノック(自作)1本目~10本目の問題とPythonのサンプルコードです. 問題の不備や内容の誤り等ありましたら,ご指摘いただけますと幸いです. 設定 アナリストの分析レポートが営業の受注件数にどれくらい貢献しているかを分析するケースを考えます. 今回は,下記フォルダの「causal_knock1.csv」ファイルのデータを利用します. データのカラムの概要は下記の通りです. 変数名 データの概要 備考

                                                                            因果推論100本ノック(1)因果効果とランダム割付
                                                                          • ダンジョン全自動攻略ゴーレムづくりRPG『Algolemeth』Steamにて正式お披露目。探索から戦闘までこなす自律ゴーレムを試行錯誤してプログラム - AUTOMATON

                                                                            国内デベロッパーのMedium-Rare Gamesは12月19日、『Algolemeth』のSteamストアページを公開、本作を正式にお披露目した。本作はPC(Steam)向けに、2024年内リリースを目標として開発中だ。 『Algolemeth』は、全自動ダンジョンRPGだ。本作では、プレイヤーが自立駆動するゴーレムたちを制作。パーティーを編成して全自動によるダンジョン攻略をおこなう。ゴーレムたちは、プレイヤーが構築した戦闘ロジック(AI)に従って駆動する。ダンジョンに潜む強敵たちの行動を分析し、それに対処できるようなアルゴリズムを組み立て、試行錯誤を繰り返してダンジョンを踏破していくのだ。 自動化可能なのは、戦闘のみではない。探索AIを組むことで、「パーティーの誰に宝箱を解錠させるか」「どの程度の残体力で探索を諦め撤退するか」といった状況判断も自動的にさせることが可能。迷宮内ではさま

                                                                              ダンジョン全自動攻略ゴーレムづくりRPG『Algolemeth』Steamにて正式お披露目。探索から戦闘までこなす自律ゴーレムを試行錯誤してプログラム - AUTOMATON
                                                                            • DevOpsの負の側面について

                                                                              トランスクリプト Protsenko氏:私の名前はMykytaです。Netflixで働いています。私の仕事は基本的に、他の開発者が遅くまで職場に残らなくてもいいようにすることです。彼らが午後5時に退社しても生産的であることが私の実現したいことです。私はプラットフォーム組織、つまり生産性エンジニアリング部門で働いており、他のエンジニアのために労力を抽象化しようとしているのです。エンジニアが同じ退屈な技術的問題に何度も対処するのではなく、ビジネス上の問題の解決に集中できるようにします。 いくつか質問させてください。あなたたちのうち何人が、自分で作って自分で動かすという哲学を実践している会社で働いてますか?生産現場との間にゲートキーパーがいないこと、機能や修正をより早く提供できることに満足している人はどれくらいいますか?本番環境で発生したインシデントに対処しているときに、どうすればいいのか分から

                                                                                DevOpsの負の側面について
                                                                              • 【catnose】Zennを生んだ個人開発者に聞く、プロダクト開発の美学 - レバテックLAB

                                                                                個人開発者 catnose ソフトウェア開発者・デザイナー。 個人開発者として、Webデザイナー向けメディア「サルワカ」、ポートフォリオ作成サービス「RESUME」、技術情報共有サービス「Zenn」、簡単にAIサービスがつくれる「だれでもAIメーカー」など、数々のプロダクトを世に送り出す。家族は妻、娘、犬、猫。 個人開発者として、ポートフォリオ作成サービス「RESUME(レジュメ)」や技術情報共有サービス「Zenn(ゼン)」、入力欄や選択ボックスを組み合わせるだけで簡単にAIサービスがつくれる「だれでもAIメーカー」など、数々のプロダクトをヒットさせてきたcatnose(キャットノーズ)さん。現在も複数の開発案件に関わりながら、新たなプロダクトを開発中だといいます。 今回はそんなcatnoseさんのこれまでの作品を振り返りながら、個人開発者として培った開発哲学や、30代になるとともに起きた

                                                                                  【catnose】Zennを生んだ個人開発者に聞く、プロダクト開発の美学 - レバテックLAB
                                                                                • 本当にtransactionは必要なのか? - 急がば回れ、選ぶなら近道

                                                                                  前提 前提ですが。 transaction=Consistency/Isolationを担保する仕組みの話とする。 一般にtransactionが持つべき属性はACIDと言われる。C/Iに比べて、A/Dが“わかりやすい”のでAtomic/Durableの属性の方が人口に膾炙しているが、現在のtransactionではA/Dネタはあまり話題にならない。A/Dネタはローカルだけで見るのであれば普通にfile system /storageの話になる。元来Atomic/Durableはtransactionのコンテクストでは専らlogging / recoveryの話だった。そして、これは非同期のepoch-basedになるとそれ自体の取り扱い優先度が下がる。現代的なtransactionでは、「現時点ではread committedが保証されているFS/storageでA/Dの問題は(ある程度

                                                                                    本当にtransactionは必要なのか? - 急がば回れ、選ぶなら近道

                                                                                  新着記事