タグ

hiroaki256のブックマーク (6,293)

  • htmxとは何なのか? その背景にある思想について - Qiita

    先日、Qiitaに投稿された一つの記事が注目を集めました。 元記事では、htmxというJavaScriptライブラリが英語圏で認知を獲得しているとして、インストールの仕方から使い方について公式のドキュメントの全体にわたって簡単に説明が行われています。 さまざまなプラットフォームでこの記事に対する反応を観察してみると、どちらかというと懐疑的な見方のほうが優勢のように見受けられます。ただ、多くのコメントは誤解に基づいているように見受けられました。「JSが要らない」といった元記事のミスリードによるところも大きそうですが1、なぜhtmxが大きく支持を得つつあるのかを理解するには、背景情報を含めて理解することが必要です。 htmxは、最近の複雑化するフロントエンド技術に対する単なる逆張りではありません。これまで30年ほどのあいだウェブ上のシステムを支え続けた「ハイパーメディア」の持つ強力さに今一度目

    htmxとは何なのか? その背景にある思想について - Qiita
  • 「TiDB」は待ち望んだDBか? LINEヤフーとメルカリの“MySQL”プロが赤裸々に語り合う

    MySQLでシャーディングするなら、最初からTiDBで 続いて、「TiDBに特化したような設計や運用は必要か」との質問がなされた。これに対し北川氏は、書き込み時の性能を見ると高い並列度で処理し、拡張していくとQPSが少しずつ伸びることがTiDBの特長の1つであり、そこを意識して設計すべきだと指摘する。また、性能が発揮されない原因となるホットスポットを解消するために、“分割リージョン”のオプションを有効にしたと北川氏。他にも「TiUP」では監視などでも活用でき、当初から運用を容易にすることを念頭に置いてTiDBは構築されているようだとも話す。 一方、気になった点としては、パラメーターの設定方法が統一されていないことだと指摘すると、「監視などのメトリックが多すぎるとも感じますね」と北川氏。メトリックが多ければ状況は詳細に把握できるが、多すぎると情報の取捨選択に頭を悩ますことにもなる。さらに、ア

    「TiDB」は待ち望んだDBか? LINEヤフーとメルカリの“MySQL”プロが赤裸々に語り合う
  • ソフトウェアに関わる人が知っておくといいかもしれない法則10個

    「チームトポロジー」や「エンジニアリングマネージャーのしごと」「スクラム実践者が知るべき97のこと」の著者や翻訳者などで知られる吉羽龍太郎氏が、「ソフトウェアに関わる人が知っておくといいかもしれない法則10個(勝手セレクション)」という興味深いポストをX(旧Twitter)で公開しています。 ソフトウェアに関わる人が知っておくといいかもしれない法則10個(勝手セレクション) コンウェイの法則 パレートの法則 グッドハートの法則 パーキンソンの法則 ブルックスの法則 リトルの法則 ピーターの法則 ハインリッヒの法則 ピーク・エンドの法則 ホフスタッターの法則 — Ryutaro YOSHIBA (@ryuzee) January 23, 2024 これらの法則の多くは経験則だったりもしますが、いずれにせよ知っておくと上司の説得に役立ったり、ソフトウェアの開発現場でチームの運営に役立ったり、物

    ソフトウェアに関わる人が知っておくといいかもしれない法則10個
  • もうjsなんていらない!世界で流行っているHTMXについてまとめてみた - Qiita

    HTMXとは HTMXは、JavaScript を記述せずに、Ajax通信や高度なUXを実現できるライブラリ。 軽量 で 高速 で、既存のサーバーサイドのフレームワークとシームレスなやり取りができる。また、AJAX通信の発火、フォームの送信処理、DOMの更新などを既存のHTML要素を拡張するだけで可能とする。WebSocketやSSEにも対応しているので、チャットアプリなどにも適している。 2023 JavaScript Rising Starsでは、 フロントエンド・フレームワーク部門で見事2位に輝いた!(一位はReact、全部門だとshadcn/ui) 似たような機能として、Ruby on RailsHotWireがあるらしい。 2024年はHTMXがくると言われているぐらい世界で騒がれているのだが、あまり日では流行っていない。以下はGoogleトレンドで調べた結果である。 アメリ

    もうjsなんていらない!世界で流行っているHTMXについてまとめてみた - Qiita
  • プリウス開発に見るアジャイル開発要素と今時の進め方:続編 / The Agile Development Elements and Current Approach as Seen in Prius Development: Sequel

    弊社の伝説の開発のひとつ、スクラムの源流でもある、初代プリウスについて、当時の開発者たちが語る熱く、時には洩れる音のトークを紹介します。また日を代表するアジャイルコーチの皆さんと、温故知新の心構えでこれらを分析しました。開発者たちのトークに、いくつかの共通ワードが存在し、それがスクラムの源流と繋がっている所まで整理できたので解説します。更に、変化の時代、環境変化に対し、ハードウェア開発をどう進めるべきか? いまどきの取り組みを現場の開発者たちの声と共にお届けいたします。内容は、スクフェス三河「初代プリウスにみるアジャイル開発の要素と現代の環境での進め方について」の続編という位置付けになります。 / We will introduce passionate and occasionally candid discussions by the developers of our lege

    プリウス開発に見るアジャイル開発要素と今時の進め方:続編 / The Agile Development Elements and Current Approach as Seen in Prius Development: Sequel
  • 生成AIを用いて企業の独自情報にも回答してくれるシステムを出来る限り簡単に実装する方法

    目次 はじめに 今回作成するシステムの概要 Azure OpenAI Service セットアップ Azure AI Search セットアップ Azure Blob Storage セットアップ Add your data で AI Search にインデックスを作成 アプリケーションを作成 動作確認 お片付け はじめに 昨今話題の Azure OpenAI に独自データを扱うことが出来る【Add your data】がプレビューでリリースされました。 当に簡単に独自データを扱うことが出来たので、記事をご覧になられた皆様へ知見を共有していこうと思います。 そしてどうせなら動くものを見ながら「おぉ~」と言っていただきたいので、ハンズオン形式で進めていければと存じます! では、Let's ハンズオン! 今回作成するシステムの概要 今回作成するシステムは Azure 上で作成します。 下の

    生成AIを用いて企業の独自情報にも回答してくれるシステムを出来る限り簡単に実装する方法
  • MySQLでUUIDv4をプライマリキーにするとパフォーマンス問題が起きるのはなぜ?(N回目)

    はじめに こんにちは、令和トラベルでバックエンドエンジニアをしている飯沼です。 MySQLでは、UUID (v4)などのランダム性の高いIDをプライマリキーに設定すると、パフォーマンスが低下すると言われています。私自身もこの問題については認識しておりアンチパターンとして避けて来ましたが、イマイチ理由を理解できず何度も調べていたので自分の理解を整理しました。 ※ この記事は令和トラベルのTech LT会で共有した内容を記事にしたものです。社外の方にもご参加いただけるTech LT会は connpass にて告知しています。 UUIDをプライマリキーにするユースケース そもそもUUIDをプライマリキーにするユースケースはどのようなものがあるのでしょうか? いくつかの観点から考えてみます。 パフォーマンス観点 大量の同時書き込みが発生するような状況でauto incrementを利用してIDを発

    MySQLでUUIDv4をプライマリキーにするとパフォーマンス問題が起きるのはなぜ?(N回目)
  • スレッド形式で雑にメモを書き散らすためのサービス「Thredot」をリリースしました

    Thredot はスレッド形式でメモを書けるサービスです。 Google アカウントがあればログインできます。 こういうの Playground ページを用意しているので、気軽に使い心地を試してみてください。 Thredot のコンセプト Thredot はアイデアや情報をメモに書き出すハードルを限界まで下げることを目指しており、そのために様々な工夫をしています。 メモを整理させない 爆速な検索機能 公開範囲を設定できる WYSIWYG エディタを採用 メモを整理させない Thredot では徹底的にメモを整理させない方針を取っています。 僕は「整理するための機能が用意されていると整理をしたくなってしまう」人間です。 でも整理するのって超面倒くさいです。 ( 支離滅裂 ) 結局中途半端に整理しようとして余計にゴチャゴチャになり、最終的にメモを書くこと自体が億劫になってしまいます。 Thre

    スレッド形式で雑にメモを書き散らすためのサービス「Thredot」をリリースしました
  • 実際の服をイラストの資料にする時、デザインをそのままパクっていいの?→弁護士さんの解説が参考になる

    やわらか湯煎 @_YU_SEN 【お絵描きの民で女の子の私服がわからない人へ】 お絵描きの民で女の子の私服がわからない人はZOZOTOWNでもいいSHOPLISTでもいいのでファンション通販サイトアプリを入れます それでレディース一覧からかわいいと思った格好を推しにさせるだけです 健闘を祈る… 2024-01-11 16:05:29

    実際の服をイラストの資料にする時、デザインをそのままパクっていいの?→弁護士さんの解説が参考になる
  • 動画を真似てアプリを作る勉強してたら人生を積みかけた - Qiita

    はじめに こんにちは、 Watanabe Jin (@Sicut_study)です。 今回は私が隠していた人生を積みかけていた勉強法について紹介します。 この記事を読んだ方に伝えたいのは 「この方法で勉強している人が多いが、とにかく時間を無駄にするだけなのでやめたほうがよい」 ということです。 この記事をみて、あなたの成長がより加速することを願っています。 Udemyの使い方間違えてますよ! 伸び悩むエンジニアをみてきて、Udemyをやっている姿にある共通点をみつけたので共有します。 ハンズオン系の動画は数十時間を費やして終わらせる場合もあると思いますが、この話を意識していなと大切な時間を無駄にする可能性があります。… pic.twitter.com/Wr9nh4D3y2 — Watanabe Jin (@Sicut_study) January 6, 2024 ハンズオン系教材の罠 Ud

    動画を真似てアプリを作る勉強してたら人生を積みかけた - Qiita
  • 数字で簡単にわかるニッポンの少子化問題|樫田光 | Hikaru Kashida

    記事は、日少子化の現状を「数値に基づいて」より少しでも多くの人に知ってもらうことを目的に、少子化を専門とする人口学者を含む3名のメンバーの共著で書かれています。 記事の一部をまとめた内容。この記事ではこういったことが学べます。はじめに2023年の12月、 政府は「こども未来戦略」で少子化対策の強化を打ち出しました。岸田首相は2030年(代)までを「少子化対策のラストチャンス」として、対策が議論されています。 ニュースやメディアで、日は深刻な少子化社会だという情報に触れることがだいぶ増えてきたかと思います。少子化が起こっている、少子化はヤバいという認識自体は、多くの人の中で広まっているとは思うのですが、その実態はどの程度正しくされているでしょうか。 なぜこんなに少子化(低出生率)になっているのか?少子化はそもそも問題なものなのか? 政府に対策を任せておけば大丈夫なのか。 この記事は、

    数字で簡単にわかるニッポンの少子化問題|樫田光 | Hikaru Kashida
  • チーム中心の組織作りのための6つのチーム設計原則 - mtx2s’s blog

    近年のソフトウェアプロダクト開発組織の活動単位としてよく言われるのは、「少人数で安定したチーム」であろう。表現は違えど、どの文献でもそのように述べられる。 それでは、「少人数」と「安定」の2つの要件を満たせば高パフォーマンスなチームが設計できるかと言えば、そんなはずもない。他にも要件があるはずだ。 そこで、チームに共通して必要だと考える要件を、設計に関わったこれまでの組織から抽出して言語化し、原則としてまとめてみた。それが、「安定」「アトミック」「非兼務」「少人数」「流動性」「イテレーティブ」の6つだ。 初期に携わった組織には欠けていた要素もあるが、何度も失敗を重ねるうちに見いだしたものだ。組織設計のプラクティスとしてよく聞くものもあるが、いずれも実体験を経て必要だと感じたものばかりである。 なお、記事で取り上げる6つのチーム設計原則だけでは、組織設計として不十分だ。チームにどういった機

    チーム中心の組織作りのための6つのチーム設計原則 - mtx2s’s blog
  • 静的サイト向けの全文検索エンジンと UI ライブラリの Pagefind

    デモとして、このブログに Pagefind を導入してみました。ヘッダーの検索アイコンをクリックすると検索フォームが表示されるので、キーワードを入力して検索してみてください。 使い方 Pagefind は構築済みの UI ライブラリと、CLI コマンドとしてインデックスを作成するためのツールから構成されています。まずは UI ライブラリの部分から見てみましょう。 UI ライブラリ Pagefind の UI ライブラリは、検索フォームと検索結果を表示するためのコンポーネントから構成されています。この UI は以下のコードを追加するだけで簡単に利用できます。 <link href="/pagefind/pagefind-ui.css" rel="stylesheet" /> <script src="/pagefind/pagefind-ui.js"></script> <div id="s

    静的サイト向けの全文検索エンジンと UI ライブラリの Pagefind
  • BigQuery のストレージ料金を 1/10 に抑える裏技 - Qiita

    節約になる理由 ここから考察や料金体系の確認、検証内容など長文が始まります。興味のある方は最後までお付き合いください。 節約になる理由は BigQuery を経由すると GCS からの読み取り料金がかからないからです。アーカイブストレージはデータ保存の料金が安い代わりに読み書きの料金が高くつきます。しかしこのバグのような仕様によって読み取りの料金を無視して安い保存料金の恩恵だけを受けることができます。 GCS からの読み取り料金が無料な理由はおそらくバッチ読み込みオペレーションが無料なためではないでしょうか。 BigQuery の料金#データ取り込みの料金 注意事項 上記の裏技ですがもちろんいつでも使えるわけではありません。下記の理由から利用については慎重に検討しなければなりません。 Google がいつまでも BigQuery への読み込みオペレーションを無料にするとは限らない。 仮

    BigQuery のストレージ料金を 1/10 に抑える裏技 - Qiita
  • 技術文書の書き方

    howto-tech-docs.md 技術文書の書き方 このメモは、私(@ymmt2005)が長年にわたってソフトウェアプロダクト開発に関わってきて 2022年現在こうしたほうが良いと考えているベストプラクティスです。 科学的な分析等に基づくわけではない経験則であるため、今後も随時見直すことがありますし、 ここに書いてあることが常に正しいわけでもあらゆるソフトウェア開発に適するわけでもありません。 しかしながら、実務経験が豊富で、モダンな技術スタックに明るいエンジニアの経験則は一定の 役に立つのではないかと考えて記します。 技術文書とは ここでは、ソフトウェア開発で技術者が書くべき文書ということにします。 ソフトウェアエンジニアにも役割がいろいろあり、アーキテクトと independent contributor では書く文書が違うということはあるでしょうけれど、ここではごっちゃにします。

    技術文書の書き方
  • メンテのいらないソフトウェア - 誰かの役に立てばいいブログ

    ソフトウェアエンジニアとして働き始めて 20 年以上になります。 元々ソフトウェアでいろいろ作りたくて就いた職業なので、結構な数のプロダクトを開発してきました。 私がメインで開発したもので OSS として出ているものでは、 yrmcds: memcached クローンで、レプリケーション機能などを持つ usocksd: SOCKS4/5 サーバー & ライブラリ transocks: アプリのネットワーク通信を透過的に SOCKS サーバーにプロキシする透過プロキシ coil v2: Kubernetes の CNI ネットワークドライバ moco: MySQL を自動運用する Kubernetes オペレーター accurate: Kubernetes 上で namespace ベースのソフトマルチテナンシーを実現するためのソフトウェア などがあります。これらのソフトウェアの多くは、現役

    メンテのいらないソフトウェア - 誰かの役に立てばいいブログ
  • How NAT traversal works

    * can theoretically exist, but don't show up in the wild Once broken down like this, we can see that cone-ness isn’t terribly useful to us. The major distinction we care about is Symmetric versus anything else — in other words, we care about whether a NAT device is EIM or EDM. While it’s neat to know exactly how your firewall behaves, we don’t care from the point of view of writing NAT traversal c

    How NAT traversal works
  • 本当は教えたくない、VScode拡張の最強プログラミングアシスタントAI Phind(導入・使い方) - Qiita

    みなさんプログラムは書いていますでしょうか。この一年でChatGPTができ、CopilotにCopilot Chatなど色々なAIツールが出ていますが今回お勧めするのはPhindというAIアシスタントです。 Phindとは Phind(Phind.com)とは端的にいえばGPT-4を超えるコーディング能力に特化した言語AIです 参考リンク:大規模言語モデル「Phind」がコーディングにおいてGPT-4を上回る リンク内で言われているように、WebからChatGPTGoogleのように簡単に使うことができますが、Phindの真髄はここでは味わえません。 Phindの真の実力 Phindの当の実力はVScode拡張を使うことによって体感することができます。 PhindのベースモデルはPhind-CodeLlamaというものを使っています。これはMeta社が作ったCodellamaというプロ

    本当は教えたくない、VScode拡張の最強プログラミングアシスタントAI Phind(導入・使い方) - Qiita
  • Next.jsでTrello風タスク管理アプリを作成する日記⑤ - Qiita

    はじめに 前回までにドラック&ドロップでタスクの進捗状態を変更する機能が実装できました。 今回はそれに加え完了したタスクを削除する機能、モーダルでタスクの内容を変更する機能を実装しました。 今回実装できた内容 Redux toolkitを導入してグローバルな状態管理ができるようになった 新しい機能実装に対応できるディレクトリ構成を検討できた Material UIを導入してModalを実装できた onDragとonClickイベントを持つDOM要素のイベントを制御できた 前回までのあらすじ 今までの内容 Next.jsでTODOアプリを作成する日記① Tailwindを導入できた ComponentにPropsを渡せた Componentの中でPropsを使用できた Componentをループを使って表示できた React Iconsを導入できた Next.jsでTODOアプリを作成する日

    Next.jsでTrello風タスク管理アプリを作成する日記⑤ - Qiita
  • 開発者ポータル Backstage とは - Carpe Diem

    背景 開発チームが抱えるよくある課題として システムが変化する一方でドキュメントは更新されず腐る メンバーの流入出によって口伝でかろうじて継承された知見も失われる 検索性が良くないと過去のドキュメントが気づかれず、同じような内容のドキュメントが新規量産される 後から参加したメンバーはどちらが正のドキュメントか分からず混乱する といったことが良くあります。 解決方法としては以下のように、GitHub&ルールベースで管理するといった例があります。 future-architect.github.io また組織・システムが大きくなってくると認知負荷を低減するためにドメインで区切るような形でチームの分割が始まりますが、 異なるチームによってシステムが管理され、システムの依存関係を全て知っている人がいなくなる CxOレイヤが大規模イベント前に現状を把握したいときに都度時間がかかってしまう チームごと

    開発者ポータル Backstage とは - Carpe Diem