at backyard

Color my life with the chaos of trouble.

最近読んでいる漫画、雪花の虎、サチのお寺ご飯

最近読んで面白かった漫画を二冊書いていく。

雪花の虎

上杉謙信は女だった!?説から生まれた東村アキコの描く大河ドラマ

※画像はAmazonリンク

"かくかくしかじか"が自分の中で大ヒットだった彼女の描く、The 大河ドラマ
(って表現でいいんすかね?)

何を隠そう歴史系には全く疎い私だが、かなりハマっている。
純粋に内容が面白いし(登場人物も皆、生き生きと描かれていて没入できるんです)、
歴史系が苦手な人でも入り込みやすく描かれていて(アキコのティータイムってコーナーがあるんですよ)、
これをきっかけに歴史に興味を持つ人も出てくるのではないだろうか?とか読みながら考える。
実際、当時の習慣や考え方とかも、漫画を読みながら想像したりできて面白い。

実は最近、日本の歴史にも触れてみるかなーとかって考えていた私にとって、
まさに"これですよ!東山先生っ!!"と叫びたくなるぐらいに、 日本史に興味を持つ切っ掛けとなる一冊になりそうである

サチのお寺ご飯

サチのように自炊したくなる漫画

※画像はAmazonリンク

"最近こういう料理を題材にした漫画、ほんっと多いよね〜!!!"
分かるよ、そこのねーさん、俺も同じこと思っていたよ、
だけど、この漫画見ると、大豆でダシとった味噌汁作りたくなるんだよ、ナスとかナメコとか入れてな(1巻参照)。

というわけで、
最近外食が増えていた関係で、ヘルシーな料理に飢えていた私にとって、
自炊へのモチベーションを高めてくれた一冊。

漫画の中に出てきた料理の作り方も書かれているので、
漫画内で作られている料理にチャレンジしてみたくなっても、
すぐに実戦に移せるのが良い。

あと皆悩みながら、なんだかんだしっかり明日を見ている感じがあって、
妙にポシティブな気持ちになれた。
ま、明日もがんばっちゃいますかー的な。

2016新型MacBook Proを使ってみた感想

この記事は年末に公開したPodcastにてMacBook Proについて語った内容についての、追記的記事となる。
まあ、Podcast上ではざっくり気味にしか話していなかったので、もう少し書いておこうかなと。

http://shinshin86.github.io/BrewingHeads/episode-5.html

少し前に無事に電池関連の初期不良品と交換する形で、MacBook Proが届き、
今ではメインマシンとして活躍している。
でも、2012年モデルの方も、なんだかんだでメインマシン的立ち位置にいる。
純粋に手に馴染んでいるし、性能的にも支障はないからだ。
(もちろん、性能的関連から見ると2016年のMacBook Proのほうが性能は良い)

コンパイルスピード

というわけで、まずはスペック的な部分から。

自身がすでに使用している2012年のMacBook Proと比べて性能が上がっているからか、
やはり処理スピードはかなり早い。
といっても、そのようなことを実感する機会というのは少なくはある。
これはすでに2012年時点である程度マシンスペック自体の成長は達成されているからなのかもしれない。
(もしくは私自身がある程度性能に満足してしまっているからなのかもしれない)

実際2012年のMacBook Proを今年も使えと言われても、全く不自由は感じない。
(ま、実際に使っているしね)

処理スピードの速さを実感するのは、VM上にOSをインストールするときや、
大きめのプログラムのコンパイル時などである。

あと何気にelectronの開発をしていて立ち上げるときに起動が早く、開発が行いやすい。
というわけで、これは嬉しい点である。

画面の美しさ

初のRetinaディスプレイということもあり、
画面は非常に美しい。これはかなりテンションが上がるものである。

例えば開発中にコンソール画面を見ていても、いつもよりどことなく艷やかで(たぶんこれはプラシーボじゃない)、
画面も見やすいし、目にも優しい、、、気がする。

タッチパッド

タッチパッドはだいぶ広くなったと感じるが、手の甲が当たって誤動作するとかはないので、
やはりココらへんについては考えられているのだなと思う。
(あくまで想像ですが、手の甲が触れた場合は、あえて動作しないようになっているとかしているのだろう)

