タグ

ブックマーク / qiita.com (219)

  • Jsonnetの薦め - Qiita

    JsonnetというJSONテンプレート言語を紹介する。 後で見るように、これはJSONを生成するための汎用テンプレートというよりはむしろ、計算や依存関係を含む設定を静的に書き下すために便利なのではないかと考えられる。 実際Jsonnetの仕様はGoogleのBCLに似ている。BCLはGoogleでコンテナクラスタシステムBorgの設定を記述するために使われている言語だ。 JSONテンプレート言語 ある意味でJsonnetは毎度おなじみのやつだ。JavaScriptの文法の不便さに対してalt JSが多数出てきた。CSSにおけるネストの分かりづらさやの記述の重複に対してCSS preprocessorが多数出てきた。それと同じようにして、Webにおける機械可読データのLingua FrancaたるJSONを記述するのが不便なのでJSONテンプレートが出てきた。 Jsonnetはその中の1つ

    Jsonnetの薦め - Qiita
    a_bicky
    a_bicky 2018/06/24
    JSON のテンプレート言語
  • ECS運用のノウハウ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 関連記事 マイクロサービスを支えるインフラアーキテクチャ (AWS Dev Day 2019登壇資料) ECSデプロイツールを公開しました ECSにおけるログの取り扱いを別ページに移動させました 設計 基方針 基盤を設計する上で次のキーワードを意識した。 Immutable infrastructure 一度構築したサーバは設定の変更を行わない Infrastructure as Code インフラの構成をコードで管理 (Terraformを採用) Serverless architecture 無駄にサーバを増やさない アプリケーシ

    ECS運用のノウハウ - Qiita
    a_bicky
    a_bicky 2018/06/23
  • &演算子と、procと、Object#method について理解しなおす - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    &演算子と、procと、Object#method について理解しなおす - Qiita
    a_bicky
    a_bicky 2018/06/14
  • Perfect Frozen String Literal - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 現時点では解説がパーフェクトではないのを自覚しているが、めんどくさいので後でパーフェクトにする Frozen String Literalとは "str".freezeのようなリテラルのこと。 Feature#8992 (r43627) でこのようなリテラルを書くと事前にallocate & freezeされた文字列オブジェクト(内部的にはfstringと呼ばれる) が取得されるようになり、Ruby 2.1以降ではイミュータブルな文字列が必要な場面でこのリテラルを使うと高速になる。 以下、それに関連した機能や最適化がどのバージョンで入っ

    Perfect Frozen String Literal - Qiita
    a_bicky
    a_bicky 2018/04/24
    "str".freeze のようなリテラルは事前にallocate & freezeされた文字列オブジェクトが返るとのこと
  • YAPC Asia 2015「Google Cloud Platformの謎テクノロジーを掘り下げる」のまとめ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? YAPC::Asia Tokyo 2015、ロゴのとおりに熱いイベントでした...今年で最後なのはほんとに惜しいです。最初にして最後の参加となった私は、「Google Cloud Platformの謎テクノロジーを掘り下げる」というタイトルでトークをさせていただきました。 [スライドはここ] (https://speakerdeck.com/googlecloudjapan/deep-dive-into-google-cloud-technology)に上げてありますが、これだけ見ても意味不明と思われるので、話した内容の要約をまとめブロ

    YAPC Asia 2015「Google Cloud Platformの謎テクノロジーを掘り下げる」のまとめ - Qiita
    a_bicky
    a_bicky 2018/03/09
    少し前の記事だけど凄く面白かった
  • Ruby高速化のためのベンチマークツール benchmark_driver.gem - Qiita

    この記事はRuby Advent Calendar 2017 17日目の記事です。 benchmark_driver.gem とは Rubyの処理系を高速化していく上で重要な計測環境を改善するため、Ruby体のリポジトリにあるbenchmark/driver.rbの後継として作られたベンチマークツールです。普通にRubyのスクリプトのパフォーマンスを比較するのにも使えます。 また、このgemRuby Association開発助成金2017に採択されたプロジェクトとして開発されています。 何が便利なのか Procの起動を行なわない精度の良い計測ができる 皆さんがベンチマークによく使うのは、標準ライブラリの benchmark.rb か、見易い比較結果を得られる benchmark-ips.gem 等でしょう。 benchmark-ips.gem でよく使われるインターフェースや ben

    Ruby高速化のためのベンチマークツール benchmark_driver.gem - Qiita
    a_bicky
    a_bicky 2018/03/08
    とても良さそう
  • Docker ノウハウ集 - Qiita

    dockerコマンドに--helpを指定する。attach等のサブコマンド一覧が表示される。 [root@master1 ~]# docker --help -中略- Commands: attach Attach to a running container build Build an image from a Dockerfile 以下、略 サブコマンドに--helpを指定する。 [root@master1 ~]# docker attach --help Usage: docker attach [OPTIONS] CONTAINER Attach to a running container --detach-keys Override the key sequence for detaching a container --help Print usage --no-stdin

    Docker ノウハウ集 - Qiita
  • C言語で学ぶソケットAPI入門 第1回 サーバ編 - Qiita

    TCP/IPについてはWeb技術者が、意識するしないにかかわらず利用している、 インターネットに必要不可欠な通信プロトコルの一つです。 また近年はIoTなどの普及もあり、従来のWeb技術以外の分野にも必要不可欠な知識になってきています。 そこで、ネットワークAPIのデファクトスタンダードになっている、 BSDソケットインタフェースをベースとして改めてネットワークの勉強をしていこうと思ってます。 ネットワークの仕組み、特にTCP/IPについて書かれたやドキュメントはたくさんありますが、私はソケットAPIを使ったC言語のソースコードを読んでみるまで、どんな説明をきいてもイメージがわかず、あまり仕組みが理解できなかったので基的にC言語のソースコードの流れにそいながら、使われているデータや処理に基づいて動作を回を分けて学んでいくことにします。 もちろん、完璧だとは思っておりませんので、間違って

    C言語で学ぶソケットAPI入門 第1回 サーバ編 - Qiita
  • 原理原則で理解するbashの仕組み - Qiita

    はじめに 以前書いたエントリー、重大な脆弱性(CVE-2017-5932)で少し話題になったbash4.4の補完機能の便利な点で、bash4.4からでないとタブの補完機能のソート処理が制御できないという問題について、ソースコードレベルで調べた結果をまとめていたのですが、bashの実装そのものを深く掘り下げ過ぎてしまい、内容が膨大になったので、何回かに分けて書こうと思います。 今回はbashが起動されてからインタラクティブモードでキーボードの入力を待ち受けるまでのお話です。普段使っているbashがどのような処理を行っているのか一緒に覗いてみませんか? 検証ソースコード Bash version 4.1.0(1) release GNU bashの生誕 bashのプロセスが起動されるのはOSへのログイン時にユーザーのログインシェルがbashに設定されている場合、あるいはログイン後に明示的にba

    原理原則で理解するbashの仕組み - Qiita
    a_bicky
    a_bicky 2018/02/12
  • 原理原則で理解するDocker - Qiita

    はじめに この記事は、オールアバウト Advent Calendar 2016の23日目のエントリーです。 私、@tajima_tasoからは【原理原則で理解するDocker】と題して書かせて頂きます。 Dockerってそもそも何?ってところから、内部実装部分についても触れています。 Dockerとは何か? まず、Dockerとは何なのか?について軽くおさらいしましょう。 今更聞けないという方も、なんとなくイメージが掴めたら嬉しいです。 何故、今Dockerなのか? Docker ソフトウェア開発を行う環境にいる方々の中で、この言葉を耳にする機会が増えてきているのではないでしょうか? 実際の業務において導入まではしていないとしても、何となく盛り上がっている技術用語であることは肌感覚としてあると思います。 実は、Docker実現のベースとなっているLinuxコンテナという技術自体はずっと前か

    原理原則で理解するDocker - Qiita
  • RDB - 実例で学ぶ、JOIN (NLJ) が遅くなる理屈と対処法 - Qiita

    "Nested Loop Joinしか取り上げて無いのにタイトルが大きすぎないか" と指摘を頂いたので、タイトルを修正しました。Merge JoinとHash Joinのことはまた今度書こうと思います。 「JOINは遅い」とよく言われます。特にRDBを使い始めて間がない内にそういう言説に触れた結果「JOIN=悪」という認識で固定化されてしまっている人も多いように感じています。 たしかに、JOINを含むようなSELECT文は、含まないものに比べて重たくなる傾向があることは事実です。また、質的に問い合わせたい内容が複雑で、対処することが難しいものも存在します。しかし、RDBの中で一体どういうことが起きているのかを知り、それに基いて対処すれば高速化できることも少なくないと考えています。 稿では、JOINの内部動作を解説した上で、Webサービスを作っているとよく出てくるJOIN SQLを例題に

    RDB - 実例で学ぶ、JOIN (NLJ) が遅くなる理屈と対処法 - Qiita
  • rakeタスクの中だけで使うメソッドはRefinementsで定義するとべんり - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    rakeタスクの中だけで使うメソッドはRefinementsで定義するとべんり - Qiita
    a_bicky
    a_bicky 2018/01/21
    rake task のファイル内でメソッドを定義すると top level に定義されてしまうことへの対処方法
  • Dockerのメモリ制限に関するメモ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Dockerのメモリ制限に関するメモ - Qiita
    a_bicky
    a_bicky 2018/01/12
    --memory-reservation とか --oom-kill-disable とかについて
  • Elasticsearchのための新しい形態素解析器 「Sudachi」 - Qiita

    tl;dr (要約) Kuromojiに代わる新しい形態素解析器「Sudachi」 なにが良いの? 最新の辞書 企業(ワークスアプリケーションズ)による継続的な更新 複数の分割単位 → 検索用途での再現率と適合率の向上 プラグインによる拡張 省メモリ Elasticsearchで使いたい プラグイン: WorksApplications/elasticsearch-sudachi 使い方は当記事の後半をご覧ください 注: この記事の執筆者はSudachiの開発に関わっています さまざまな形態素解析形態素解析は、伝統的な自然言語処理(Natural Language Processing, NLP)において基盤となる技術です。そして世の中にはさまざまな形態素解析器が存在します。販売されているものもありますが、一般に公開されているものだけでもいくつか例をあげると、JUMANとRNNLMを利

    Elasticsearchのための新しい形態素解析器 「Sudachi」 - Qiita
    a_bicky
    a_bicky 2017/12/13
    面白そう
  • コマンド入力一撃で端末を大量に分割してタスクを瞬殺するtmux-xpanes - Qiita

    この記事の要点 コマンド一撃でtmuxのウィンドウを大量に分割してコマンドの同時実行を助けるxpanes(イクスペインズ)というコマンドを作りました。一斉に複数のホストにpingを送ったり、sshでログインして同時操作したり、一斉に複数のファイルをtail -fしたりするのに使えます。 操作ログの保存機能、標準入力を受け取ってコマンドを作成する機能などなど、機能も充実していて便利です。tmuxを知らない方でも単純な例だけであれば覚えることは少ないので、ぜひお試しを。 下記のアニメを見ていただければ、どんな感じのものを作成したのかお分かりいただけると思います。 Github: https://github.com/greymd/tmux-xpanes 背景 tmuxを使っている方は、どのような用途でtmuxを役立てることが多いでしょうか?開発の効率を上げるため1、あるいは複数のウィンドウ2や

    コマンド入力一撃で端末を大量に分割してタスクを瞬殺するtmux-xpanes - Qiita
    a_bicky
    a_bicky 2017/12/09
    便利
  • なぜあなたのPull Requestは読まれないのか - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Pull Requestを出してレビューしてもらってから反映。 どこにでもあるありふれた開発フローに付きまとう、どこにでもあるありふれた問題。 「Pull Requestがレビューされない」 もちろん開発フローにレビューが含まれている以上、レビューをしないメンバーにも非がないとは言えませんが、多くの場合はレビューされないPRには問題があるものです。 デカい 兎にも角にもデカいPRは読むのがつらいです。 もちろん要件が明記されていないなど、他にもPRが読みにくくなる原因はたくさんありますが、一番はこれです。 極端な話、1行変更のPRは他に

    なぜあなたのPull Requestは読まれないのか - Qiita
  • GitHub「完璧なプルリクの書き方を教えるぜ」 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに この記事は How to write the perfect pull request - GitHub を和訳というか、意訳した記事です。 ご指摘などありましたら大歓迎です! 良いプルリクエストを書くには (原題 : How to write the perfect pull request) 会社が成長していくと、人もプロジェクトも様変わりしていきます。GitHubの中に私達が望む文化を育んでいくためには、我々が何を自覚してコミュニケーションするべきなのか分かってきました。私達のチームが最強であり続けるために、最近以下のよ

    GitHub「完璧なプルリクの書き方を教えるぜ」 - Qiita
  • AndroidおよびiOSでの端末識別子について - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? スマホのアプリを開発する上で端末を識別するのに何が使用できるのか調べたのでまとめておきます。 各識別子 Android/iOS共通 ・MACアドレス ネットワーク機器に一意に割り当てられるアドレス。 通常変更はできないが、脱獄などしている場合はできる模様。 ネットワークアダプタが搭載されてない場合や無効になっている場合は取得できない。 ・IMEI(International Mobile Equioment Identity、国際移動体装置識別番号) 携帯電話など通信端末に付与される番号。15桁の数字。 通常変更はできるものではないが、

    AndroidおよびiOSでの端末識別子について - Qiita
    a_bicky
    a_bicky 2017/09/25
  • AWS Lambdaのユニットテストのベストプラクティス(Node.js) - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    AWS Lambdaのユニットテストのベストプラクティス(Node.js) - Qiita
    a_bicky
    a_bicky 2017/09/01
  • Shimの意味 - Qiita

    rbenvには shims というフォルダがあって、体を上手いこと実行するためのシェルスクリプトが入ってるんだけど、この shims って名前はどういう意味なのかわからず困ってた。 いや、別に意味がわからなくても困らないけど、何となくスッキリしなくて気持ち悪い。なので調べてみました。 辞書に載ってる意味 英辞郎によると 《名》詰め木 《他動》~に詰め木を入れる 《動》詰め木を入れて水平にする とのことですが、詰め木? よくわからん。 ”Shim とは”で検索しても木材についての話とか「SIMフリーの携帯とは?」とか出てくる。違うお前じゃない。 コンピュータ用語としてのShimの意味 Wikipediaには書いていました。 ただし英語版のみ。 In computer programming, a shim (from shim) or shiv is a small library tha

    Shimの意味 - Qiita
    a_bicky
    a_bicky 2017/08/31