Startrailについて調べたのでまとめた

はじめに 丹青社の吉田清一郎さんの「アート×テクノロジー、文化が花開く社会を目指して」という講演を聞きましてアートの可能性を感じました。以下は講演の記事ではないですがテーマは同じ感じです。 www.japandesign.ne.jp 美術作品の証明書にブロックチェ…

Shopifyを触ってみたので感想を書く

はじめに ShopifyはコーディングなしでECサイトが作れるSaaS、またはEC構築のCMSです。 www.shopify.jp 最近知り合い*1からノーコードアプリを試してみた話を聞きました。AWSからもノーコード製品が出ましたし、僕もちょっと気になっていたShopifyを触ってみ…

「君主論 」を読んだので書評を書く

はじめに 君主論とは1532年にニッコロ・マキャヴェッリによって書かれた政治論文です。その岩波文庫から出版されているものを読みました。 君主論 (岩波文庫)作者:マキアヴェッリ,河島 英昭発売日: 2015/01/22メディア: Kindle版 本の内容は凄くざっくりいう…

Storybookに入門したのでまとめた

はじめに Storybookがどのようなものか知りたかったので触ってみました。コンポーネントの見た目の確認が楽なので、UIのボトムアップな開発には有益そうと感じました。 github.com 想定読者はReact何となくわかるくらいの方です*1。 Storybook Storybookとは…

iPadでドラムが練習できるTOUCHBEATを買ってみた

はじめに 面白そうと思ってiPadでドラムが練習できるTOUCHBEATを買いました。今日届いたのでレビューを投稿します。 送られてくるものはこんな感じです。アプリは適当なドラムアプリを使います*1。スティックとバスドラムの蹴るやつでドラム感を演出していま…

gRPC Client streamingを使う時のタイムアウトについて

はじめに gRPC Client streamingを使っていてタイムアウトが起きました。その時に修正が必要だった箇所についてのメモです。デフォルトの設定で大丈夫だったところは特に見ていないので他にも見るべき値があるかもしれません。 gRPC Client streaming gRPCに…

「ヒトはなぜ先延ばしをしてしまうのか」を読んだので書評を書く

はじめに ヒトはなぜ先延ばしをしてしまうのか作者:ピアーズ・スティール発売日: 2012/06/28メディア: 単行本(ソフトカバー) 先延ばしして読んでこなかった本を読みましたので書評を書きます。 この本はいろんな例を豊富に紹介しています。要点だけ知りた…

「ビジョナリー・カンパニー 2 - 飛躍の法則」を読んだので書評を書く