2012年のものに比べると"感圧タッチトラックパッド"になっているので、
使用感は異なる。
個人的には2012年の頃の威圧式じゃないもののほうが押した感じが好みだ。
(感圧式の押した感じは、個人的に安っぽく感じるんだ。。。)
まあ慣れるだろう、そのうち。
ちゃんと押した強さによって機能が変わるので面白い(今更)

軽さ

Podcastでも話していたが、本当に軽い。
これは2012年のMacBook Proに比べて明らかに良くなっているポイントであるし、
マシンが軽くなることで、PCを扱うことがこんなにも楽になるとは私自身思わなかった。

私はよくソファーに腰掛けた状態で、膝の上にラップトップを載せてコーディングをすることが多いのだが、
軽すぎてラップトップをいじっているという感覚を忘れそうになる。
疲れたらそのまま横に寝っ転がってコーディングを続けられるし、
片手で持ち上げて、テーブルの上に戻したり、まるで大学ノートを扱っているような感覚で触れる。
これはユーザ体験として実に良い。

キーボード

これもPodcastで話したことだが、
私は今回のキーボードは結構好みな感じなので、特に問題はない。
ほとんど撫でるような感覚で文字が打てるので疲れないし、
個人的には、キーボードを叩くというアクションなしでタイピングできるのはテンションが上がる。

キーボードがうるさいという意見もあったが、個人的にうるさくは感じていない。
(キーの音の大きさ自体は2012年のMacBook Proとそんなに変わらない印象である。)
ただキーボードの構造的な要因なのか、ペコペコパコパコという音がする。
これが少し奇妙に聞こえなくもないし、タイピングしていて気持ち良い音か?と聞かれると、
私は首を立てには振らない。
もしかしたらこの音が"うるさい"と言われる要因なのかもしれない、とも思う。
どちらにしろ打鍵感のあるキーボードが好みの方は、あまり気に入らないと思う。

電池の持ち

話題になっている電池問題。
実際、私の初期不良の内容も電池だった。
(実際に、この問題と何かしらの関係があったのかは分からないが)

たしかに電池の持ちは悪い。
感覚的には今まで使っていたMacBook Proの、"現在"の電池の持ち具合とあまり変わらない。
そのため、外に持っていくにしても絶対に電源は欠かせないと思うし、
電池の持ちが良いとは到底思えない。

最近だとこんな記事も出てきたりしているが、
どちらにしろ電池については、満足できる出来じゃないと感じる。

jp.techcrunch.com

Touch Bar

タッチバーは特に問題なく使えているし、コンテキストに応じて見た目が変わるので、
使いやすい。

そもそもTouch Barモデルを購入したのは、そちらのほうがよりスペックを高く出来たからであって、
それほどTouch barには興味がなかった。
別に使いにくくはないし、"わかりやすくていいんじゃない?"という程度。
今後ソフトによって、より恩恵を受けられるものも出てくるだろうし、
ちょこちょこいじってみようと思う。

"ファイル名変更"をキャンセルするときとか、
VIM使用時(ま、"control+["でも行けるのだけど、ついつい癖で)に私はよくESCキーを使うのだけど、
今までと全く同じようにESCキーを使えるので不便だと感じたことはない。

でもせっかくなので、
そのうち下記の記事を参考に、Touch barで遊んでみようかなとは思っている。

www.lifehacker.jp

Touch ID

Touch IDはかなり良い。
ログインが片手できるのは、想像以上に便利でストレスフリーである。

MagSafe

これは改悪だと思う。
なぜ普通に差し込んで使うタイプになってしまったのだろうか。
いつか絶対に引っかかってPCをテーブルから落としたりすると思う。
マグセーフをやめた理由が思いつかないし(より薄く、軽くするために必要だったとかあるのかな?)、
ってか、USB Type-Cに変えたかったのだろうけど、
でもでも、MagSafeじゃないとMacBook Pro落下事件頻発しますよ、
ってか、僕のマックディスプレイが割れる日が来ちゃうかもしれないよ。

