「Pythonで単体テストを書くとき、実装ファイルの中にテストコードを書いてはいけないのですか?」RustやGoといったモダンなコンパイル言語の経験があるエンジニアが、Pythonのプロジェクト構成を見たときに抱く素朴な疑問です。Rustでは src/lib.rs の中に mod tests を書くのが当たり前ですし、Goでも main.go の隣に main_test.go を置くのが一般的です。 しかし、Pythonのデファクトスタンダードは 「src/ とは別に tests/ ディレクトリを切る」 というスタイルです。 なぜ言語によってテストコードの配置場所(文化)がこれほど異なるのでしょうか? その背景には、単なる「好み」の違いではなく、「コンパイルの仕組み」 と 「配布(デプロイ)の仕組み」 という技術的な必然性が隠されています。本記事では、Rust,C++, Pytho

npm史上最悪のサプライチェーン攻撃「Shai-Hulud 2.0」。正規パッケージのメンテナー認証情報を盗み、悪意あるバージョンをnpmに公開するという手口で、11月21日から急速に拡散しました。 この記事では2つのことを解説します: 自分が被害にあっていないか確認する方法 今後の被害を防ぐ多層防御アプローチ *この記事と同じ内容を動画でも解説していますので、動画の方が好きな方は下記からどうぞ 被害確認 - あなたは大丈夫か? Shai-Hulud 2.0は11月21日から急速に拡散しました。この日以降にnpm installを実行した人は、感染の可能性があります。 チェック1:GitHubアカウントの確認(ブラウザで完結) 確認ポイント1: 見覚えのないリポジトリ まずGitHubで自分のリポジトリ一覧を確認。 Shai-Huludは感染したアカウントにランダムな名前のパブリックリポ

はじめにGitHubのアップデートは頻繁に行われていて、GitHub上でのコードレビューもしやすくなってきてますね! ただ、やっぱり手元のエディタで動かしながら確認したいことってありますよね でも、そのために現在の作業を stash したり、ブランチを切り替えて npm install し直したりするのは正直面倒です… そんな課題を解決するのが gtr (Git Worktree Runner) です! (なぜ gtr と略すのかはわかってないです😇) なぜ gtr なのか? Git標準の git worktree を使えばフォルダ単位でブランチを展開できます。 しかし、コマンドが長くて覚えにくいのが難点でした。 gtr はそれをシンプルにラップし、さらに便利機能を追加したツールです。 コマンドがシンプル git gtr new <branch> だけで作成完了 多様なエディタに対応

「Copilotって結局なにができるの?」——補完が思った通りに出ない、チャットに何を聞けばいいか迷う、セットアップでつまずく…そんな最初の壁を短時間で越えたい方へ。GitHubが公表する開発者調査では、AI支援で生産性や満足度の向上が報告されています(2023年調査)。本記事は、その恩恵を最短で体感できる実践ルートを用意しました。 導入からインライン補完、チャット活用、複数ファイルの安全な編集まで、最初の成功体験を段階的に獲得します。VS Codeはもちろん、Visual StudioやIntelliJ、Eclipseの違いも迷わず確認できます。さらに、著作権・セキュリティの注意点、無料と有料の機能差、よくあるトラブルの即応チェックも収録。 最初の5分で「受諾・切替・質問」の基本を押さえ、30分で小さな自動生成とテスト作成まで到達。“伝わるコメント”の型とショートカットを手に、今日から確

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 生成AIによるコーディング増加に伴って、コードレビューに注目が集まっています。CodeRabbitは、AIコードレビューを提供していますが、まさにその追い風に乗っています。 そんなコードレビューですが、適切に指摘できると確信を持って言える人は、そう多くないのではないでしょうか。適切なコードレビューは要件を把握し、コードに書かれていない部分も含めて指摘できないといけません。 そこで、コードレビューを簡易的に体験できるゲームを作ってみました。ゲームについて URLはこちらです。 現在はFlutter/JavaScript/Pythonを用
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? たとえば1t + 2kg + 3g + 4mgみたいなことはJavaScriptではできません。 単位変換ができない以前に、単位という概念がありません。 例外は暦くらいで、それ以外の値については値しか扱うことができません。 ということでJavaScriptで単位を扱えるようにしようというproposalが提出されました。 2025年11月現在のstageは1で、実装されるにしてもまだまだ先になりそうですが、面白そうな提案だったので紹介してみます。 以下は該当のproposal、Representing Measuresです。 プロジェク

Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに:いつも手癖でコミットメッセージを書いてませんか? gitのコミットメッセージはできるだけ、具体的な内容を書くべきです。 (何をどう変えたのか、どういう理由で変更したのか、等) しかし、初心者の人は「レビュー修正」や「指摘対応」のように、ただの作業名をコミットメッセージに書く人が多いです。 これだと、あとからコミット履歴を見直したときに、何をどう変更したのかわかりません。 しかも、 🙋♂️「修正しました!」 🧔🏻♂️「コメントしました」 🙋♂️「修正しました!」 🧔🏻♂️「コメントしました」 🙋♂️「修正
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 「コードは設計書だ」と本気で思い直したきっかけ 「詳細設計はありません。現行踏襲で。仕様はソースを読んでください。」 ある現場でこう言われたとき、「あ、これはマズいかもしれない」とうすうす感じていました。 一応、設計書はありました。でも中身はほとんど空っぽで、画面イメージとテーブル定義が少し書いてあるだけ。肝心の処理の流れや、なぜそうなっているのかといった話はほとんど触れられていません。 設計担当に聞いても、返ってくるのはだいたいこんな答えでした。 「現行踏襲なので、細かいところはソースを見てください」 頼みの綱の既存コードを開いてみる

