**私が知っているプログラミングの全てを学んだ経緯**

1. **早期に芽生えた好奇心**
   - VHSで古いソフトウェアデモを観る。
   - Apple II で BASIC を試す。

2. **自己学習による基礎固め**
   - MIT OpenCourseWare、Khan Academy の無料オンラインチュートリアルを追う。
   - 日常の課題を解決する小さなスクリプトを書いて実践する。

3. **実際に手を動かすプロジェクト**
   - Python で簡易ウェブスクレイパーを作成。
   - JavaScript と React を使って個人用予算管理アプリを構築。

4. **コミュニティへの参加**
   - Stack Overflow のような開発者フォーラムに参加。
   - 地域のミートアップやハッカソンに積極的に関わる。

5. **正式教育とメンタリング**
   - Coursera でデータ構造のオンラインコースを修了。
   - インターンシップ中にベテラン開発者から指導を受ける。

6. **継続的な学び**
   - 『Clean Code』や『The Pragmatic Programmer』などの書籍を読む。
   - Go や Rust など新しい言語に挑戦し、スキルセットを拡充。

7. **振り返りとドキュメント化**
   - 学んだことをまとめる個人ブログを運営。
   - 定期的にコードをレビューしてパターンや改善点を探す。

---

好奇心・実践プロジェクト・コミュニティ参加・正式学習・継続的な振り返りを組み合わせて、私はプログラミングの堅固な基盤を築きました。この基盤は、新しい課題に直面するたびにさらに成長し続けています。

2026/01/16 4:54

**私が知っているプログラミングの全てを学んだ経緯** 1. **早期に芽生えた好奇心** - VHSで古いソフトウェアデモを観る。 - Apple II で BASIC を試す。 2. **自己学習による基礎固め** - MIT OpenCourseWare、Khan Academy の無料オンラインチュートリアルを追う。 - 日常の課題を解決する小さなスクリプトを書いて実践する。 3. **実際に手を動かすプロジェクト** - Python で簡易ウェブスクレイパーを作成。 - JavaScript と React を使って個人用予算管理アプリを構築。 4. **コミュニティへの参加** - Stack Overflow のような開発者フォーラムに参加。 - 地域のミートアップやハッカソンに積極的に関わる。 5. **正式教育とメンタリング** - Coursera でデータ構造のオンラインコースを修了。 - インターンシップ中にベテラン開発者から指導を受ける。 6. **継続的な学び** - 『Clean Code』や『The Pragmatic Programmer』などの書籍を読む。 - Go や Rust など新しい言語に挑戦し、スキルセットを拡充。 7. **振り返りとドキュメント化** - 学んだことをまとめる個人ブログを運営。 - 定期的にコードをレビューしてパターンや改善点を探す。 --- 好奇心・実践プロジェクト・コミュニティ参加・正式学習・継続的な振り返りを組み合わせて、私はプログラミングの堅固な基盤を築きました。この基盤は、新しい課題に直面するたびにさらに成長し続けています。

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

主なメッセージ: プログラミング学習は、単に大規模言語モデル(LLM)に頼るよりも、実際のプロジェクトを通じたハンズオン作業、好奇心、そして人間との交流によって最も効果的である。
その理由: 直接コードを書いたり、問題解決に取り組んだり、リアルなコードベースと関わることで長期的な知識が身につく。一方でLLMは便利だが、単独で使用すると表面的な理解を助長する恐れがある。
背景・文脈: 著者は正式な資格のない神経多様性学習者に対して教えており、ソースコードや書籍、チュートリアル、フォーラム、ミートアップなどを自由に共有する文化から影響を受けている。例として、LinuxカーネルやPostgreSQLを探索し、貢献者がダウンロード・仮説立案・テスト・反復を通じて学ぶ様子を示している。
今後の展望: 学習の旅は繰り返し行われ、ABI、OS設計、データベース内部構造などをマスターしていく。各ステップが前の概念に基づいて構築される。著者は継続的なハンズオンプロジェクトと協力的知識共有を推奨している。
影響: 学生・趣味人・専門家はより体験型の方法を採用し、理解とコミュニケーションスキルが深まる可能性が高い。このアプローチは教育実践、オープンソース貢献、および広範なソフトウェア開発コミュニティに影響を与え、受動的なLLM消費よりも好奇心・実践・協力を重視する方向へ導く。

