ブックマーク / gihyo.jp (160)

  • 1日1問、半年以内に習得 シェル・ワンライナー160本ノック

    2021年9月27日紙版発売 2021年9月22日電子版発売 上田隆一,山田泰宏,田代勝也,中村壮一,今泉光之,上杉尚史 著 B5変形判/488ページ 定価3,520円(体3,200円+税10%) ISBN 978-4-297-12267-6 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle 楽天kobo honto このの概要 シェルのワンライナー(その場かぎりの1行プログラム)は,LinuxMacのコマンドラインインターフェースを立ち上げたら,すぐにプログラムを書いて即実行できます。ちょっとした作業を手っ取り早く片付けるのに向いています。大量のデータ処理,繰り返し処理ほどその効果は絶大です。書は,そんなシェル・ワンライナーを身につけるためのトレーニングです。大量の問題を

    1日1問、半年以内に習得 シェル・ワンライナー160本ノック
    toshikish
    toshikish 2021/09/17
  • 図解即戦力 暗号と認証のしくみと理論がこれ1冊でしっかりわかる教科書

    このの概要 テレビ会議やリモートワークが普及する中,情報を守る暗号や人確認のための認証技術の重要性が増しています。書は公開鍵暗号や署名などの理論を基礎から詳しく解説し,TLS1.3やHTTP/3,FIDOなどの新しい技術も紹介します。更にブロックチェーンで注目されている秘密計算,ゼロ知識証明,量子コンピュータなど最先端の話題も扱います。 こんな方におすすめ 暗号と認証の基礎を学習したい人 Web担当者やセキュリティ担当者など 1章 暗号の基礎知識 01 情報セキュリティ 情報セキュリティの三要素 情報セキュリティと暗号技術 利便性とコスト 追加された要件 02 暗号 暗号とは よい暗号と使い方 暗号の動向を知る 03 認証 パスワードによる認証 パスワード攻撃者の能力 パスワードの攻撃手法 認証の分類 認可 OAuth 04 古典暗号 シフト暗号 換字式暗号 符号化 2章 アルゴリズ

    図解即戦力 暗号と認証のしくみと理論がこれ1冊でしっかりわかる教科書
    toshikish
    toshikish 2021/09/15
  • RISC-VとChiselで学ぶ はじめてのCPU自作 ――オープンソース命令セットによるカスタムCPU実装への第一歩

    このの概要 書では,UCバークレーで開発されたオープンソースの命令セット(ISA)「RISC-V」を用いて,CPUの作り方を解説します。コンピュータアーキテクチャ,ハードウェアに関する知識があまりない方にも理解できるように基礎からわかりやすく学んでいきます。CPUとコンピュータアーキテクチャのしくみを解説したうえで,基整数命令の実装から,CPUの高速化で活躍するパイプラインの実装,スーパーコンピューターでも活躍するベクトル拡張命令(SIMD),さらに,汎用CPUでは負荷の高い処理をより高速に実行するためにCPUへ追加可能なカスタム命令の実装までを行います。CPU設計に用いる基言語としては,Velilogを抽象化したHDL(ハードウェア記述言語)であるChiselを利用しています。 CPUの自作範囲に関して,手順が煩雑なFPGAでの動作確認は行わず,ソフトウェア上でエミュレーションを

    RISC-VとChiselで学ぶ はじめてのCPU自作 ――オープンソース命令セットによるカスタムCPU実装への第一歩
    toshikish
    toshikish 2021/08/05
  • 2021年4月15日 パニックお断り―Linus、"Rust for Linux"の盛り上がりに釘を刺す | gihyo.jp

    Linux Daily Topics 2021年4月15日パニックお断り―Linus、"Rust for Linux"の盛り上がりに釘を刺す 開発者の間で人気上昇中のRustだが、Linuxカーネル開発においても1年ほど前からメインラインでのRustサポート―新たにデバイスドライバを記述する言語としてRustを認めるよう求める声が強くなりつつある。3月にはカーネル開発者のMiguel Ojedaが最初の"Rust for Linux"となるパッチをlinux-next(次期カーネルへのマージを希望するパッチが集められたGitリポジトリ)にポストし、Stephen Rothwellによってマージされた。 kernel/git/next/linux-next.git - The linux-next integration testing tree Ojedaはさらに一歩踏み込んだステップとし

    2021年4月15日 パニックお断り―Linus、"Rust for Linux"の盛り上がりに釘を刺す | gihyo.jp
    toshikish
    toshikish 2021/04/15
  • 2021年3月18日 Rustを学ぶためのプロジェクト―Debian開発者、coreutilsパッケージをRustで実装中 | gihyo.jp

    Linux Daily Topics 2021年3月18日Rustを学ぶためのプロジェクト―Debian開発者、coreutilsパッケージをRustで実装中 「開発者にもっとも人気がある言語」としてここ1、2年、さまざまな調査でランクインすることの多いRustだが、オープンソースプロジェクトの現場でもRustの人気は高く、Cで書かれたコンポーネントやプロダクトをRustで書き換えるプロジェクトも増えている。そうしたプロジェクトのひとつとして、Linux/UNIX系のオペレーティングシステムに必須のコマンドラインツールを集めた「coreutils(GNU Core Utilities⁠)⁠」をRustで書き換える「uutils/coreutils」がGitHub上で活動中だ。 GitHub - uutils/coreutils : Cross-platform Rust rewrite o

    2021年3月18日 Rustを学ぶためのプロジェクト―Debian開発者、coreutilsパッケージをRustで実装中 | gihyo.jp
    toshikish
    toshikish 2021/03/19
  • Web配信の技術 ―HTTPキャッシュ・リバースプロキシ・CDNを活用する

    このの概要 HTTPキャッシュ,リバースプロキシ,CDNなどWeb開発で大切な「配信」の技術。 重要な技術ながら,現場では知見のあるエンジニアが少なく,なんとなくで運用されていたり,導入が遅れていたりします。 書では,HTTPキャッシュの基礎から解説し,一冊でしっかり配信が学べます。 速くて落ちないWebサイト/Webサービス/Web APIの実現はもちろん。キャッシュ事故やセキュリティ上の問題を防ぐのにも役立ちます。 こんな方におすすめ CDNやリバースプロキシの導入に興味のあるアプリケーションエンジニアインフラエンジニア 配信技術を学びたいインフラエンジニア Webサービスを高速化させたいフロントエンドエンジニア 第1章 はじめに 1.1 書の対象と目的 1.2 書の構成 1.3 下準備 第2章 配信の基礎 2.1 配信のとらえ方 2.1.1 配信の根幹 2.2 標準仕様でや

    Web配信の技術 ―HTTPキャッシュ・リバースプロキシ・CDNを活用する
    toshikish
    toshikish 2021/01/31
  • LINE証券のフロントエンド開発チームがこだわる“型安全”――noImplicitAnyがもたらす効果 | gihyo.jp

    インタビュイー LINE フィナンシャル開発センター Front-endチーム フロントエンドエンジニア 鈴木僚太(右) LINE フィナンシャル開発センター Front-endチーム フロントエンドエンジニア 水牧稜太(左) 2020年11月に開催された「LINE DEVELOPER DAY 2020」において、LINE フィナンシャル開発センター Front-endチームのフロントエンドエンジニアである鈴木僚太氏は「LINE証券フロントエンドにおける型安全性への取り組み」と題して講演を行いました。ここで話題として取り上げられた型安全についての取り組み、そしてTypeScriptのコンパイラオプションである「noImplicitAny」を有効にした背景などについて、講演を行った鈴木氏、そして同じくLINE証券のフロントエンド開発に携わる水牧稜太氏にお話を伺いました。 徐々に浸透した型安全

    LINE証券のフロントエンド開発チームがこだわる“型安全”――noImplicitAnyがもたらす効果 | gihyo.jp
    toshikish
    toshikish 2021/01/10
  • 2021年のウェブ標準とブラウザ | gihyo.jp

    2021年になりましたね。 矢倉眞隆(myakura)です。ウェブ標準やブラウザに興味のあるウェブ開発者です。gihyo.jpでは2009年に「Web標準とその周辺技術の学び方」という連載をしていました。 今回は昨年の泉水さんに代わり、2021年のウェブ標準やブラウザの動向を占おうと思います。2020年は世界もブラウザもそれなりに大きな出来事がありましたので、2020年の動きをまずおさえ、そのうえで2021年はどうなるのかを考えてみました。 W3Cのプロセス改訂でLiving Standardライクな仕様の改訂が増えていく W3Cは2020年9月に、新しいプロセス文書と特許ポリシーを公開しました。 新しい文書プロセスはW3Cの組織の定義や標準化の流れ、意思決定などについて定めた文書です。ここ数年は毎年更新されていますが、2020年はこれまでと比べて最大級とプレスリリースでもうたわれています

    2021年のウェブ標準とブラウザ | gihyo.jp
    toshikish
    toshikish 2021/01/04
  • 第47回 非特権コンテナの可能性を広げるseccomp notify機能 | gihyo.jp

    前回の連載が掲載されたあと、久々にコンテナの勉強会をオンラインで開催しました。2回に渡って、cgroupをテーマにカーネルの実装に踏み込んだ内容のお話が聞けました。私もcgroup v1の内部構造についてお話しました。動画は公開されていますのでぜひご覧ください。 さて、今年も気がつけばもう12月で、Advent Calendarの季節になりました。今年はいろいろなことがありましたが、今振り返るとあっという間だった気がします。今年もこの連載で毎年参加しているLinux Advent Calendarに参加します。この記事はLinux Advent Calendar 2020の15日目の記事となります。 この連載は、名前に「LXCで学ぶ」と付いているわりには、最近まったくLXCが出てきませんでしたが(^_^;)、今回は久々にLXCコンテナを使って機能の説明をしたいと思います。とは言ってもLXC

    第47回 非特権コンテナの可能性を広げるseccomp notify機能 | gihyo.jp
    toshikish
    toshikish 2020/12/15
  • 第134回 DDLと暗黙的なコミットについて | gihyo.jp

    皆さんはMySQLを開発に利用している時に、カラム追加や変更を同時に行いたい場面によく出くわすと思います。特に、Webアプリケーションフレームワークなどで用意されているデータベーススキーマのマイグレーションツール等を利用している時に、マイグレーション途中で失敗して中途半端に適用されてしまう、なんてことがあるかもしれません。 マイグレーションが中途半端に適用されてしまった場合、マイグレーションツールでは簡単に元に戻せず、スキーマの復旧のためにmysqlでログインして手作業で復旧するはめになってしまって困った経験がある方もいるかも知れません。そういうアトミック性が欲しい時は、トランザクションを利用して…と、考えると思いますが、これは実は上手くいきません。 今回はその理由である「暗黙的なコミット」について解説していきたいと思います。 検証環境 今回は、第125回 phpMyAdminでDocke

    第134回 DDLと暗黙的なコミットについて | gihyo.jp
    toshikish
    toshikish 2020/11/11
  • 第46回 Linuxカーネルのコンテナ機能 ― cgroupの改良版cgroup v2[7] | gihyo.jp

    前回は、4.14カーネルでcgroup v2に導入されたスレッドモードの概要を説明しました。今回は、実際にスレッド化サブツリーを作成して操作を行ってみましょう。 今回の実行例は、デフォルトではcgroupをマウントしないPlamo Linux 7.2環境で試しています。systemdを採用したディストリビューションの場合、カーネルの起動パラメータにcgroup_no_v1=allと指定して、すべてのコントローラがcgroup v2から使えるようにするとcgroup v2の機能が試しやすいでしょう。 そして、今回の実行例はいずれもrootユーザで実行しています。 それでは早速、cgroup v2のツリー中でどのようにスレッド化サブツリーを作り、操作していくのかを見ていきましょう。 スレッド化サブツリーを作るには2つの方法があります。 cgroup.typeファイルへの書き込みによるスレッド化

    第46回 Linuxカーネルのコンテナ機能 ― cgroupの改良版cgroup v2[7] | gihyo.jp
    toshikish
    toshikish 2020/09/23
  • あなたはデータに対する「正しい技術」を選択できますか?〜数理モデリングによる現象理解に向き合うときの気持ち | gihyo.jp

    あなたはデータに対する「正しい技術」を選択できますか?〜数理モデリングによる現象理解に向き合うときの気持ち はじめまして。株式会社博報堂の熊谷です。 筆者は広告会社の黒子として広告やマーケティング、メディアプランニングのためにどのようなデータをどのように収集するべきかを設計したり、収集したデータを用いて機械学習モデルを構築して施策を行ったりと、データ分析機械学習にまつわる小さな相談から大きな意思決定に至るまでさまざまな業務に携わっています。 このたび『データ活用のための数理モデリング入門』(以降、書)を共著者として執筆しました。稿では書の紹介を兼ねて「数理モデリングとは何か」についての筆者の思いを書きます。いわば、収録されなかった「前書き」です。 数理モデリングとは何か そもそもタイトルにある「数理モデリング」とは一体何でしょうか。書の1章では 現象を理解するために立てる数理的な

    あなたはデータに対する「正しい技術」を選択できますか?〜数理モデリングによる現象理解に向き合うときの気持ち | gihyo.jp
    toshikish
    toshikish 2020/04/16
  • マスタリングVim

    2020年4月16日紙版発売 2020年4月16日電子版発売 Ruslan Osipov 著,大倉雅史 訳 B5変形判/344ページ 定価3,608円(体3,280円+税10%) ISBN 978-4-297-11169-4 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 Googleの現役エンジニアが書いた,テキストエディタ「Vim」の解説書です。OSごとのインストールや基操作といった入門的内容も押さえつつ,リファクタリング,デバッグ,実行,テスト,バージョン管理システムとの連携,プラグインの作成と管理といったソフトウェア開発に便利な機能を,Pythonのコー

    マスタリングVim
    toshikish
    toshikish 2020/03/25
  • WEB+DB PRESS連載記事「Rubyのウラガワ」を期間限定で無償公開(公開終了)

    新型コロナウイルスの影響で多くの学校が休校する状況を受け,『WEB+DB PRESS』で笹田耕一氏が執筆しており,現在も連載中の「Rubyのウラガワ」の第1回から第5回までの記事のPDFを,学習用に期間限定で無償公開します。 記事の概要やダウンロード先などは以下のとおりです。 記事名 Rubyのウラガワ ─⁠─ Rubyインタプリタに学ぶデータ構造とアルゴリズム 記事概要 連載では,Rubyインタプリタという,実際に多くの人が利用しているアプリケーションを題材にしてデータ構造とアルゴリズムを学ぼうという趣旨で,その実装を紹介します。単なる実装の紹介だけではなく,なぜそのような選択をしているか,その背景を紹介できればと思っています。(⁠Vol.110「連載のはじめに」より) 公開範囲 Vol.110(第1回⁠)⁠~Vol.114(第5回) 公開期限 2020年4月5日まで ※期限が過ぎまし

    WEB+DB PRESS連載記事「Rubyのウラガワ」を期間限定で無償公開(公開終了)
    toshikish
    toshikish 2020/03/04
  • 第42回 Linuxカーネルのケーパビリティ[1] | gihyo.jp

    前回からだいぶ間隔が空いてしまいました。前回の最後に案内したudzuraさんのCRIUに関する記事はもう少し時間がかかるようですので、もうしばらく私が担当したいと思います。 今回から数回は、Linuxカーネルに実装されているケーパビリティについて説明します。ケーパビリティは2.2カーネルのころから実装されてきているかなり古くからある機能で、コンテナ向けの機能ではなく一般的に使われている機能です。もちろん、コンテナの安全性を高めるための重要な機能でもあります。 setuid 一般的にはUNIX系のOSでは、プロセスはroot権限(実効ユーザIDが0)で実行される特権プロセスと、一般ユーザ権限で実行される(実効ユーザIDが0以外の)非特権プロセスに分けられます。 一般ユーザは、通常はそのユーザの権限でプログラムを実行すれば良いのですが、一般ユーザが実行するプログラムであっても処理の内容によって

    第42回 Linuxカーネルのケーパビリティ[1] | gihyo.jp
    toshikish
    toshikish 2019/11/19
  • 最終回 今生きるプログラマーが、この仕事をあこがれのものにする | gihyo.jp

    ご好評いただいた連載も今回で最終回。いつもとは趣向とは変え、竹馬氏がこれまでのインタビューを振り返りながら、未来への展望を綴ります。 一皮むけば高度なコンピュータサイエンスが 今まではインタビュアーとして抑えた感じでやってきましたが、今回は自分のブログ「mizchi's blog」の読者はご存じのような、いつもの感じで行きます。 この連載インタビュー企画の依頼を受けたときの個人的な狙いとして、技術評論社の名前を使って、いつもは会いづらい人に会いに行く口実を作ろう、ということを考えていました。その目的はほぼ達成できたので、関係者諸氏には、とても感謝しています。 ……という個人的なテーマとは別に、僕自身が連載を通して一貫して表明したい課題感があり、それは「高度なコンピュータサイエンス/プログラミングスキルの現場適用の難しさ」というものです。 僕自身、大学でコンピュータサイエンスを修めたわけ

    最終回 今生きるプログラマーが、この仕事をあこがれのものにする | gihyo.jp
    toshikish
    toshikish 2019/10/21
  • 2019年10月16日 “脱帽です”―9億3,000万ハッシュ/秒でようやく判明したケン・トンプソンのパスワードは…? | gihyo.jp

    Linux Daily Topics 2019年10月16日“脱帽です”―9億3,000万ハッシュ/秒でようやく判明したケン・トンプソンのパスワードは…? AT&Tのベル研において、かのケン・トンプソン(Ken Tompson)とデニス・リッチー(Dennis Richie)がUNIXの開発を開始したのが1969年、つまり今年2019年は"UNIX50周年"にあたるアニバーサリーイヤーでもある。その記念すべき年に、現代のハッカーたちが偉大な先駆者に挑んだ5年越しのゲームがゴールを迎えた。 RubyのWebサーバインタフェース「Rack」やテストフレームワーク「Bacon」の開発者として知られるLeah Neukirchenは2014年、BSD 3のソースツリーからパスワードファイル(/etc/password)を入手した。そこにはトンプソンやリッチーのほか、GoogleCEOを務めたエリ

    2019年10月16日 “脱帽です”―9億3,000万ハッシュ/秒でようやく判明したケン・トンプソンのパスワードは…? | gihyo.jp
    toshikish
    toshikish 2019/10/16
  • 第1回 DBサーバの構造を知ろう! | gihyo.jp

    記事は、『Software Design 2019年8月号』の第2特集「ゲームを題材に学ぶ 内部構造から理解するMySQL」をWeb掲載用に再編集したものです。 記事のテーマを、より基的なところから丁寧に解説した『SQLの苦手を克服する データの操作がイメージできれば誰でもできる』が2019年8月26日に発売予定です。記事と併せてご活用ください。 ゲーム開発におけるRDBMSの役割 RDBMS(Relational DataBase Management System)は業務システム(以下、業務系)で多くの実績を作ってきました。一方でゲーム分野(以下、ゲーム系)では、RDBMSはほとんど使われていませんでした。ネットゲームではなく、スタンドアローンのゲームが中心だったので、プレーンなテキストやバイナリ形式でデータを保存していたからです(スタンドアローン環境向けのSQLiteもまだ

    第1回 DBサーバの構造を知ろう! | gihyo.jp
    toshikish
    toshikish 2019/08/25
  • 第5回 OSSを職とし、今後のWebの基盤を作る | gihyo.jp

    今回のゲストは数々のオープンソースソフトウェア(OSS)で知られる奥一穂さん。通信プロトコルの最先端は今どうなっているのか、お話を伺いました。 Fastly 奥 一穂さんHTTP/2サーバであるH2Oなど通信プロトコルを専門とする職業OSSプログラマー。 IETFでの標準化にも参画する。サイボウズ・ラボ、DeNAを経て、現在はFastlyに勤務。 Twitter:@kazuho URL:http://blog.kazuhooku.com/ LOGO、HyperCardから、H2Oへ 竹馬:自分の周囲で「一緒に働いたことがある人だと誰がすごかった?」というテーマで話すと奥一穂さんの名前が挙がることが多く、一度お話を聞いてみたいと思っていました。まずはこれまでの経歴を伺えますか。 奥:最初にコンピュータを触ったところから始めると、小学生のとき親の都合でオーストラリアの学校に通っていて、授業で触

    第5回 OSSを職とし、今後のWebの基盤を作る | gihyo.jp
    toshikish
    toshikish 2019/08/23
  • 第548回 書籍制作を支援するソフトウェア「Re:VIEW」を使う | gihyo.jp

    技術同人誌を作成している人なら特にお世話になっているであろう「Re:VIEW」の最新版3.0.0がリリースされました。今回はこのRe:VIEWをUbuntuにインストールした上で、その基的な使い方を紹介します。 Re:VIEWとは Re:VIEW(りびゅー)は簡単に使える、紙書籍・電子書籍作成支援ツールです。出力フォーマットとしてEPUBやPDFだけでなく、InDesign XMLにも対応しているため、電子版の同人誌から印刷される商業出版に至るまで幅広く使われています[1]⁠。 組版に必要なマークアップは独自の言語を採用しています。このためRe:VIEWを格的に使うにはマークアップに対する知識が必要にはなるものの、その記法はなるべく書籍の著者にとっても書きやすくなるよう作られているようです。おそらくそこまで困ることはないでしょう。ソフトウェアの作成言語はRubyであり、ツールやマーク

    第548回 書籍制作を支援するソフトウェア「Re:VIEW」を使う | gihyo.jp
    toshikish
    toshikish 2018/12/05