$shibayu36->blog;

株式会社はてなでエンジニアをしています。プログラミングや読書のことなどについて書いています。

【Scala】Emacsで現在編集している部分のテストを実行する

Scalaのテストを実行する時、sbtを使うと、特定のテストクラスだけの実行や、特定のテストケースだけの実行ができる。やり方はScalatest: 特定のテストケースだけ実行したい - Qiita で紹介されているとおり。ただ、コードはテキストエディタで書いているの…

Scalaスケーラブルプログラミングを再読した

最近ScalaやPlay Frameworkを触っていて、implicitを多用したコードや関数リテラルを使ったDSL的なコードなどが読めずに困ってきたので、もう一度Scalaスケーラブルプログラミングを読んだ。Scalaスケーラブルプログラミング第3版作者: Martin Odersky,Lex S…

ターミナルのsbtで起動したプログラムをIntelliJのデバッガでデバッグする

最終的に結構簡単な設定で出来たのだけど、いろんな情報に右往左往させられてしまったので、自分用にメモをとっておく。 やりたいこと Scalaで開発する時、基本的にターミナルでsbtを起動して、runとかtestとかを実行している。その時、挙動を動かしながら確…

Scalaの開発環境をセットアップした

Scalaを書くことになったので、Scalaの開発環境をセットアップした。Emacsで編集できるように scala-modeを使って編集 ensimeを導入し、できる限り動作が重くならないように tagsファイルを使って定義ジャンプをできるように IntelliJとEmacsを行き来できる…

Scalaの関数リテラルの学習メモ

Scalaスケーラブルプログラミングを読んでいて、関数リテラルについて気になったことがあったので、いろいろ試したことをメモしておく。Scalaスケーラブルプログラミング第3版作者: Martin Odersky,Lex Spoon,Bill Venners,羽生田栄一,水島宏太,長尾高弘出版…

最近読んだおすすめ漫画

最近読んだ漫画で、一巻を読んだだけですごく面白いと思ったおすすめ漫画です。 キングダム 面白い面白いと言われていたけど、40巻以上あったので買うのを少し躊躇していた。けど1巻買ったと思ったら全巻買ってしまっていた。戦いの表現がうまくて毎回胸躍る…

Emacsで開いているファイルの現在行をIntelliJで開く

http://www.shigemk2.com/entry/from_emacs_to_inteliJ を参考に、EmacsからIntelliJへ、IntelliJからEmacsへのジャンプが出来るようにしたのだが、EmacsからIntelliJに飛ぶ時に現在の行位置に飛んでくれなかったので改良した。以下のようなコマンドをelisp…

妻が「私、痔主になりました」という本を出版しました

妻が「ぢ 私、痔主になりました」という本を出版しました。ぢ 私、痔主になりました作者: てらいまき出版社/メーカー: 河出書房新社発売日: 2017/07/14メディア: Kindle版この商品を含むブログを見るこの本は著者が自分の痔の体験について、コメディっぽい作…

Coursera Machine Learning Week3の学習

Coursera Machine Learning Week1を受けた & メモ - $shibayu36->blog; Coursera Machine Learning Week2の学習 - $shibayu36->blog; に引き続き、Coursera Machine Learning Week3を受講した。 Week3の講義を受けると次のことを学ぶことができた。 分類問題…

最近は憂鬱だったけど、いつもこの時期は憂鬱っぽかった

最近また仕事もプライベートもなかなかやる気が出ないと思っていたら、いつもの時期という感じだった。面白い。blog.shibayu36.org

雑に書いたブログ記事が問題を起こさないようにする工夫

ちょっとしたことでも雑にブログに書いておくと良いことが起こる - $shibayu36->blog; で、ちょっとしたことでも雑にブログに書いておくと良いことが起こるよということを書いた。さらに余談として最低限の雑さについても書いた。 これをきっかけに、公開の…

ちょっとしたことでも雑にブログに書いておくと良いことが起こる

僕は自分がやったこと・勉強したこと・気づいたことなどはどんなにちょっとしたことでも、公開の場のブログに書くようにしている。その内容はある程度雑でも良いので、とにかく公開の場に書くようにしている。それによって、結構良いことが起こっているとい…

Coursera Machine Learning Week2の学習