電池は持たねーわ、充電している最中に電源に引っかかったら終わりだわ、で
ここらへんは完全に改悪だと思う。

結果こういうサードパーティ製の購入を検討する余地も出てくるが、まだ買うには至っていない。

japanese.engadget.com

値段

値段についてもPodcastで語ったが、やはり高かったと今でも思うし、
購入した金額分の価値があるのかどうかは怪しいと正直思っている。
それを判断するにはまだ早すぎるのだが、MacBook Proじゃなくても
同じようなスペックで軽いPCは出ていると思うので、
そっちを買ってLinuxを載せて開発マシンにしても行けるのではないだろうか?とも感じる

総評

総評を出すには気が早すぎるし、文句もあるが、
買って後悔はしていない。

軽くて高性能は正義、ということである。あと画面綺麗だし。
(値段と電池に目をつぶればね)

友人が前モデルのMacBook Proを購入しているが、
そっちのほうがコスパ的には良い買い物していると思う。

ま、割と気に行っています。

Rails5にてrails db:dropを行う方法

自分用メモとして下書きに取っておいてあったので、公開しておく。
(要は備忘録として公開しておいて、自身が困った時にあとで見返そうという魂胆)


常識かも知れないが、自分にとっては初の体験だったのでメモしておく

テスト環境として使っていたRailsの"Production環境"にて、
"rails db:drop"出来なった。

これはProduction環境で誤ってDBを壊してしまわないようにする、
Rails側で用意された防止策。

じゃーどうやって"rails db:drop"するのかというと
下記の記事が参考になった。

Rails 5に入ったDB破壊系taskの防止処理について | 日々雑記

まずは環境変数に設定する

export DISABLE_DATABASE_ENVIRONMENT_CHECK = 1

environmentにproductionを設定する

bin/rails db:environment;set RAILS_ENV=production

これでdrop出来る

rails :db:drop

ジョジョの奇妙な冒険とCaramelShip

今日ジョジョのアニメを拝見させていただいたのだが、 めちゃめちゃぶっ飛んでいて衝撃でした。

youtu.be

漫画も1巻しか読んでいない完全なるジョジョ初心者なのだが、 これはかなり好き嫌い分かれるかもしれないが、好きになる人はとことん好きになりそうな感じだと思った。 ウイスキーで言えばラフロイグと言った立ち位置だろうか。

デザインやストーリー構成も独特のセンスでぶっ飛んでいたが、 同時にダリを連想させるようなインテリジェンスなナンセンスがそこかしこに感じられて、 ただただそのオリジナリティに打ちのめされていた。。。 いやはや、これはすごい。

という、かなり今更なネタでブログを更新させてもらいました。

Caramel Shipの新作

アルバム制作も最終段階。 現在送ってもらったmasterデータの最終確認中。 かなり良い感じです。 発表したら是非ぜひ聴いてみてください。

下記はオフィシャルサイト

caramelship.net

画像サイズを1/3にするPython スクリプト

画像の比率そのままに、三分の一のサイズに収縮させるPython スクリプト
完全に書き捨て用ですが、未来の自分のためにブログに載せておく。
半年後の自分が見返したときに、もっと洗練されたものに修正してくれることを祈って。

# -*- coding: utf-8 -*-
import cv2
import os
import glob
from os import path
for i in glob.glob(path.join(os.getcwd(), "*.jpg")):
        img = cv2.imread(i)
        height = img.shape[0]
        width = img.shape[1]
        resize = cv2.resize(img, (width/3, height/3))
        cv2.imwrite(i, resize)

追記

cv2を使わずにPILを使ったバージョンを追加。

# -*- coding: utf-8 -*-
import os
import glob
from os import path
from PIL import Image
for i in glob.glob(path.join(os.getcwd(), "*.jpg")):
    img = Image.open(i)
    img.resize((int(img.size[0]/3), int(img.size[1]/3))).save(i)

Go言語で書き初め

f:id:shinshin86:20170101115058p:plain

きっかけはツイッターで呟いたとおり

ちなみにGolangは自分で書いたことはほぼほぼなく、
右も左も分からない状態なので、まずは下記のページを参考に勧めてみる。

