この記事は「C Advent Calendar 2025」の11日目の記事です。 この記事は半分ジョークで半分本気です。 C言語のポインター型の表記の問題 C言語でのポインター型の表記にはアスタリスク * が使われます。例えば、int へのポインターなら int * という具合です。しかし、C言語のポインター型の記法には2つの問題点があります: 問題点その1:複数の変数を宣言したときに非直感的な結果になる。 アスタリスクは型ではなく変数につくので、複数の変数を宣言した時に非直感的な結果になります。次のコードを実行してみましょう: #include <stdio.h> #define reveal_type(x) \ printf("%s: %s\n", #x, _Generic((x), int: "int", int *: "int *", int **: "int **")) int

この記事は「言語実装 Advent Calendar 2025」の3日目の記事です。 この記事は、新しくプログラミング言語を設計する際に文字列型をどうするべきかについて、私の持論をまとめたものです。 以前「新しくプログラミング言語を作る際に数値型をどうするべきか」という記事を書きましたが、この記事はそれの文字列版です。 推敲が足りずに同じことを何箇所かで繰り返している場合がありますが、冗長性だと思ってご容赦ください……。 【2025年12月4日 更新】small string optimization、スライスとGCの話を追加、Rubyの文言の修正、可変性と値セマンティクスの記述の整理など。完全な変更履歴はGitHubを見てください。 【2025年12月7日 更新】ケーススタディーにJava、D、Schemeを追加。JavaScript文字列のコードポイント単位のアクセスの記述を追加。Sw

11月24日、bykozyが「Blog -Rust is a disappointment」と題した記事を公開した。この記事では、Rustが期待されてきた「C++の後継候補」としての役割を十分に果たしていないのではないかという問題提起を行い、とくにコンパイル速度の遅さ、言語としての複雑さ、メモリ安全性と信頼性のトレードオフ、可変共有状態の扱いにおける限界について詳しく紹介している。以下に、その内容を紹介する。 11月24日、bykozyが「Blog -Rust is a disappointment」と題した記事を公開した。この記事では、Rustが期待されてきた「C++の後継候補」としての役割を十分に果たしていないのではないかという問題提起を行い、とくにコンパイル速度の遅さ、言語としての複雑さ、メモリ安全性と信頼性のトレードオフ、可変共有状態の扱いにおける限界について詳しく紹介している

複雑性はなぜ破綻するのか? 計算量と認知負荷から読み解く、ソフトウェアの限界について考えました。 これは、情報過多時代の「過学習」にも通じるテーマです。 私たちの脳がどこで飽和し、どこから理解が追いつかなくなるのか..その構造を知ることは、エンジニアリングだけでなくリスキリングの土台にもなりうると思っています。 はじめに ソフトウェア開発には、「複雑性が問題を生む」 という常識があります。 なぜ複雑になると破綻するのか どこから複雑と呼べるのか どの瞬間に人の理解が追いつかなくなるのか技術負債は、なぜ突然「手がつけられない」段階まで膨張するのか ソフトウェアの複雑性を・・ という3つのレンズで読み解いてみました。 ポイントは、「複雑なコード」 ではなく、「複雑さ自体の本質」 を扱うことです。 1. 複雑性とは「計算量の爆発」を人間が受け止められなくなる現象 ソフトウェアの複雑性は、しばし

動く点P@next→おそらく冬コミ @MoveDotP マジで最近これ 学校側はAI利用禁止を謳ってる授業もあるけど、実際は確かめる手段がないから実質黙認状態 周りがAI使いまくってGPA上げまくってんのあんまり納得いかんのよな x.com/akira_hasebe_0… 2025-11-10 17:44:28 よな @yonaninunenon これ正直、凄く共感できる。 僕も新しい事を出来るようになろうと、勉強を始めようとしていたタイミングだったので、急激にそれ関連の成果物が生成AIでバンバン誕生する状況になり、何を勉強するのか、勉強する意味は何なのか、萎えるし、わけが解らなくなっている。 この投稿へのリプが参考になるかも x.com/Akira_Hasebe_0… 2025-11-10 18:44:20 わらび | 旅とnoteとイベント @warabi_solotrip 生成AIが