前回 に引き続き、Coursera Machine Learning Week 2を受講した。 前回は線形回帰モデルとは何か、最小化すべきCost Functionは何か、最急降下法とは何かについて学ぶことができた。Week 2の講義を受けるとさらに次のことを理解することができる。 多変量(x1…

MySQLのfilesortは何ソートで行われているのか

最近、CourseraのArgorithms, Part1という講義を受けている。そこでソートの講義を受けて、そういえばMySQLのORDER BYでfilesortになったときってどのソートが使われているのだろうと気になってきたので調べてみた。 調べてみると非常に難解で、結局いまいち…

Emacsでvirtualenvに入れたライブラリも考慮したPythonの補完環境を作る

新言語を使うときは、その言語の補完ができるかどうかで学習効率が変わってくるので、ひとまずPythonの補完環境を作った。基本Pythonではvirtualenvを使うのが一般的なようなので、環境ごとに入れたライブラリも考慮して補完できるようにした。 色々調べたと…

zsh-autoenvを使って、virtualenvの自動activate/deactivateを実現する

pyenv + venvでPython3環境を構築する - $shibayu36->blog; の記事で、特定のPythonプロジェクト用のvirtualenv環境を導入することが出来ました。しかし、このプロジェクトに入るたびにsource venv/bin/activateし、逆に抜ける時にdeactivateするのは 面倒 …

Pythonのvenvのプロンプト表示をカスタマイズする

pyenv + venvでPython3環境を構築する - $shibayu36->blog;の記事で、Python3でvenvを使った環境を構築することができた。しかしvenvでsource bin/activateすると、自分の設定したプロンプトの左側に(venvの環境名)という文字列が勝手に挟み込まれてしまって…

pyenv + venvでPython3環境を構築する

機械学習のモチベーションを上げるためにTensorFlowを触ろうとしている。まずは環境設定でしょうということで、ひとまずPython3環境を作る。今はpyenv + venvで作るのが良いみたいなので、それでやってみたメモ。 pyenvでpythonをインストールする pyenvが必…

mysqlenvの管理配下にデバッグオプション付きのMySQLをインストールする

最近アルゴリズムの勉強をしていて、MySQLの挙動を追う機会があった。そこでMySQLのデバッグを出来るようにと、MySQL :: MySQL 5.6 リファレンスマニュアル :: 24.4.1.1 デバッグのための MySQL のコンパイル に書いてあるように、MySQLをデバッグオプション…

Coursera Machine Learning Week1を受けた & メモ

自分の中で裏側よりの難しいタスクをアサインされる機会を増やしたいと思い、機械学習の勉強を始めることにした。そこでとりあえず良いとよく言われているCoursera Machine Learningの講義を受けることにした。https://www.coursera.org/learn/machine-learn…

行動分析学の観点から課題を解決する - 「パフォーマンス・マネジメント」読んだ

最近効率的な課題解決について興味があり、パフォーマンス・マネジメントという本を見かけたので読んでみた。パフォーマンス・マネジメント―問題解決のための行動分析学作者: 島宗理出版社/メーカー: 米田出版発売日: 2000/03メディア: 単行本購入: 39人 ク…

「WEB小説ヒットの方程式」読んだ

小説家が何を考えて小説を書いているか気になったので読んだ。読者の心をつかむ WEB小説ヒットの方程式作者: 田島隆雄,ヒナプロジェクト,博報堂DYデジタル出版社/メーカー: 幻冬舎発売日: 2016/07/27メディア: 単行本(ソフトカバー)この商品を含むブログを…

初めて学ぶ知識をどのように学習しているか

ふと、自分が初めて学ぶ知識をどのように学習しているか疑問に思ったので、考えてみたことをブログに書いておく。初めて学ぶ知識というのは、自分がやったことだと例えばマネジメント、プロジェクト管理、コーチングなどがある。 僕はある知識を初めて学ぶ時…

「理論から学ぶデータベース実践入門」読んだ

理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL (WEB+DB PRESS plus)作者: 奥野幹也出版社/メーカー: 技術評論社発売日: 2015/03/10メディア: 単行本(ソフトカバー)この商品を含むブログ (18件) を見る積ん読に入っていたので…

高速なRandomized Queueのアルゴリズムを実装する

CourseraのAlgorithms, Part Iというコースで、高速なRandomized Queueを実装するという話題があったので、試しに作ってみた。 高速なRandomized Queueとは Randomized Queueとは、Queueからdequeueするときに、中に入っている要素の中からランダムに一要素…

どのようにエンジニアの目標設定を行うか

以前 ゴールを決め目標を決める・解決案ではなく質問する - コーチングの学習で学んだこと - $shibayu36->blog; で、「ゴールを決め、現在位置とのギャップを考え、目標を決める」と良いということをまとめた。イメージとしては以下の図の通り。 しかし、前…

「事業成長にコミットするエンジニア組織への道のり」スライドのメモ

非常に良かった記事とかを見た時、これまではEvernoteにメモを残していたのだけど、よく考えたら別にブログに公開しておけば良いよなと思ったので公開してみる。今回は「事業成長にコミットするエンジニア組織への道のり」というのが良かったのでメモ。 事業…

中置記法の数式文字列から計算結果を求める操車場アルゴリズム

最近 Algorithms, Part I - Princeton University | Coursera の社内勉強会を開いている。そこで「Stacks and Queues」という章をみんなで学習し、議論したところ、中置記法の数式文字列から計算結果を求める操車場アルゴリズム(Shunting-yard algorithm)と…

問題の効率的な解決方法を学ぶ - 「世界一やさしい問題解決の授業」読んだ

仕事で何かしら課題を見つけた時に、それを効率よく解決する方法にはどういうものが知りたかった。そこで参考になりそうな「世界一やさしい問題解決の授業」を読んだ。世界一やさしい問題解決の授業―自分で考え、行動する力が身につく作者: 渡辺健介,matsu(…

ピラミッド原則を実践で学ぶ - 「考える技術・書く技術 ワークブック<上>」を読んだ

前回「考える技術・書く技術」を読んで、書く・考える時に役立つピラミッド原則というものについてもう少し理解を深めたくなった。そこで、実践形式で書き込みながら学べる「考える技術・書く技術 ワークブック」を読んだ。考える技術・書く技術 ワークブッ…