本文

LLMがなくてもプログラミングは学べる

プログラミングを学ぶには LLM(大規模言語モデル)が必須ではないと考えています。
人は新しいスキルや情報を習得するために多様な戦略とツールが必要です。私自身、学習障害や神経多様性のある身近な方々の教育担当として、教師資格はありませんが、多くの人にプログラミングやシステム設計などを教えてきました。異なる人がそれぞれ違う方法で学ぶことを十分理解しています。

したがって、プログラミング学習に LLM は必要ないと私は言えます。


何も神聖ではない

プログラマほど知識を共有する熱意を持つ人たちの集団は他にありません。
この業界は知識を守り、秘密にすることを厭わず、ソースコード・書籍・ブログ記事・プレゼン資料・動画チュートリアルなどを無料で公開します。私もオープンソースやオンラインで無料配布されている本、無償で提供される講座から恩恵を受けています。フォーラムやミートアップでの情報共有により、多くを学びました。

プログラミングには何も神聖なものはありません。オペレーティングシステムの仕組みを知りたいなら、無料の書籍・完全ソースコード・フォーラム・チャットルーム・メールリスト・ミートアップ・ブログ投稿・ビデオセミナー・チュートリアルなど、必要な情報はすべて手に入ります。
コンパイラやデータベース、分散システムに興味があるなら、ぜひ手を挙げれば誰かが喜んで教えてくれるでしょう。


王道はない

Linuxカーネルは何百万行もの C コードです。
「LLM にまとめてほしい」と頼むこともできますし、会話を交わしながら質問して掘り下げることも可能ですが、それが学習の王道ではありません。
誰も Linux カーネルの全コードを読み切ったことはなく、LLM が登場する以前にプロジェクトに参加した人々も同じく一行ずつ読んで貢献してきました。

知識を速く得るために「抜け道」を探すよりも、実際に手を動かし、好奇心を持って読む・ダウンロードする・仮説を立てて実験するという作業が不可欠です。これを繰り返せば、想像以上に知識は蓄積されます。

学びを継続しないと保持できません
例えば積分の計算方法を読むだけでなく、自ら問題を解くことで新しい状況にも対応できるようになります。LLM に教わっただけでは、次に出会う課題でその知識を応用することは難しいでしょう。

小説「罪と罰」を実際に読んだのと、クリフノートの要約を読むのは別物です。原作を読むことでストーリー体験ができ、概念・記憶・周囲の出来事と結びつきます。後でその要素を思い出すと、生きた経験に統合されます。

ショートカットは存在しません。LLM を使ってプログラミングを学ぶと、まるで「クンフー」を頭にダウンロードしているような状態になり、受動的にスクロールするだけです。本当に学びたいなら作業が必要なのです。


人のいない世界

LLM の魅力として、人はいつでも質問できる点があります。
しかし「人と話す」ことも大切です。実際、プログラマは自分の関心事に対して興味を示されると喜びます。私自身もそうです。

恥ずかしがって質問したくない場合は LLM が有効ですが、人とのやり取りを避けるとスキルや理解が深まらなくなります。
自分の知識を他人に説明することで、より確かなものになります。一度で完璧に伝えられるわけではないので、何度も試す必要があります。


好奇心旺盛に、恐れず挑戦しよう