http://golang.jp/install#introduction


なお、環境はMac環境。
Mac用のインストーラをダウンロードして、
インストールするというやり方でセットアップしていきます。

デフォルトでインストールすると、下記のパスにインストールされるようだ。

$which go
/usr/local/bin/go


とりあえずHello World.

package main

import "fmt"

func main(){
        fmt.Printf("Happy New Year!!")
}

ちなみにgoは"gofmt"とコマンドを打つことで、
goのコードを整形してくれるらしい。
コーディング規約戦争を生む前に、レール作っちゃうよ、という感じのよう。

下記のコマンドで、"gofmt"で整形したコードで上書き。

$gofmt -w hello.go

Writing Web Application

こちらのチュートリアル的なものを黙々と進めてみる。

Writing Web Applications - The Go Programming Language


上のページのまま進めると、簡単なwebアプリが出来る。

GOPATHのこと

Goを始めるにあたって"GOPATH"などの考え方が、
なんとなく躓きそうだなとか勝手に考えていたが、
ドキュメント類はわかりやすそうだったので、あとでしっかり読み込んでおく。

http://golang-jp.org/doc/code.html#Workspaces


動画付きなのはうれしいですね!

youtu.be


http://golang-jp.org/cmd/go/


ひとまず動画に習って

$mkdir gocode
$export GOPATH=$HOME/gocode

上のチュートリアルで作った簡単なwebアプリを読み込ませてみる。

$cd gocode
$mkdir -p src/github.com/{Githubアカウント名} # 私の場合は"shinshin86"
$cd src/github.com/{Githubアカウント名}

$cp -r {チュートリアルで作ったwebアプリパス(gowiki)} .

$cd gowiki
$go install

するとGOPATH直下にbinディレクトリが作られて、
下記のようになる。

# GOPATH直下にて
$tree
.
├── bin
│   └── gowiki
└── src
    └── github.com
        └── shinshin86
            └── gowiki
                ├── edit.html
                ├── test.txt
                ├── view.html
                └── wiki.go

これでコンパイルした実行ファイルを叩くとアプリが実行される

$~/gocode/bin/gowiki

でもbin側にパスを通すことで、
コンパイルしたプログラム名をコマンドから叩くだけで実行ができるようになるので、
より便利になる。

$export PATH=$HOME/gocode/bin:$PATH

下記で実行。

$gowiki

"go get"を試してみる。

実際にGithubに登録してみました。

github.com

試しに公開したコードを取り込んでみます。

さっき作ったgocodeディレクトリは一旦脇に避けて、
何もない"gocode"ディレクトリを作る。
(消してもいいんだけど、一応、ね)

$cd $GOPATH
$go get github.com/shinshin86/gowiki

$tree
.
├── bin
│   └── gowiki
└── src
    └── github.com
        └── shinshin86
            └── gowiki
                ├── README.md
                ├── edit.html
                ├── test.txt
                ├── view.html
                └── wiki.go

いいですね~!
私はまだまだペーペー野郎ですが、
すごく考えて作られている言語といった感想を持ちました。

あと、なんとなく触れにくいなと思っていたGOPATHも、
こうやって一つ一つ丁寧にドキュメント読みつつ、実行していくと、
とても便利なものであることを実感しました。

何事もそうだけど、
丁寧にドキュメント読んで、
動作を理解しつつ触れていくというのは、
何かを学習する上でとても大切なこと。
常に意識して行かなければならないと思いました。

というわけでGolang事始めでした。
書き初めっていうか、事始め、というか単なる備忘録になった。

そもそもチュートリアルなぞって、仕組みを理解するって感じで、
あまり書初めっぽくなっていないので、おせち食べたあと、
食後の運動がてらに何か書いてみようと思う。

というわけで、
2017年もよろしくお願いします!

追記 - FizzBuzz

結局書いたのは"FizzBuzz"でした。

package main

import "fmt"

