タグ

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

  • 軽量RustフレームワークTauriでデスクトップアプリ開発をはじめよう | gihyo.jp

    TauriはRustで書かれた軽量なGUIフレームワークで、WindowsmacOSLinux向けのデスクトップアプリを開発できます。2022年6月に最初の安定版であるバージョン1.0がリリースされました。 Tauriでは、メインプロセスはRustで記述しますが、UI(User Interface)にはWeb技術を利用します。ReactVue.jsのようなJavaScriptフレームワークがそのまま使えるので、インタラクティブで見栄えの良いUIを簡単に構築できます。同種のフレームワークにElectronがありますが、後発であるTauriにはインストーラのサイズを小さくできるなどの強みがあります。 Tauriのロゴは、おうし座の二重星であるシータタウリ(θ Tauri)をモチーフ[1]にしており、Webとネイティブアプリの相互作用を意味しています。 図1 Tauriロゴ 稿では、Ta

    軽量RustフレームワークTauriでデスクトップアプリ開発をはじめよう | gihyo.jp
  • 第734回 UbuntuでSBOM(ソフトウェア部品表)を作る方法 | gihyo.jp

    SBOM(Software Bill Of Materials:ソフトウェア部品表)」という概念があります。これはあるソフトウェアを構築する上で利用しているライブラリの一覧をまとめたものです。また、システムにインストールされているソフトウェア一覧を示す場合もあります。今回は手元のUbuntuにインストールされているソフトウェア一覧を簡易的にまとめる方法を紹介しましょう。 SBOMの必要性 昨今のソフトウェアは多種多様なライブラリに依存しながら構築されています。太古のC言語のプログラムなら、シンプルなものならlibcだけ、そこそこ複雑なものでも2、3個のライブラリに依存するだけで済むことが大半でした。それが今風のプログラミング言語になると、特定の便利そうなライブラリに依存するだけで、「⁠だったら俺も僕も私もミーも」といくつものライブラリがバンドルされてしまうのです。 結果的に広く使われてい

    第734回 UbuntuでSBOM(ソフトウェア部品表)を作る方法 | gihyo.jp
  • 第613回 Apache Guacamoleを使ってWebブラウザからWindows 10にリモート接続する | gihyo.jp

    新型コロナウイルスの広がりにより、自宅勤務となる人が増えています。 さらに事態が悪化すれば、他国のように緊急事態宣言が出されるかもしれず、そうなれば多くの人が職場に向かうことも難しくなるでしょう。そうなる前に、職場の各PCに外部からアクセスできるようにしておきたいという人も多いのではないでしょうか。 そこで、今回は「Webブラウザーからリモートデスクトップを使う」ためのソフトウェア「Apache Guacamole」をUbuntuサーバーにセットアップする手順を紹介します。Apache Guacamoleは、Windowsのリモートデスクトッププロトコル(RDP)およびVNCに対応しています。また、GUIだけでなくSSHおよびTelnetサーバーへのアクセスを中継する機能も持ちます。 図1 Apache Guacamoleのドキュメントより Apache Guacamoleのメリットの1つ

    第613回 Apache Guacamoleを使ってWebブラウザからWindows 10にリモート接続する | gihyo.jp
  • 第625回 Nextcloudでオフィスファイルを編集する | gihyo.jp

    6月3日にNextcloud Hub 19.0.0がリリースされました。このリリースの最大の特徴のひとつが、Nextcloud Hubに標準でインストールされ、Talkでチャット中にも利用できるようになったCollabora Onlineでしょう。これによりNextcloudにアップロードされたオフィスファイルを、ウェブブラウザーだけで編集できますし、さらにTalkアプリでメンバーと通話しながら同じファイルを共同編集できるようにもなるのです。 Nextcloud HubとCollabora Online 実際にCollabora Onlineを使ってみる前にNextcloudとNextcloud Hubで名前が異なる事情や、さらにはCollabora Onlineの仕組みについて簡単に説明しておきます。 より多機能に舵をきった「Nextcloud Hub」 おそらく多くの読者がご存知のよう

    第625回 Nextcloudでオフィスファイルを編集する | gihyo.jp
  • あなたはデータに対する「正しい技術」を選択できますか?〜数理モデリングによる現象理解に向き合うときの気持ち | gihyo.jp

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

    あなたはデータに対する「正しい技術」を選択できますか?〜数理モデリングによる現象理解に向き合うときの気持ち | gihyo.jp
  • 第614回 WireGuardでVPNサーバーを構築する | gihyo.jp

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

    第614回 WireGuardでVPNサーバーを構築する | gihyo.jp
  • 第2章 PostgreSQLの内部構造―プロセスやメモリの流れ、特徴的な機能のしくみ | gihyo.jp

    図1 主なプロセスの流れ PostgreSQLは、ライタがデータファイルやインデックスファイルをディスクに更新しています。ただし、その更新は、コミットに合わせてリアルタイムで行われているわけではありません。性能向上のため、チェックポイントと呼ばれる更新タイミングが発生するまでは、更新があっても共有バッファにデータを貯めておきます。この貯められたデータをダーティページと呼びます。そしてチェックポイントのタイミングで、チェックポインタがダーティページをディスクに書き込みます。 そのため、共有バッファに更新情報を貯めている間に障害が起きると、ダーティーページを失う可能性があります。それを防ぐために、共有バッファ中のデータに対してどのような更新を行ったかの情報を保存しているのがWALです。WALはコミットのタイミングでWALライタが記録しています。クラッシュリカバリが必要になったときは、WALの中

    第2章 PostgreSQLの内部構造―プロセスやメモリの流れ、特徴的な機能のしくみ | gihyo.jp
  • ヘルプサイトの作り方

    2019年2月16日紙版発売 2019年2月16日電子版発売 仲田尚央,山絵理 著 A5判/208ページ 定価2,838円(体2,580円+税10%) ISBN 978-4-297-10404-7 Gihyo Direct Amazon 楽天ブックス honto ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo 書のサポートページサンプルファイルのダウンロードや正誤表など このの概要 単機能なプロダクトではヘルプサイトは必要ないかもしれませんが,機能が増えると,チュートリアルやヘルプなどによるフォローなしにはユーザーがプロダクトを使いこなすことが難しくなっていきます。また,ユーザーに長くプロダクトを利用してもらうためには,機能追加などに伴いヘルプサイトを継続的に改善していくことが必要です。書では,ユ

    ヘルプサイトの作り方
  • 2018年8月7日 Windows互換の「ReactOS」Btrfsからの起動が可能に | gihyo.jp

    Windows NTとのバイナリ互換をめざして1996年にスタートし、現在もWindows互換OSとして開発が続けられているオープンソースプロジェクトReactOS」がこの夏、新たなマイルストーンに到達しつつある。7月29日付けでReactOSプロジェクトの開発者「extravert34」が投稿したブログによれば、「⁠Google Summer of Code(GSoC⁠)⁠ 2018」のプロジェクトとして取り組んでいたReactOSのBtrfsパーティションからの起動が可能になり、安定した状態に入っているという。「⁠ReactOS公式の立場を代表するものではない」と但し書きされているものの、順調に開発が進めば次回以降のリリースで正式に取り入れられることになりそうだ。 GSoC 2018 - booting from BTRFS works! - extravert34's blog B

    2018年8月7日 Windows互換の「ReactOS」Btrfsからの起動が可能に | gihyo.jp
  • OSSライセンスの教科書

    このの概要 すでにOSS(オープンソースソフトウェア)はあらゆる機器で使われています。今後,IoT(Internet of Things)機器が普及すれば,数百万台から数百億台というオーダーでOSSが各デバイスで使われるようになります。そこで,書では,10数年にわたりOSSライセンスを業務面で関わりのある著者が,OSSライセンスの正しい理解,そして我々が何をすべきか,何をすべきでないかについて解説します。企業規模が小さく法務面や知財面で恵まれない現場の方に,OSSを適切に利用するためのヒントが満載です。 こんな方におすすめ OSSライセンスを体系立てて理解したいエンジニア 自社製品のOSSライセンスの扱いなどを調べているマネージャ,法務担当者 この書籍に関連する記事があります! オープンソースソフトウェアのライセンスとは オープンソースソフトウェア(OSS)とは,コンピュータプログラム

    OSSライセンスの教科書
  • 第5回 はじめよう!システム設計:羽生章洋『はじめよう!システム設計』刊行記念特別インタビュー~角征典から見た2018年の上流工程とカスタマーエクスペリエンスの時代|gihyo.jp … 技術評論社

    2018年1月に羽生章洋著『はじめよう! システム設計 ~要件定義のその後に』が発刊され、2015年から続く『はじめよう! 要件定義 ~ビギナーからベテランまで』『⁠はじめよう! プロセス設計 ~要件定義のその前に』の上流工程三部作が完結しました。最終回の5回目である今回は、著者である羽生章洋氏に『はじめよう! システム設計』についてお話を伺います。 ――ここまでに「要件定義」と「プロセス設計」の話はしたので、残りは最新刊の『はじめよう! システム設計』ですけど、これはどういう経緯で書かれたんですか? 羽生:ここまでくると、三作目は理屈じゃなくて「やるしかない」っていう(笑⁠)⁠。いやね、これまでの2冊を持っていろんな現場に行くと、要件定義はわかりました、前工程のプロセス設計もわかりました、ところでこれから何をしたらいいんですか? って言ってくるんですよ。 ――誰がそんなこと言うんですか?

    第5回 はじめよう!システム設計:羽生章洋『はじめよう!システム設計』刊行記念特別インタビュー~角征典から見た2018年の上流工程とカスタマーエクスペリエンスの時代|gihyo.jp … 技術評論社
    DustOfHuman
    DustOfHuman 2018/03/28
    “「期待・課題・仕様・設計」”
  • Electronではじめるアプリ開発 ~JavaScript/HTML/CSSでデスクトップアプリを作ろう

    このの概要 JavaScriptHTMLといったWeb系の技術デスクトップアプリケーションを作成でき,Atomエディタ,Slack,Visual Studio Codeなど,近年話題となったアプリケーションに利用されているElectron。書は,インストールからアプリの開発,テスト,パッケージング,セキュリティ対策まで,ひととおりの開発の流れをまとめました。「チャットアプリ」「Markdownエディタ」「キャプチャアプリ」の作り方をとおして,はじめてアプリを開発する人にもわかりやすく解説しています。 こんな方におすすめ Electronを使ってみたい人 Webの技術デスクトップアプリを開発したい人 第1章 Electronとは何か 1-1 Electronの概要 Column クロスプラットフォーム開発について 1-2 ElectronとWebの技術の進化 1-3 Electro

    Electronではじめるアプリ開発 ~JavaScript/HTML/CSSでデスクトップアプリを作ろう
  • 第4回 盗作しても著作権侵害にはならない?-「アイデア」と「表現」の分かれ目 | gihyo.jp

    はじめに (1) 読書趣味の私は、最近思い立って「ケータイ小説」を書き始めました。当初は好意的な感想が寄せられていたのですが、書き進めるにつれて、「⁠盗作じゃないの?」「⁠あなたの小説は××氏の著作権を侵害している!」といった批判的なコメントが多く来るようになり困っています。確かに、登場人物の性格や場面設定等、子供の頃愛読していた××氏の人気小説を参考にしたところもあるのは事実ですが、主人公の行動やセリフなど、物語の多くは自分のオリジナルだという自負があります。それでも、私の小説は、××氏の著作権を侵害することになってしまうのでしょうか…? ジャンルを問わず、表現活動を行う者がもっとも避けねばならないことの一つに「盗作」(⁠「⁠盗用⁠」⁠)があります。 よくニュースになるものとして、音楽(詞・曲)や小説、マンガ、ドラマの脚、学術論文といったものが挙げられますし、最近では有名人のブログ記

    第4回 盗作しても著作権侵害にはならない?-「アイデア」と「表現」の分かれ目 | gihyo.jp
  • 立体像で理解する美術解剖

    2016年11月26日紙版発売 2016年12月9日電子版発売 阿久津裕彦 著,小野結貴花 造形 B5判/256ページ 定価3,058円(体2,780円+税10%) ISBN 978-4-7741-8576-7 Gihyo Direct Amazon 楽天ブックス ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto このの概要 人体を造形する人にとって必要不可欠な知識,その一つが美術解剖学。 以前は格的な美大生のみが履修していましたが,最近では3DCGなどの普及にともない,専門学校でも必修科目となりつつあります。 これほど重要度の高い科目でありながら,日語で書かれた美術解剖のはあまりなく,洋書や医学系解剖書によって授業が進められているのが現状です。 しかし,洋書は英語で読むのが難しい。 か

    立体像で理解する美術解剖
  • 第33回 MojoliciousでかんたんWebアプリケーション開発(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはhayajoさんで、テーマはWebアプリケーションフレームワーク「Mojolicious」です。 稿のサンプルコードは、WEB+DB PRESS Vol.87のサポートサイトから入手できます。 Mojoliciousとは MojoliciousはCatalystの作者であるSebastian Riedel氏によって作成されたPerl製のWebアプリケーションフレームワークです。 2008年のリリースから現在に至るまでこまめなリリースが続けられており、稿執筆時点(2015年5月)のバージョンは6.11です。 Mojoliciousは主に次のような特徴を持っています。 プロトタイピングから大規模開発まで対応 Mojoliciousはコンポーネントごとにファイル、ディレクトリ構造を作成するフレームワークのほかに、

    第33回 MojoliciousでかんたんWebアプリケーション開発(1) | gihyo.jp
  • 第2章 関数プログラミングのパラダイム―命令プログラミングと何が違うのか | gihyo.jp

    この章では、命令プログラミングと関数プログラミングのパラダイムの違いを理解するために、簡単な計算問題を取り上げます。 命令プログラミングと関数プログラミング 当たり前過ぎて意識されていないかもしれませんが、改めて命令プログラミングのパラダイム(以下「命令型」と略記)を説明すると、次のようになります。 命令を列挙する(典型的には命令である文をセミコロンで区切って並べる) 状態がある(状態とは再代入可能な変数のこと) 再代入を使って状態を変化させる 一方、関数プログラミングのパラダイム(以下「関数型」と略記)は次のようになります。 関数を引数に適用する 状態はない (値を破壊したくなったら)新たな値を作る 状態がないので、変数の値は変わりません。これが関数プログラミングを永続データプログラミングと定義した理由です。しかし、関数型で当に問題が解けるのか疑問だと思います。これから簡単な計算問題を

    第2章 関数プログラミングのパラダイム―命令プログラミングと何が違うのか | gihyo.jp
  • 第364回 Raspberry Pi 2でDockerとownCloudを動かす | gihyo.jp

    Raspberry Pi 2をサーバーとして動かすとなると、やはりコンテナ型仮想化を使えると便利です。そこで今回はRaspberry Pi 2上でDockerを使う方法を紹介します。 よりUbuntuらしいインストールイメージ 先月の第362回では、Raspberry Pi 2にUbuntuをインストールする方法として、Snappyのカーネルやinitramfsと、Ubuntu Coreのルートファイルシステムを組み合わせて使う方法を紹介しました。この方法は手元でカーネルやinitramfsのビルドは必要ないものの、カーネルのアップグレードは手作業でbootパーティションを変更しなくてはいけない、カーネルのコンフィグがUbuntuのそれと微妙に異なるなど、いろいろと不便な点も存在していました。 そんな中、この記事と前後してCanonicalのRyan FinnieがRaspberry Pi

    第364回 Raspberry Pi 2でDockerとownCloudを動かす | gihyo.jp
  • Gihyo Digital Publishing … 技術評論社の電子書籍

    技術評論社の電子書籍(電子出版)販売サイト

  • 第5回 そろそろサーバを弄りたい | gihyo.jp

    過去の日記を読み返していて、あることに気づいた。 今日までに、俺がAWSでやってきたこと。 オンプレ時代であれば、サーバをラッキングして、電源を入れ、ネットワーク機器をケーブルでつないだ事くらいしかやっていない。サーバに至っては、電源を入れて、SSHで接続して、pingを打っただけ。 クラウドという環境に初めて触れて、すごいことをしている気分だったのに、改めて考えてみると、すごく単純作業しかしていないことに気づいてしまった。でも、今までであれば、必ずデータセンターに行って作業していた事が、手元ですぐに完結するというのはすごい。それは俺がすごいんじゃなくて、AWSがすごい。 とはいえ、俺も何もしていないわけではなくて、ネットワークを作ったり、サーバを立ち上げたりするのをいかに早くできるかというのを反復練習していたわけで、今となってはネットワークを構築して、サーバを起動するくらいなら30分もあ

    第5回 そろそろサーバを弄りたい | gihyo.jp
  • 第1回 自動文書検査ツールRedPenとは? | gihyo.jp

    はじめに 連載ではRedPenという自動文書検査ツールの紹介とRedPenを利用した技術文書の校正方法について説明します。RedPenはオープンソースプロジェクトで、現在もゆっくりと開発が続いています。RedPenのホームページは次のとおりです。 http://redpen.cc RedPenは技術文書をターゲットにした文書の自動検査ツールです。技術文書にはマニュアルやチュートリアル、論文、仕様書等が含まれます。この記事のようなソフトウェアツールの紹介文書はもちろん技術文書の一つといえます。第1回の今回は、はじめに技術文書の特徴を解説し、その後RedPenを開発した動機について紹介します。記事の後半では、RedPenの特徴と利用方法について解説します。 技術文書の特徴 RedPenが対象とする技術文書ですが、作文や日記、文学作品等とは大きく異なる特徴をもちます。 最大の違いは、技術文書に

    第1回 自動文書検査ツールRedPenとは? | gihyo.jp