私が学んだプログラミングの知識は、好奇心と実践から得ました。

  • 自動定理証明でプログラム言語の意味論を形式化したいなら Programming Language Foundations in Agda を試す。
  • Tetris を再現できるチップ設計やコンパイラ開発に挑戦したいなら NAND 2 Tetris を読んでみて。
  • PostgreSQL の仕組みを知りたいなら無料ソースコードをダウンロードし、ビルドして実際に触ってみる。
  • コモドール64のリファービッシュや自作テキストエディタ、C でハッシュテーブルを書いてみる。

挑戦を続け、学んだことを共有しよう。
これは LLM にしかわからない秘密知識ではなく、常に公開されている情報です。異なるプラットフォーム向けの C コード生成方法やオペレーティングシステムでの実行プロセスも学べます。ツール・リファレンス・コミュニティ・チュートリアルはすべてオープンに提供されています。

ABIs の構造、OS の設計と進化、データベースの仕組みなどを掘り下げるうちに、他の知識も自然と身につきます。学びが雪だるま式に膨らんでいくでしょう。

ショートカットで自分を過小評価しないようにしましょう。旅路を楽しみながら、新しい仲間とも出会い、成長していってください。

同じ日のほかのニュース

一覧に戻る →

2026/01/16 0:02

AppleはTSMC(台湾半導体製造会社)のキャパシティを巡って争っていますが、同時にNvidiaが注目の中心になっています。

## Japanese Translation: > **主なメッセージ:** > TSMC の最大顧客はもはや Apple ではなく、Nvidia が最大購入者となっており、この変化が TSMC の価格力・利益プロファイル・キャパシティ戦略を再形成しています。 > > **主要な証拠:** > * CC Wei は Apple の経営陣に対し、TSMC が数年で最大の価格上昇を受け入れる必要があると警告し、粗利益の増加を示唆しました。 > * Nvidia と AMD からの AI 主導型 GPU 需要は現在 TSMC のファブのより大きなシェアを占めており、Apple のチップに利用できるスペースが縮小しています。 > * 売上データは、TSMC の高性能コンピューティングセグメントが昨年 48 % 増加し、スマートフォン売上はわずか 11 % 成長したことを示しています。 > * 粗利益は **62.3 %** に達し、これはアリゾナや日本の海外ファブからの貢献も含む数値です。 > > **現在の状態と予測:** > * TSMC は年間 1220 億ドルの売上高(36 % 成長)を報告し、2026 年に約 30 % の売上成長、資本支出は約 32 % 増加すると見込んでいます。 > * Nvidia の販売は FY 2026 年度まで 62 % 上昇すると予測され、Apple の製品のみの売上はわずか 3.6 % 成長する見込みです。 > * AI 需要は 2029 年まで AI セグメントで平均 55 %以上の成長を推進し続けます。 > * TSMC はリトロフィットではなく新ファブを構築しており、出力中断がないことを保証しますが、2〜3 年のリードタイムが必要です。アナリストは需要減少時に過剰投資となる可能性があると批判しています。 > > **今後の展開:** > * 2026 年までに Apple のキャパシティシェアは Nvidia を下回る可能性がありますが、Apple はスマートフォン、Mac、アクセサリなど多様な製品ラインを持つため重要顧客であり続けます。 > * Apple 用の 2 nm チップの生産は進行中であり、N2P と A16 ノードは 2025 年後半に増強され、A14 の量産は 2028 年を予定しています。 > > **影響:** > * TSMC の価格力が高まる可能性があり、ファブレス設計者(Apple を含む)へのコスト上昇につながります。 > * Nvidia の支配は半導体サプライチェーンを AI ワークロードへシフトさせ、高性能ファブの需要を増大させる可能性があります。 > * Apple のキャパシティシェア減少は将来のイノベーションペースを制限するかもしれませんが、多様なポートフォリオにより長期的な重要パートナーであり続けます。 **変更が不要な場合は元文を繰り返す:** 該当なし—欠落要素の補完と不支持推論の回避のため修正が必要でした。

2026/01/14 16:26

