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

  • 第614回 WireGuardでVPNサーバーを構築する | gihyo.jp

    新型コロナウイルスによる感染症の広がりにより、リモートワークの必要性が急遽クローズアップされています。 とはいえ、業務に必要なシステムをクラウド上に構築し、場所を選ばずに業務を継続できる環境をすでに整備できているという企業は、まだまだ少ないのが現実ではないでしょうか。社内ネットワーク上に業務システムが構築されている場合、とにもかくにも社内ネットワークにリモートから接続できないことには始まりません。そんな理由で、急遽リモートワーク用のVPN環境を整備することになった、社内情シス担当の方も多いのではないのでしょうか(ご苦労さまです…⁠)⁠。 今回は、最近Linuxカーネルにマージされたことでも話題となっているWireGuardを用いて、VPNサーバーを構築する方法を紹介します。 WireGuardとは WireGuardとは、Linuxのカーネルモジュールとして動作するオープンソースのVPN

    第614回 WireGuardでVPNサーバーを構築する | gihyo.jp
    s1061123
    s1061123 2024/03/05
  • RustのGUIライブラリ「gtk-rs」 ~gtk-rsでデスクトップアプリ開発をはじめよう[前編] | gihyo.jp

    RustGUIライブラリとその中でのgtk-rsの位置付け 今現在、RustGUIアプリケーションを開発するためのライブラリ/フレームワークは多種多様です。 突出して優れたものがあるわけでもなく、これを使えば間違いないと言えるものはありません。このような状況では、何を使えばいいか見当がつきませんが、それでもやりたいことから多少の取捨選択はできます。 百家争鳴のライブラリ群から類型をみると、大きく分けて自前スタックのタイプと既存のライブラリのバインディングになっているものがあります。 自前スタックのタイプはウィンドウ内のボタンといったウィジェットなども含めてすべて自前で実装しているものです。icedやeguiなどがあります。これらを基礎づけているのがwinitというライブラリで、ウィンドウを作る部分を担当しています。winitRustの対応プラットフォームの多さを活かして、デスクトップ

    RustのGUIライブラリ「gtk-rs」 ~gtk-rsでデスクトップアプリ開発をはじめよう[前編] | gihyo.jp
    s1061123
    s1061123 2023/07/27
  • そのパッチは受け取れない ―ロシアの半導体メーカーに在籍する開発者、カーネルパッチを拒否される | gihyo.jp

    Linux Daily Topics そのパッチは受け取れない ―ロシアの半導体メーカーに在籍する開発者、カーネルパッチを拒否される オープンソースの開発は国籍や人種、宗教、さらにはイデオロギーや政治的立場も超えて中立であるべきだ ―こう考える開発者は少なくないだろう。実際、多様性はオープンソースの美点のひとつでもある。とくにLinuxカーネルのような巨大なオープンソースプロジェクトの場合、さまざまなバックグラウンドをもつ開発者を公正に包摂していくDE&I(Diversity, Equity & Inclusion)の概念をコミュニティに浸透させていくことはプロジェクトにとっての使命といってもいえる。 だが、現在進行中の国際紛争の、それも侵略国側のテクノロジに関連した企業に所属するエンジニアが、他国のエンジニアと同様にオープンソースプロジェクトの開発に貢献することは認められるべきなのだろう

    そのパッチは受け取れない ―ロシアの半導体メーカーに在籍する開発者、カーネルパッチを拒否される | gihyo.jp
    s1061123
    s1061123 2023/03/29
  • CUEによるスキーマやバリデーションのポータビリティ | gihyo.jp

    この記事は、連載「つきなみGo」の2回目の記事です。 CUEはデータの表現やスキーマ定義やバリデーションなどを行うことができる言語です。元々Google社内で、Borg(現在のKubernetesの前身となったGoogleの社内システム)の設定に使用するために開発された言語が前身となっており、現在はオープンソースとして開発が進んでいる言語です[1]。 CUEは現在まだv0.4.3とマイナーバージョンではありますが、すでにistioにおいてProtobufからOpenAPIを生成する部分で使用されていたり、CI/CDの構築に使用するDaggerというツールの設定ファイルとして採用されています。 弊社(メルカリ)でもCUEをKubernetesなどを含むインフラの抽象化に使用しています(紹介記事①、紹介記事②⁠)⁠。 また、CUEはGoと親和性が高く、GoからCUEへの変換や、CUEの定義をG

    CUEによるスキーマやバリデーションのポータビリティ | gihyo.jp
    s1061123
    s1061123 2023/02/14
  • 作って学ぶコンピュータアーキテクチャ ——LLVMとRISC-Vによる低レイヤプログラミングの基礎

    このの概要 コンピュータアーキテクチャ,とくにCPUの命令セットアーキテクチャについて,RISC-Vを例に「上のレイヤからアプローチする」ことで理解を深めることを目的とした一冊。書を一通り読み終えるころには,低レイヤに対する一段上の実力がついているはずです! こんな方におすすめ 性能向上などのためにコンピュータアーキテクチャを理解したいエンジニア RISC-VやLLVMへの理解を深めたいエンジニア この書籍に関連する記事があります! 「低レイヤ」を,なぜ・どうやって学ぶのか コンピュータアーキテクチャ,とくにCPUの命令セットアーキテクチャについて,RISC-Vを例に「上のレイヤからアプローチする」ことで理解を深めることを目的とした一冊。書を一通り読み終えるころには,低レイヤに対する一段上の実力がついているはずです! 第1章:コンピュータアーキテクチャとISAの基礎知識 コンピュータ

    作って学ぶコンピュータアーキテクチャ ——LLVMとRISC-Vによる低レイヤプログラミングの基礎
    s1061123
    s1061123 2022/06/14
  • コンセプトから理解するRust

    2022年2月12日紙版発売 2022年2月7日電子版発売 原旅人 著 B5変形判/360ページ 定価3,520円(体3,200円+税10%) ISBN 978-4-297-12562-2 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 Rustはメモリ安全,スレッド安全を保ちつつ,高パフォーマンスなプログラムを開発できるプログラミング言語です。また,手続き型,オブジェクト指向型,関数型でのプログラミングに対応できるマルチパラダイムの言語でもあります。ただ,そういったRustのポテンシャルを引き出すには,所有権やライフタイム,ジェネリクスやトレイトといった特徴的な

    コンセプトから理解するRust
    s1061123
    s1061123 2022/03/09
  • 第697回 AMD Ryzen 7 5800Xで学ぶ、Ubuntuにおけるシステムの動作確認 | gihyo.jp

    どれも定番みたいな構成ですね。GPUだけ「GeForce GTX 1050Ti」と、2016年ごろのだいぶ古い型番です。そもそも全体的に予算オーバー気味で「GPUは型落ちのものを」という想定でした。しかしながらいざ調べてみると、型落ち品自体がほぼ市場に存在せず、新しい型番のものも軒並みすごい高くなっていたために、苦肉の策で見つけた製品です[1]⁠。 なお家族のPCの使い方を考えると、GPUはそこまで強いものである必要はなく、要件としては「リトルウィッチノベタがプレイできればいい」という話でした。よって1050Tiでも問題はないものと考えています。 というわけでこのマシンにWindowsをインストールする前に実施した、各種動作確認のための方法を紹介していきましょう。ちなみにストレージのテストやベンチマーク以外の「情報収集」に関しては、Live環境でも動くはずです。よってWindowsインスト

    第697回 AMD Ryzen 7 5800Xで学ぶ、Ubuntuにおけるシステムの動作確認 | gihyo.jp
    s1061123
    s1061123 2021/12/22
  • つい顔色をうかがってしまう私を手放す方法

    2021年10月13日紙版発売 2021年10月8日電子版発売 佐々木正悟 著 四六判/176ページ 定価1,628円(体1,480円+税10%) ISBN 978-4-297-12327-7 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto このの概要 他人に気をつかいすぎて疲れる。 「人の目を気にしない」なんてムリだし,「心を強くする」なんてできない。 嫌な人とは距離を置こうとしてもうまくいかない―― 「ライフハック」「仕事術」を駆使して怒られない方法を模索していきながらも問題が解決しなかった著者がたどりついた解決策とは? 人間関係で消耗しないための最終結論,教えます。 イラストは『さびしすぎてレズ風俗に行きましたレポ』をはじめとした著

    つい顔色をうかがってしまう私を手放す方法
    s1061123
    s1061123 2021/09/07
  • 揚げて炙ってわかるコンピュータのしくみ

    このの概要 技術が進むにしたがって,コンピュータの中身が見えなくなってきています。コンピュータの頭脳としてCPUがあって,OSがあってプログラムが動く…。漠然とわかっていても,実際にどういうしくみで意図したとおりに動作しているのかとなると,なかなかイメージできないものです。書はこのように,ブラックボックスになっているコンピュータのしくみを,「炙る」「揚げる」などの過激な手法も用いつつ,半導体レベルから実際に目に見える形でひもといていきます。 こんな方におすすめ コンピュータの仕組みを知りたい人 Maker(『ハードウェアハッカー』の読者層) 第1章 ソフトウェアとハードウェアの世界の境界 1.1 コンピュータが「見えなく」なってきている むかしはパソコンと電子回路は一体 コンピュータを理解する上での抽象化・ブラックボックス化 1.2 ブラックボックスの中身を見るといいことが? ブラック

    揚げて炙ってわかるコンピュータのしくみ
    s1061123
    s1061123 2020/07/30
  • 第619回 HDMIキャプチャーボードでZoomへの配信映像を加工する | gihyo.jp

    リモートワークの流行に伴い、日でもオンラインミーティングが活用されるようになりました。ただし日住宅事情を考慮すると、映像を伴うオンラインミーティングには重大なリスクが存在します。そう、背景に映り込む生活環境です。今回はHDMIキャプチャーボードでその問題の解消を試みてみましょう。 ウェブカメラの画像を加工する様々な方法 要するに、今回はこういうことを実現してみたいというお話です。 図1 ワイプ付きの配信 この世に存在する「PC上で動くビデオカンファレンスシステム」のほとんどは、いわゆる「ウェブカメラ」を映像のソースとして利用します。昨今のウェブカメラの多くはPCに組み込まれているものであれ、外付けであれ、USB接続を利用した「USB Video device Class」に準拠したデバイスです。よって加工するタイミングは次の2種類が考えられます。 PCに入力されたUVCデバイスの映像

    第619回 HDMIキャプチャーボードでZoomへの配信映像を加工する | gihyo.jp
    s1061123
    s1061123 2020/05/20
  • 2019年3月28日 systemdフリーをあきらめない ―Gentoo、テストブランチでGNOME 3.30をinitで動かす | gihyo.jp

    Linux Daily Topics 2019年3月28日systemdフリーをあきらめない ―Gentoo、テストブランチでGNOME 3.30をinitで動かす いまではほとんどのLinuxディストリビューションでデフォルトとなっているsystemdだが、どのディストリビューションにおいても"systemdフリー"、systemdを使わずにinitベースで起動する環境を強く求めるユーザは少なくない。Gentooの主要開発者で、Gentoo GNOMEデスクトッププロジェクトのリードを務めるMart Raudseppもそのひとりだ。3月27日、Raudseppはsystemdフリーへの取り組みの成果として、Gentooテストブランチで利用可能になったGNOME 3.30を、OpenRC(Gentooがメンテナンスするinitシステム)で動かせるようにしたことを明らかにしている。 Gent

    2019年3月28日 systemdフリーをあきらめない ―Gentoo、テストブランチでGNOME 3.30をinitで動かす | gihyo.jp
    s1061123
    s1061123 2019/04/22
  • 第557回 systemdのユニットの関係を読む | gihyo.jp

    systemdではユニット(Unit)という単位でサービスやソケット、あるいは他のユニットをまとめるターゲットなどを管理しています。ユニット設定ファイルはプレーンテキストで書かれていて、これをsystemdが解釈してサービスやシステムの起動・停止を管理しています。 ところで、サービス同士やサービスとその関連するソケットの間では、「⁠あるサービスは別のサービスが先に起動していないと使えない」「⁠このサービスはあるソケットを必要としており、これよりあとに起動する必要がある」など、アクティベート順序(起動順序)や依存関係があります[1]⁠。これらのアクティベート順序や依存関係もユニット設定ファイルに記載されていて、systemdが解釈し、適切に実行していきます。 今回は、このアクティベート順序や依存関係について、systemdのユニットの設定ファイルで使われる基的なディレクティブとその設定を調

    第557回 systemdのユニットの関係を読む | gihyo.jp
    s1061123
    s1061123 2019/02/20
  • 第555回 いま、あらためてudev | gihyo.jp

    皆さん、ホットプラグってますか!? も杓子もUSB端子なこのご時世、いろんなデバイスをPCに繋いだり取り外したりしていることと思います。そこで今回はデバイスの自動認識やデバイス名の設定など、システムの裏方として大活躍しているudevの基を紹介します。 動的デバイス管理ツールudev udevとはsystemdの別名です。 すみません、言い過ぎました。Ubuntuで使われているudevは、systemdの一部として提供されるデバイスの認識に関わるデーモンでありツールです。もともとは独立したソフトウェアでしたが、2012年にsystemdと同じソースツリーから提供されるようになりました。ただしデーモンプロセスとしてはsystemd(PID=1)から独立しています[1]⁠。 udevは具体的には次のような流れでデバイスを認識し、設定された作業を行います。 カーネルが追加・削除されたデバイスを

    第555回 いま、あらためてudev | gihyo.jp
    s1061123
    s1061123 2019/02/06
  • 第41回 Linuxカーネルのコンテナ機能 ― cgroupの改良版cgroup v2[5]:LXCで学ぶコンテナ入門 -軽量仮想化環境を実現する技術|gihyo.jp … 技術評論社

    前回の最後で「次回以降はしばらく私ではなくudzuraさんにお書きいただく予定です」と書きました。しかし、年末に近づきAdvent Calendarの募集が始まるようになり、Advent Calendarの存在をすっかり忘れていたことに気づきました。 毎年、Advent Calendarに参加していましたので今年も何か参加しようと思って登録だけはしました。その後に書く内容を考えたのですが、思いついた内容がcgroup v2関連でしたので、これは連載の記事にしよう思いました。というわけで今回も前回までに続いて加藤による記事となります。この記事はLinux Advent Calendar 2018の14日目の記事です。 今回は4.13、4.14カーネルでcgroup v2に追加された機能について紹介します。 nsdelegate オプション 第38回でcgroup v2のマウント方法を紹介しま

    第41回 Linuxカーネルのコンテナ機能 ― cgroupの改良版cgroup v2[5]:LXCで学ぶコンテナ入門 -軽量仮想化環境を実現する技術|gihyo.jp … 技術評論社
    s1061123
    s1061123 2018/12/14
  • 2018年9月10日 Fedora 29、i18n対応で「Google Noto」を日中韓のデフォルトフォントに | gihyo.jp

    Linux Daily Topics 2018年9月10日Fedora 29、i18n対応で「Google Noto」を日中韓のデフォルトフォントに Fedoraプロジェクトでは現在、2018年10月末に予定されている「Fedora 29」のリリースに向けて数多くのテストが行われているが、国際化(i18n)対応でもいくつかのアップデートが予定されている。そのひとつに、日語/中国語/韓国語のデフォルトフォントとして「Google Noto Fonts」のサポートがあり、プロジェクト内でテストが開始されている。 Test Internationalization improvements coming in Fedora 29 -Fedora Magazine Test Day:2018-09-04 I18N Test Day -Fedora Project Wiki Google Noto

    2018年9月10日 Fedora 29、i18n対応で「Google Noto」を日中韓のデフォルトフォントに | gihyo.jp
    s1061123
    s1061123 2018/09/11
  • 2017年9月5日 Waylandでもリモートデスクトップ! Red Hat開発者がGNOMEにAPIを追加 | gihyo.jp

    Linux Daily Topics 2017年9月5日Waylandでもリモートデスクトップ! Red Hat開発者がGNOMEにAPIを追加 Xに代わるウィンドウシステムとして開発が進められているWaylandだが、GNOMEのデフォルトとして実装されるなど確実に普及は拡がりつつあるものの、Waylandでは動かないソフトウェアも多く、Xを完全にリプレースする存在となるにはまだ時間がかかりそうだ。 そんななか、Red HatのシニアソフトウェアエンジニアであるJonas AdahlがWaylandコンポジタでもあるGNOMEウィンドウマネージャ「Mutter」に以下の2つの新しいD-Bus APIを追加した。 org.gnome.Mutter.RemoteDesktop org.gnome.Mutter.ScreenCast これにより"GNOME on Wayland"な環境において

    2017年9月5日 Waylandでもリモートデスクトップ! Red Hat開発者がGNOMEにAPIを追加 | gihyo.jp
    s1061123
    s1061123 2018/02/12
  • 第24回 バージョン管理 ─GitとGitHub連携 | gihyo.jp

    はじめに 今回から具体的なバージョン管理システムを用いたAndroid Studioの連携を紹介します。第3回で紹介したサンプルコードが手頃なので、このプロジェクトをそれぞれのバージョン管理システムに対応させていきます。 手始めに最近もっとも人気があるGitGitHubについてです。GitGitHubについては多くを説明しませんので、他の記事やWebリソースで学習しておいてください。 事前準備 Android Studioは標準でGitGitHubをサポートしていますが、最低限以下の準備を行っておいてください。 Gitのコマンドラインツール(git)を導入しておく GitHubのアカウントを用意しておく コマンドラインツールはGitの公式サイトから、それぞれのプラットフォームに対応したものをダウンロードしてインストールしておいてください。 環境変数 PATH に gitコマンドが登録

    第24回 バージョン管理 ─GitとGitHub連携 | gihyo.jp
    s1061123
    s1061123 2015/10/16
  • 第31回 どんな人がソフトウェアエンジニアに向いているのか | gihyo.jp

    連載も5年目になるが、今年は私がこの業界に長年関わる中で得た教訓というテーマで書いてみたいと考えている。 この業界で仕事をしていると、いろいろな場面で「どんな人がソフトウェアエンジニアに向いているのか」という話題になる。一番多いのが人を採用する場面でだが、キャリアパスに悩んでいるエンジニア相談されるケースもあれば、子どもたちの教育に関する話題でこの話になることもある。 問題解決能力の高さ どんな人がソフトウェアエンジニアに向いているかを一言で言えば、それは「問題解決能力の高さ」である。それも、知識や経験を使った問題解決でははなく、複雑な問題をよりシンプルな問題の集まりに分解して解決していくという、地頭を使った純粋な問題解決能力の高さである。 算数、数学への興味 私は典型的な「理科系少年」として少年時代を過ごした。小学生のときは、算数の応用問題を解くのが大好きだった。武蔵や開成などの名門

    第31回 どんな人がソフトウェアエンジニアに向いているのか | gihyo.jp
    s1061123
    s1061123 2015/05/22
    “8枚の金貨問題”
  • 2015年のLinuxのコンテナ技術 | gihyo.jp

    2014年は非常にDockerが盛り上がった1年でしたね。 Dockerは2013年の夏ごろから注目を集めはじめました。その後バージョンが0.9となった2014年の春ごろからさらに注目を集めるようになり、それ以降はさまざまなサービスやベンダーがDockerをサポートしたり、Docker関連のプロダクトを出したりするニュースが駆け巡った気がします。 Dockerに関係する勉強会が数多く開催されるようになり、Docker Meetup Tokyoなどは募集が始まった途端に定員に達するという活況ぶりでした。 Dockerは「コンテナ技術」そのものではなく、Dockerがやりたいことを実現するための技術要素の1つとしてコンテナを使っています。このDockerの盛り上がりと共にそれまでどちらかというとマイナーな技術であった「コンテナ」も2014年には非常に注目される技術となりました。 実際、筆者が主

    2015年のLinuxのコンテナ技術 | gihyo.jp
    s1061123
    s1061123 2015/01/06
  • PICではじめるアナログ回路 | Gihyo Digital Publishing … 技術評論社の電子書籍

    PICではじめるアナログ回路 著者 後閑哲也 著 発売日 2014年7月7日 更新日 2014年7月7日

    PICではじめるアナログ回路 | Gihyo Digital Publishing … 技術評論社の電子書籍
    s1061123
    s1061123 2014/10/08