あとで読むに関するtasshi820のブックマーク (11)

  • Command Line Interface Guidelines

    Contents Command Line Interface Guidelines An open-source guide to help you write better command-line programs, taking traditional UNIX principles and updating them for the modern day. Authors Aanand Prasad Engineer at Squarespace, co-creator of Docker Compose. @aanandprasad Ben Firshman Co-creator Replicate, co-creator of Docker Compose. @bfirsh Carl Tashian Offroad Engineer at Smallstep, first e

    Command Line Interface Guidelines
  • 【2020年版】ドメイン駆動設計(DDD)初学者へ贈るおすすめ書籍 - RAKUS Developers Blog | ラクス エンジニアブログ

    こんにちは。west-cです。 携わっている新規サービスにてドメイン駆動設計(以下、DDD)を取り入れた開発を行っていることから、去年の秋頃からDDDの学習をはじめました。 今回は、私が学習にあたり読んだおすすめ書籍を紹介します。 目次 目次 ドメイン駆動設計とは おすすめ書籍 現場で役立つシステム設計の原則 〜変更を楽で安全にするオブジェクト指向の実践技法 ドメイン駆動設計 モデリング/実装ガイド ドメイン駆動設計入門 ボトムアップでわかる! ドメイン駆動設計の基 Domain Driven Design(ドメイン駆動設計) Quickly 日語版 実践ドメイン駆動設計 エリック・エヴァンスのドメイン駆動設計 おわりに ドメイン駆動設計とは 題へ入る前に、「そもそもDDDって何?」という方へ3行でとてもざっくりと説明します。 DDDとは、ソフトウェアで問題解決しようとする領域(ドメ

    【2020年版】ドメイン駆動設計(DDD)初学者へ贈るおすすめ書籍 - RAKUS Developers Blog | ラクス エンジニアブログ
  • Starting a TypeScript Project in 2021

    ContentsBasic project setupThe basic setup consists of four steps: Create the project and source directoriesCreate a package.jsonGet a .gitignore, tsconfig.json, .eslintrc.jsInstall TypeScript & dependenciesNote: This guide uses yarn, but if you prefer npm it has similar commands. # Create project folder mkdir my-project cd my-project # Create source folder and files mkdir src touch src/main.ts sr

    Starting a TypeScript Project in 2021
  • Cranelift, Part 3: Correctness in Register Allocation

    This post is the last in a three-part series about Cranelift. In the first post, I covered overall context and the instruction-selection problem; in the second post, I took a deep dive into compiler performance via careful algorithmic design. In this post, I want to dive into how we engineer for and work to ensure correctness, which is perhaps the most important aspect of any compiler project. A c

  • Rustのコヒーレンス - 簡潔なQ

    概要: Rustの impl が定義できる型にはコヒーレンスと呼ばれる制限がある。これについて説明する。なお、この記事では特殊化がない前提で説明する。 コヒーレンス初心者のための概説 以下のように impl が重複していたり、自分のところ以外の型の impl を定義しようとするとエラーになる場合がある。これをコヒーレンスという。 struct A; // overlap rule 違反 impl A { fn f(x: i32) {} } impl A { fn f(x: i8) {} } // orphan rule 違反 impl Option<A> { } コヒーレンスの目的 コヒーレンスには以下の2つの目的がある。 同じトレイト/型に対して、状況に応じて異なる実装が採用されてしまうことを防ぐ。 将来の上流クレイトの変更による下流クレイトへの影響を最小限に留める。 コヒーレンスの分類

    Rustのコヒーレンス - 簡潔なQ
    tasshi820
    tasshi820 2020/12/24
    なんとなくわかったきがした
  • CSSのテキストマスクで映えるメインビジュアルを実現

    この記事について この記事は、スマートフォン時代のWebデザインスクール や Web制作の基礎から学べる「Webコーディングスクール」 の資料制作をお手伝いして頂いているemiさんによる寄稿記事です。 emiと申します。USAGI DESIGN emi.というサイトでWebデザインやコーディング練習用のデザインデータを配布しています。普段はWebデザインやコーディング、メンターなどをしております。 メインビジュアルがマンネリ化していませんか 「メインビジュアルの見せ方がワンパターン化してきた」「CSSでちょっと凝った感じに見えるメインビジュアルを作ることができれば」など、シンプルなのにいつもより少し見栄えのするCSSで実現できるメインビジュアルを紹介します。 CSSのテキストマスクを使ってみる CSSのbackground-clipを使用すると、背景画像をテキストの形で切り抜いたように表示

    CSSのテキストマスクで映えるメインビジュアルを実現
  • https://blogs.oracle.com/otnjp/post/tsushima-hakushi-9

  • 中身が不定のJSONオブジェクトをGo言語で扱うのに mattn/go-jsonpointer が便利だった - えいのうにっき

    今日書くのは、先日Go言語の個人プロジェクトである Pixela に手を加えた際に実感したことについて。 先日手を加えたものの一部に、以下のようなものがあった。 > 以下のようなコマンドを実行してみましょう。 > > curl -X GET https://pixe.la/v1/users/a-know/graphs/stopwatch-test/20200504 -H 'X-USER-TOKEN:thisissecret' > > Pixela では、各日付ごとのデータを pixel と呼んでいるのですが、その詳細を取得できるコマンドです。`20200504` のところは詳細を確認したい日付を指定します。このコマンドの実行がうまくいけば、以下のような結果が表示されると思います。 > > {"quantity":"0.50","optionalData":"{\"stopwatchUsag

    中身が不定のJSONオブジェクトをGo言語で扱うのに mattn/go-jsonpointer が便利だった - えいのうにっき
  • ひらめかない人のためのイノベーションの技法

    shinshinohara @ShinShinohara ある、水耕栽培の農家さんでの出来事。障害者学校の先生たちが見学に。苗を植える様子を見て「あれならうちの生徒にもできそうだね」とつぶやくのを、農家さんは内心、聞きとがめた。というのも、その作業は簡単に見えて、とても熟練の技術が必要な工程だったから。 2020-01-27 22:23:13 shinshinohara @ShinShinohara 浅ければ根が水に届かず、枯れる。深ければ苗が水中に落ちてしまい、流れていってしまう。絶妙な深さできれいに植えなければいけないので、慣れていない人間にはとても任せられない作業。それを簡単に考えるなんて。農業をなめないでほしい、と思ったという。 2020-01-27 22:24:39 shinshinohara @ShinShinohara 後日、障害者学校の先生たちが「試させてほしい」と言って再

    ひらめかない人のためのイノベーションの技法
  • goroutineはなぜ軽量なのか - Carpe Diem

    概要 以前の記事で christina04.hatenablog.com Goはスレッドよりはるかに軽量なgoroutineでC10K問題を解決する、という話をしましたが、goroutineが軽量なのはなぜか?という理由を深掘りしたことがなかったのでしてみました。 環境 golang 1.11.1 Darwin 17.7.0 軽量と呼ばれる理由は2つ 大きく分けると以下の2つのポイントがあります スレッドに比べてメモリ使用量が低い スイッチングコストが低い それぞれ説明していきます。 goroutineがスレッドに比べてメモリ使用量が低いのはなぜか スタックとヒープのメモリの使い方を理解すると分かります。 ヒープはメモリの下層、プログラムコードのすぐ上にあり、上に向かって成長します。一方スタックは仮想アドレス空間の一番上にあり、徐々に下に成長していきます。 ref: イベントループなしでの

    goroutineはなぜ軽量なのか - Carpe Diem
  • Go 製ソフトウェアでメモリ使用量の多い関数を特定する - Cybozu Inside Out | サイボウズエンジニアのブログ

    みなさんこんにちは.SRE チームの内田(@uchan_nos)です. この記事では Go 製ソフトウェアのどの関数がどれだけメモリを消費しているかを調べる方法を説明します. Go 製ソフトウェアのヒープメモリの消費量を調べる方法はたくさん解説されているものの,スタックメモリの消費量について調べる方法を説明したサイトを見つけることはできませんでした. この記事では主にスタックメモリの消費量を調べる方法を説明します. 背景 SRE では Go 言語で自社データセンター向けのツール群をたくさん作っています. その中のソフトウェアの 1 つが,番運用中に予想外にたくさんのメモリを使用してしまうという問題がありました. どの関数が原因なのかを突き止めるために,関数単位でメモリ使用量を調べる必要があります. ソフトウェアが使っているメモリ量の概況は,Linux であれば top コマンドで調べるこ

    Go 製ソフトウェアでメモリ使用量の多い関数を特定する - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 1