func main() {
	i := 1
	fizz := "Fizz"
	buzz := "Buzz"
	for i <= 100 {
		if i%3 == 0 && i%5 == 0 {
			fmt.Printf("%d %s%s and HappyNewYear!\n", i, fizz, buzz)
		} else if i%3 == 0 {
			fmt.Println(i, fizz)
		} else if i%5 == 0 {
			fmt.Println(i, buzz)
		} else {
			fmt.Println(i)
		}
		i = i + 1
	}
}

でも、FizzBuzz一つ取っても、色んな書き方があって
そういうのを見比べるだけでも勉強になると思った次第。

今日はおせち食べて、友人と初詣行って、
友人が教えてくれたオススメの空耳アワー(at 初詣行く車内)で初笑いをさせてもらった一日でした。
あと、レイジ・アゲインスト・ザ・マシーンがめっちゃ流れていました。
すごく久しぶりに聴いたけど、彼ら、強烈でかっこいいよね!

youtu.be

2016年を振り返る

2016年振り返り

たぶん今年Hatenaブログを始めたきっかけの1つにもなっていると思うのだが
去年の大晦日、たまたまコーディグに関することでググっていた時に、
今年の振り返り的な記事をHatenaブログでたくさん見た。

振り返りというテーマで皆、ブログ書いているんだなー、
もし自分が2015年振り返り記事書くんだったら、
初めて人前でスピーチ⚫︎プレゼンをしたこと(tedを見て研究までしたんだった※)とか、
Desmondとのコラボのこととか書くのかなー、などと妄想をフワフワ浮かべつつ、
自分も久しぶりにブログを書こうと思い立ったのだった。
※これについてはそのうち研究時にまとめた資料を何らかの形で公開したいと考えている

それがはてなブログを始めようと思ったきっかけだった。

ブログを始めたことは良いことだった。
特に学ぶことがたくさんある業界で備忘録として自分が行ってきたのを残すのは、
SNSに今日の晩飯を載せるのとはまた違ったタイプの、自分のログだった。

というわけで、
前置きが長くなったが、今年の振り返りを簡単に書いていく。5年後にも思い出せるように。
ただ途中で集中力切れて、尻すぼみ気味。。ま、5年後にも2016年のことを何となく思い出せるぐらいなニュアンスで書いていきます

Rebuild

まずはRebuild.fm。
ちょうど今年の正月に初めて聞いたのだが、衝撃的だった。
ポッドキャストを通じて、クールでGeekハッカーたちの会話を聞けるのは非常に新鮮で、学びもとても多かった。
Rebuildのおかげで自身の知識量は3倍になったと思うし、エンジニアとの会話のネタにもなったと思う。
この業界にはいってから学ぶことが多い分、どういう知識を身につけていけばよいか?
また、この知識は業界の中ではどういう立ち位置になるのか?(例えば、Hubot, Docker, linker,Coffee Script etc...)
あまり掴めていなかった部分がRebuildでの会話を聞いてくうちに明確になっていった。
プログラマーやエンジニアと呼ばれる人種が
普段どういうものに触れているかを知るきっかけになったし、
どういうところで情報を得ているのかとかも知ることが出来た。
また、最近話題のTech関連のニュースに触れられて、
自然とTech業界内の流れを、なんとなくだが感じることができた。

私の場合、仕事は主にJavaで、レガシーなシステム開発に携わることも多かったので、
この流れを感じれたのはことさら大事なことであるようにも感じた。
これは大きかった。

rebuildを知ったことも大いに関係あると思うのだが、
私はこの業界に入って今年で3年目になると思うが、今年が1番学びの成長曲線が大きかった年であると思う。
だが、そもそも私の基礎能力はひどいもので、毎日く○コードばかり吐き出しているので、
もっとココらへんはストイックにやっていく必要もある。
頑張りすぎずストイック。今後の課題。

さらには様々なテック系ブログも意識的に読むようになり、より中身のある情報に触れられた。
プロジェクトの運用1つとっても、様々な手法や工夫があり、
それらがプロジェクトにどう作用するのか?考えるのはコード書くのとはまた違った楽しみがあるように感じた。
英語は相変わらず未熟だが、海外のTech系のブログも来年は積極的に読むようにしていきたい。