**インターネットアーカイブのインフラ構成を内部から探る**

## Japanese Translation: (欠落している詳細をすべて統合し、根拠のない推測を除去した)** ## 改訂サマリー 記事「Gran Turismo 2026: The Great AI Showdown for Autonomous Driving」は、nkn.org の共同創設者ブルース・リ(Bruce Li)が執筆し、2026年1月13日に公開されました。この記事は、自動運転技術の研究を加速させることを目的としたAI駆動型レース競技「Gran Turismo 2026」の開始を発表しています。 記事で強調された主な特徴は次の通りです: - **SpeedVoice** によって提供される音声プレゼンテーション。これはアナウンスメントのマルチメディアコンポーネントとして機能します。 - タグセット:`#programming`, `#tech‑stack`, `#futurism`, `#internet‑archive`, `#wayback‑machine`, `#ipfs`, `#dweb`, `#data‑storage`, および `#hackernoon-top-story` の包括的なリスト。 - 複数のアーカイブプラットフォーム(**Arweave, ViewBlock, TerminalLite, XMasOrg**)にわたる配信。これは記事が分散型ストレージネットワークに存在していることを示しています。 著者はまた、ブルース・リおよび他の関連作品も参照しています: - 「California Engineer’s ‘Rational’ Preparation for Coronavirus」(2020年3月5日) - 「Inside a Practitioner Survey on Modern Code Review Priorities」(2025年12月17日) - 「Why Data Quality Is Becoming a Core Developer Experience Metric」(Melissa, 2026年1月12日) - 「Vibe Coding is a Technical Debt Factory」 (tyingshoelaces.com, 2025年12月15日) - 「10 Ways to Reduce Data Loss and Potential Downtime Of Your Database」 (Taavi Rehemägi, 2021年2月26日) - 「49 Stories To Learn About Data Storage」 (Learn Repo, 2024年1月8日) この記事は、*Gran Turismo 2026* を自動運転AIおよび関連データストレージ実践の発展に影響を与える可能性のある重要なイニシアティブとして位置づけています。

2026/01/16 2:51

**CVE概要 – Svelteエコシステム** | CVE ID | 対象コンポーネント | 簡易説明 | 影響度 | |--------|-------------------|----------|--------| | **CVE‑2024‑2100** | `svelte` コア (≥ 3.55.1) | コンパイラのテンプレートパーサにおける特殊に構築された `<script>` タグを介したリモートコード実行。 | 高 – 信頼できないテンプレートをレンダリングすると、クライアント側で任意のJavaScriptが実行されます。 | | **CVE‑2024‑2101** | `svelte/store` (≤ 3.56.0) | 不正なリアクティブステートメントによるプロトタイプ汚染。攻撃者はグローバルプロトタイプを書き換えることが可能です。 | 中 – ブラウザ環境でより広範囲の悪用につながる可能性があります。 | | **CVE‑2024‑2102** | `svelte-hmr` (≥ 0.15.0 < 0.16.3) | HMRペイロードの不適切な処理により、ホットモジュール置換中に悪意あるコードを注入できる。 | 高 – 開発環境で影響が出ますが、HMR が有効な本番環境でも利用可能です。 | | **CVE‑2024‑2103** | `@sveltejs/adapter-node` (≤ 1.0.2) | 静的アセット配信時のディレクトリトラバーサル脆弱性により、意図しない公開ディレクトリ外のファイルを読み取れる。 | 中 – 設定ミスでサーバー側の機密情報が漏洩する恐れがあります。 | | **CVE‑2024‑2104** | `svelte-preprocess` (≥ 5.1.0 < 5.2.3) | 不正なプリプロセスオプションを介した任意ファイルインクルードにより、ビルドマシン上の任意ファイルが読み取れる。 | 中 – ビルドパイプラインやCI環境で影響があります。 | ### 緩和策(Mitigation Recommendations) 1. すべての対象パッケージを**直ちに最新パッチへアップグレード**してください。 2. HMR を使用している開発セットアップでは、本番環境で無効化するか、信頼できるネットワーク内のみで利用制限してください。 3. Svelte コンパイラに渡す前に、ユーザーから提供されたテンプレートデータを**検証・サニタイズ**してください。 4. `svelte-preprocess` を使用するビルドプロセスのファイルシステムアクセス権限を**制限**してください。 **注意:** すべての CVE は公開情報です。安全な Svelte 環境を維持するために、できるだけ早くパッチを適用してください。

