テクノロジー

社内でGo言語勉強会をやった

社内で別チームがGo言語を採用するかも、とのことで、自分たちのチームがGoの知見0から開発をして、先に知っておけばよかったこととか、別言語経験者がハマりそうなところとかをスライドにして話しました。 間違っているところとか、これから始める人にこの…

pkg/erorsを使ったGo言語でのエラーハンドリング

tl;dr エラーを返すときにはpkg/errorsのerrors.Wrapでラップして返すとエラーの原因を返せる エラーを受け取るときにはpkg/errorsのerrors.Causeで原因を見れる 前置き 以前の記事の 「エラーをチェックするだけでなく、それらを正常に処理しなさい」の項目…

Go Proverbsを勉強がてら和訳して少し解説した

Go (その3) Advent Calendar 2016 11日目の記事です。 Go言語の生みの親、Rob Pikeが2015年のGopherfestのセッションで 言っていた、Go Proverbsを自分の勉強がてら和訳してちょっと解説してみる。 後半に行くに連れて集中力が切れたり、いろいろ調査不足の…

Go言語LT大会! 「最近、Go言語始めました」の会でLTしました

Go言語LT大会でLTしてきました。 資料です。 見る人が見ればわかっちゃうんですが、Rob Pikeの発表を丸パクリLT用に焼き直して、デザインパターンとか絡めたものです。 もっと詳しく知りたい方は、Concurrency is not Parallelismとか Concurrency is not pa…

VimConf2016行ってきました

VimConf2016に行ってきました。 発表資料のまとめと軽く所感をば書いてみます。 Introduction to Vim 8.0 Introduction to Vim 8.0 from k-takata 2016年9月にリリースされたVim8.0の新機能紹介とVimの歴史についてのスライドでした。 Vimのコントリビュータ…

vimで折りたたみの状態を保存する方法

vimを使ってそれなりに経つのに、最近になって設定したのでメモ。 vimにはmkviewという、現在の折りたたみの状態を保存するコマンドと、 loadviewという保存した折りたたみ状態を読み込むコマンドがある。 もちろん自分でコマンドを入力するのはめんどくさい…

機械学習の環境をDIGITSとDockerを使って簡単に整える話

機械学習が何をやっているのか全くわかっていなくても 簡単に画像処理の機械学習を行える環境を整えた話。 この記事の目標は、何もわからなくてもとりあえず画像を機械に学習させる、です。 (細かい部分が全くわからないことの言い訳) 今回は、Digitsという…

hubotをSlackと連携してデーモン化するまでの手順

Hubotをデーモン化してSlackと連携させた時のメモ。 以下のツールは導入してあること前提。 apt nodejs npm npm hubot pm2 hubotとSlackの初期設定 まず、以下のコマンドでhubotを準備。 $ mkdir nametake-bot $ cd nametake-bot $ yo hubot _______________…

VimでOpenCVのneocompleteの補完が落ちる問題の解決

pyenvのanacondaで、condaで入れたopencvの補完をしようとすると、 Vim: Caught deadly signal SEGV Vim: Finished. と出て、落ちる問題の解決方法。 環境はOSX10.10。brewでopencvが導入済み。 使用しているエディタはvimで、補完はneocomplete + jedi-vim…

プロパティについて理解したのでまとめる

プロパティについて 研究室で質問されたのでPythonのプロパティについて解説しようと思う。 最初にプロパティとはなにかをIT用語辞典で引いていみると、 プロパティとは、オブジェクト指向プログラミングで使用される オブジェクトが保持している、そのオブ…

デコレータの基本について理解したのでまとめる

Pythonのデコレータに関して、理解していることをまとめてみる。 @を使ったデコレータの書き方はただのシンタックスシュガー (読み書きのしやすさのために導入される構文)。 それでは、何に対するシンタックスシュガーなのか。 まず、以下のようなプログラム…

Webサーバをapacheからnginxに移行

今までapacheで動かしていたWebサーバをnginxにようやく切り替えた。 その中でしたnginxの設定とか詰まったところとかメモ。 nginxの設定 全体に関わる設定 http://www.nametake.infoのように、特に設定をしていないサブドメインに アクセスがあっても、全部…

.gitignoreの範囲の指定方法

過去に書いた記事をそのまま移行します。 前提 $HOMEディレクトリ上でドットファイルをgitを管理している。 .gitignoreはホワイトリスト方式で記述している。 やりたかったこと $HOME └── .vim ├── bundle ├── snippet ├── syntax ├── template └── userauto…