Ruby on Rails

あと、今年後半はRailsのプロジェクトに関わることができた。
普段からJava、そしてsvn使って開発、
でもバリバリコード書くわけじゃなく、決められた箇所をコメント入れて修正するだけ(バージョン管理してるのに!)
もしくは1日ずっとエクセルの設計書いじって、結局直した箇所は10箇所にも満たない、
顧客を納得させる設計書の書き方について半日悩んだり、それシステム開発なのか!?
みたいな感じの業務が多かった私としては、これは大きかった。

勿論こういう業務にもそれをやる理由が当然あるのだから、それはそれで納得してやっていたのだが、
自分がやりたいこととの乖離が大き過ぎて、会社側にもっと違うことがしたい、と我儘を言わせてもらったのだ。

これは結果的に良い方向に行ったし、私の要望を聞き入れてくれた会社にはとても感謝である。
また、自分は何をするためにこの業界に入ったのか?をということをちゃんと考えるきっかけにもなった1つだった。

Rubyに業務で触れたのはとても良い体験だった。
普段とは全く異なる開発手法に触れられたのも、自身の知見を広める良い体験になったし、
(TDD, GitFlow, チケット管理 etc...)
プロジェクトの運用一つでスピード感や品質の維持の仕方がだいぶ変わることを身をもって体験した。
ちなみにRubyプロジェクトは今月で終わり、来月はたぶんRubyじゃないプロジェクトに携わることになると思うが、またRubyにも業務でどんどん携わっていきたい。

音楽のこと

Desmondとは今年も継続的に音楽を作れたし、
レーベルとの絡みだったりも踏まえて様々な体験をすることが出来た。

caramelship.net

また、彼に実際に会えたのも今年だ。

また、Beaglesにてインタビューをしていただいたのも今年。
自身の音楽活動を振り返るとても良いきっかけにもなった。
とても貴重な体験ができたと思う。

note — Beagles進藤氏インタビュー(1)

買ったもの、買ってよかったもの

いまざっと頭に浮かんできたものを3つだけ書いていく

Kindle

まじで買ってよかった。
重い書籍が単行本サイズで読めるのは、本を読む敷居を限りなく下げる。
英語をすぐ調べられるのも、嬉しい。

iPod Touch

AppleMusic駆動で購入。
音楽をローカルに落として、どこでも聴けるのはでかい。

ただしApple Music自体は聴きたい日本人の曲があまりなかったのは残念。
PerfumeをAppleMusicで色々聞き返したかったんだが。。。

だが、総合的に見れば私はApple Musicを気に入っているので、今後も使い続ける予定。

おっきな水筒(Peacock ピーコック魔法瓶 ステンレスボトル 0.6L)

朝いちで作ったコーヒーをたっぷり詰め込んで職場に持っていけるので、めちゃめちゃ重宝した。
飲み口がでかいのである程度離れが必要だけど、
そんなことよりこの容量の大きさは嬉しい限り。
ジム行くのにスポートドリンク入れて持っていくとかも、来年はしたいな。

(上はAmazonリンクになります)

BrewingHeads

rebuild.fmの影響で初めた。
今年で30になったし、なにか新しいことを初めてみようと思ったのだ。

http://shinshin86.github.io/BrewingHeads/


ここら辺の経緯についてはPodcastの中でも語っているので、お時間あるときにでも聴いてみてください。

最後に

2016年振り返り記事書いていたら、結構な分量になってしまってなかなか書き終わらないので、もうここらへんで締めます。
全然総括していないし、なにより最後まで書く集中力がなかった。。。
村上春樹氏がよく小説を書くにはそれ相応の体力が必要だと言っているが、まさしくそのとおりだと思う。
ブログ書くのもコード書くのも(さらには曲書くのだって)、それ相応の体力が必要なのである。
恐らくはこの集中力切れた問題も、体力に起因するのではないだろうか。
というわけで、来年は自分のやりたいことを全力でやるための集中維持のためにも、
体力トレーニングを行っていく必要があるのかもしれない。

というわけでこの辺で締めます。
これからTensorFlowちょっと触って、マラソンしてくる予定。