タグ

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

  • 型クラスの歴史を軽くひも解く - Qiita

    現在、型クラスは Haskell のみならず、様々な言語で実装されたり似たようなものが実装されている言語機能です。 そういった風潮にも拘わらず、型クラスはどうにも大仰に捉えられがちに感じます。勿論、Haskell でも当初の仕様に比べると、最新の仕様はややこしいし、GHC の拡張や他機能と組み合わせるともっとややこしいのは事実ですが。 ということで、型クラスとはそもそもどういう motivation で発明、導入されたのか、簡単に調べてみます。 Haskell の型クラスは 1992 年の Haskell 1.2 で導入されました。1.2 のレポートに以下のような記述があるので間違ってないはず(他の言語でより早く実装されてるかもしれないけどそこまで調べてると時間なくなるので見ないふりをする。)。 Haskell is a large and complex language. design

    型クラスの歴史を軽くひも解く - Qiita
    sasashin
    sasashin 2017/10/12
  • プロジェクトの残業を50%削減したタスク管理手法を惜しみなく公開する - Qiita

    おしながき メンバーは3〜5名、協力企業は1〜2名の小規模チーム メインは某小売店の大規模ECサイト案件統括(開発は外部委託) サブで基幹連携等を担う周辺業務システム開発・運用 マネジメントが上手く回らず高残業が常態化。PM前任者異動に伴い、部下だった私にお鉢が回る 上長指示により残業削減へ そんな2〜3年前のお話です。 改善"前"のタスク運用 ※あくまで改善"前"の話です。 基Redmine + Kanbanプラグインでタスク(チケット)運用。 ナレッジ可視化の意識付けも目的の一つだったので、以下を徹底した。 作業に伴うタスク発行の徹底 進捗状況の逐次反映 そして、運用ルールの入念な教育(五十六メソッドを採用した) 当時はITSベースのタスク管理自体が社内で先進的な試みだったので、当時部下だった私もPMと協力して「できるだけ丁寧な運用」を心がけた。心がけた、のだが… おかしいな だれ

    プロジェクトの残業を50%削減したタスク管理手法を惜しみなく公開する - Qiita
  • もしかすると自分以外の人にはあんまり参考にならないかもしれないJMeterのTips - Qiita

    負荷テストツールJMeterのTipsです。 最近はgatlingとかiagoあたりが流行ってますが、情報の入手のしやすさや、豊富なプラグインによる機能面での優位性からJMeterはまだまだ使われるのではないかなぁと思っています。 ということで、自分が何度か負荷テストを行った際に学んだJMeterのTipsをまとめたいと思います。 タイトルの通り、かなり独自路線で学んだ点が多いのであんまり参考にならないかもです。 なお、ある程度は使い方を知っている方を対象にしています。 ある程度というのは、HTTPサンプラーをベースとしたスクリプトをTest Script Recorder(旧HTTP Proxy Server)を使って流した処理を元に作ったことがあって、CSV等から読んだりしたユーザごと等の可変パラメータを使ってひと通りのテストをしたことがあったりする程度です。 スクリプトはGUIで作っ

    もしかすると自分以外の人にはあんまり参考にならないかもしれないJMeterのTips - Qiita
    sasashin
    sasashin 2017/09/11
    JMeterプラグインの作り方。
  • SolrとLTRプラグイン - Qiita

    6/5にSolr勉強会 (スライド) で発表したとき、LTRプラグインがあまり知られてない気がしたので、自分が知ってることをテキトーにまとめときます。 (なお、この記事はSolr6.5.1をベースに書いてます) LTRプラグインとは LTRは「Learning To Rank」の略で、日語で言うとランク学習のこと。ランク学習の細かいところはこの辺の資料を読むといい気がします。 LTRプラグインはLucene/Solr Revolution 2015でBloombergの人が発表した内容 (スライド) が元ネタになっており、その後プラグインとしてSolrにパッチが出され、Solr6.4.0から正式にマージされました (SOLR-8542)。 LTRプラグインの目的 LTRプラグインではランク学習に依って調整されたモデルをSolrのランキングで用いることを目的としています。モデルの中身はただ

    SolrとLTRプラグイン - Qiita
    sasashin
    sasashin 2017/07/20
  • SolrとランキングとRankQuery - Qiita

    この記事は Solr Advent Calendar 2016 の 25日目です。 今回はSolrのRankQueryについてテキトーに話します。 (なお、この記事の時点でのSolrのバージョンは6.3.0です) Solrのランキングでは大きく分けて以下の3つのコンポーネントが関係します。 Query/Weight/Scorer 検索クエリからQueryParserを介して生成される部分 Query=>Weight=>Scorerの順番で生成 先に行くほど担当範囲が狭くなり、Scorerでは単一のセグメント (LeafReaderContext) Similarity/SimWeight/SimScorer クエリとドキュメントの類似度の計算方法の定義 Solr6系だとBM25が、Solr5系以前だとTFIDFがデフォルト 3つは関係はQuery/Weight/Scorerと同じ感じ Co

    SolrとランキングとRankQuery - Qiita
    sasashin
    sasashin 2017/07/20
  • なぜハイレゾは「バカげている」のか - Qiita

    2012年のことだが Xiph.org (Ogg VorbisやFLACの開発元) のクリス・モンゴメリーは 24/192 Music Downloads are Very Silly Indeed 「24bit 192kHz 音楽ダウンロードは当にバカげている」 でハイレゾをバッサリと斬った。非常にわかりやすい記事なので一度は目を通しておくのも良い。 まず記事の要点を説明しつつ、ハイレゾがなぜ全くバカげているのかをわかりやすく説明しよう。 視聴覚とも呼ばれるように、聴覚と視覚は人の認知の重大な要素である。 ここで、「百聞は一見に如かず」ともいうし聴覚と視覚の対応を取ってハイレゾのバカらしさを説明したい。 サンプリングレート 可聴周波数と可視光 まず、人間が見ることのできる可視光線は決まっている。という当然の事実を説明する。以下の図では、可視光のスペクトログラムを示している。 400TH

    なぜハイレゾは「バカげている」のか - Qiita
  • AWS SDK for Ruby V2 - Qiita

    AWS SDK for Ruby V2 が2014/09/26にリリースされた。 と思ったら2015/02/05にはResourcesインターフェイスを含めた最初の安定版がリリースされた。もうpreじゃない。 主にV1との違いについて気になったことを書き連ねてみた。 リポジトリはここ。 https://github.com/aws/aws-sdk-core-ruby APIドキュメントはここ。 http://docs.aws.amazon.com/sdkforruby/api/frames.html インストール こちらの公式ブログにバージョンの差異についてまとめられているので一読することをお勧めする。 あと、V1前提のライブラリ作者向けにV1の使用を明示することを推奨(強)している。 Upcoming Stable Release of AWS SDK for Ruby - Versio

    AWS SDK for Ruby V2 - Qiita
    sasashin
    sasashin 2017/05/31
  • XYZ色空間に迫る(1) - Qiita

    ここで、$ v_a $ $ v_b $はそれぞれ物質の中での波の速度を示し、$ \frac { v_a }{ v_b } $ を屈折率(refraction index)とも呼びます 少し変形してやれば、 \frac { \sin { \theta _{ a } } }{ \sin { \theta _{ b } } } =\frac { v_{ a } }{ v_{ b } } \\ \sin { \theta _{ a } } =\frac { v_{ a } }{ v_{ b } } \sin { \theta _{ b } } \\ \frac { v_{ b } }{ v_{ a } } \sin { \theta _{ a } } =\sin { \theta _{ b } } \\ \theta _{ b }=\arcsin { \frac { v_{ b } }{ v_{

    XYZ色空間に迫る(1) - Qiita
    sasashin
    sasashin 2017/05/31
  • 不思議の国のSE用語 - Qiita

    不思議の国 SEが住んでいるところ、そこは不思議な不思議なお国柄です。 新たな国民として移住してきた人、特産物のシステムを買いに来た人など色々な人がこの国には存在します。 しかしこの国で話される言葉は 独特 です。 ぱっと聞いただけでは意味がわからなかったり、よく似た表現であっても微妙にニュアンスが違っていたり。 似たような表現を使い分けるその裏に、その人の意図や省略された文脈が隠されていたりもします。 どこの国でもコミュニケーションを間違うと非常に厄介ですが、そんなことにならぬよう、 お国言葉らしきもの をまとめてみました。 SEを代表例として、このお国言葉を話す人も、話される人も、改めて言葉の意味合いを見つめなおしてみると新たな気付きが得られるかもしれません。 なお、そんなことから 「絶対にSEしか使わない用語」を集めたわけではない のでその点ご了承くださいませ。 他言語版 @micr

    不思議の国のSE用語 - Qiita
    sasashin
    sasashin 2017/04/07
    「動詞」4つ読んだだけですでに面白すぎる…。
  • "nc -z"の代替コマンド - Qiita

    CentOS7からncがncatのエイリアスになってしまったようで、「-z」オプションが忽然と消えてしまっています。 様々な代替コマンド(スクリプト)が提案されていますが、下記のものが一番スッキリしているように思います。「$?」でステータスをとって分岐すればポートの死活監視に利用可能です。

    "nc -z"の代替コマンド - Qiita
    sasashin
    sasashin 2017/03/31
  • nc コマンド 使い方メモ - Qiita

    はじめに nc コマンドを使いこなせれば、ネットワークに関するおおよその調査ができると教わったので、使い方をメモしてみます。 そもそものきっかけは、dockerの公式Imageから作ったUbuntuコンテナが、デフォルトだとwgetもtelnetもインストールできなかったからです。 nc はデフォルトで入っていたので、これを機にまとめることにしました。 おおよそ Wikipedia と man を参考にして書いています。 使用例は http://www.computerhope.com/unix/nc.htm も参考になりそうです。 簡易まとめ表 コマンド 用途

    nc コマンド 使い方メモ - Qiita
    sasashin
    sasashin 2017/03/31
  • Bash on Ubuntu on WindowsをUbuntu 16.04にアップグレードしてみる - Qiita

    はじめに 昨日紹介した記事で導入したUbuntuは14.04でした。 これを無理矢理16.04にアップグレードしてみようという試みです。 人柱気質のある人以外には非常におすすめしないですが、まぁ一応できますよ程度に。 2016/12/18追記 Windows 10 Insider Preview 14986においてデフォルトでUbuntu 16.04.1がインストールされるようになりました。 来春予定されている大型アップデートにも引き継がれる見通しです。 アップグレード手順 とりあえずいつも通りのアップグレードコマンドを実行します。 クラッシュ防止のためのオプションが色々付いていますが気にしない。 途中でy/Nで答えさせるようなプロンプトが出ますが、これに答えるとフリーズします。 とりあえずyと答えてから、Ctrl-Cでアップグレードの実行を止めます。 Configuration file

    Bash on Ubuntu on WindowsをUbuntu 16.04にアップグレードしてみる - Qiita
    sasashin
    sasashin 2017/03/25
  • シェルの変数展開 - Qiita

    こちらも blog からの転載。 シェルスクリプトを作成する際にシェル変数に値を代入したり参照したりする事は頻繁に発生するが、 シェル変数の展開にも便利な使い方がある。 basename (1) や dirname (1) と同様な動作がシェルの組込みとして利用できるので資源の節約にもつながり、 上手に利用すると可読性の高いスクリプトが作成できる。 機能一覧 記述 機能

    シェルの変数展開 - Qiita
    sasashin
    sasashin 2017/01/27
  • Windows Subsystem for Linux + Cmderで最強のCLI環境を作る - Qiita

    Windows 10 Anniversary Updateが来ましたね! なんといってもこのバージョンからWindowsでBashが動くWindows Subsystem for Linux (WSL) が搭載されました。 ただ、Windowsのターミナルエミュレータは相変わらず微妙です。(※ Windows10からはウインドウサイズが簡単に帰れるという劇的な進化がありましたが!) そこで、今回はこのWSLとConEmuの発展版であるターミナルエミュレータのCmderを組合わせてみました。 Anniversary Updateのアップデート まずは、Anniversary Updateの適用。順次適用されていますが、まだの人は「WIndows10の更新履歴」よりダウンロードして適用してください。 Windows Subsystem for Linuxの有効化 WSLは下記の手順で有効にでき

    Windows Subsystem for Linux + Cmderで最強のCLI環境を作る - Qiita
    sasashin
    sasashin 2017/01/18
  • Cygwin絶対殺すマン ~物理のオタクがWindows Subsystem for Linuxで数値計算できるようになるまで~

    Cygwin絶対殺すマン ~物理のオタクWindows Subsystem for Linuxで数値計算できるようになるまで~ 2017/10/19 Fall Creators Update来ましたね!WSLは導入方法が大きく変わったので注意してください。 ここに書いてあるのは古い情報です。 筆者に余裕ができ次第更新します。 2017/08/17 Creators UpdateでWindows側のアプリが呼べるようになったとか結構変更が入ったのですが、 Insider Programを見てる感じFall Creators UpdateでWSL自体が変わりそうなのでそのタイミングで書き換えます。 Xmingの他にVcXsrvも紹介しておきます(昔からXmingばかり使っていたんですが、最近はVcXsrvの方が性能が良いみたいですね) 2016/10/25 久しぶりに見たら結構ストックされて

    Cygwin絶対殺すマン ~物理のオタクがWindows Subsystem for Linuxで数値計算できるようになるまで~
    sasashin
    sasashin 2017/01/17
  • AWSのMFAを解除するためにアメリカ大使館に足を運んだ話 - Qiita

    Help us understand the problem. What is going on with this article? TL;DR AWSの二段階認証(Multi-Factor Authentication)を利用しているとき、認証端末を無くすとAWSのサポートが必要になる 電話番号での認証ができない場合には人確認書類を提出して二段階認証を解除する必要がある 人確認書類には公証人のサインが必要で、アメリカ大使館でサインをしてもらうことができる AWSアカウントにはMFAを設定しよう、というプラクティス AWSを利用しているアカウントが不正利用され、高額な請求を受けてしまうケースが話題となり、個人であってもルートアカウントでMFAを設定することが当たり前な世の中になりました。 初心者がAWSでミスって不正利用されて$6,000請求、泣きそうになったお話。 - Qiita

    AWSのMFAを解除するためにアメリカ大使館に足を運んだ話 - Qiita
  • JavaScript初級者のためのコーディングガイド - Qiita

    JavaScriptは大変難しい言語です。Rubyの難易度を2、Cの難易度を5、C++の難易度を8にすると、JavaScriptの難易度は12ぐらいあると思います。このコーディングガイドはそんなJavaScriptの深みに嵌まらないようにするためのJavaScriptの書き方を規定したものです。初級者1のための物ですので、わかってやっている人に好きにやってください。 このコーディングガイドは絶対に従わなければならないものではありません。私は一切強制はしませんし、初級者が従わなければならないという義務もありません。採用するしないはみなさんの自由です。 禁止編 JavaScriptには安易に使用してはいけない機能があります。下記の機能は、それぞれの機能を使っても良い、または、使うべきであるという理由を説明できない限り、使用してはいけません。 ==、!= ==と!=を使用してはいけません。代わり

    JavaScript初級者のためのコーディングガイド - Qiita
    sasashin
    sasashin 2017/01/03
    q「IEは捨ててください。考えるだけ無駄です」とありますが、これ読んだ後だと「JavaScriptはすててくださいかんがえるだけむだです」という気分になりました。
  • React、Angularになじめなかった僕に手を差し伸べてくれたVue.js - Qiita

    ギークハウス Advent Calendar 2016の12月22日の記事です。 他の方とは、全然違う雰囲気になってしまいましたが、読んでいただけると幸いです。 なぜVue.js?? 普段の仕事では、Ruby/Railsなので、フロントエンド周りは、jQueryにCoffeeScriptで片手間感覚... ↓ しかし最近のフロントエンド界隈は、良くも悪くも盛り上がっていて楽しそうだなあと思う日々。 ↓ いろいろ、ググって調べてみると、ES6、Babel、Reactふむふむ...🤔 ん?? Webpack? JSX?? Flux?? Redux?? 「落ち着け!とりあえず日語でOK」状態。。正にこの記事で書かれている状態そのものでした。 ↓ Reactとかでイケてるフロントエンド開発をちょっと試したいと思っても、BabelやWebpackの設定など環境構築でつまづき、肝心のアプリケーショ

    React、Angularになじめなかった僕に手を差し伸べてくれたVue.js - Qiita
    sasashin
    sasashin 2016/12/31
    引用の要件をガン無視して画像転載するっていう著作権侵害を、ITエンジニアが平然とやるようになったのって何時頃からなんだろう。この記事に限ったことでもないけど。
  • サーバーのメモリが少しずつ圧迫される原因と対策を調べてみた - Qiita

    サーバーのメモリが slab_cache で占有される サーバーのメモリが数日で slab_cache に占有されるので原因と対策を調査した。 メモリの使用状況の調査 meminfo meminfo を見ると Slab のメモリ使用量が確認できる。 SReclaimable と SUnreclaim を足すと Slab になる。 $ cat /proc/meminfo | grep "Slab\|claim" Slab: 1654520 kB SReclaimable: 1631304 kB SUnreclaim: 23216 kB slabtop slabtop コマンドをたたくと top コマンドのように Slab の内訳が表示される。 dentry が最も多いようだ。 --once は1回出力で終了するオプション。 --sort=c はキャッシュサイズ順にソートするオプション。 sl

    サーバーのメモリが少しずつ圧迫される原因と対策を調べてみた - Qiita
    sasashin
    sasashin 2016/12/22
  • 府大生が趣味で世界一の認識精度を持つニューラルネットワークを開発してしまった論文を読んだ - Qiita

    Deep Learning Advent Calendar 2016の20日目の記事です。 ConvNet歴史とResNet亜種、ベストプラクティスに関連スライドがあります(追記) 背景 府大生が趣味で世界一の認識精度を持つニューラルネットワークを開発してしまったようです。 M2の学生が趣味でやっていたCIFAR10とCIFAR100の認識タスクで,現時点での世界最高性能の結果を出したそうだ…趣味でっていうのが…https://t.co/HKFLXTMbzx — ニーシェス (@lachesis1120) 2016年12月7日 府大のプレスリリース 一般物体認識分野で、府大生が世界一の認識精度を持つニューラルネットワークを開発 黄瀬先生の研究室の学生さんだそうです。凄いですね! ちょうどResNet系に興味があったので、読んでみます。この論文を理解するには、ResNet, (Wide

    府大生が趣味で世界一の認識精度を持つニューラルネットワークを開発してしまった論文を読んだ - Qiita