Pythonの非同期処理でasync/awaitがつらい人はWoveを使ってみてはどうだろう? #こまPy みんなのPython 第5版発売中です!Pythonで非同期処理というと標準のasyncioを使ってasync / awaitなコードを書くことを思いつく人が多いと思います。ただasyncioには独特の「つらみ」があって、嫌いな人がいるのです。私もあんまり好きじゃない。この「つらみ」を解消しうるライブラリWoveを紹介します。最近バージョン1.0がリリースされたので、紹介したいと思います。なお、はてブでホットエントリ入りしたので(ブックマークしてくれたみなさん、ありがとうございます!)、他のasyncio様のライブラリを比較表を追記しました。 asyncはなぜつらいのか?Pythonのasyncioは、I/O待ちの多いプログラム(WebアクセスやDB通信など)を効率化する強力な仕組み

11月4日、Yakko Majuri氏が「Why we migrated fromPython to Node.js」と題したブログ記事を公開し、話題を呼んでいる。この記事では、ローンチからわずか1週間でバックエンドをPython(Django)からNode.js(Express+MikroORM)へ全面移行した理由と、その得失について詳しく紹介されている。以下に、その内容を紹介する。 11月4日、Yakko Majuri氏が「Why we migrated fromPython to Node.js」と題したブログ記事を公開し、話題を呼んでいる。この記事では、ローンチからわずか1週間でバックエンドをPython(Django)からNode.js(Express+MikroORM)へ全面移行した理由と、その得失について詳しく紹介されている。以下に、その内容を紹介する。 概要 この記事の

プロジェクトルール(AGENTS.md,CLAUDE.md,copilot-instructions.mdなど)、MCPツール定義(使われなくても消費される)、指示・会話履歴...。これらがコンテキストウィンドウを圧迫していきます。AIに「何を見せるか」を設計する 確率を味方につける LLMは確率的に次の単語を予測しています。つまり、どれだけ賢いAIでも「当たりに向かうよう仕向けてあげる」ことが重要です。 その確率の精度を高める方法が、AIに見せる情報(=コンテキスト)を設計することです。適切な情報を適切な配置で見せれば、より正確な予測ができます。 しかし、現代のLLMには大きな制約があります。コンテキストウィンドウのサイズが理想的な大きさに達しておらず、実用的に不足する場面がよくあります。 制約の中で、いかに精度を高めるか。それがコンテキストエンジニアリングの本質です。 「足し算」から


エンジニアの時間外勉強について、徳丸さんの考えをお伺いさせてください。 新卒で大手のsierに入社したのですが、経営層や組織の上の人たちが語る時間外の勉強や外部セミナーの参加の推奨に違和感を感じてしまいます。 ですがこの手の話をすると「エンジニアである以上は生涯学習すべきだけど、プライベートに勉強を強制させるの(無償の時間外労働)はダメだよね」という一般論を返されます。 正味、仕事をこなしていくという観点から言えばプライベートの勉強を一切やらなくても何とかなってます。選択肢という面でスキルアップも大事だと思いますが… 私は会社として利益を上げたいがためにエンジニアの勉強を推奨するなら(高度なスキルを利用したいと考えるなら)もっと高い給与や時間外労働給を出せよと思ってしまいます。 (会社側が労働後の短い自由時間や週に2日しかない休日すらも搾取してるのでは?と) 自分はエンジニアになって半年程

自己紹介Gota (@gota_bara) 所属 データアナリスト & エージェントエンジニア やってること ⼩売向けデータプロダクト /AIエージェント開発 / データ整備 興味AI × 体験 / ⾳声AI / DSPy / 🏕(夏以外) / アニメ 仕様駆動開発ツール「cc-sdd」 1.5kも⾒えてきた! 2 ● Brownfield開発に対応するた めのcommandsを⽤意 仕様駆動開発ツール cc-sdd2.0alpha 6エージェント対応 ● Claude Code / Codex / Gemini CLI / Cursor /Github Copilot / Qwen Code ● Claude CodeはSubagentsも 対応 テンプレート機能 (独⾃) ● 各仕様書をチームのワークフ ローのテンプレートに置き換 え可能! 既存開発対応 ● 調査フェーズを含
はじめに こんにちは。AlgomaticAI Transformation(AX) のsergicalsix(@sergicalsix)です。本記事では大規模言語モデル(LLM)を用いたアプリケーションないしAIエージェントの構築において切っても切り離せない「コンテキストエンジニアリング」について2025年10月時点での知見を備忘録としてまとめます。 コンテキストエンジニアリングとは コンテキストエンジニアリングとは、LLM に与える情報(コンテキスト)を制御する技術です。 コンテキストエンジニアリングはよくプロンプトエンジニアリングと対比されます。 プロンプトエンジニアリングとコンテキストエンジニアリング (Effective context engineering forAI agents) プロンプトエンジニアリングはあくまで特定のタスクに特化したエンジニアリング手法であるのに

