タグ

2018年12月17日のブックマーク (9件)

  • HaskellとstackとDockerと - Qiita

    はーいほーアッキーだよっ アッキーは最近今更ながらDockerを使い始めていろいろお勉強してるところですHaskellで書かれたアプリケーションをビルドするのにはよくStackが使われますが、Docker上でStackを使いつつビルドして、実行バイナリをいい感じにDockerイメージにできないかなー、と頑張ってみた次第です Stack自体にDocker連携機能あるじゃん? はい、あります。Dockerでビルドする方法がここに、Dockerの実行イメージを作る方法がここにそれぞれ書いてあります。仕組みとしては ビルド用に~/.stackや/path/to/project/.stack-workなどをマウントしたDockerコンテナを立ち上げstack buildする 実行バイナリをコピーしたDockerイメージを作る ってな感じです。ただこれには罠とイケてない点がありまして…… 罠: デフォ

    HaskellとstackとDockerと - Qiita
  • ClojureScript で触れる Ethereum DApp 開発の世界 - Qiita

    この記事は Clojure Advent Calendar 2018 15日目の記事です。 ClojureScript による DApp 開発を紹介します。 具体的には Ethereum DApp のフロントエンドを ClojureScript で開発する方法についての解説です。スマートコントラクト自体の開発についてはあまり詳細には解説しません。想定読者はブロックチェーンに興味のある Clojure エンジニア、もしくは DApp フロントエンド開発に疲れた人です。 DApp とは DApp/DApps: Decentralized Application とは、ブロックチェーンをプラットフォームとして動作する分散型アプリケーションのことです。仮想通貨で知られるブロックチェーンを基盤とすることで、分散性、耐改竄性、監査性などの強みを持ち、安全に「価値」の個人間取引を行うアプリケーションが開

    ClojureScript で触れる Ethereum DApp 開発の世界 - Qiita
  • RankNTypes と型レベルリストと extensible - Qiita

    さて、今回の話はこの showArgs をより一般化したい。 つまり、 引数の型が全て異なっても動いて欲しい show をリストの中に埋め込みたく無い 1つの関数定義で任意長の引数を扱えるようにしたい ということです。 この例を通して RankNTypes, 型レベルリスト, extensible package への道を作りたいと思います。 道のり1. タプル まず、リストは同じ型の値しかリストに入れることができないので、複数の異なる型の値を1つの値として扱うことができるタプルを利用してみましょう。

    RankNTypes と型レベルリストと extensible - Qiita
  • Monoid と DerivingVia - Qiita

    instance Monoid b => Monoid (a -> b) where mempty = ... (<>) = ... すぐに思いつかない人はちょっと考えたらわかるので、頭の体操だと思って考えてみましょう! 今回は、この関数のモノイドの面白さについて書いてみたいと思います。モノイドといいつつ半群の話も含んでおります。 ヒント Monoid 型クラス まずは Monoid 型クラスの定義について簡単に復習しておきましょう。

    Monoid と DerivingVia - Qiita
  • Clojure で Clean Architecture - Qiita

    Clean Architecture in Clojure is a joy. — Uncle Bob Martin (@unclebobmartin) 2016年6月26日 と言うことで、Clojure で Clean Architecture を意識した簡単な TODO アプリを作成してみたいと思います。 最終的なソースはこちら Clean Architecture とは? 他のアーキテクチャ1と同様、関心事の分離を目的としたアーキテクチャです。クリーンアーキテクチャでよく見かける以下の図は、この関心事の分離を実現するために外側から内側へ依存性のルールを持っていることを表しています。4つの同心円に目が行きがちですが、4つの同心円に特に縛りはなく、必要に応じで増減させて問題ありません。大事な点は、依存性のルールに従い、円の外側にあるフレームワークやDBといった詳細が、円の内側にあるビジネ

    Clojure で Clean Architecture - Qiita
    igrep
    igrep 2018/12/17
    "オブジェクト指向言語によるクリーンアーキテクチャだとクラスでエンティティを定義するところですが、特にクラスにする必要はないので spec で定義しておきます。" なるほど!Clojureらしい!
  • GitLab Runner の autoscaling - エムスリーテックブログ

    12月1日は映画の日で1,000円で映画が見れるということだったので話題の「ボヘミアン・ラプソディ」を見てきました。おもしろかったですまる。近頃、映画やドラマを見ては泣いている SRE の寺岡です。 この投稿はエムスリーアドベントカレンダー2日目の記事です。また、 GitLab Advent Calendar 2018 の14日目の記事でもあります。そして14日は私の誕生日ですね、ありがとうございます。 それでは題へ 現在のエムスリーの GitLab Runner の状況 エムスリーではソースコード管理に GitLab を使用しており GitLab Runner も CI に使っています。この Runner を EC2 の spotfleet で毎朝起動させるという記事を以前 Qiita に投稿しています。平日の朝、固定されて数の Runner が EC2 で起動して、指定した時間だけ稼

    GitLab Runner の autoscaling - エムスリーテックブログ
    igrep
    igrep 2018/12/17
  • 昼寝は4本足の枕で、おススメの睡眠グッズ5選 | 日経 xTECH(クロステック)

    寝不足が蓄積された状態を指す「睡眠負債」が社会的問題になっている。寝付きを良くし、快適な眠りを得られる睡眠グッズはないのか。エンジニアに向く睡眠グッズを、東急ハンズの寝具売り場で働くエキスパートに選んでもらった。 日経 xTECHが実施した睡眠に関する独自調査では、エンジニアが深刻な寝不足状態にあることが判明した。睡眠を少しでも改善できる便利なグッズがあれば、迷わず使ってみたいものだ。そこで、東急ハンズ新宿店で寝具売り場を担当する、睡眠グッズのエキスパートである安土知宏氏に、エンジニアにお薦めの商品を紹介してもらった。 昼寝をするエンジニアに打ってつけの枕 1つめは昼寝用の枕である。今回の調査では、エンジニアの約4割が「週に1回以上は昼寝をしている」という、あまり知られていない興味深い結果が出た。昼休みなどを利用して、オフィスやカフェで15~20分程度の短い仮眠を取ることを最近、「パワーナ

    昼寝は4本足の枕で、おススメの睡眠グッズ5選 | 日経 xTECH(クロステック)
    igrep
    igrep 2018/12/17
    “「足」のすき間から、枕の下に両手を入れられる。その状態で枕の上に頭を乗せると、ちょうどデスクにうつ伏せになって仮眠する姿勢になれる。これなら腕も頭も疲れにくい。 ”なるほど!
  • あの電波塔反社会学講座ブログ

    こんにちは、パオロ・マッツァリーノです。先日、虎ノ門方面に行きまして、久々に東京タワーをわりと間近で見ました。それで、しばらく前に読んだ『昭和ノスタルジアとは何か』(日高勝之・世界思想社)というを思い出しました。私が読んだのが今年というだけで、が出たのは2014年です。 このによると、東京タワーは完成するまで世間からほとんど注目されてなかったようなんです。近年のスカイツリーのときみたいな「完成まであと何日」的なカウントダウンイベントの類もなかったとのことですし。まあ、地元の商店街だけは集客効果を期待して盛り上がってたので、内輪で小規模にやってたのかもしれませんけど。 当時の新聞を確認すると、なるほどたしかに東京タワーに関する記事の少なさに驚きます。スカイツリーという愛称は開業の何年も前に決まってたのに、東京タワーという愛称は、開業が迫った2か月くらい前にようやく決まってます。愛称が決

    igrep
    igrep 2018/12/17
    “東京タワーという愛称は、開業が迫った2か月くらい前にようやく決まってます。愛称が決まるまでは、「あの電波塔」などと報じられていて、まるで「例のプール」みたいな扱いでした”
  • アカウント削除機能に意味はない - Qiita

    Webサービスでアカウント削除機能を要求するユーザの話はよく聞くわけですが、これには残念ながら全く意味が無いと、1Webエンジニアであるぼくは思っているのですが、その理由をだらだらと書いてみようと思います。非エンジニアでも分かるように書いたつもりですが、作者が特にそういう能力に秀でているわけでもないので難しいかもしれません。 技術的な問題 現代の多くのWebサービスはデータの保存をRDB(SQL)に依存しています。これには色々特徴があるわけですが、実際の実装を想定して説明していきましょう。 ユーザがいます。ここではUserというTableとしましょう。RDBで定義したTableは同じ形式の物を沢山保存することができます。なので、作られた沢山のUserは1箇所のTableに纏めて配置されます。 Twitterみたいなサービスを想像すると、ここでTweetできる必要がありますね。TweetはT

    アカウント削除機能に意味はない - Qiita
    igrep
    igrep 2018/12/17
    ブコメ読んでいて思ったんだけど、そう言えばDatomicではどうなるんだろう。そう言う個人情報が絡んだmaster dataは入れちゃいけないんだろうか。