タグ

ITに関するrunningupthathillのブックマーク (64)

  • プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するか

    紙書籍をお届けします(PDFがついてきます) PDFのみ必要な場合は、こちらからPDF単体を購入できます 通常はご注文から2~3営業日で発送します。 年末年始や大型連休など、1週間から10日程度、配送のお休みをいただく場合があります。詳しくはお知らせをご覧ください。 そのプログラム、CPUの性能を引き出せますか? Takenobu Tani 著 312ページ A5判 ISBN:978-4-908686-16-0 2023年1月25日 第1版第1刷 書の解説で利用するコード(著者によるGitHubリポジトリ) 正誤情報など ソフトウェアの価値は、ハードウェアで実行されることにより、現実のものになります。そのために不可欠なのがCPUです。したがってソフトウェアの価値は、CPUの性能、すなわち「できるだけ高速にソフトウェアを実行すること」にかかっているとも言えるでしょう。 現代のCPUの性能は

    プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するか
  • 『プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するか』 発売のお知らせ

    ご来店いただきありがとうございます。新刊『プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するのか』発売開始のお知らせです。 ほぼすべてのソフトウェア開発者がお世話になるコンピューターの最重要パーツ、CPU。「演算をする」というざっくりした役割は知っているし、もう少し踏み込んでレジスタやアセンブリ命令、あるいはさらに踏み込んで、NAND/OR/NOT回路による演算装置といった原理を勉強したことがあるプログラマーの方も少なくないと思います。 しかし、現代のソフトウェアにおいてCPUがもたらす大きな価値は、その原理のみならず、むしろその尋常ならざる高速さにこそあるといっても過言ではないでしょう。 CPUの性能は、半導体技術の進化やハードウェア構成の妙といった物理的な要因のみによって決まるわけではありません。その裏には、パイプライン化やスーパースカラ化、さらには分岐

    『プログラマーのためのCPU入門 ― CPUは如何にしてソフトウェアを高速に実行するか』 発売のお知らせ
  • ソフトウェアアーキテクトに必要なシステム設計知識を学んだ17冊 - yoshikipom Tech Blog

    はじめに アーキテクチャ・デザイン全般 ソフトウェアアーキテクチャの基礎 Clean Architecture 達人に学ぶソフトウェアの構造と設計 Design It! ソフトウェアシステムアーキテクチャ構築の原理 データ指向アプリケーションデザイン マイクロサービス マイクロサービスアーキテクチャ マイクロサービスパターン 実践的システムデザインのためのコード解説 ソフトウェアアーキテクチャ・ハードパーツ ドメイン駆動設計 エリック・エヴァンスのドメイン駆動設計 ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計の基 現場で役立つシステム設計の原則 要件定義 はじめよう!プロセス設計 ~要件定義のその前に はじめよう! 要件定義 ~ビギナーからベテランまで はじめよう!システム設計 ~要件定義のその後に Web, Web API Webを支える技術 プロになるためのWeb技術

    ソフトウェアアーキテクトに必要なシステム設計知識を学んだ17冊 - yoshikipom Tech Blog
  • 『マスタリングLinuxシェルスクリプト 第2版』、こういう1冊手元に有るとずっと使える本はちゃんと買っておきたいですね - Magnolia Tech

    マスタリングLinuxシェルスクリプト 第2版 ―Linuxコマンド、bashスクリプト、シェルプログラミング実践入門 作者:Mokhtar Ebrahim,Andrew MallettオライリージャパンAmazon 令和最新版のシェルスクリプトの入門書とリファレンスがセットになった1冊。手元に置いておくと安心感ありますよね。 令和最新版なので、冒頭からデバッグしたいならVisual Studio Code がオススメ、と出てきます。 コンテナ使おうと思ったらシェルスクリプトの読み書きの出番がどんどん増えていって、コンテナに一番必要なスキルはシェルスクリプトのスキルでは?と思っている今日この頃です(違います)が、そのくらいの用途に必要な要素は全部盛り込んであり、シェルスクリプトの文法と実践的な使い方に加えて、一緒に利用されることの多いgrep、awk、sedといったコマンドの解説も併せて載

    『マスタリングLinuxシェルスクリプト 第2版』、こういう1冊手元に有るとずっと使える本はちゃんと買っておきたいですね - Magnolia Tech
  • インターネットは断片化されることを望んでいる

    Noahpinionより。 全世界を1つの部屋に一緒に放り込んでもうまくいかない。 BY ノア・スミス ノア・スミス @Noahpinion 15年前、インターネットは現実世界からの逃避先だった。 今や、現実世界がインターネットの逃避先になっている。 5年前、私は大学時代の友人Dayvとビールを飲みながら座っていました。Twitterをスクロールして、ドナルド・トランプの最近の暴挙に腹を立てている人たちを見て、こう言いました。「15年前、インターネットは現実世界からの逃避先だった。 今や、現実世界がインターネットの逃避先になっている。」「ツイートして!」とDayvが言ったので、私はそうしました。そのありきたりな意見は、私のツイートで最も人気を博し、その引用は今や、ウェブ上のあらゆるコンテンツミルで無限に投稿されています。 なぜ、このような面白みに欠ける観察が、こんなにも多くの人の心に響いた

    インターネットは断片化されることを望んでいる
  • The Software Pro's Best Kept Secret.

    Stop following tutorials designed for beginners. Start working on projects that actually challenge you. Become a better engineer through deliberate practice.

    The Software Pro's Best Kept Secret.
  • CS50: Introduction to Computer Science | Harvard University

    What you'll learn A broad and robust understanding of computer science and programming How to think algorithmically and solve programming problems efficiently Concepts like abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development Familiarity with a number of languages, including C, Python, SQL, and JavaScript plus CSS and HTM

    CS50: Introduction to Computer Science | Harvard University
  • ググり時間をぶった切る。AWSを最速で攻略するサイト13選 - Qiita

    はじめに 自分がAWSをこれっぽっちも知らない頃、 ググって出てきたどこか知らんサイトからだと、「欲しい情報はこれじゃない」ってのが多くあった。 そんなこと繰り返していると エラー、トラブル時に即対応できない 間違って構築したせいで運用時に悪化してしまう 古いソースコードでエラーがでて動かない これで無駄な時間を過ごすことになる。 要は「ググって得たその情報で、作ったものは正しいのか?」 AWSは常にアップデートされ続ける 欲しい情報を手に入れるまで調べる時間を割くなら、 公式展開してるサイトから得たほうが正確である。 ということで、最速でAWSを攻略するサイトをまとめる。 この記事をブックマークでもしておくと、ググる手間も省けるだろう。 目次 AWSドキュメンテーション AWSサービス別資料 トレーニングライブラリ AWSブログ アーキテクチャーセンター ワークショップをする よくある質

    ググり時間をぶった切る。AWSを最速で攻略するサイト13選 - Qiita
  • 今は、もう、動かない、その User-Agent 文字列

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、広告エンジニアの中山です。 唐突ですが、みなさまの Web アプリケーションに User-Agent 文字列を参照する処理はありますか? User-Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.1234.56 Safari/537.36例えば User-Agent 文字列を解析して内容に応じて制御を分岐させたり、機械学習の特徴量として用いたり、さらには一般に悪しきユースケースとされていますが IP アドレスと組み合わせて fingerprinting に活用する … と

    今は、もう、動かない、その User-Agent 文字列
  • 間違いから学んだスマートプラグ利用の注意点と、スマート家電を取り巻く現状

    間違いから学んだスマートプラグ利用の注意点と、スマート家電を取り巻く現状
  • Knuth: The Art of Computer Programming の話 | IIJ Engineers Blog

    2002年から約10年 IIJ技術研究所長. 年を取ってからは古い計算機や昔の計算法に興味が増し, シミュレーターを作ってそのプログラムを書いたり. 近頃はKnuthのTAOCPにあった問題のプログラムなどに挑戦したりしている. 【IIJ 2022 TECHアドベントカレンダー 12/5(月)の記事です】 クリスマスといえば, 英国王立研究所が1825年から続けている「クリスマス講演」が有名で, 岩波文庫にあるFaradayの「ロウソクの科学」はその1860年の講演だ. それに比べればまだ20年くらいだが, スタンフォード大学のKnuth教授も毎年「クリスマス講義」を続けている. しかし今回のブログはそのKnuthによる大著, The Art of Computer Programming(以後TAOCP)が話題である. 上段の左の横積みは, 英語版TAOCPの, 上から第1, 2, 3,

    Knuth: The Art of Computer Programming の話 | IIJ Engineers Blog
  • Inkbase: Programmable Ink

    James Lindenbaum Szymon Kaliski Joshua Horowitz November 2022 With pen and paper, anyone can write a journal entry, draw a diagram, perform a calculation, or sketch a cartoon. Digital tablets like the iPad or reMarkable can adapt pen and paper into the world of digital media. In doing so, they trade away some of paper’s advantages like cheapness and tangibility. In exchange, we get new computation

    Inkbase: Programmable Ink
  • USBコネクターの種類を全て解説。これを読めば全て区別できる

    種類が多すぎて分かりにくいUSBコネクターの形状について、写真付きで全種類解説します。 USBの仕様いろいろ 一口に「USB」と言っても、「USB 3.0」「USB Type-A」「USB PD」など、USB関連のキーワードはたくさんあります。 いろいろあるUSBの中でも、「USB 2.0」「USB 3.1」「USB4」という風に数字のついているものはデータ伝送に関係する仕様を指しており、これによって「どれぐらいのスピードでデータを転送できるのか」ということが決まってきます。 そして、「USB Type-C」「USB Micro-B」「USB Standard-A」というような名前がついているものはコネクターの形状を表しています。これらはあくまで物理的な形状を表しているだけであり、「どれぐらいのスピードでデータを転送できるか」ということには関係しません。 最後の「USB PD」「USB B

    USBコネクターの種類を全て解説。これを読めば全て区別できる
  • Web・コーディング界隈で読み間違いしやすい用語一覧

    人向けの記事のため表記がカタカナとなっております。そのため完全に正確な英語の発音を保証しているわけではございませんのでご了承ください。(より正しい発音が気になる方は各自で発音記号をお調べください。) また私自身は帰国次女でもない純粋な日人&英語力凡人レベルです。明らかに間違っているものがありましたらコメントやTwitterなどでご指摘ください。 もちろん他にもこれが間違いやすいよ、という用語もあればお待ちしております🙏 ❓がついてるのは決めきれないorネイティブでも揺れがあるor議論が必要 なものです。 a11y エイイレブンワイ absolute アブソルート Adobe アドビ Airbnb エアビーアンドビー ajax エイジャックス align アライン(text-align テキストアライン など) AMP(Accelerated Mobile Pages) アンプ An

    Web・コーディング界隈で読み間違いしやすい用語一覧
  • だれかの進捗をうまく把握できないときのフレーズ集 - Qiita

    ほとんどの人はだれかと恊働しています。マネージャーやリーダーであるなら、この割合はより大きくなります。 筆者は、仕事の重要な要素のひとつを「進捗を出すこと」と定義しています。そして進捗を出すには、進捗をただしく把握することも重要になってきます。 しかし「進捗を把握する」と言っても、想像以上に難しいと感じる場面が多々ありました。たとえば、 進捗はどうですか? → 進行中です/〜をやっています なにか問題はありますか? → とくにないです 〜までに終わりそうですか? → たぶん大丈夫だと思います というようなやりとりは一般的なコミュニケーションだと思いますが、あまり有用な情報は得られていません。 この記事では、自身の経験則をもとに、進捗にまつわる良い情報をゲットするための具体的な質問を考えてみました。 なぜ進捗を把握すべきなのか 話の前に、なぜ進捗を把握すべきなのでしょうか。 それは良い計画づ

    だれかの進捗をうまく把握できないときのフレーズ集 - Qiita
  • Vimで本格的にWeb開発したい人の為のステップアップガイド

    想定読者 この記事は「Vimって便利だけど、覚えたてだと局所的にしか使えなかったりして、実際に格的にWeb開発するのは難しいし、モチベーションも続かないなあ…」という人のために書きました。 工夫した点 TODOサンプルアプリを用意して「Vimの設定適用 → リアルなコードを使って実際にVimを動かす」という感じで少しずつ便利になる体験をしながら実際のWeb開発でも使えるVimを使った操作や設定などを覚えていけるステップアップ構成 特定のプラグインを使うケースは類似プラグインを紹介し、他のプラグインも選択できるように。(これこそVimの楽しいところ。好きなものを好きなように自分で組み合わせて使う。) 注意点 Vimの説明になります(Neovimではありませんのでご注意ください)。 Vimはバージョン8.2を使っています。 Docker上のUbuntuでVimを動かす想定になっています。イン

    Vimで本格的にWeb開発したい人の為のステップアップガイド
  • Telegram:カウンターアタック|Go

    ロシアのマーク・ザッカーバーグ」が築いたソーシャルメディアの巨人はカウンターポジションを取ることが特徴である。 ーーーーー 今回もテックメディア「The Generalist」から、ロシア発、世界でも最大級のチャットアプリであるTelegramについての記事をお届けします。 日ではあまり使われていないので知名度は低いかもしれませんが、MAUは5.5億人を超え、Snapchatを凌駕しています。 また、CEOであるパヴェル・ドゥーロフがTelegram以前に設立したVKというSNSで、投資家から資金を調達することの恐ろしさを体感したことから資金調達を行わないため、正確な評価額は分かりません。 しかし、その規模から恐らく6兆円ほどであると考えられています。 これはとんでもないことです。CB Insightsのデータでは、未上場企業の評価額ランキングで4位のKlarnaの評価額がおよそ5兆円

    Telegram:カウンターアタック|Go
  • プロトコルスタックを写経してネットワークを完全に理解したかった日記

    Webページはどうやって表示されるのでしょうか. 「ブラウザでアドレスバーにURLを入力してEnter押してからページが表示されるまでに何が起きているか説明してください」面接で使っていた質問が面白いと話題に 上記の質問には様々なレイヤーでの回答があると思うのですが,私はネットワークの動作に興味を持ちました.というのも,TCP,IP,ARP,Ethernetといったキーワードが関連しているのは教科書や講義で聞いた気がするのですが,それ以上のことはうまく説明できなかったからです. これらのプロトコルは,普段はカーネル内部に隠れていてあまり意識できません. しかし,以下の資料を参考にプロトコルスタックを写経すれば,少しは身近に感じられるかもしれないと思いました. 3月に開催したプロトコルスタック自作キャンプの講義資料を公開しました。1週間でTCP/IPのプロトコルスタックを自作してUDPやTCP

    プロトコルスタックを写経してネットワークを完全に理解したかった日記
  • 忘れ去られたドメイン名に宿る付喪神 | IIJ Engineers Blog

    開発・運用の現場から、IIJエンジニア技術的な情報や取り組みについて執筆する公式ブログを運営しています。 こんにちは。IIJ Engineers Blog編集部です。 IIJの社内掲示板では、エンジニアのちょっとした技術ネタが好評となって多くのコメントが付いたり、お役立ち情報が掲載されています。 そんな情報を社内に留めておくのはもったいない!ということで、IIJ Engineers Blog編集部より、選りすぐりの情報をお届けします。 今回は、使わなくなったドメイン名はどのようにすればよいかを紹介します。 そのまま放置しておいてよいのか?(ダメ) 廃止すればよいのか?(もっとダメ) どういった対応を行えばよいのか? どうぞご覧ください。 終わったサービス・キャンペーンのドメイン名、放置されていませんか? ドメイン名を放置すると付喪神がやどり、ひとりでにサイトを公開したりメールを出し始め

    忘れ去られたドメイン名に宿る付喪神 | IIJ Engineers Blog
  • RISC-Vの進化を牽引するEsperantoの挑戦。シンプルなアイデアと実装の困難さ―Dave Ditzelへのインタビュー | gihyo.jp

    RISC-Vの進化を牽引するEsperantoの挑戦。シンプルなアイデアと実装の困難さ―Dave Ditzelへのインタビュー 2022年8月、2年半ぶりに渡米した際にAIアクセラレータを開発する企業を2つ訪問しました。1つは前回記事のCerebras Systems、そしてもう1つがEsperanto Technologiesです(写真1⁠)⁠。 写真1 オフィスのあるビル。カリフォルニアの青空がよく合います Esperanto社はRISC-Vを牽引してきた企業の1つです。そのFounderであるDave Ditzel氏は、1980年にDavid PattersonがRISCのアイデアを提示した有名な論文[1]の共著者であり、長くプロセッサ業界の第一線を走り続けているエンジニアです。筆者がDaveに初めて取材したのは2004年でしたが、それ以来[2]、何年かおきにDaveと会い、そのとき

    RISC-Vの進化を牽引するEsperantoの挑戦。シンプルなアイデアと実装の困難さ―Dave Ditzelへのインタビュー | gihyo.jp