■はじめに直近生成AIの爆発的な広がりによりエンジニアの仕事にも大きな変化が起きてきています。そのなかでも新卒や若手エンジニアをどう育てていったらよいかが課題になってきています。 育成課題がでてきた流れは、ざっと下記のようになります。 シニアエンジニアのほうが生成AIで生産性があがる ↓ ジュニアが低品質コードを量産し、シニアがレビューで疲弊する ↓ ジュニアが経験を積むのにちょうどよいタスクが生成AIに奪われる ↓ シニアエンジニアだけ取ればよいのではないか?となる ↓ しかしシニアエンジニアのパイは限られており、頭数が足りない ↓ シニアエンジニアの採用難易度と年収レンジが高騰 ↓ 若手が入らないと将来のマネジメント人材を失い空洞化が起きる ↓ 若手がもつ時代トレンド・文化潮流を知る「顧客に近い目線」を失う ↓ イノベーションを積極的に使う若手がいないと組織がレガシー化する ↓ 新卒や

はじめに DSPyに夢中である。DSPyの最も重要な点は、手動のプロンプトエンジニアリングを排除できる可能性を秘めていることだ。可能性を秘めているだけで、現状、手動のプロンプトエンジニアリングが完全に不要になったわけではないのだが、こちらの分野を真面目に学ぶ動機として十分だ。使い心地というか、真面目にこの分野やってみようと思ったのはPFNのChainerを初めて触ってみたときの感覚に似ている。その後、PyTorchが出現し、すごいスピードで技術とツールが進歩していく中で、学んだことをまとめるためにブログを書き始めたのを思い出した。 DSPyがディープラーニングのフレームワークであるPyTorchやChainerに似ているのは表面上の使い心地だけの話ではない。わざわざプログラムの書き心地がこうなったのは、「これまで人手で頑張ってきたことを、パラメータにおきかえてしまい、教師データでガバっと訓

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 先日、Zennの「第3回AI Agent Hackathon withGoogle Cloud」に参加し、Flutterを使って、3週間で一つのアプリ『Vegitage』をデプロイまで漕ぎ着けました。 今日は、そのアプリ自体の話ではありません。 この開発プロセスを通じて、私自身が体験した「プログラミングという行為の、根本的な変容」について、少し過激な物言いになるかもしれませんが、正直にお話ししたいと思います。 結論から言うと、これまでのプログラミング教育が金科玉条としてきた「基礎からの積み上げ学習」は、もはや時代遅れどころか、才能の

If you ever watch someone “coding”, you might see them spending far more time staring into space than typing on theirkeyboard. No, they (probably) aren’tslacking off. Software development is fundamentally a practice of problem-solving, and so, as with solving a tricky crossword, most of the work is done in your head. In the software development lifecycle, coding is the letters filled into the cr

前書き 黒魔術のざっくり概要 黒魔術をどうやって使うか 黒魔術の副作用 黒魔術に対する防衛術 ~Defence Against theGo's dark Arts~ インターフェース適合アサーション 標準的な構文 動作メカニズム 主な用途 実装例 配列長アサーション 標準的な構文 動作メカニズム 主な用途 実装例 定数演算と型定義によるアサーション 標準的な構文 動作メカニズム 主な用途 実装例 マップキー重複アサーション 標準的な構文 動作メカニズム 主な用途 実装例 リンカエラーアサーション 標準的な構文 動作メカニズム import "C" の副作用 コンパイラの定数評価とデッドコード除去 (DCE) リンカのシンボル解決 主な用途 実装例 まとめ 前書き ソフトウェアエンジニアリングの世界では、一見すると動作原理が不可解でありながら、言語仕様の巧みな(あるいは強引な)解釈によって

#Note Summary: 年一ゲストもりもとさんと、OSSTechにおけるID連携ツール開発の近況から、AIエージェント活用で、Claude Code、DevinAI、DeepWikiなどを使い分け、プロトタイプ作成(ブートストラップ的)と既存プロダクト拡張(メンテナンス的)の2パターンを深堀り。AIは品質向上に貢献する一方、生産性や学習阻害、「AIを賢く使うには自身が賢くなければならない」というパラドックスも課題として提起。この技術変化の中で、Git活用やメタ認知の重要性など、AI時代の開発スタイルと学習方法について議論した。 Guest: 神戸でひとり会社をやっているもりもとです。 いまは受託開発をしていて osstech さんという、統合認証のパッケージベンダーさんで id 連携ツールのプロダクト開発のお手伝いをしている。この11月で3年経つ。 Contents: もりもと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く