はじめに みなさんはDBのインデックスを正しく使えていますか? 私はなんとなく「DBのパフォーマンスを向上するためのもの」という認識はあったのですが、 どのような場面で使うものなのか、逆にどのような場面では使うべきでないのかなど 明確に理解できていませんでした。 今回はそんなインデックスについての理解を深めたいと思います。 インデックスとは インデックスとは、その名の通り「索引」です。 表現の仕方と変えると、(x, a)という形式の配列であるとも言えます。 xというキー値とそれに結びつくaというデータ情報があり、 これを利用することですべてのデータを網羅して見ることなく、 まさに本の索引のように目的のデータにたどり着くことができます。 インデックスはSQLのパフォーマンスを改善するための非常にポピュラーな手段であり、 理由としては下記の3点が挙げられます。 アプリケーションのコードに影響を
わ、去年2023-08-26にこの記事書いたんだね。まる1年だね。2024年版機械学習・データ分析の必須10冊+ガチ90冊+Next5冊=105冊書きましたよ。 【データ分析の必読10冊+差をつける10冊+100冊超】データサイエンス、データ分析、機械学習関連の本がご好評いただいてましたが古くなりごちゃごちゃしているので新たに作り直しました 本記事のめあて IT系の技術者の方がデータ分析関連の仕事をするために役立つ本を紹介する(私が学び始めた時にあれば欣喜雀躍したであろう)記事として書いております。 本記事作者の青木はバイオインフォマティクス(ゲノムデータのDB化中心・Perl・MySQL)からRで時系列分析→Pythonでデータ分析一般と業務をしてまいりました。 ですので研究者目的の本はありません。また、データ分析の基礎は主にRで学んだのですが、昨今の流行に合わせてPython本を中心に
ある日、twitterで画像のようなツイートをしたところ、突然、日経BPさんから献本しますので読んでいただけませんかってメールがやってきた。 突然のご連絡で申し訳ございません。 岩崎様のXでのご投稿を拝見しまして、ぜひご紹介したい書籍がありご連絡いたしました。 岩崎様がXで仰っていたような「AIで動くゲームを作るためには、動くゲームを作れる実力が必要で、これがないとそもそもAIに正しく動くコードを作る指示が出来ない」を実際に体感した女子大生の実話になります。 もちろん、こんな面白い話、読む以外ありえないので献本していただいた本が『#100日チャレンジ 毎日連続100本アプリを作ったら人生が変わった』。 これを読んで、LLM(AI)登場以前には不可能だった非伝統的な学習方法が登場し、少なくもそれを使って同じ山に登れることが証明されたと思った&とても面白かったので、この本の内容に触れつつ、そう
(Image by wal_172619 from Pixabay) 去年で恒例の推薦書籍リストの更新は一旦終了したつもりだったんですが、記事を公開して以降に「これは新たにリスト入りさせないわけにはいかない!」という書籍が幾つも現れる事態になりましたので、前言撤回して今年も推薦書籍リストを公開しようと思います。 初級向け6冊 実務総論 データサイエンス総論 R・Pythonによるデータ分析プログラミング 統計学 機械学習 中級向け8冊 統計学 機械学習 テーマ別15冊 回帰モデル PRML 機械学習の実践 Deep Learning / NN 統計的因果推論 ベイズ統計学 時系列分析 グラフ・ネットワーク分析 データ基盤 コメントや補足説明など 完全なる余談 初級向け6冊 今回は新たに加わったテキストがあります。 実務総論 AI・データ分析プロジェクトのすべて[ビジネス力×技術力=価値創出
また、ドライヤーのように激しい空気の流れだけでなく、保冷剤から出る冷たい空気がゆっくりと下降する様子も確認できます。どうして目では見えない空気の流れを、スマホ搭載カメラだけで観測できるのか、開発者のkambaraさんに仕組みを聞きました。 アプリには「背景型シュリーレン法(BOS法)」という、密度変化を可視化する手法を使っているといいます。「暑い日に道路がモヤモヤと揺らいで見えることがあるかと思います。その原因となっている、温度の変化で空気の屈折率が変わり、光が曲がる現象を応用しています。ドライヤーや保冷剤ぐらいの温度変化でも屈折率は変化するのですが、肉眼ではほとんど見えません。そこで、被写体の背景に特殊な模様の画像を置いて、カメラに映るごくわずかな画像の揺らめきを捉え、さらに画像処理でハッキリと見えるようにしました」(kambaraさん) この手法自体は新しいものではないものの、「大掛か
はじめに この記事ではQiitaで550本以上記事を書いてきて、アウトプットに関する理論を発信し続けている私(@Sicut_study)がこれまでに発信してきた内容を1つの記事にまとめたものです。 私はプログラミングコーチングJISOUというアウトプット中心の最速でエンジニアとして成長できる教育事業を実施しております。 その中で多くの方と面談をしてきました。これからエンジニアになる人や、一定数経験している人など100人以上の方とお話をさせていただきましたが、エンジニアとしてのキャリアに悩む多くの人が共通した悩みを抱えていました。 勉強しているのだけど身についた感じがしない 自分のサービスを1つもリリースしたことがない(作りきった経験がない) インプットばかりになってしまう(インプットばかりに気づいていない) アウトプットが大事なのはわかるがやり方がわからない つまりエンジニアとして成長でき
コアパターンすべての AI コーディングエージェントは同じループを共有する:モデルを呼び出し、ツールを実行し、結果を返す。実運用ではこの上にポリシー、権限、ライフサイクル層が重なる。 while True: response = client.messages.create(messages=messages, tools=tools) if response.stop_reason != "tool_use": break for tool_call in response.content: result = execute_tool(tool_call.name, tool_call.input) messages.append(result)
この前、公園を散歩しながらスマホでウイークリー落合の番組を聞いていたら、そこで落合さんがChatGPTに謎の呪文?コマンド?のようなものを入力していた。 https://newspicks.com/movie-series/87?movieId=2528 その時はまったく意味がサーパリ分からなかったので、まったく意識に入ってこないでスルーしてしまった。 清水さんのnote記事によれば、新登場したGPT-4で物語を作って遊んでいたら、落合さんから例の呪文?が送られてきたそうだ。 それを入力したら何か物語の筋書きが生成されたらしい。 GPT-4使ってみた コマンドを転載させてもらうが、このようなものだった↓ #[このコンテンツは [Goal] を SeekするためのTemplateです] - [コンテンツの詳細]: - [Goal]: - Goalを達成するために必要な手順を分解します。 -
独学で個人開発を始めて5年が経ちました。これまでには収益化に成功したサービスもあれば、鳴かず飛ばずでお蔵入りになったサービスも数多くあります。それらの経験から、成功したサービスはなぜ上手くいったのか、マーケティングや収益化において押さえておくべきことは何か、その要点が少しずつ見えるようになりました。 今回は私が開発〜集客〜収益化を行うプロセスと、各工程で気をつけているポイントを順を追って書き出してみます。上手く言語化できているか分かりませんが、暖かい目でお付き合いください。 収益化した3つのサービス 私はこれまでにWebサービスを20個以上開発しており、現在はポモドーロタイマー(月間100万ユーザー)やYouTubeのループ再生ツール(月間10万ユーザー)などを運営し、そこからの収入で生活しています。 基本は海外向けのBtoCで、以下のようなツール系が中心です: 収益化済みサービス: Po
UIデザインはシンプルで論理的なルールを理解することで、情報に基づいたデザインの意思決定を効率的におこなうことができます。UIデザインをより使いやすく改善する16の論理ルールを紹介します。 長い記事なので、時間がある時にゆっくりご覧ください。 16 little UI design rules that make a big impact by Adham Dannaway 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに 1. スペースを利用して関連要素をグループ化する 2. 一貫性を保つ 3. 見た目が似ている要素は同じように機能するようにする 4. 明確なビジュアルヒエラルキーを作成する 5. 不要なスタイルを削除する 6. カラーは意図的に使用する 7. インターフェイス要素のコントラスト比が3:1であることを確
こんにちは! Magic Moment フロントエンドエンジニアの @morishin です。 この記事は、Magic Moment Advent Calendar 2024 4 日目の記事です。 はじめに 開発あるある 皆さん開発をしていて、コマンドの "待ち" が長いとき、こんな経験はありませんか。 「ビルドに時間がかかるなぁ」 (別の作業をする) 「もう終わったかな (ターミナルチラー」 「まだかー」 (以降無限ループ) 作業に集中できない! 逆に 「このインストール時間かかるなぁ」 「終わるまでちょっと休憩しようかな (スヤァ」 〜3 時間後〜 「...あっ、いつの間にか終わってた!」 処理の完了に気付かずついつい休憩しすぎた! ありませんか?ありますよね? まあ休憩しすぎたっていうのはないにしても、実はエラーで処理が中断していたのに気付かなかった、というのはあるあるな気がします。
この記事について この記事では、ファイルに書き込みを行うプログラムを実装する時の注意点について説明します。 ファイル書き込みは、プログラミングにおいて比較的よく利用される機能でありながら、実装時に注意していないと、システムクラッシュ(意図しない電源の喪失や OS のクラッシュ等)後にファイル上のデータが整合性を失う可能性、平たく言えば、データが破損する場合があります。 今回の主な内容はトランザクションに関連する事柄で、ご存知の方からすると当たり前と思われることだと思われますが、執筆者がプログラミングの勉強を始めて以降知らない期間が長かったことと、他にもご存知ない方がある程度いらっしゃるのではないかと思ったため、このように記事にさせていただきました。 また、ここで説明する注意点は、クラッシュ後にデータの整合性が重要でない場合は、気を付ける必要がないものであることを先に書いておきます。 先にこ
2年くらい前からCopilotやCursorによるコーディングサポートを受けた開発は実際に行なっていたのだけど、先週くらいからコーディングエージェントによる開発にも本腰を入れて調査を始めた。以下はその際に雑に調べた情報まとめ。 そんでこの土日くらいまで毎日、主にCline+Claude(その他versionや派生系クライアントも含む)を使って色々とコード生成させたりして実験したのでその感想を書く。 試してみたこと 最初は簡単なpromptを入力してポン出しで生成させるToDoリストとか管理画面みたいなものを作らせてワイワイしてた。だけど何回かやったら流石に飽きてきたので、もう少し規模の大きなタスクに取り掛からせることにした。 既存プロジェクトへのテスト追加 まず最初に、個人開発してるモンハンnowのTA走者向けのwebサイトが現状テストゼロだったので、これに対してClaude 3.5 so
This repository contains the codes of the Backend Master Class course by TECH SCHOOL. You can also find it on Udemy at this link. And don't hesitate to join Tech School's Discord group to chat directly with me and other students. In this course, you will learn step-by-step how to design, develop and deploy a backend web service from scratch. I believe the best way to learn programming is to build
AI(人工知能)の台頭によって仕事が奪われる――このようなSF的ディストピア世界の到来を予見する人は多い。たとえば、2022年ごろから流行した「Stable Diffusion」「Midjourney」などのAI画像生成サービスは、そのイラスト生成の精度の高さ、手軽さからイラストレーターの仕事を奪うのではないかといわれていた。人類の歴史上、写真、映像、コンピュータなどの登場によってなくなった仕事も多いが、今存在する仕事もAIの発展によっていずれなくなる可能性はある。 そして、それはクリエイター界隈に限らず、エンジニア、プログラマーの世界でも起こる可能性があるという。ニュースサイト「Business Insider Japan」が昨年12月1日に報じたところによると、グーグルが「AIにコードの書き方を教える」極秘のプロジェクトを進行中だという。このプロジェクトでは、AIがプログラミングスタイ
[JavaScript] URLを文字列結合で組み立てないために、url-cheatsheetを作った URLを文字列結合で組み立てると色々問題が起きやすいので、それを避けるためにURL APIやURLSearchParams APIでURLを組み立てるパターンをまとめたチートシートを作りました。 azu/url-cheatsheet: URL manipulation cheatsheet for JavaScript URLにユーザーが入力した文字列を含めるときはencodeURIComponentでエスケープする URLはプレーンな文字列ではなく構造化された文字列(文字の並びに意味がある文字列)として扱わないと、さまざまな問題を抱えやすいです。 たとえば、次のように文字列結合でURLを組み立てるとパストラバーサルの問題があります。 name に ../../adminのような文字列が
前々からこの手のことを書きたいとは思ってたけど id:k0kubun さんの下記エントリに触発されて書きました。 k0kubun.hatenablog.com tl;dr; 個人アプリ開発歴 前提 Heroku GCP Google App Engine Cloud Run Firebase Cloud Functions GitHub Pages 2022/8/14追記 GitLab Pages 2022/5/7 17:00追記:ブコメレス tl;dr; HerokuやFirebaseを駆使すれば割と無料でいける 若干お金を払えばもっと選択肢は増える 個人アプリ開発歴 2001~2002年あたりから個人HPでアプリを公開。後にVectorにも公開 アカウントは残ってるのでいまだにVectorからのレポートメールが毎月届いてます 2009年くらいから色々ウェブアプリを開発 Google A
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
PayPayの6年の歴史の中で、私たちは急速な成長を遂げてきました。現在、6700万人以上のユーザーにサービスを提供し、日々数百万件の決済を処理しています。しかし、これを成功させるためには、トラフィックと信頼性の要求を満たすための技術的な挑戦が伴います。 PayPayは設立当初からJavaとNodeJSを採用しており、これらの技術は非常にうまく機能してきました。しかし、成長に伴いサービスをスケールアップする必要が生じ、これによりKubernetesクラスターでのCPUとメモリの使用量が増加しました。これにはサーバーコストの増加が伴います。 2023年末、私たちはコアサービスでのトラフィックをより効率的に処理する方法を模索し始め、GraalVMやGo、Rustなどさまざまな技術を調査しました。Rustは、その優れたパフォーマンスとメモリの安全性が保証されていることから、PayPayの多くのユ
このサイトは「本物の C 言語」について学習する機会の提供を目的としています。 「本物の」とはつまり、 標準規格(仕様)が C 言語をどういうものとして定めているか C プログラムが実際に CPU をどう動かすか という二つの意味合いに於いてです。 どうも巷間にはその辺りを気にせず何となくで書かれた資料が多い様なので、このサイトにより少しでも世界が最適化される事を期待します。 権利について 当然ですがこのサイト全体は著作権法により保護されています。法と良心に則って御利用下さい。 連絡はcontact<アット>real-c.infoまで。
人気のJavaScriptバンドルツール「webpack」の開発はなぜ終わり、後継として「Turbopack」の開発が始まったのか。開発者がその理由を語る 複数のJavaScriptやTypeScriptの依存関係などを解決し、コードやフォント、画像などのリソースなどをまとめるバンドルツール(あるいはモジュールバンドラやビルドツールなどとも呼ばれます)は、多数のライブラリやコンポーネントなどを用いてチームで開発するWebアプリケーションの開発には欠かせないツールとなっています。 そのバンドルツールの代表がwebpackです。約4万人のITエンジニアによるアンケート結果が示された「State of JavaScript 2022」でもwebpackはGulpやViteなどを抑えて最も人気のあるバンドルツールとなっています。 参考:「State of JavaScript 2022」公開。利用
絶賛成長期にあるだろう若手エンジニアは、どういう流れで自身の成長を促したら良いのだろうか、とふと思いつつ口頭で説明してみたけどよくわからんくなったので整理してみたいお気持ちです。 当ブログではアウトプットの効用みたいなものは書いてきましたが、インプットそのものについてはお初なので、自身を振り返る良い機会にもなりそうです。 はじめに これは私が二十数年間、プログラマー・インフラ・SRE といったエンジニアとして通ってきた中で、どのようにインプットをしてきたかを整理してみるチラ裏です。 自分は一般(?)と比べれば少々特殊な経歴で、情報学を学んだことも、新卒研修を受けたことも、IT系資格も、転職したこともない…… ほぼ独学による野良エンジニアとして生息してきましたので、あまり参考にはならないかもしれません。 それでも一応長く生き抜いてきたエンジニアの経験として、インターネットに数多くある参考例の
使ってわかる、Vueへの恨み、つらつらと(随時更新) コンポーネントのローカルスコープでコンポーネントを定義しようとするとJSXが必要 JSXが嫌でReactを使わないならSvelteがあり、SvelteはゼロオーバーヘッドでVueより速い React+JSXと違って、マークアップをJavaScriptの式として扱えないせいで、TypeScriptとの相性も悪い 後述するが、コンポーネントのプロパティの型をジェネリックにできないところなどは、これの例にあたる Vueの新しい機能が出て、新しい構文を必要とするたびにIDEのプラグインの対応が必要になる JSXも構文拡張だが、JS関数呼び出しのシンタックスシュガーでしかないので、関数と同じだけの表現力(汎用性)を持ち、ReactのAPI拡張のためにいちいちJSXまで拡張する必要はない JSX無しだと、マークアップ内でアクセスしたいコンポーネント
Webサイトやアプリでよく使用される各UIコンポーネントのさまざまな実装方法がまとめられたThe Component Galleryを紹介します。 コンポーネントは再利用可能な単一の部品として利用でき、実装するコードや名前の付け方など、Web制作者には非常に勉強になると思います。 The Component Gallery The Component Galleryの特徴 The Component Galleryの利用方法 各UIコンポーネントのまとめ The Component Galleryの特徴 The Component Galleryには、実際のデザインシステムで使用されているUIコンポーネントがまとめられています。フロントエンドのデベロッパーとして毎日経験する問題を解決するために作成されました。 The Component Gallery コンポーネントや要素に名前を付けるの
編者を担当した電子書籍『技術リーダーシップのための14のヒント』が、2025年5月1日にオライリー・ジャパンより刊行となりました。オライリー・ジャパンさんのサイトから無料でダウンロードいただけます。 技術リーダーシップのための14のヒント - O'Reilly Japan 本書は、Roy Osherove著『Elastic leadership : growing self-organizing teams』(Manning)の翻訳書籍として2017年に出版された拙訳『エラスティックリーダーシップ : 自己組織化チームの育て方』(オライリージャパン)に、日本語版特典として収録させていただいた日本人執筆者による14のエッセイ部分を、独立した形に再編集したものです。 リーダーに求められる立ち振る舞い、コミュニケーションや情報共有をリードする方法、リーダーと開発者の兼任、チームメンバーが自己組織
ヨドバシカメラは現在、お客様との接点をドメインとして設計する新たなAPIを開発中であることを、クリエーションラインが主催し10月27日に開催されたイベント「Actionable Insights Day 2023」で明らかにしました。 REST APIとして実装される予定のこのAPIについて同社は「ヨドバシスタッフの魂を注入する」としており、厳重なセキュリティやユーザーフレンドリーで高い利便性などが追求されています。 ヨドバシAPIがどのように設計され、開発、実装されていくのか。その中味が紹介されたセッションの内容を見ていきましょう。 本記事は前編と後編の2本の記事で構成されています。いまお読みの記事は前編です。 疎結合なのに一体感、ヨドバシAPIがつなぐ社会 株式会社ヨドバシカメラ 代表取締役社長 藤沢和則氏。 ヨドバシカメラの藤沢と申します。本日はまずこの貴重な機会をいただきありがとう
「Anthropic(Claudeを作っている会社)、開発が速すぎる」 最近、周りのエンジニアと話していると、この話題がよく出ます。僕も同じことを思っていて、いろいろ調べているうちに、単に「AIを使っているから速い」という一言では説明できない構造があることが見えてきました。 例えば、下記になります。 2026年Q1の3ヶ月で120以上の機能をリリース(18時間に1機能) エンジニア1人あたり1日約5PR(Pull Request、コードの変更を提出する単位) 社内では毎日60〜100回のリリース Claude Coworkは約10日で構築 Claude DesignはOpus 4.7のリリース翌日に公開 普通のソフトウェア開発企業の感覚からすると、明らかに異次元です。この記事では、公開されているインタビューや内部研究、関係者の発言をもとに、「なぜこんなことが可能なのか」というのを調べた限り
アイスランドアイルランドアセンション島アゼルバイジャンアフガニスタンアメリカ合衆国アラブ首長国連邦アルジェリアアルゼンチンアルバアルバニアアルメニアアンギラアンゴラアンティグア・バーブーダアンドライエメンイギリスイスラエルイタリアイラクインドインドネシアウォリス・フツナウガンダウクライナウズベキスタンウルグアイエクアドルエジプトエストニアエスワティニエチオピアエリトリアエルサルバドルオマーンオランダオーストラリアオーストリアカザフスタンカタールカナダカメルーンカンボジアカーボベルデガイアナガボンガンビアガーナキプロスキュラソーキリバスキルギスギニアギニアビサウギリシャクウェートクック諸島クリスマス島クロアチアグアテマラグアドループグアムグリーンランドグレナダケイマン諸島ケニアココス(キーリング)諸島コスタリカコモロコロンビアコンゴ共和国(ブラザビル)コンゴ民主共和国(キンシャサ)コートジボ
- という名前の JavaScript/TypeScript パッケージについて警告を発している記事が話題となっています。 このパッケージ、中身はほとんど空で、Readme と、dev で TypeScript を動かせるようにするライブラリ群を呼ぶ箇所だけのもの。 しかし、この "-" を使っている他の npm パッケージが 50個以上あり、約一年前の公開時からのトータルのダウンロード数は72万回にもなります。 しかし、"-" を読み込んでいるパッケージを見てみても、"-" が必要そうには見えません。 警告記事では、この無名のパッケージが密かに使われるようになった原因が、npm コマンドのコマンドラインを打つときのミスタイプにあるのではないかとの仮説を立てています。 つまり、someFlag というオプションを使い npm i -someFlag somepackage と打つべきところ
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く