タグ

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

  • JSONをインタラクティブに掘り下げるコマンド jid - Qiita

    はじめに 私はCLIを利用することが多いのもあり、 jq は今やJSONを利用する上は欠かせないツールとなっています。 ただ ・ jqのクエリを書くことなれるまで少し時間がかかる ・ クエリを書くことに慣れたとしても、初見だったりして 構造を把握していないJSONに関しては非常に手間 でみたいな感じだなと思っていました。 インタラクティブに jq のクエリを書いていければいいのに、と思ってツールを探しました(CLI限定で)が、あまり良さそうなものが見つかりませんでした。 そこで、Golangで何か作ってみたいのもあったので、作ったのが jid というツールです。 リポジトリ Github : simeji/jid インストール 以下からバイナリダウンロードしてzip解凍するだけです。 https://github.com/simeji/jid/releases Macの場合はbrewで入れ

    JSONをインタラクティブに掘り下げるコマンド jid - Qiita
  • あらゆるログを JSONable に、というご提案 - Qiita

    これは既にたくさんの人・企業が実践していることだと思うんですが、自分の周囲に対して明文化するのを主な目的として、記事にしようと思います。 TL;DR ログは JSON またはそれに変換可能な LTSV のようなフォーマットで改行区切りに一次出力しよう JSONable とは 私の造語1ですが、「JSON に変換可能である」ぐらいの意味です。 例えば、YAML, LTSV 等がそれにあたります。 これは完全に相互変換できる、というほど厳密な意味ではありません。 例えば YAML には アンカーやエイリアス という仕様がありますが、JSON ではそれを表現することはできません。 ですが、エイリアスを解決した上で、それを JSON に変換することはできます。 また、「JSON に 変換できる」かどうかが重要であって、「JSON から 変換できる」かどうかは重要ではありません。 例えば LTSV

    あらゆるログを JSONable に、というご提案 - Qiita
    takets
    takets 2020/10/22
  • OctotreeをGitHub Enterpriseで使用する方法 - Qiita

    追記 2019/04/15 OctotreeはPro版が実装され、 この記事の方法ではGitHub Enterpriseで有効にすることができません。(Enterprise機能が Pro版に集約されたため) OctotreeにPro版が生えたのでGitHub Enterpriseを有効し直した - Qiita をご覧ください。 はじめに Octotreeとは、github.com,gitlab.com上のリポジトリページに、ツリー構造のディレクトリをブラウザ左側に表示してくれるChrome拡張機能です。 safariやfirefox, operaなども対応してます。 インストール方法 Octotreeをインストールするだけ! GitHub Enterpriseの設定 公開リポジトリを開き、歯車ボタンからOctotreeの設定画面を開きます。 GitHub Enterprise URLs と

    OctotreeをGitHub Enterpriseで使用する方法 - Qiita
    takets
    takets 2020/10/19
  • 【JS・TS】コーディングTips集 - Qiita

    概要 JavaScript/TypeScriptを書く中で、自分自身の気づき、他の方から頂いたアドバイスをメモとして残してきました。 その中で、使用頻度が高そうで、知っていれば誰でも簡単に実践できる物を抜粋して記事にしました。 ですので、主にJavaScript/TypeScriptの使用歴が浅い(プログラミングの歴が浅い)方向けに少しでも参考になれば幸いと考えています。 (※JS/TSに限った事では無いものも含まれます。また、こちらに記載した記法が必ずしも優れていると言うわけではありません。記事はあくまでも、JS・TSを利用した際にこんな記法もあるよという紹介が主要点です。) 早期returnを利用する 条件を満たす場合に直ぐに return することで、コードのネストを減らし、コードの見通しを良くするテクニックです。 簡単な例としまして下記のコードが、 const checkNumb

    【JS・TS】コーディングTips集 - Qiita
  • 【初心者向け】git fetch、git merge、git pullの違いについて - Qiita

    gitで手こずった時に色々ググってると、「git fetch」と「git pull」がぐちゃぐちゃになってしまったのでまとめておきます。 結論から言えば、「fetchもpullもリモートリポジトリの最新情報をローカルリポジトリへ持ってくる」という操作になりますが、それまでの流れが違うので説明していきます。 リモートから最新情報をローカルに持ってくるのですが、場所は「master」ブランチではなく、「origin/master」ブランチに取り込まれます。 初めは「何それ知らない」となるのですが、具体的に言うと 「master」ブランチ…ローカルの中心となる統合ブランチで、他のローカルの作業ブランチと繋がったもの。 「origin/master」ブランチ…ローカルにある、リモートのmasterブランチを追跡するリモート追跡ブランチ。 となります。 両方ともローカルにあるブランチで分かりにくいの

    【初心者向け】git fetch、git merge、git pullの違いについて - Qiita
    takets
    takets 2020/10/09
  • なぜ我々は頑なにforを避けるのか - Qiita

    動機 前回の記事を投稿したことを某SNSで通知したところ、そのSNSでこんなコメントをいただいた。転記する許可を取ったわけでは無いので私なりに要約させていただくと、 なぜそんなトリッキーな書き方をしてまでforを使うのを避けるのか そんな書き方をして可読性を下げるくらいなら素直にforを使う方が良い ということだと理解している。 なるほど、一理ありそうだ。しかし一方で、前回貼ったStackOverflowのQ&Aはなかなかの人気記事(質問に1243ポイント、回答に最大で1559ポイント)なので「多少トリッキーなことをしてでもforを書きたくない!!」という意見をもつプログラマも一定以上いるのだろう。当然私もその1人だ。 ということで、この記事で「なぜそこまで意固地になってまでforを書きたくないのか」を説明することにする。 尚、今回は前回の記事つながりで言語はJavaScriptを使うが、

    なぜ我々は頑なにforを避けるのか - Qiita
  • <script> タグに async / defer を付けた場合のタイミング - Qiita

    HTML5 においては、<script> タグに、defer や async 属性を付与することで、これらの読込が HTML パースを妨害しないようにすることができます。これにより、サイトのメインコンテンツの読込がある程度高速化されます。 async にせよ defer にせよ、それほど詳細に動作を解説した記事が見つかりませんでしたので、記事では、これらの動作について解説します。 イベントについて まずは、async と defer の挙動を理解するために重要な、2つのイベントについて理解しましょう。 両者とも、MDN に十分な情報があるため、記事ではそれほど詳細には解説しません。 DOMContentLoaded HTML のパースが完了した直後に発火します。 MDN load HTML のパースが完了し、CSS や画像などのダウンロードと表示、JavaScript ファイルのダウン

    <script> タグに async / defer を付けた場合のタイミング - Qiita
    takets
    takets 2020/09/04
    これよくハマるんだよなぁ……
  • 開発体験を変える! Chrome DevTools Tips 7選 - Qiita

    最近Chrome DevToolsについて調べていて発見した便利機能を紹介します。 誰もが使える最高便利な開発マシンChrome DevToolsを使いこなして開発体験を変えましょう! 1. $0で選択中のDOM要素の取得 特定の要素に何かしたいという時には、要素のIDやclassを確認してConsoleでdocument.querySelector("#xxx")で取得するというのが一般的だと思います。実はそれはカーソル選択と$0で代替できます。 Classや、IDがついていない特定のDOMを取得したい時とかにも使えるので地味に便利です。 手順 カーソルで取得したい要素を選ぶ Consoleタブで$0を入力 最近知ったChrome DevToolsの便利機能① $0 での選択中のDOM要素取得 Elementsタブで選択状態のDOM要素は、Console上で $0 を入力することで取得で

    開発体験を変える! Chrome DevTools Tips 7選 - Qiita
    takets
    takets 2020/08/18
    DOM変化のタイミングでデバッガ起動は便利そう
  • 【Vim】mattn/memo の Denite source を作った - Qiita

    最近ずっと Denite をいじっております。こいつは Unite の後継だけあって大した時間泥棒プラグインですね! いくらでもカスタム可能なので際限なく設定に凝ることが出来ます。Unite と違って Python で拡張が書けるのでなおさらです。 今回はいつも利用させていただいてます、mattn/memo の source を書いてみました。これはリンク先を見るとわかるとおり、メモを取るためのツールなのですが、来はターミナルから起動してメモを作成/検索するためのものです。ターミナルからメモを作成/検索するのは簡単なんですが、一度作成したメモを Vim 上から検索したりするのが難しかったんですよね。これを簡単にしてみました。 delphinus/vim-denite-memo: The denite source for mattn/memo こんな感じです。インストール方法などは RE

    【Vim】mattn/memo の Denite source を作った - Qiita
    takets
    takets 2020/08/15
  • 何かとわかりづらい GTD について、エンジニア向けにざっくり説明してみる - Qiita

    GTD について理解するのに苦労したので、「こう書いたら(たぶんエンジニア的には)理解しやすいはず」という視点で GTD についてざっくり解説してみた。 ==== はじめに ==== 記事は筆者のざっくりとした理解、かつざっくりした解説である 取り上げるのは How to がメイン 背景、思想などは取り上げない 他にも色々端折っている ==== Part1. GTD の概要、リストの概要 ==== GTD とは 頭の中にある「気になること」を全部リスト化し、このリストたちをこまめにメンテすること。 効用は 2 つ。 (1):目の前のタスクに集中できる 気になることは外に出してるので、脳内で「そういえばあれしなきゃ」「あれどうしよっかなー」等が発生しない) (2):気になることを忘れない、失わない リストに突っ込んでいる&あとでメンテする時に目を通すので失われない リスト駆動生活やリマイン

    何かとわかりづらい GTD について、エンジニア向けにざっくり説明してみる - Qiita
    takets
    takets 2020/08/11
    [GTD]
  • JavaScript つい忘れてしまう配列のソート方法 - Qiita

    var a = [5,3,9,1,10] a.sort(function(a,b){ if( a < b ) return -1; if( a > b ) return 1; return 0; }); 結果:1,3,5,9,10 var a = [5,3,9,1,10] a.sort(function(a,b){ if( a > b ) return -1; if( a < b ) return 1; return 0; }); 結果:10,9,5,3,1 //フルーツの名前と価格。価格でソートする var fruits = [ {name:"apple",price:100}, {name:"orange",price:98}, {name:"banana",price:50}, {name:"melon",price:500}, {name:"mango",price:398} ]

    JavaScript つい忘れてしまう配列のソート方法 - Qiita
  • JavaScriptの型判定 typeof はもう使用しない!では、何を使ってますか? - Qiita

    typeof 使ってますか? typeof って世間一般的に (恐らく) あまり使ってないんじゃないかと思います。 使ってない理由としては私的には以下のような理由です。 typeof null が "object" になる。 typeof [] や {} が "object" になる。 typeof new Number(0) とかも "object" になっちゃう。 まったく、直観的にイメージする判定ができないので使っていません。(…たまに使うかな) ただ、かなり前ですが小飼弾さんという方が typeof を再定義されていたのでこれを一瞬だけ使ってみたこともあります。 javascript - typeof()を再発明する javascript - 関数名の取得とtypeof()の再々発明 (そうとう古い記事なので参考にする場合には時代背景に考慮を) 今なら Array だけは Arra

    JavaScriptの型判定 typeof はもう使用しない!では、何を使ってますか? - Qiita
    takets
    takets 2020/06/04
    isStringとかを定義する方法(typeofで複雑にしなくてすむ)
  • jQueryの基本 - $(document).ready - Qiita

    これは画像などを除いて、HTML=DOMの読み込みが終わったらfunction()の中の処理(=なにかしらの処理)を実行するという意味です。 jQuery(JavaScript)はHTMLが完全に読み込まれないまま何か処理を実行すると大抵正しく動作しません。なのでこのreadyを使うことになります。 $(function(){ //なにかしらの処理 }); jQuery(document).ready(function() { //なにかしらの処理 }); jQuery(function(){ //なにかしらの処理 });

    jQueryの基本 - $(document).ready - Qiita
    takets
    takets 2020/05/01
    [javasc
  • 複数のgitアカウントを使用する場合 - Qiita

    仕事とプライベートとで別々のGitアカウントを使用する必要が出てきた際に、プライベートと仕事での開発とで環境を切り替えがわりと面倒だったので、今後迷わないように記録する。 アカウントの新規作成(ざっくり) 1. 新しいメールアドレスでGithubアカウントを作る 2. sshキーを作る ~/.ssh/conifgファイルに下記の様なフォーマットで秘密鍵のパスを指定する。 Host github HostName github.com IdentityFile ~/.ssh/main_rsa User git Port 22 TCPKeepAlive yes IdentitiesOnly yes Host github-sub HostName github.com IdentityFile ~/.ssh/sub_rsa User git Port 22 TCPKeepAlive yes I

    複数のgitアカウントを使用する場合 - Qiita
  • 【javascript】reduce - Qiita

    reduceメソッドについてまとめます。 reduceメソッドとは 隣り合う2つの配列要素に対して左から右へ同時に関数を適用し、単一の値にする。というメソッドです。 例えば、「配列の中身を一つずつ足していって合計を求める」ということができます。 reduce() 以下、構文です。 array.reduce(callback [, initialValue]) array:対象となる配列 callback:配列内の各値に対して実行される関数、4つの引数を持つ accumulator:現在処理されている要素よりも一つ前の要素かinitialValue、もしくは一つ前の要素で実行された関数の結果 currentValue:現在処理されている要素 currentIndex:現在処理されている要素のインデックス array:対象となっている配列 initialValue:最初の実引数として渡される値

    【javascript】reduce - Qiita
    takets
    takets 2020/04/10
    reduceは集計に使うという考えでいいのかしら
  • [JavaScript] Arrayメソッド破壊・非破壊チートシート - Qiita

    引数として与えられた関数を各配列要素に対して実行し、それに合格したすべての配列要素からなる新しい配列を返す

    [JavaScript] Arrayメソッド破壊・非破壊チートシート - Qiita
  • DSAキーキャップ(キートップ)を削る - Qiita

    DSAのキーキャップを削ってみたので、そのメモです。 動機 なぜキーキャップを削るかというと、より自分の指にフィットさせたかったから。 特に僕の使っているErgodoxは通常のキーボードと違い、親指を多様するのですが、親指は他の4指と違い、指を曲げる方向が違います。そのため、親指キーだけキーキャップの角を打鍵することになり、ちょっと角が痛いなあ…と感じていました。 親指キーを指の腹で打鍵できるような、より立体的なキーボードを使うという選択肢もあるのですが、お手軽、ということでキーキャップを削ってみました。 道具 以下の2つの商品を購入しました。 SUN UP ダイヤモンドヤスリ 3組 チタンコーティング 140mm https://www.amazon.co.jp/gp/product/B00BCG23WE/ref=od_aui_detailpages00?ie=UTF8&psc=1

    DSAキーキャップ(キートップ)を削る - Qiita
  • Gitのリモートブランチを削除するまとめ

    を実行したときに、恐ろしい量のbranchリストが出てくるって人はこれが原因かもしれない。 他人が追加したリモートブランチはfetchで取ってこれるが、削除したブランチはそのまま残る。 削除されたリモートブランチをローカルに適用するにはオプションが必要。

    Gitのリモートブランチを削除するまとめ
    takets
    takets 2020/04/03
  • Gitでローカルブランチを削除する - Qiita

    # どちらも同じ $ git branch --delete [ブランチ名] $ git branch -d [ブランチ名] マージ済みのブランチのみ削除ができる マージされていないブランチを削除しようとすると下記のようなエラーがでます (error: Cannot delete the branch 'ブランチ名' which you are currently on) マージされていないブランチを削除したいときは削除コマンド2を ◆削除コマンド2

    Gitでローカルブランチを削除する - Qiita
    takets
    takets 2020/04/03
  • array_mapで配列のindexを使う - Qiita

    array_mapの第3引数にrange関数で数字の配列を作って渡すと配列自身のindexを渡しているわけではありませんが、良い感じになります。 その場合は第2引数引数と同じ要素数じゃないといけません。 <?php $array = ['Laala', 'Mirei', 'Sophie']; $withNumberArray = array_map(function ($name, $index) { return sprintf('%d. %s', $index, $name); }, $array, range(1, count($array))); var_dump($withNumberArray);

    array_mapで配列のindexを使う - Qiita
    takets
    takets 2020/04/01