ご来店いただきありがとうございます。新刊『プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するのか』発売開始のお知らせです。 ほぼすべてのソフトウェア開発者がお世話になるコンピューターの最重要パーツ、CPU。「演算をする」というざっくりした役割は知っているし、もう少し踏み込んでレジスタやアセンブリ命令、あるいはさらに踏み込んで、NAND/OR/NOT回路による演算装置といった原理を勉強したことがあるプログラマーの方も少なくないと思います。 しかし、現代のソフトウェアにおいてCPUがもたらす大きな価値は、その原理のみならず、むしろその尋常ならざる高速さにこそあるといっても過言ではないでしょう。 CPUの性能は、半導体技術の進化やハードウェア構成の妙といった物理的な要因のみによって決まるわけではありません。その裏には、パイプライン化やスーパースカラ化、さらには分岐
はじめに アーキテクチャ・デザイン全般 ソフトウェアアーキテクチャの基礎 Clean Architecture 達人に学ぶソフトウェアの構造と設計 Design It! ソフトウェアシステムアーキテクチャ構築の原理 データ指向アプリケーションデザイン マイクロサービス マイクロサービスアーキテクチャ マイクロサービスパターン 実践的システムデザインのためのコード解説 ソフトウェアアーキテクチャ・ハードパーツ ドメイン駆動設計 エリック・エヴァンスのドメイン駆動設計 ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計の基本 現場で役立つシステム設計の原則 要件定義 はじめよう!プロセス設計 ~要件定義のその前に はじめよう! 要件定義 ~ビギナーからベテランまで はじめよう!システム設計 ~要件定義のその後に Web, Web API Webを支える技術 プロになるためのWeb技術
Thoughtworks社が半年ごとに公開しているTechnology RadarのVol.23が最近公開されていたので一通り読んでみました。 その中でMutation testingという技術が気になったので、今回はこれについて書いていきます。 Mutation testingとは Mutation testingとは、プロダクションコードに対するテストコードがどれだけ十分なものか、というテストの品質自体を評価するテスト手法です。 Mutation testingは、プロダクションコードに対してmutantと呼ばれる小さい変更を加えた後に既存のテストを実行し、テストが失敗するかどうかを検証します。検証した結果テストが失敗した場合は、実行したテストにはプロダクションコードの不備を検知できる能力があるとみなします。mutantによってテストが失敗した場合、mutantがkillされる、と表現
エンジニア採用広報担当のぐりこ ( @glico800 ) です。 前回の基本編に続き、今回も最近開発チームで試しに使っている Gather.town について、はじめて触るときに押さえておきたい基本操作をまとめてみました。 今回は「初級ビルド編」として、自席の周りの飾り付けや間違えて消してしまった Object の復元について解説したいと思います。 ※今回はブラウザ版を前提に解説を進めるので、アプリ版をご利用の方は若干ボタンの位置などが違うかもしれません。予めご了承ください。 ※本記事に書かれている内容は 2022/03/16 時点での仕様に基づいて書かれています。最新の情報は 公式ページ を参照してください。 2つのビルド方法 スペース内でのビルド スペース内でのビルドでは、Object を自由に配置することができます。 こちらは Build 権限が不要なため、誰でもビルド可能。 ただ
ひきこうもり @Hikikomori_ 日本の家はいくらエアコンを効かせても、窓に使われているアルミサッシの断熱効果がしょぼすぎるので、関東地方でも部屋の中が、命の危険すらあるほどめちゃめちゃ寒いという話を、クローズアップ現代でやってて、ソーラーパネル設置義務付けなんかより、窓を二重にした方が電気代減ってエコになりそう ひきこうもり @Hikikomori_ 北海道や東北地方なんかだと、家屋の窓を二重にするの当たり前になってるそうだけど、冬場の暖房代が減るのはもちろん、夏場でも部屋の温度が保たれて冷房代減る効果もありそうだし、初期投資で家立てる時に少しお金足すだけでずっと使えるので、関東地方や関西地方でも二重窓が標準になったら良いのに ひきこうもり @Hikikomori_ 窓に使われているアルミサッシの事ぐぐったら、 「使用禁止している国もあるくらい、恐ろしいほど断熱性が悪い」 「他の国
Agile Japanは、日本中にアジャイルの価値を浸透させ、日本の変革を促進することを目指しています。あらゆる業界や職種の方が集まり、実践者も初学者もともに建設的な意見交換ができる場です。「Agile Japan 2022」に登壇したのは、株式会社セブン銀行・スクラムマスターの小林公洋氏。LeSSにおける1on1の取り組みの工夫と結果について発表しました。 セブン銀行・スクラムマスターの小林公洋氏 小林公洋氏:それでは「LeSSではじめる1on1」を始めたいと思います。 まず簡単に、自己紹介をさせてもらえればと思います。セブン銀行の小林と申します。主な経歴としてはシステム開発をずっとやってきています。約3年ほど前にセブン銀行に転職をしています。セブン銀行は4、5年ぐらい前から内製開発に取り組んでいるのですが、内製開発を行っているグループが「プロダクト開発グループ」というところになっており
あけましておめでとうございます! 今年は異世界放浪メシのアニメが放送されるらしいので楽しみなバックエンドの原田 (tomtwinkle)です。 内部で運用しているSQLレビューチェックリストの一部を抽出し思いつきで追記して行った結果、結構な分量になってしまいました。 暇な時でも流し読みして頂けるとありがたいです。 Motivation SQLレビュー観点 大きくSQLが変更される修正の際にはEXPLAINをレビュー内容に加える 検索のキーにINDEXを使用しているか SQL発行回数がN+1(1+N)の構造になっていないか サブクエリを利用したSQLはパフォーマンス要チェック Viewの利用は基本的に禁止 CROSS JOINは禁止 WHERE句で十分に絞った検索をしているか 必要なcolumnだけSELECTしているか レコード数だけ必要な場合にCOUNT用のSQLを発行しているか 集計関
目次 はじめに 個人を特定する情報が個人情報じゃない デジタル署名は暗号化しない TLS(SSL) は共通鍵を公開鍵で暗号化しない TLS(SSL) が使われていれば安全じゃない 変数は箱じゃない Python 等は「ソースコードを 1 行ずつ実行するインタプリタ方式」じゃない 日本語 1 文字は 2 バイトじゃない 動画が動いて見えるのは残像によるものじゃない 標本化定理は「2 倍以上の周波数」じゃない その他いろいろ はじめに 2022 年から高等学校で、プログラミング等を学ぶ「情報Ⅰ」が 必修 必履修科目になりました。1 さらには 2025 年入試から大学入試共通テストでも出題されるようになり、教科「情報」の重要性が高まっています。 これで 2030年に79万人不足すると言われる IT 人材 の問題が解決!…と言いたいところですが、先日も『課題感ある教科1位「情報」』という調査結果が
大学の授業で講義資料を作ったので,Qiitaにも展開しておきます. 背景: クロック周波数の停滞とコア数の増加 コンピュータはクロック周波数に同期して計算をします.おおむね1秒間にクロック周波数の数で示されるだけの数の機械語命令を実行できると考えると良いです.たとえばクロック周波数が1GHzであれば,1GHz=1,000MHz=1,000,000(百万)kHz=1,000,000,000(10億)Hzですので,1秒間に1,000,000,000(10億)個の機械語命令を実行できるというような感じです.もちろんこれは概算です. いわゆるヘネパタ本(J. L. Hennessy & D. A. Patterson: Computer Architecture: A Quantitative Approach, 6th edition. Morgan Kaufmann, 2017; 邦訳 中條・
「競技プログラミングを始めたばかりの人にオススメの問題集は何?」というのが普段よく見ている Slack で話題に登っていたので、私の考えをまとめました。 おことわり 私は競技プログラミングを本格的に始めてからもうすぐ5年の水色コーダーです。めっちゃくちゃに強いわけではないですが、基礎的なところはある程度習得している、という感じです。 この記事は、そのような実力の私が、あくまでも独自の評価軸で勝手に評価したものなので異論はあると思います。また、各種学習法/問題集について私自身が全て完走しているわけではありません。 これらをご理解いただいたうえで、以下をご覧ください。 最推し: アルゴ式 2023年1月現在、初心者向けの最初の問題集としてお勧めしたいのは アルゴ式 です。アルゴ式の特徴として次のようなものがあると思っていて、それが初心者が練習するうえで適した特徴だと考えるからです ジャンルごと
Stop following tutorials designed for beginners. Start working on projects that actually challenge you. Become a better engineer through deliberate practice.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く