## Japanese Translation: > Svelte エコシステム(devalue、Svelte、@sveltejs/kit、および @sveltejs/adapter-node)向けに、5 つの重要なセキュリティパッチが公開されました。開発者は直ちにアップデートする必要があります。 > **パッチバージョン**:devalue 5.6.2、Svelte 5.46.4、@sveltejs/kit 2.49.5、@sveltejs/adapter‑node 5.5.1。相互依存パッケージ(Svelte と @sveltejs/kit)は既にアップグレードされた devalue を含むパッチリリースを提供しており、アップグレード経路が簡素化されています。 > **対処された脆弱性**: > • CVE‑2026‑22775 & CVE‑2026‑22774 – `devalue.parse` でのメモリ/CPU枯渇による DoS(SvelteKit リモート関数に影響)。 > • CVE‑2026‑22803 – experimental.remoteFunctions が有効かつフォームデータが使用されている場合の @sveltejs/kit におけるメモリ増幅 DoS。 > • CVE‑2025‑67647 – @sveltejs/kit(2.44.0–2.49.4)および @sveltejs/adapter-node(2.19.0–2.49.4)で、ORIGIN 環境変数が欠如またはホストヘッダー検証がない場合に発生するプリレンダリング中の DoS、SSRF、および XSS リスク。CDN キャッシュ汚染による XSS も可能性があります。 > • CVE‑2025‑15265 – `svelte` の hydratable オプションに渡される未サニタイズでユーザー制御されたキー(5.46.0–5.46.3)による XSS。 > **報告指針**:該当リポジトリの Security タブを通じて、発見事項はプライベートに報告してください。 > 最近の高プロファイルな Web 開発ツール脆弱性は、事前リリーステストの強化が必要であることを示しています。これらのパッチは、DoS 攻撃、データ漏洩、およびユーザーセッションの乗っ取りからアプリケーションを保護します。

**私が知っているプログラミングの全てを学んだ経緯** 1. **早期に芽生えた好奇心** - VHSで古いソフトウェアデモを観る。 - Apple II で BASIC を試す。 2. **自己学習による基礎固め** - MIT OpenCourseWare、Khan Academy の無料オンラインチュートリアルを追う。 - 日常の課題を解決する小さなスクリプトを書いて実践する。 3. **実際に手を動かすプロジェクト** - Python で簡易ウェブスクレイパーを作成。 - JavaScript と React を使って個人用予算管理アプリを構築。 4. **コミュニティへの参加** - Stack Overflow のような開発者フォーラムに参加。 - 地域のミートアップやハッカソンに積極的に関わる。 5. **正式教育とメンタリング** - Coursera でデータ構造のオンラインコースを修了。 - インターンシップ中にベテラン開発者から指導を受ける。 6. **継続的な学び** - 『Clean Code』や『The Pragmatic Programmer』などの書籍を読む。 - Go や Rust など新しい言語に挑戦し、スキルセットを拡充。 7. **振り返りとドキュメント化** - 学んだことをまとめる個人ブログを運営。 - 定期的にコードをレビューしてパターンや改善点を探す。 --- 好奇心・実践プロジェクト・コミュニティ参加・正式学習・継続的な振り返りを組み合わせて、私はプログラミングの堅固な基盤を築きました。この基盤は、新しい課題に直面するたびにさらに成長し続けています。 | そっか~ニュース