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

  • Rustで作るプログラミング言語—— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで

    このの概要 小さなプログラミング言語から格的なプログラミング言語へ……ステップバイステップでの開発を通して,プログラミングそのものへの理解を深めよう! こんな方におすすめ コンピュータサイエンス,とくにプログラミング言語そのものやコンパイラについての素養を得たいと考えている人 他言語でのプログラミング経験があり,Rustの習得に興味のある人。とくに,学習のための題材を探している人 第1章:プログラミング言語概論 プログラミング言語の分類 他の切り口での分類方法 コンパイルパイプライン 第2章:スタックベース仮想マシン 仮想マシン概論 Rustでの実装 標準入力からの読み込み パースとコマンドの実行 ブロックとネスト構造 if制御構文 変数の定義 複数行のソースコードへの対応 関数呼び出し 関数の再帰呼び出し WebAssemblyへのコンパイルとブラウザでの実行 第3章:プログラミング

    Rustで作るプログラミング言語—— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで
    u-qreil8
    u-qreil8 2024/05/25
  • WEB+DB PRESS総集編[Vol.1~136]

    2024年4月18日紙版発売 WEB+DB PRESS編集部 編 B5判/128ページ 定価3,300円(体3,000円+税10%) ISBN 978-4-297-14156-1 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 『WEB+DB PRESS』全号のバックナンバーを収録 Webアプリケーション開発のためのプログラミング技術情報誌「WEB+DB PRESS」は,2000年から2023年までの23年間という長きにわたり,現場で活躍するWeb開発者の方々に向けた技術情報を提供してまいりました。そして2023年8月発売のVol.136をもって,隔月刊誌としては休刊いたしました。 総集編には,WEB+DB PRESSVol.1から隔月刊最終号となるVol.136までのバックナンバーと,今まで刊行した総集編7冊の書き下ろし記事を収録しています。1冊1ファイルの記

    WEB+DB PRESS総集編[Vol.1~136]
    u-qreil8
    u-qreil8 2024/04/09
  • Misskey チャートエンジン | gihyo.jp

    連載では分散型マイクロブログ用ソフトウェアMisskeyの開発に関する紹介と、関連するWeb技術について解説を行っています。 今回はMisskeyのチャート生成機能のバックエンド実装(チャートエンジン)について解説します。 チャートとは Misskeyのチャート機能は、サーバー上で発生した様々な種類のイベントの推移をグラフやヒートマップ等でグラフィカルに表示できる機能です。 チャートの例。ギザギザしているのは、深夜は人が少なくなるから チャート表示できる情報には、例えば次のものがあります。 アクティブユーザー数の推移 投稿数の推移 連合しているサーバー数の推移 このようなサーバー全体の情報だけではなく、他にも「ユーザーごと」や「連合しているサーバーごと」の情報も集計できます。例えば以下の情報を表示できます。 あるユーザーのフォロワー数の推移 あるユーザーのプロフィールページのPV数の推移

    Misskey チャートエンジン | gihyo.jp
    u-qreil8
    u-qreil8 2024/03/26
  • 第804回 mininetでお手軽ネットワークテスト環境を構築する | gihyo.jp

    3月も半ばになり、暖かい日も増えてきました。これだけ暖かくなってくると、ちょっとしたアプリで少し特殊なネットワークフレームを流したり、普段使わないネットワークプロトコルを試したくなりますよね。でも番環境でそれをやってしまうと、変質者としてしかるべき場所に通報されてしまいます。そこで今回は他人に迷惑をかけずに隔離されたネットワークテスト環境を構築できる「mininet」を使って、お縄にかからないようにしてみましょう。 Open vSwitchとネットワーク名前空間で気軽にテスト環境を構築する Linuxカーネルには「ネットワーク名前空間(netns)」という機能があります。これはホストや他のコンテナから隔離された環境でネットワークインターフェースを作成し、操作できるようになる仕組みで、特にLinuxのコンテナ系ツールで使っている基礎技術のひとつです。 Ubuntuだと「ip netns」コ

    第804回 mininetでお手軽ネットワークテスト環境を構築する | gihyo.jp
    u-qreil8
    u-qreil8 2024/03/13
  • 第800回 USBメモリ型SSD選手権! 速くてお得なインストールメディアを探す | gihyo.jp

    従来型USBメモリの例として筆者が使っている2015年購入のものを、そしてサイズが最小となるmicroSDカードもカードリーダー(BUFFALO BSCR27U3BK)を使うことでUSB接続ストレージということにして特別招待選手として追加しています。さらにKIOXIAの「メインストリーム向け」とされるNVMe SSDをUSB変換ケース(Realtek RTL9210B-CG搭載)に入れたものも特別招待選手枠で追加し、USB 3.2 Gen 1 (5Gbps)の帯域をしっかり使い切ってくれるペースメーカーとしての役割を期待します。 計測ツールの選択 参加資格の決定と選手の選考が終わったら、次は計測方法を決めなければなりません。ストレージのベンチマークといえば図3のようなスクリーンショットをよく見かけることでしょう。いくつかのシナリオ(シーケンシャルリード・ライト、ランダムリード・ライト)のパ

    第800回 USBメモリ型SSD選手権! 速くてお得なインストールメディアを探す | gihyo.jp
    u-qreil8
    u-qreil8 2024/02/14
  • 人生が整うマウンティング大全

    2024年2月14日紙版発売 2024年2月14日電子版発売 マウンティングポリス 著 四六判/208ページ 定価1,540円(体1,400円+税10%) ISBN 978-4-297-13951-3 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto このの概要 人間関係あるところにマウントあり,マウンティングを制する者こそが人生を制する。 3万以上の事例を収集・分析してきたマウンティング研究家が,80億総マウント社会を乗り切るためのナレッジを集大成。 一流の人こそこっそり活用しているマウンティングの最強パターンとは ステルスマウント×マウントさせる=最強のビジネススキル イノベーションはテクノロジーからではなくMX(マウンティングエクスペ

    人生が整うマウンティング大全
    u-qreil8
    u-qreil8 2024/01/16
  • 2024年のWebアクセシビリティ | gihyo.jp

    あけましておめでとうございます。株式会社ミツエーリンクスの中村直樹です。昨年と同じく、2023年のWebアクセシビリティに関連する出来事を振り返りつつ、2024年のWebアクセシビリティの展望について俯瞰していきたいと思います。 WCAG 2.2の勧告とWCAG 2.1の更新 長らく待ちわびていたWCAG 2.2について、2023年10月5日付けでようやくW3C勧告(Recommendation)となりました(日語訳はまだありません。詳細は後述の「臨時WGの活動状況」を参照⁠)⁠。また、これと連動する形でWCAG 2.1(日語訳)の勧告も改めて発行されました。 今回のWCAG 2.1の更新では、達成基準4.1.1構文解析に注記が設けられています。これにより、WCAG 2.2で削除された達成基準4.1.1の扱いについて連続性が保たれるようになっています。WCAG 2.1からの変更点は、公

    2024年のWebアクセシビリティ | gihyo.jp
    u-qreil8
    u-qreil8 2024/01/10
  • 第793回 自作のカーネルモジュールをRustで作る | gihyo.jp

    第791回では基的なカーネルモジュールの作り方とそれをDKMSに対応させる方法を紹介しました。今回はカーネルの新しい機能のひとつである「Rustでカーネルモジュールを作る方法」を紹介しましょう。 UbuntuカーネルにおけるRustの対応 Linuxカーネルでは、Kernel 6.1からプログラミング言語である「Rust」の機能が取り込まれました。これは「Rust for Linux」の成果で、カーネルの機能をC言語やアセンブラだけでなく、Rustでも書けるようにするというものです。メモリー安全性や強い静的型付けなどの特徴を取り込むことで、カーネルのセキュリティ問題の原因の多くを占めるメモリー関連の不具合に対して、一種の対策になることが期待されます。 あらゆるケースにおいてRustに置き換えられるというわけではありませんが、今後カーネルのコードを読み書きする上でC言語やアセンブラだけでな

    第793回 自作のカーネルモジュールをRustで作る | gihyo.jp
    u-qreil8
    u-qreil8 2023/12/20
  • JavaScriptの大規模カンファレンス! JSConf JP 2023参加レポート | gihyo.jp

    2023年10月29日、JavaScriptに関する大規模カンファレンス「JSConf JP 2023」が東京で開催されました。この記事では、いち参加者として面白かったセッションや企画を紹介します。 JSConf JPとは? JSConf JPは一般社団法人Japan Node.js Associationによって企画・運営されているJavaScriptに関する“⁠お祭り⁠”です。日海外のWeb開発者を繋げる目的で企画されており、今年で4回目の開催になります。 その目的の通り、キーノートスピーカーが海外の方であったり、スタッフや参加者の中にもちらほら海外の方が見受けられ、国内向けのカンファレンスとしては比較的グローバルに感じる部分がありました。 ロゴがリニューアル✨ 今年のJSConf JPでは新しいロゴが使われていました。シルエットはそのままに、富士山や巻き寿司など日らしい要素が盛

    JavaScriptの大規模カンファレンス! JSConf JP 2023参加レポート | gihyo.jp
    u-qreil8
    u-qreil8 2023/12/16
  • 第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp

    章では、HTTP/3がTCPに代わって下位層で用いるQUICについて解説します。 QUICはトランスポートプロトコル QUICはトランスポートプロトコルです。QUICの説明に入る前に、トランスポートプロトコルついておさらいします。 TCP/IPの4階層モデル プロトコルは階層で役割を分担しています。TCP/IPの4階層モデルでは、アプリケーション層、トランスポート層、インターネット層、ネットワークインタフェース層に分かれます(図1⁠)⁠。 図1 TCP/IPの4階層モデル アプリケーション層に分類されるアプリケーションプロトコルは、クライアントやサーバで動作するアプリケーションの動作に関するデータやメッセージの通信ルールを規定します。たとえばSMTP(Simple Mail Transfer Protocol)は、メールを送信する通信ルールを規定しています。HTTPはこの層に属します。

    第2章 詳解QUIC ~ TCPに代わり下位層で使用する新しいトランスポートプロトコル | gihyo.jp
    u-qreil8
    u-qreil8 2023/08/20
  • 実践 Svelte入門

    2023年4月28日紙版発売 2023年4月28日電子版発売 Kyohei Hamaguchi (tnzk),小関泰裕 著 B5変形判/320ページ 定価3,740円(体3,400円+税10%) ISBN 978-4-297-13495-2 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 「Svelte(スベルト)」は,ユーザーインターフェイスを構築するためのJavaScriptフレームワークのひとつです。Svelteには,ユーザインターフェイスで重要な役割を担う「状態管理」を特別な記法や関数を使うことなく記述できる,作成したコンポーネントをランタイムなしで実行可

    実践 Svelte入門
    u-qreil8
    u-qreil8 2023/08/05
  • Microsoft、オリジナルディストリビューション「Azure Linux」の一般提供を開始 | gihyo.jp

    Linux Daily Topics Microsoft、オリジナルディストリビューション「Azure Linux」の一般提供を開始 Microsoftは5月23日(米国時間⁠)⁠、開発者向けの年次カンファレンス「Microsoft Build 2023」において、Azure上のコンテナワークロードに最適化されたLinuxディストリビューション「Azure Linux」の一般提供(GA)開始を発表した。Hyper-VをベースにしたAzureクラウドおよびエッジ環境にデプロイし、複数のコンテナを実行するように設計されており、「⁠Azure Kubernetes Service(AKS⁠)⁠」のコンテナホストとして利用される。 Introducing the Azure Linux container host for AKS - Azure Infrastructure Blog Azure

    Microsoft、オリジナルディストリビューション「Azure Linux」の一般提供を開始 | gihyo.jp
    u-qreil8
    u-qreil8 2023/05/31
  • 『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS

    WEB+DB PRESSは,2023年8月発売のVol.136をもって隔月刊誌としては休刊させていただきます。物価上昇による製作費の高騰など諸般の事情により,今回の決定に至った次第です。 突然の休刊案内にてたいへん恐縮ではございますが,何卒ご理解を賜りますよう,お願い申し上げます。 22年以上の長きにわたり,絶大なご支援をいただきましたことを,厚く御礼申し上げます。 弊誌で扱っていた分野のコンテンツは,今後も弊社刊行のSoftware Designやgihyo.jp,書籍などで提供させていただきます。また,必要な場合には「特別号」の編集・刊行なども検討してまいります。 最後に,皆様の一層のご活躍を心より祈念しております。

    『WEB+DB PRESS』 休刊のお知らせ:WEB+DB PRESS
    u-qreil8
    u-qreil8 2023/05/01
  • 『パワーポイント・デザインブック』はパワポの本? それともデザインの本? その謎を明かす ~著者の山内さんが語る、本書製作までの道のり | gihyo.jp

    パワーポイント・デザインブック』はパワポの? それともデザインの? その謎を明かす ~著者の山内さんが語る、書製作までの道のり 2022年11月10日に発売された『パワーポイント・デザインブック 伝わるビジュアルをつくる考え方と技術のすべて』は、工夫が散りばめられた誌面デザイン、わかりやすいテキストと図解、そして圧倒的物量(432頁)と網羅的な解説で高い評価を得ています。 図1 『パワーポイント・デザインブック』 ただ、書のタイトルを見て、次のような疑問が浮かんだ人もいるのではないでしょうか。「⁠これはパワーポイントなのか、それともデザインのなのか?」と。 そこで今回のインタビューでは、前身となった同人誌PowerPoint Re-Master』にまでさかのぼって、『⁠パワーポイント・デザインブック』とは何者なのかを明らかにしたいと思います。 話し手::山内俊幸(やまうち

    『パワーポイント・デザインブック』はパワポの本? それともデザインの本? その謎を明かす ~著者の山内さんが語る、本書製作までの道のり | gihyo.jp
    u-qreil8
    u-qreil8 2023/04/28
  • WebブラウザでPythonが動作する!PyScriptの詳解 | gihyo.jp

    鈴木たかのり(@takanory)です。今月の「Python Monthly Topics」では、Webブラウザ上でPythonが動作するPyScriptについて、内部構造なども含めて詳しく解説したいと思います。 PyScript公式サイト(https://pyscript.net/) Warning:PyScriptは現在非常に活発に開発が進んでいるプロダクトのため、将来的にこの記事のサンプルコードが動かなくなる可能性があります。記事執筆時点では最新バージョンであるPyScript 2023.03.1で動作確認しています。うまく動かない場合はPyScriptの公式ドキュメントなどを参照してみてください。 PyScript - PyScript documentation PyScriptとは? PyScriptは公式サイトに「Run Python in Your HTML」と書いてあると

    WebブラウザでPythonが動作する!PyScriptの詳解 | gihyo.jp
    u-qreil8
    u-qreil8 2023/04/13
  • 開発視点から見る、新しい分散型SNS「Bluesky」とAT Protocolの可能性 | gihyo.jp

    開発視点から見る⁠⁠、新しい分散型SNSBluesky」とAT Protocolの可能性 2023年4月初旬、日で盛り上がりの兆しを見せ始めた分散型SNSBluesky⁠」⁠。記事では、Blueskyのクライアント開発を行う筆者が、開発視点から見たBluesky、そのコア技術であるAT Protocolについて解説します。 なお、Bluesky誕生の背景や基機能などについては、syui氏の記事「ネクストブレイク分散型SNSの大命、Blueskyを先取り!」を併せてご覧ください。 Bluesky をコマンドラインから扱う Blueskyクライアント開発のきっかけ Blueskyにはすでにクライアントが存在します。BlueskyのオフィシャルからはiOSアプリが、また Android向けにはkamakuraさんが開発している青雲というアプリが提供されています。 通常はこれらのクライ

    開発視点から見る、新しい分散型SNS「Bluesky」とAT Protocolの可能性 | gihyo.jp
    u-qreil8
    u-qreil8 2023/04/11
  • ネクストブレイク分散型SNSの大本命、Blueskyを先取り! | gihyo.jp

    今、分散型SNSへの注目が高まっています。4月に入り、日での盛り上がりの兆しを見せ、ネクストブレイクの大命と見られているのがBlueskyです。記事では、Bluesky登場の背景から分散型SNSの特徴、そして、今後について紹介します。 招待コード無限祭りで注目を集めたBluesky 先日、2023年4月5日にBlueskyの「招待コード無限祭り」がありました。 Blueskyとは、次世代のTwitterになるのでは、と目されている大命の分散型SNSのこと。 この分散型SNSに参加するには、2023年4月10日現在、招待コードが必要となります。 Blueskyリリース以降、招待コードはサーバ管理者のみ発行可能でした。しかし、先日のアップデートによって、Blueskyにアカウントを持つユーザは、回数限定(最大5回)で招待コードを発行できるようになったのです。 話はここで終わりません。今

    ネクストブレイク分散型SNSの大本命、Blueskyを先取り! | gihyo.jp
    u-qreil8
    u-qreil8 2023/04/11
  • ChatGPTのおさらいと、プログラミングに活用するための第一歩 | gihyo.jp

    大量の文章から学習することで、多言語を取り扱う能力だけでなく、高度な推論能力まで手に入れました。 GPT-3.5、とりわけその初期モデルのCodexはGitHubに存在する5400万の公開リポジトリから採取された159GBのPythonコードでGPT-3をfine-tuning(微調整)することで生まれました。ChatGPTがとりわけPythonが得意なのはここから来ています。 ChatGPTの学習データを考えることはその能力を発揮させるときに極めて有効です。質問時も以下のように、『⁠涼宮ハルヒの憂』というライトノベル作品について日語で聞いたときはSOS団の略称を間違えるなどしますが、英語ではほぼ期待通りの回答を見せます。 図1 『ハルヒの憂』について日語で聞いた場合の回答 図2 『ハルヒの憂』について英語で聞いた場合の回答 知ったかぶりをするChatGPT ところで、ChatG

    ChatGPTのおさらいと、プログラミングに活用するための第一歩 | gihyo.jp
    u-qreil8
    u-qreil8 2023/03/23
  • 簡単で強力!誰でも始められる情報整理ツール「RemNote」を始めよう | gihyo.jp

    学習している内容や日々の考え事など、さまざまな情報を入力しながら自然に整理していくパーソナル・ナレッジ・マネージメント(PKM)ツールが注目されています。 しかし便利ではあるものの使い方が難しかったり、マニアックな設定が要求されたりするPKMツールが多い中、高機能なのに簡単に利用できるRemNoteが、最近モバイルアプリも登場して頭一つ抜けた存在になってきたように思います。そこで稿では初心者向けにRemNoteの使い方の紹介を通して、PKMの基的な考え方について深めてみます。 情報が複雑になってきたら、ツールも進化しなければいけない 忘れてしまっては困ることがあると、私たちはメモをとります。買い物でそろえるもの、テレビで耳にしたお得な情報、来週の予定、ちょっとした考え事。どんなことであっても私たちはメモをとります。 手段は紙でもスマートフォンでも変わりません。ふだんは意識しないほど当た

    簡単で強力!誰でも始められる情報整理ツール「RemNote」を始めよう | gihyo.jp
    u-qreil8
    u-qreil8 2023/03/02
  • Rust使いは要注目! WebAssemblyのコンポーネントモデルを知る ~TechFeed Experts Night#9講演より | gihyo.jp

    TechFeed Experts Night Pick up Rust使いは要注目! WebAssemblyのコンポーネントモデルを知る ~TechFeed Experts Night#9講演より 記事は、2022年11月に開催された「TechFeed Experts Night#9 〜 Rust/WebAssemblyの「いま」を探る」のセッション書き起こし記事「Rust使いは要注目! WebAssemblyのコンポーネントモデルを知る by chikoski@」を転載したものです。オリジナルはTechFeedをご覧ください。 よろしくお願いします。今ご紹介いただきましたchikoski@です。 Rustにはコミュニティ的な関わり方が多くて、Rust.Tokyoというカンファレンスの運営をやっています。WebAssemblyは出たときからずっと仕様を追っていて、コロナの始まる前はWeb

    Rust使いは要注目! WebAssemblyのコンポーネントモデルを知る ~TechFeed Experts Night#9講演より | gihyo.jp
    u-qreil8
    u-qreil8 2023/02/22