タグ

ブックマーク / kiririmode.hatenablog.jp (15)

  • 特定ユーザのGithub上のリポジトリをごそっとローカルにcloneする - 理系学生日記

    Github 上にある特定 user のリポジトリをぜんぶローカルに持ってきたいなぁというときのワンライナー。 nablarch のところは適当なユーザに書き換えれば OK。ghq ではなく単に git を使いたければ、ghq get を git clone に変えれば良いです。 $ curl 'https://api.github.com/users/nablarch/repos?per_page=100' | jq -r '.[]["clone_url"]' | xargs -n1 -P4 ghq get Github API Github には API があって、参照だけなら HTTP リクエストを送るだけで情報を取得できるようになってます。特定ユーザのリポジトリ一覧を得る API はこちら。 Repositories - GitHub Docs デフォルトでは 30 件しか取得でき

    特定ユーザのGithub上のリポジトリをごそっとローカルにcloneする - 理系学生日記
    key_amb
    key_amb 2017/02/18
    GitHub APIを利用したシェルのワンライナー
  • PostgreSQLのサンプルデータを簡単につくる - 理系学生日記

    PostgreSQL で遊ぶときのテストデータを簡単につくりましょうという話です。 PostgreSQL にはDocker 公式のイメージがあるので、それを立ち上げればまずは PostgreSQL 環境はできあがりです。 $ docker run --name postgres -d -p 5432:5432 postgres:9.6.1 あとはデータを作成するってところですが、以下からゲットすれば良いかしらと思いました。 PostgreSQL Sample Database via kwout ここから、dvdrental.zip をダウンロードして解凍すると、dvdrental.tar ができます。 これはダンプデータになっているので、pg_restore を使うことでリストアできます。 というわけで、データベースを作成して、 $ psql -h 127.0.0.1 -U postgr

    PostgreSQLのサンプルデータを簡単につくる - 理系学生日記
    key_amb
    key_amb 2017/01/15
  • PostgreSQLの論理バックアップ時に使用するpg_dumpの基本的な使い方 - 理系学生日記

    pd_dump は、PostgreSQL のデータバックアップを取得するためのコマンドラインツールです。 どういう形でバックアップするのかは、まずは実例を見て頂けるとわかりやすい。 $ pg_dump -h 127.0.0.1 -U postgres dvdrental | less -- -- PostgreSQL database dump -- -- Dumped from database version 9.6.1 -- Dumped by pg_dump version 9.6.1 SET statement_timeout = 0; SET lock_timeout = 0; (略) -- -- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: -- CREATE EXTENSION IF NOT EXISTS plpgsql

    PostgreSQLの論理バックアップ時に使用するpg_dumpの基本的な使い方 - 理系学生日記
    key_amb
    key_amb 2017/01/15
  • 「人喰いの大鷲トリコ」に感じた生きている感覚 - 理系学生日記

    ここまで感情移入ができたゲームはこれまでありませんでした。もう現実と変わらないです。当に生きてる。 The Last Guardian – CG Cinematic Trailer | PS4 人喰いの大鷲トリコ 人喰いの大鷲トリコは、ICO、ワンダと巨像に続く、上田ワールド全開の作品です。E3 2009 に発表されて早 7 年、プラットフォームを PS3 から PS4 に移し、もう開発は中止されたんじゃないかという噂を乗り越え、ようやく発売になりました。 7年間お待たせしました。『人喰いの大鷲トリコ』が完成しました。12月6日にぜひお楽しみください。— Shuhei Yoshida (@yosp) 2016年10月22日 「ICO」と同様に今作も男の子が主人公で、壮年になった主人公が過去の冒険を振り返る形で物語は始まります。自分の知らぬまま連れてこられた神秘的な雰囲気の廃墟から、主人公

    「人喰いの大鷲トリコ」に感じた生きている感覚 - 理系学生日記
    key_amb
    key_amb 2017/01/15
    ちょっとやってみたくなった。
  • 失敗の本質 - 理系学生日記

    2 年くらい前に良いだと紹介されてからずっと読めていなかった「失敗の質」、手応えのある骨太のでもあり、なかなか進みませんでしたが、この年末年始でようやく読了することができました。 失敗の質―日軍の組織論的研究 (中公文庫 と 18-1) 作者:良一, 戸部,寺 義也,鎌田 伸一,杉之尾 孝生,村井 友秀,野中 郁次郎中央公論新社Amazon 失敗の質は、第二次世界大戦における日の戦い方、より正確にはその負け方、敗因を分析し、現代の組織にとっての教訓・反面教師として活用することを目的とした「研究書」です。 こののテーマははしがきの中で、以下のように述べられているので、そちらを引用した方が分かりやすいかもしれません。 たとえ日の大東亜戦争史を社会科学的に見直してその敗北の実体を明らかにすれば、それは敗戦という悲惨な経験のうえに築かれた平和と繁栄を享受してきたわれわれの世代に

    失敗の本質 - 理系学生日記
    key_amb
    key_amb 2017/01/10
    興味深い本
  • findコマンドにおける -newer オプション - 理系学生日記

    みんな大好き find コマンド、-newer オプションというのをはじめて知った。find コマンド、マニュアルを読む度に発見ある。 -newer オプションはファイル名を引数に取って、そのファイルよりも modification time が新しいと true を返す述語になってる。 たとえば、以下のようなバックアップスクリプトを書けば、雑なバックアップが実現できることになる。 $ find /path -newer /var/backup/backup.timestamp -exec some-backup-command {} \; $ touch /var/backup/backup.timestamp find コマンド、ファイルの時刻に関する述語が多いんだけど、時間の粒度が大きくて不便だから、そういうときに使うと良いのかなと思ってた。 というのも、ファイルの変更時刻とかは t

    findコマンドにおける -newer オプション - 理系学生日記
    key_amb
    key_amb 2017/01/07
  • Gitのdiffで差分の場所をメソッド/関数名で表示させる - 理系学生日記

    git などで diff を表示するときに、「何行目のどのあたりに差分があるのか」というのを示す行があります。 これ、hunk header と呼ばれるものなんですが、git だとここに、「どのメソッドに属する差分なのか」「どのタグに属する差分なのか」といった情報を付与することができます。 例えば、デフォルトのまま java ファイルを diff にかけると、クラス名が表示されますが、 @@ -125,6 +125,7 @@ public final class Main { ちょっと設定を変えると、メソッド名の粒度に変更できたりします。Github でもこんなかんじですね。 @@ -125,6 +125,7 @@ private static void startStubby4jUsingCommandLineArgs() { 実現方法としては、git の attribute の使用。

    Gitのdiffで差分の場所をメソッド/関数名で表示させる - 理系学生日記
    key_amb
    key_amb 2016/12/24
  • プラグインインストール済のJenkins Dockerイメージを作成する - 理系学生日記

    Jenkins には Docker 公式のイメージ があったりして、セットアップが非常に容易になっています。 で、いざ docker run して立ち上げてみたら、いきなり Plugin をインストールしろやみたいな画面になるし、仕方ないなぁお勧めプラグインでもインストールしてやるかみたいな感じでボタン押したら、大量のプラグインのインストールが走ってずいぶん時間待たされることになりました。 こんなのは全然軽量じゃない、もっと迅速に Jenkins と遊びたいんや!! というわけで、お勧めプラグインをインストール済のイメージを作りましょう。 お勧めプラグイン一覧の作成 お勧めプラグインをインストールしておくためにはお勧めプラグイン一覧が必要なわけですが、これは Jenkins の Jenkins Script Console で以下のような Groovy スクリプトを書いて実行すれば良いです

    プラグインインストール済のJenkins Dockerイメージを作成する - 理系学生日記
    key_amb
    key_amb 2016/12/07
  • PoEAA: Row Data Gateway - 理系学生日記

    Row Data Gateway は、DB 上の 1 レコードに対する Gateway として働くオブジェクトです。 1 レコードに対する DB アクセスをカプセル化して、他のレイヤに対して DB アクセスを隠蔽します。 先日の Table Data Gateway がテーブルに対する Gateway だったのとは粒度が異なる形です。 Table Data Gateway もそうですが、DB アクセスが他のレイヤから隠蔽されるため、この Gateway を差し替えることで他のレイヤのテストを DB 非依存にできる、DBMS ロックインされにくくなる、といったメリットがあります。 DB アクセスロジックを含む反面、業務ロジックは含まれません。それを含んだ Row Data Gateway は、もはや Row Data Gateway ではなく、Active Record と呼ばれるパターンに

    PoEAA: Row Data Gateway - 理系学生日記
    key_amb
    key_amb 2016/11/20
    ORMっぽい話
  • Bliskとは何であり、何ではないのか - 理系学生日記

    Blisk ね、Blisk。 http://nelog.jp/blisk 最近ずっとレスポンシブウェブデザインのサイトを作っていたもので、そのテストをどうやったら手早く効率的にできるものかなぁと思っていたときに、まさにこの Blisk というヤツが登場しました。 コレいいなー、すごくいいなーと思って使っていたんですが、どうも思っていたものと違ったので、どこがどう違ったのかを簡単にまとめておこうと思います。 なお、このエントリは、社内のノウハウとして展開する予定の原稿の草稿になります。 Blisk Blisk というのは、レスポンシブウェブデザイン(RWD)のサイトをクロスデバイスで効率的にテストできるように作られた、開発者用ブラウザです。 主な特徴としては、以下のようなものがあります。 予め、確認用のスマートフォンやタブレットの設定が用意されている PC 用デザインとモバイル用デザインを

    Bliskとは何であり、何ではないのか - 理系学生日記
    key_amb
    key_amb 2016/11/18
    あれ、これ最近見て便利そうだと思ったやつだ。有料化されたのか
  • PoEAA: Service Layer - 理系学生日記

    最近、読みかけで止まっていた、Patterns of Enterprise Application Architecture (いわゆる PoEAA) を再度読みはじめました。 Patterns of Enterprise Application Architecture (Addison-Wesley Signature Series (Fowler)) (English Edition) 作者:Martin, FowlerAddison-Wesley ProfessionalAmazon システムというものをゼロから設計するためには、これまで積み重ねられてきた知見を知っておかないと立ち行かないなぁと思うことが多くなったのが一番の理由です。 この手のは、自分の理解を文章にアウトプットしておかないとただ「読んだ」という状態にしかならないので、こういうエントリにして自分の言葉でできるだけま

    PoEAA: Service Layer - 理系学生日記
    key_amb
    key_amb 2016/11/12
  • ファイルを直接開くのを禁止してセキュリティ向上 (X-Download-Options) - 理系学生日記

    MIME-sniffing IE には、セキュリティを劣化させるとして悪名高い MIME-sniffing という機能があって、サーバがどんなにこのファイルはテキストファイルだよ!! (content-type: text/plain) とブラウザに教えても、そのテキストファイルに HTML の要素があると HTML と解釈してしまう場合があったりします。 そして、これを防ぐには HTTP のレスポンスヘッダに X-Content-Type-Options: nosniff を付けることが定石とされています。このヘッダを加えると、IE は MIME-sniffping を実施しなくなります。 MIME-Handling 上述の MIME-sniffing は良く知られた振舞いだと思うんですが、今日ぼくが知ったのは「ブラウザで直接ファイルを開かないようにすることで、セキュリティを向上させる」

    ファイルを直接開くのを禁止してセキュリティ向上 (X-Download-Options) - 理系学生日記
    key_amb
    key_amb 2016/11/07
  • Android標準ブラウザでダウンロードに失敗するときはBasic認証とともに証明書エラーを疑え - 理系学生日記

    Android には標準ブラウザという謎のブラウザが搭載されているケースがあります。 このブラウザの位置付けというのがホントに謎で、おい一体誰がどうやって作っているんだ教えてくれたのむ。 そんでこの標準ブラウザで検証してたら、PDF ファイルがダウンロードできないという謎の事象が発生してハマった。 Google 先生に恭しくお伺いを立てると、 Android標準ブラウザでベーシック認証のページからはPDFはダウンロードできない | miyasaka.info AndroidDownloadManager にBasic認証などの認証情報が受け継がれずファイル保存が失敗する - 君たちは永遠にそいつらより若い AndroidのブラウザはBasic認証下ではアップロードも失敗する – MEMOUK などというように、大量の謎挙動がヒットする。 ブラウザとダウンローダが別プロセスで、認証情報が引き

    Android標準ブラウザでダウンロードに失敗するときはBasic認証とともに証明書エラーを疑え - 理系学生日記
    key_amb
    key_amb 2016/11/06
  • zshでPATHがおかしくなる問題の解決編 - 理系学生日記

    Mac の zsh で PATH がおかしくなる問題がありましたが、解決に至ったのでご報告させて頂きます。 問題 問題としては、 zsh が起動した際に /etc/zprofile が読み込まれる /etc/zprofile が path_helper を実行する path_helper が /etc/paths、/etc/paths.d を読み込んで PATH 環境変数を設定する ということで、勝手に(というか、これが通常のシェルの動作ではありますが) /etc/zprofile が読み込まれていたことが原因といえば原因です。 解決策 実は、3.1.6 あたりから no_global_rcs というオプションが追加されていて、これを設定すると /etc/z* のファイルが読み込まれなくなることになる。 New features in zsh version 3.1.6 (beta ver

    zshでPATHがおかしくなる問題の解決編 - 理系学生日記
    key_amb
    key_amb 2016/11/06
  • BashのGlobに関わるオプション - 理系学生日記

    前に Bash の Glob に関するエントリを書きました。 他にも Glob には様々な応用があります。 あまり知られていないような使い方も多いので、それらをご紹介していくコーナーです。 extglob Glob で正規表現と not 条件を表現できるようになる。 詳細については、 BashのGlobは積極的に利用しましょう - 理系学生日記 に書きました。 nullglob 通常、Glob を指定したもののそれが合致するファイル/ディレクトリが存在しない場合、Bash は指定した Glob をファイル名として解釈します。 何を言っているかというと、これを見れば分かって頂けるでしょうか。 # *.hoge というファイルが存在しないので、Bash は '*.hoge' というファイル名をそのままコマンドに渡す $ ls *.hoge ls: cannot access '*.hoge':

    BashのGlobに関わるオプション - 理系学生日記
    key_amb
    key_amb 2016/08/12
  • 1