Rubyはまつもとゆきひろ氏により1993年に開発が始められたプログラミング言語です。シンプルで生産性の高いプログラムを書くことができることなどを特長とし、Ruby onRails(Rails)と呼ばれるWebアプリケーションを容易に構築できるフレームワークを備えていることで人気のプログラミング言語です。 1996年にRubyバージョン1.0、2013年にバージョン2.0となり、2020年には性能を大幅に向上させたRuby 3が登場しています。 参考:Ruby 3.0正式版リリース。「Ruby 2の3倍速」到達、型の記述、スレッドセーフな並列処理など新機能 現時点での最新バージョンは、昨年(2024年)12月にリリースされたRuby 3.4で、今年(2025年)4月にはRuby 3.5.0 Preview 1がリリースされていました。 その後、今月(2025年11月)に行われたRubyW

This is open-source software written by hobbyists, maintained by a single volunteer, badly tested, written in a memory-unsafe language and full ofsecurity bugs.It is foolish to use this software to process untrusted data. As such, we treatsecurity issues like any other bug. Eachsecurityreport we receive will be made public immediately and won't be prioritized. これは趣味人たちによって開発され、たった一人のボランティアによっ

政府共通のクラウドサービスの利用環境です。クラウドサービスの利点を最大限に活用することで、迅速、柔軟、かつセキュアでコスト効率の高いシステムを構築可能とし、利用者にとって利便性の高いサービスをいち早く提供し改善していくことを目指します。地方公共団体でも同様の利点を享受できるよう検討を進めます。 概要ユーザー体験を向上させ、世の中の状況の変化に応じて情報システムを柔軟に変更できるような現代的なアプリケーション開発にとって、柔軟かつ迅速にITインフラを構築することは必須となります。アプリケーション開発者の要求に応じて自動で柔軟かつ迅速にインフラを用意できる環境を、最新のクラウド技術を最大限に活用して政府として共通に提供します。クラウドの最新技術を活用することで、クラウドサービスが提供する高いセキュリティと可用性、スケーラビリティを利用できます。同時に、ガバナンス機能とテンプレートを用いることで

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

Node.jsでネイティブにTypeScriptを実行するための機能「Type Stripping」が、11月11日にリリースされた新バージョン「Node.js v25.2.0」で安定版になったことが発表されました。 これにより本番環境などでもType Stripping機能を用いたTypeScriptファイルの実行が安心してできるようになりました。 Node.jsはTypeScriptをサポートしていなかった Node.jsはもともとサーバサイドのJavaScriptランタイムとして開発されたため、JavaScriptのスーパーセットであるTypeScriptの型指定や高度な命令などには対応していません。 Node.jsでTypeScriptファイルを実行するには、TypeScriptトランスパイラを用いてJavaScriptに変換するなどの方法があります。 この方法を用いたts-nod

Visual Studio 2026 の可用性についてお知らせします。 このリリースは、AI の深いプラットフォーム統合、より強力な基礎、パフォーマンスの向上を備えた Visual Studio の新時代の始まりを示しています。 Visual Studio 2026 をダウンロードして、これらの新機能と機能強化をお楽しみください。 Features 2025 年 11 月 11 日リリース。 IDE という意味でしたか? 📣 もうファイルを紛失することはありません。 Copilot は、Visual Studio で検索する際に、ユーザーの意図をインテリジェントに検出し、より適切な検索候補を提案します。 コーディング中にファイルの名前を忘れたことはありませんか? Visual Studio の新しい 検索語句の候補 機能がお手伝いします。 オールインワン検索を使用して検索し、Copilo

リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く