はじめに 『ビジョナリー・カンパニー2 飛躍の法則』 (原題: Good to Great: Why Some Companies Make the Leap ... And Others Don't, 2001年)を読んだので書評を徒然と書きます。 ビジョナリー・カンパニー 2 - 飛躍の法則作者:ジム・コリンズ発売日: 2001…

Re:VIEWで複数行の数式を揃えたい

はじめに Re:VIEWで複数行の数式を揃える時にeqnarray環境を使いたいと思ってググったところあまり情報がなかったので書いておきます。結果的にeqnarray環境は使わないことにしました。 ちなみに私はLaTeXもRe:VEWも詳しくないのでもっと良い方法があるのか…

「Measure What Matters」を読んだのでOKRと組織についての考えを整理した

はじめに OKRとObjectives and Key Resultsの略で、目標と主要な結果という意味です。組織の目標管理に使われます。インテルでアンディ・グローブにより導入され、今回紹介する本の著者であるジョン・ドーアによりグーグルはじめ様々な企業に広められました…

生産性を定義する3Pモデルの紹介

はじめに 生産性はモノを作る企業にとって競争力に影響する重要な要素です。一方で生産性は後回しにされてしまうものというのは多くの企業で共通することではないでしょうか。そうなってしまうのは、生産性について経営陣がしっかり理解していなかったり、生…

ソフトウェア開発の生産性

はじめに 最近は生産性について考える機会が多く、生産性は今年の僕のテーマの1つになりそうです。一通り自分の理解が整理できたら記事に書こうかと思っていたのですが、なかなか手がつかなそうだったので、書きながら徐々に整理していこうと思います。 生産…

フローチャートの歴史

はじめに 以下の図はとある演習問題で僕が描いたフローチャートです。あるサポートセンターで1日に電話がかかってくるのが平均174.1件でまずはオペレータが対応し、それで解決しなかった場合はシニア・アソシエイトが対応します。もしくはオペレータの時点…

ocamllexとocamlyaccで電卓をつくる (OCaml)

はじめに ocamllexとocamlyaccというツールを使って電卓をつくります。作ろうと思ったのはTaPL本の第4章で出てくるプログラムを理解するのに良いかなと思ったからです。 型システム入門 −プログラミング言語と型の理論−作者:Benjamin C. Pierce発売日: 2013…

OCamlで"Hello, World!"を出力する

はじめに Rustを学んでいると、どうしても型安全性を理解したくなり、積ん読していた「型システム入門*1」を読み始めました。気長に読み進めていくと思います。 型システム入門 −プログラミング言語と型の理論−作者:Benjamin C. Pierce発売日: 2013/03/26メ…

ManuallyDrop::takeについて調べたのでまとめた (Rust)

はじめに MaybeUninitのassume_initメソッドについて調べたのでまとめたの内容と少し被っています。Rust 1.42でStabilized APIsになったManuallyDrop::takeについて調べたのでまとめました。 ManuallyDrop構造体 ManuallyDrop構造体はコンパイラに自動で値の…

アドレスバーで「いらすとや」の素材検索をする方法 (Vivaldiウェブブラウザ)

はじめに Vivaldiウェブブラウザを知っていますか?元Opera Software社の創業者の1人でCEOであったヨン・テッツナーさんと同社でエンジニアやマーケターをされていた冨田龍起さんが共同創業したVivaldi Technologies社のブラウザです。 私がVivaldiウェブブ…

mountコマンド周りの整理

はじめに 今まで何となく使っていたmountコマンドについて、理解している部分やよくわかっていない部分を整理したいなと思い書きました。作業環境はMac上のVirtualBoxで動かしているCentOS8です。 ファイルシステム Unixシステムでは全てのファイルは/をルー…

MaybeUninitのassume_initメソッドについて調べたのでまとめた (Rust)

前に書いたMaybeUninitで初期化していない参照を扱う (Rust)で気になっていたassume_init()を調べたメモです。 気になっていた部分は下記です。 pub unsafe fn assume_init(self) -> T { intrinsics::panic_if_uninhabited::<T>(); ManuallyDrop::into_inner(se</t>…

「State of DevOps Report」の歴史

はじめに 2019年「State of DevOps Report」というDevOpsに関する調査研究のレポートがDORA社とPuppet Labs社で別々に発表されております。前は一緒にレポートを発表していたのですがいつからかそれぞれ独自に調査研究するようになったようです。 そこで(歴…

「LeanとDevOpsの科学」 ソフトウェアデリバリのパフォーマンスと業績

はじめに 前回の「LeanとDevOpsの科学」を読む前に整理したいことに引き続き同じ書籍ついて書きます。書籍の補助的な文献となることを目指します。 LeanとDevOpsの科学[Accelerate] テクノロジーの戦略的活用が組織変革を加速する impress top gearシリー…

「LeanとDevOpsの科学」を読む前に整理したいこと

はじめに 「LeanとDevOpsの科学(原書タイトル: Accelerate)」 という書籍があります。本にはソフトウェアデリバリのパフォーマンスと組織の業績の関連について書かれてあります。簡単に言うとソフトウェアデリバリにおいてハイパフォーマンスな企業は高業績…

MaybeUninitで初期化していない参照を扱う (Rust)

はじめに あるコードを見ていた時にstd::mem::uninitializedを見つけました。これはrustの1.39.0からDeprecatedとなっており、MaybeUninitに変わっていました。どうやって使うのかを調べたメモです。 内容はドキュメントに書いてあるものを少し噛み砕いてい…

Unsafeがよくわからなかったので整理した (Rust)

はじめに RustのThe Bookを読んでも、Unsafeについて何となくもやっとしていたので書いて整理しました。整理したというのは私が何をわかっていて何をわかっていないかを何となくですが把握したということです。 例えば、The Bookには以下のようなことが書い…

mkfifoでプロセス間通信を試す (Rust)

はじめに mkfifoという名前付きパイプを作成するシステムコール(を実行する関数)を試しました。名前付きパイプはプロセス間通信の手段の1つです。 例えばcat file | grep hogeで使うのは名前無しパイプの方です。名前付きパイプではファイルを作成してそれ…

マクロに入門したので概要を書く (Rust)

はじめに Rustのマクロは難しそうなので、必要な時に理解すればいいやと後回しにしていました。結局理解できていませんが徐々に攻めていこうと思います。 マクロの文法の説明はしません。また、マクロの展開に関わる抽象構文木の話は別の記事で書きます。 マ…

chroot ~Alpine LinuxのDockerイメージでglibcで動くプログラム(bash)を動かしてみる~

はじめに 小ネタです。chrootの動作を見るのに手を動かしてみた内容を書いたのが今回の記事です。 chrootはプロセスのルートディレクトリを変更するコマンド、関数、システムコールです。動かしてみてchrootの雰囲気がわかることが目標です。 Alpine Linuxの…

OCI Runtime Specificationを読んだので概要を書く

はじめに OCI Runtime Specificationを読んだので概要を書きました。読んだのは仕様を理解して、簡単なところだけ実装しようと思ったからです。 Dockerとの関連を簡単に説明します*1。Docker Clientはdockerコマンドを提供するCLIです。Docker ClientはDocke…

HTTP/Tokyo #1 参加レポート

http-tokyo.connpass.com HTTP/Tokyoに参加しました。この記事では発表された内容を説明するのではなく、どのような勉強会だったのかということを書きます。 会場提供は株式会社トレタさんでした。レストラン・飲食店向け予約管理システムを作っていて、その…

nixでプロセスをforkしてみる (Rust)

はじめに Rustでシステムプログラミングに入門中です。 プロセスのforkには、Rustからlibcを呼べるlibcというunsafeなライブラリと、それsafeにしたnixというものが使えるようです。unsafeは扱いにくいのでnixを使いました。 Cargo.toml [dependencies] nix …