タグ

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

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

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

    Rustで作るプログラミング言語—— コンパイラ/インタプリタの基礎からプログラミング言語の新潮流まで
  • 人間中心設計からAI中心設計へ ~AIエージェントによって変わるソフトウェアのパラダイム | gihyo.jp

    チャット型ソフトウェアからAIアシスタント型ソフトウェアへの変化 OpenAIが発表したChatGPTの登場から、一年以上が経とうとしています。ChatGPT API公開後の初期段階では、人間とAI(特にここでは大規模言語モデル)との単純な対話を提供するソフトウェアが中心でした。しかし今では、OpenAI GPTs(以下GPTs)やMicrosoft Copilot(以下Copilot)を代表とする、AIによる外部データへのアクセスやAPI通信によって人間を支援する「AIアシスタント型」のソフトウェアが台頭してきています。 GPTsは、ユーザー自身が好みのAIアシスタントを制作できる仕組みです。ChatGPTは汎用的な仕組みのため、特定の業務を行わせようとすると、役割や前提を含んだ長々としたプロンプトを入力する必要がありました。その点でGPTsは、AIに対する指示だけでなく、AIが参照可能

    人間中心設計からAI中心設計へ ~AIエージェントによって変わるソフトウェアのパラダイム | gihyo.jp
  • 人生が整うマウンティング大全

    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(マウンティングエクスペ

    人生が整うマウンティング大全
  • GitHub資格認定プログラムが一般ユーザも利用可能に | gihyo.jp

    2024年1月8日、GitHubはこれまでGitHub/Microsoftの従業員とパートナーのみが利用可能であったGitHub Certifications(資格認定)プログラムを、世界中のすべての顧客も利用可能とすることを発表した。1月8日から誰でも登録サイトにアクセスしてGitHub Certificationsの学習と認定試験の準備を進めることができる。 GitHub Certifications are generally available -The GitHub Blog 利用可能な認定プログラムは以下の4種。 GitHub Foundations Certification GitHubプラットフォームの基的な概念とGitHub製品を初めて学ぶ人向け。gitの使用方法からリポジトリ管理、コミット、ブランチ、マージ、プロジェクト管理などのGitHubコア機能をひと通り学習で

    GitHub資格認定プログラムが一般ユーザも利用可能に | gihyo.jp
  • systemdの思想と機能 ―Linuxを支えるシステム管理のためのソフトウェアスイート

    2023年12月21日紙版発売 森若和雄 著 B5変形判/216ページ 定価3,080円(体2,800円+税10%) ISBN 978-4-297-13893-6 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Amazon Kindle このの概要 systemd(システムディー)はLinuxの基的な構成要素を提供するソフトウェア群です。システムやサービスの管理機能を中心として,ハードウェアの管理,ログの管理などを行う多数の独立したソフトウェアからなっています。 Linuxでシステム管理を行うときにはsystemdの知識が必要になります。systemdに関するオンラインマニュアルなどは充実しているものの,systemdがどんな機能を提供しているかを知らなければ「どのドキュメントを読めばいいのか」「何を探すべきなのか」の見当がつかないでしょ

    systemdの思想と機能 ―Linuxを支えるシステム管理のためのソフトウェアスイート
  • ChatGPT APIを取り巻くライブラリ 〜LangChainとguidanceの紹介 | gihyo.jp

    こんにちは! 逆瀬川(@gyakuse)です! 前回はOpenAIが公開しているChat APIWhisper APIを用いて議事録文字起こしアプリケーションを作ってみました。今回は、Chat APIを便利に使うためのライブラリであるLangChainとguidanceを紹介していきます。 なぜ便利に使うためのライブラリが必要なのか? 単純にChat APIにリクエストを送るだけであれば、各言語に用意されたライブラリを使うだけで良いでしょう。たとえば、Pythonにおいてはopenai-pythonが用意されています。前回紹介したとおり、Chat APIを使うだけなら以下のようなリクエストを作るだけで済みます。 import openai openai.api_key = "sk-..." # APIキー completion = openai.ChatCompletion.create

    ChatGPT APIを取り巻くライブラリ 〜LangChainとguidanceの紹介 | gihyo.jp
  • Goで書くテスタブルなCLIツールの作り方 | gihyo.jp

    CLIツールをテストする難しさ ターミナルなどで動作するCLI(コマンドラインインタフェース)ツールは、パッケージを公開して利用してもらうライブラリと比べてテストがしにくいと感じる読者も多いでしょう。 CLIツールは、ファイル/標準入力からの入力や、ファイル/標準出力/標準エラー出力への出力があることが多いです。また、コマンドライン引数やオプション(フラグ)によって変わる挙動のパターンが多いため、網羅的なテストが大変です。 入出力についても単一のファイルを読み書きするだけではなく、ディレクトリごと作成したり、特定のディレクトリ以下を再帰的に読み込むような処理もよくあります。 main関数にすべての処理をすべて書くような作りのCLIツールだと、実際にビルドしてテストスクリプトなどから動かしてテストするしかありません。しかし、せっかくCLIツールをGoで書いているのであれば、テストもGoで書き

    Goで書くテスタブルなCLIツールの作り方 | gihyo.jp
  • これまでとこれからのGo | gihyo.jp

    Go歴史 連載では、筆者(tenntenn)と周囲のGoエンジニアで、Goに関わる今アツい話を取り上げていきます。最新のGoの機能やこれからリリースされるGoの機能はもちろん、実際の開発現場で用いられているノウハウや自作ライブラリやツールについてご紹介します。第1回目はtenntennがこれまでとこれからのGoについて取り上げます。 Goは2009年にGoogleによって公開されたプログラミング言語です。2012年にGo1として正式公開されました。2022年現在では、GoogleNetflixをはじめとする海外企業だけはなく、筆者の所属するメルカリなど国内の企業でも多く用いられるようになってきました。海外Goの導入事例は公式サイトのケーススタディで確認できます。国内企業の導入事例はGoの公式Wikiに掲載があります。これらを見るとスタートアップからメガベンチャー、大企業までさまざま

    これまでとこれからのGo | gihyo.jp
  • 第605回 Samplerでターミナルをダッシュボードにする | gihyo.jp

    Samplerとは 最近のWebアプリの多くには、「⁠ダッシュボード」と呼ばれるUIが用意されています。ダッシュボードとは来、車の計器盤を指す言葉です。車のダッシュボードにはスピードメーターやタコメーター、燃料計、水温計などが配置されており、ドライバーが車の状態を瞬時に把握できるようになっています。 Webアプリにおけるダッシュボードも車のそれと同じで、現状のデータを可視化するためのツールです。ダッシュボードには様々なウィジェットやメトリクスが配置されており、サービスの状態を俯瞰できるように構成されています。また当に必要とする情報だけを集約できるよう、ダッシュボードはユーザーが自由にカスタマイズできるのが一般的です。 図1 サーバーモニタリングサービス「Datadog」のKubernetes Dashboardの例。クラスターを構成するノードや稼働中のコンテナ、CPUやメモリの負荷など

    第605回 Samplerでターミナルをダッシュボードにする | gihyo.jp
  • 作って理解するOS x86系コンピュータを動かす理論と実装

    2019年9月26日紙版発売 2019年9月26日電子版発売 林高勲 著,川合秀実 監修 B5変形判/736ページ 定価4,048円(体3,680円+税10%) ISBN 978-4-297-10847-2 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 現在広く普及している,x86系CPU搭載のコンピュータ。 書はOSの機能を実装しながら,その姿を明らかにしていきます。 第1部ではまず,ハードウェア,ソフトウェアの基概念や,CPUとOSの関係など,コンピュータの核となる理論を丁寧に解説します。 第2部では,x86系コンピュータに対象を絞り,レジスタの構成や,

    作って理解するOS x86系コンピュータを動かす理論と実装
  • 第2回 JavaScriptの呪いから解き放たれて | gihyo.jp

    第2回目のゲストとしてお迎えしたのはamachangこと天野仁史さん。これまでのこと、これからのこと、熱く語ってくださいました。 天野 仁史 さん2012年にプログラマーとして起業。その後、スマートニュースにバイアウトし、エンジニアリングマネージャーとして開発チームを作る仕事に携わる。 Twitter:@amachang URL:https://amachang.hatena blog.com/ JavaScriptのスターからベンチャーの立ち上げへ 天野:天野仁史です。amachangのハンドルネームで活動しています。2007年ぐらいにインターネットで活躍していました。サイボウズ・ラボでJavaScriptをがんばっていた時期があって、そこで技評さんにお世話になったり、いろんな勉強会に顔を出したりしていました。2010年以降はベンチャーを立ち上げたり手伝ったり。 経歴を言うと、高専でコン

    第2回 JavaScriptの呪いから解き放たれて | gihyo.jp
  • 第1回 データサイエンティストの育成とチーム組成:マスクド・アナライズの道場破り!リアルデータサイエンティスト・中山心太編|gihyo.jp … 技術評論社

    2018年10月30日『データサイエンティスト養成読 ビジネス活用編』の発売を記念して、「⁠仕事ではじめる機械学習」の共著者としてもおなじみの中山心太氏(ところてん)に、データ分析業界に突如として現れたイキリデータサイエンティストのマスクド・アナライズ氏(マスクド)がデータ分析者の未来について聞きました。 マスクド:中山さんの経歴についてはじめにお伺いして良いでしょうか。 ところてん:私の経歴はいろいろと転々としていて、もともとは情報セキュリティの研究者をやっていました。そこからクラウド部門に移動しました。その後ソーシャルゲーム会社に転職し、技術支援部門的なところでインフラや集計等を行っているうちに、データ分析仕事をメインに行うようになりました。リリース前のゲームのパラメータ設計を担当するうちに、企画そのものをやり始め、最終的にはゲームディレクターとして働いていました。 そのあとはEC

    第1回 データサイエンティストの育成とチーム組成:マスクド・アナライズの道場破り!リアルデータサイエンティスト・中山心太編|gihyo.jp … 技術評論社
  • 監訳者解説 山形浩生:ハードウェアハッカー ~新しいモノをつくる破壊と創造の冒険|技術評論社

    「これ,いったい何のなの?」店頭でぱらぱらめくっている人は,書の中身の得体の知れなさを見てそう思うはずだ。 『ハードウェアハッカー』というから,エレクトロニクス系のちょっと変わったハード作りや改造のノウハウや,それにまつわる各種エピソードかな,というのが普通の期待だろう。そして,たしかにそのとおりではある。あるのだけれど……その幅と深さが尋常ではないのだ。 イノベーションとハッカーの意義 そもそもハッカーというと,悪い印象を持つ人も多いだろう。一般にハッカーといえば,なにやら他人のコンピュータに侵入して,ファイルを勝手に消したり改変したり,データを盗んだりする犯罪者だ。じつは著者バニー・ファンも,そうした色眼鏡で見られてきた。 でもその著者を含め,誇りをもってハッカーを名乗る人々がいる。というより,そちらのほうが正規の意味だ。ハッカーは,さまざまなものを独創的なやり方でいじり,その仕組

    監訳者解説 山形浩生:ハードウェアハッカー ~新しいモノをつくる破壊と創造の冒険|技術評論社
  • Docker/Kubernetes 実践コンテナ開発入門

    2018年8月25日紙版発売 2018年8月25日電子版発売 山田明憲 著 B5変形判/424ページ 定価3,718円(体3,380円+税10%) ISBN 978-4-297-10033-9 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 話題のコンテナ技術Docker/Kubernetesの基礎から実際にアプリケーションを作るまでを解説した入門書です。Docker/Kubernetesを実際の現場で活用している著者が最新情報や実践スキルをわかりやすく解説します。ローカル環境での検証はもちろん,Google Kubernetes EngineへのデプロイやAW

    Docker/Kubernetes 実践コンテナ開発入門
  • Amazon Web Services負荷試験入門 ――クラウドの性能の引き出し方がわかる

    2017年9月23日紙版発売 2017年9月23日電子版発売 仲川樽八,森下健 著 B5変形判/368ページ 定価4,180円(体3,800円+税10%) ISBN 978-4-7741-9262-8 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo このの概要 クラウド環境(Amazon Web Services)を前提としてアプリケーション開発し,それを運用することはごく普通なものになりました。しかし,実際にシステムをサービス開始してみると,想定したパフォーマンスを達成できないことが多々あります。それはシステムにかかる負荷を正しく見積もっていないことに原因があるようです。書では,クラウド環境での負荷試験のやり方や評価方法を解説します。

    Amazon Web Services負荷試験入門 ――クラウドの性能の引き出し方がわかる
  • Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp
  • Hadoopはどのように動くのか ─並列・分散システム技術から読み解くHadoop処理系の設計と実装 記事一覧 | gihyo.jp

    第21回Sparkの設計と実装[2]~Sparkにおけるデータ共有の仕組みと耐障害性の実現方法 猿田浩輔,山田浩之 2016-06-08

    Hadoopはどのように動くのか ─並列・分散システム技術から読み解くHadoop処理系の設計と実装 記事一覧 | gihyo.jp
  • 第1回 事業会社における開発とポエム | gihyo.jp

    この連載ではピクシブ株式会社という東京にある事業会社で盛んになっている「ポエム」によって駆動する開発について、その特徴をお話します。第一回は舞台となっているピクシブという会社はどのような環境か、その会社で書かれている「ポエム」とは何なのかをお話します。 「ポエム」で開発を駆動するとは 駆動開発という言葉はソフトウェア開発文脈でよく使われます 例えばテストコードによって開発を駆動するテスト駆動開発という言葉は開発者にとってお馴染みでしょう。 ではポエム駆動開発という言葉を聞いた事はあるでしょうか? ポエム駆動開発のオリジナルはppworks氏によるポエム駆動開発によるWEBサービスの作り方 pplog誕生ものがたりというエントリーで発表された手法です。 意思決定の際大事なのはポエムなのです。「⁠pplogのポエムは俺たちのゆるふわインターネット「pplog⁠」⁠ をリリースしました(してまし

    第1回 事業会社における開発とポエム | gihyo.jp
  • 第5回 蓑輪太郎―Twitter本社で働くエンジニアのキャリア | gihyo.jp

    先を歩むエンジニアへのインタビューを通してエンジニアのキャリアについて考える連載、今回はゼロからOSやScheme処理系を作り、現在はTwitter社で働く凄腕エンジニアのhigeponこと蓑輪太郎さんにお話をお伺いしました。 [撮影:平野正樹] 危機感を感じた1社目 ─⁠─higeponさんはいつもさまざまなことを勉強なさっていますが、いつごろから自ら技術を学び始めたのでしょうか? higepon(以下ひ⁠)⁠:2001年に入った初めての会社が大きいSI系で、技術に長けたチームに入れてもらえました。そこではモデルケースになるような優秀な先輩がいて、たとえばトラブルが起きたときに、自分で率先して原因を解明して、周りにも的確に指示を伝えていて問題を解決していたんですよ。その先輩から「しっかりプログラミングを勉強しないとまずいよ」と言われたんですよね。それで自分で実際に勉強をし始めたら、今

    第5回 蓑輪太郎―Twitter本社で働くエンジニアのキャリア | gihyo.jp
  • 第1回 なぜ、Hadoopはどのように動くのか、を学ぶのか | gihyo.jp

    はじめに ビッグデータ解析のためのシステム基盤として、Hadoopをはじめとするオープンソースのデータ処理ソフトウェア(データ処理系)が広く利用されつつありますが、当該データ処理系をすでに利用している、もしくは利用の検討をしている読者の方々の中には、たとえば以下のような問題を抱えている方が少なからずいらっしゃるのではないでしょうか。 データ処理系の使い方はなんとなくわかるが、その内部をあまり理解できていない。または、内部の動作原理がよくわからないので、格的に使う気にならない。 同様の目的を達成する複数のデータ処理系において、どれを使って良いかがよくわからない。または、適切に使い分けられていない気がする。たとえば、どのような場合にHadoopを用いて、どのような場合に同類のデータ処理系であるImpalaやSparkを用いれば良いかが“⁠明確に⁠”わからない。 このような問題を解決するには、

    第1回 なぜ、Hadoopはどのように動くのか、を学ぶのか | gihyo.jp