面白コンテンツ探求日記

ラーメン食べたい

dyson v8 animalproを買った

今まで結構古いコードレス掃除機を使ってたんだけど、吸引力が足りず猫の毛がなかなか吸えなかったり、部屋全体を掃除し終わる前にバッテリーが切れたりと辛さがあったので買った。

f:id:horimislime:20161211170622j:plain

他のメーカーと使い比べてないんだけど、性能や使い勝手は大満足。よかった点は↓

  • 吸引力◎。絨毯に絡みついた毛もバッチリ取れる
  • ノズル交換でハンディ型になるので、キャットタワーの高い所とかも掃除が楽
  • バッテリーが長持ち(最長40分)
  • ブキっぽいデザインでやる気がでる 

届いて早速ラグや床に引いたカーペットを掃除したらこんなに取れた。逆に取れすぎて怖い。毎週掃除はしてたはずなんだけど、こんなに潜んでたのか...。

f:id:horimislime:20161211174425j:plain

ちょっと残念なところをあげると

  • けっこう予想外にうるさい(モーターは気にならないけどブラシ部分がうるさい?)
  • 重たくて長時間連続で掃除するのが辛い
  • 充電がやりづらい

とか。まぁ正直どれもそういうもんだよなぁって感じで気にしてはなくて、総合的に見て大満足してる。

今年最後のQoLが高まる買い物になった。

CashewというGitHub Issueリーダーを使い始めた

背景

自社で扱っているプロダクトのラインや関係者が増え、目を通しておきたいissueの数も多くなってきた。GitHubリポジトリも多数に渡ってきて、各リポジトリの/issuesから見たいものを探し出すのも大変になってきたので、issueを素早く大量に読める専用アプリが欲しくなりCashew appを使い始めた。値段は結構高い。

Cashew

Cashew

  • SimpleRocket LLC
  • 開発ツール
  • ¥3,600

GitHub Issue Reader事情

同様のアプリだとJasperをよく聞く気がして、こちらもトライアルで試してみて良いなと思った。機能的にはほとんど差異は無いんじゃないかと思う。決め手はElectron製のJasperに比べてCashewの方が気持ち動作が軽かったから。Cashewはどうやら全部AppKitで実装されているみたい。issueの詳細画面も全てネイティブUIで実装しているようで、こりゃ作るの大変だろうなぁと感服した。

f:id:horimislime:20161210230500p:plain

issueの起票もメーラーライクなUIでサクッとできる。ブラウザだと起票するのにも画面遷移が必要で面倒なのでありがたい。

f:id:horimislime:20161210230538p:plain

あと、このブログを書き終わった頃にちょうどGitscoutというのも公開されていた。今の所無料で使える点と、CashewよりオシャレなUIが印象的。こちらもissueの作成・閲覧やコメントと一通りのことはできるみたい。

f:id:horimislime:20161210225949p:plain

Cashewを使ってみて

一個一個ブラウザタブで開くのと比べてはるかにissueの消化効率が上がった。

Issue一覧と詳細画面が2カラムで表示できるので、一覧からサクサクIssueを選んで内容をチェックできる。Issueのお気に入り登録機能もあるので、何度も見るIssueは素早くアクセスできる。
リポジトリを横断してissueを見るのも快適。会社のリポジトリだけじゃなく使ってるOSSリポジトリも登録しておけば、サイドバーからすぐissueへアクセスできる。

ただ、出たばっかりっぽいし仕方ない気もするけど細かい部分の荒さが気になった(二段階認証してると初回ログイン時にいきなりクラッシュした...。)正直現時点ではGitscoutの方が出来がいいと思う。とはいえもう買ってしまったし、強気な価格設定の分改善されてくことを期待しつつ使っていくつもり。

2016年買ってよかったもの

これは 今年買ってよかったもの Advent Calendar 2016 - Adventar 6日目の記事になります。

今年もそういう時期が来たのでこの一年で買ってよかったものを並べます。

食洗機

今年ダンドツで一番ライフチェンジングだった買い物。もうこれ無しの生活には戻れない。これについては以前こんなエントリを書いた。

食洗機買ったらライフがチェンジした - 面白コンテンツ探求日記

買う前はちゃんと洗えるのかとか、運用費結構かかりそう・・とか考えていたけど全く問題無し。汚れが残っていることは滅多にないし、メーカー曰く水道代も手洗いより少なく済むらしい。多少電気代かかるかもだけど浮いた時間のこと考えると全然気にならない。おすすめ。

Roost Laptop Stand

f:id:horimislime:20160809125327j:plain

Roost Industries Corp. | Roost Laptop Stand: Portable, Lightweight, Adjustable, Ergonomic Stand

会社でずっとMacbook一台で作業してたんだけど、どうも肩こりがひどかったので高さ調整のため購入。効果は抜群で、これを使うようになってから定時ごろに襲ってくる肩こりや頭痛がほぼなくなった(本当に)。

海外から自分で取り寄せるとなると大変だけど、Rakunewで注文するとすごく楽だった。ちょうど東京に在庫があったらしく、注文して2, 3日で到着。

Roost Laptop Stand|首の痛みを解消するノート型PC用スタンド「ルースト」 - ガジェットの購入なら海外通販のRAKUNEW(ラクニュー)

BOSE QC35

仕事で作業に集中したいときに使う用に購入。つけ心地良く、ノイズキャンセリング能力もそこそこあるので満足してる。

Apple Watch Series2

Suica目的で買ったんだけど大満足。ポケットから財布を取り出す必要がなくなるだけ、と思ってたけど、たったそれだけの事がすごく便利に感じてる。

Suicaの使い心地についてはこのエントリに感想を書いた。

Suica狙いでApple Watch Series2を買って1週間使ってみた感想 - 面白コンテンツ探求日記

ちなみにSuica以外の使い道は・・・一応たまにジムで走るときに使ってる。たまに。

パワーポジションボール

パワーポジションボール

パワーポジションボール

健康器具。これの上に寝転がって自重でゴリゴリする。肩甲骨がよくこるんだけど、これはすごい効く気がする。

新しめのLEDシーリングライト

家の照明は地味にQoL高まった。上京したての頃に買った、安い六畳くらいの家用のLEDを使い続けてたんだけど、さすがに色々無理があった。まともな照明にするとご飯も美味しそうに見えるし、なんか気分も良くなる。 ケチって照明を買い換えない人はけっこういそうな気がするんだけど、本当に買い換えを勧めます。最近はLEDでも安いし。

Mornin

朝決まった時間にカーテンを開けて気持ちよく目を覚まさせてくれるやつ。取り付け簡単で4000円程の低価格。アプリも使いやすくて満足してます。

カーテンの開け閉めを自動化できるmorninというガジェットを買った - 面白コンテンツ探求日記

ただ、最近慣れてしまったのかカーテンを開けても起きれなくなってきた気がする...。

Dash Button

シーバ Dash Button

シーバ Dash Button

昨日買ったやつ。消耗品はだいたい近所で買ってるんだけど、ペット用品だけAmazon使ってるし便利そうだと思った。

Amazon開くとついwishlistに入ってるものも一緒に買おうかな・・・とか考えてしまうんだけど、Dash Button使うようにすればそんな雑念の入る余地がなくなりそう。

まとめ

以上、個人的に今年買ってよかったものでした。

ふりかえってみると、今年は趣味とかモノ以外へお金をよく使ってて、あまり便利グッズやガジェットの類は買ってなかったっぽい。

esaの記事をステータスバーから見れるMacアプリを作った話と、個人開発で心がけたい4つの事

この記事はトレタ Advent Calendar 2016 5日目の記事になります。昨日はサーバサイドエンジニアの@seri_k自分が2016年に作ったrails拡張系gemとその解説 - seri::diaryでした。

この記事に影響され「ワイも1日目に書いた記事の内容をgem化するぞ!」と息巻くもiPhoneの画面をバキバキに割って具合が悪くなり、未達のまま週末を終えました?


EsaMenuというアプリを作っていた

f:id:horimislime:20161205120756p:plain

ここ2ヶ月ほどちまちまとMacアプリを書いていて、ようやく普通に動く状態になってきたので公開しました。名前のまんまで、Macのステータスバーに常駐しesa.ioの新着記事を表示してくれるというものです。残念ながらMac AppStoreはまだ申請中で間に合わなかったんですが、以下からアプリケーションのzipを落とせます。

Release Release 0.1.0 · horimislime/EsaMenu

iOS開発をしているとMacアプリも簡単に作れそうに見えるんですが、AppKitは結構クセモノでなかなかツラい事もありました。またGUIアプリをストア配布まで持っていくには割とやることが多く骨が折れます。今回はそんなMacアプリを挫折せずリリースまで持っていくため心がけてよかった事について書きます。

手に馴染んでいる技術しか使わない

これを作り始めたのが9月末で、もうじきXcode8がリリースされSwift3が使えるタイミングでしたが、あえて使わずXcode7.3.1・Swift2.1構成で開発を始めました。言語仕様の変更以上に、多くのライブラリがSwift3対応と同時にメジャーアップデートを実施し、API仕様が変わっているケースが多かったからです(Alamofire4などまさにそれ)。AppKitを使う時点で慣れてないことをやっているのもあり、せめてここらへんは慣れたものを使わないと結構時間を使いそうだなと思い我慢しました。

自分の好きな技術や新しいもので開発できるのが個人開発の楽しいところです。けれど「アプリを作りたい」という願望と「新しい技術を試したい」という2つの願望を同時並行させると失敗しがちです。

なので使ったことのないライブラリはもちろん、小規模プロダクトで大げさなライブラリを入れるのもアレだと思い、GUI周りも素のAppKitで組み立てています(Rx系がないとツラいな・・という気持ちは正直あった。)

書いてるコードは面白みに欠けても、一度出してから何度でも作り直すチャンスはあります。最初はミニマムでスピードを優先する我慢も必要かなと思います。

デザインなど、できない事は「やらない」

gnu-and-penguin-color-300x276.jpg (300×276)

ソフトウェア - GNUプロジェクト - フリーソフトウェアファウンデーション

せっかく作ったものが誰かに使いたいと思ってもらえるよう、ついアイコンやUIもカッコ良くしたいと欲が出てしまうものです。しかし、デザイン知識に乏しいエンジニアがこだわったUIやアイコンを作ろうとすると地獄っぽいものができてしまいがちです(GNUロゴ、本職のデザイナーが作ったものか知らないんだけどもしそうだったら例に出してすいません)。

アプリアイコンがカッコいいと使ってみようかな!と思ってしまう事は確かにあります。けど逆に無理してヒドいアイコンだとパッと見でこのアプリなんかダメそう・・・と感じてしまい、内容も見ずに試す気が失せることがあります。素人が無理して作った感のあるデザインは、プラスどころかマイナス印象にしかならないと思ってます。

なのでデザインに関しては「何もしない」というスタンスを取ることにしました。UIに関してはSDK標準で用意されているものを使い、アイコンに関してはすごくシンプルかつ無難で、フリーでそのまま使えるものを利用するといった感じです。

幸いAppKitではUIKit以上に標準的なUIパーツが最初から揃っているので、アプリを作る上で凝ったカスタムViewを作る場面は少ないと思います。

f:id:horimislime:20161204191141p:plain

デザインにこだわっても使ってもらえるとは限りません。そんな部分に執着してプロダクトがリリースできなくなるくらいなら、そもそも凝らないと割り切る方がよっぽどマシに思えます。昔Yo.が一躍話題になりましたが、これなんて未だにアイコンが紫一色です。だけどダサいとかアイコンを見た瞬間に「このアプリはダメそう・・」なんて全く思わないし、むしろYoのシンプルさをよく表したアイコンとも思えます。こういう事例もあるし、無理ならデザインは無に近いものでも問題ないと思っています。 

必ず3ヶ月以内にリリースする

開発期間が長くなるほどプロダクトへの熱量は減り、モチベーション維持が難しくなります。個人的な感覚だと3ヶ月を超えるとやる気が無くなったり、似たものを他の誰かが出してきたり様々な理由でリリースを諦める確率が高くなる気がしています。

今回作ったEsaMenuは当初考えていた機能の半分も実装できません。そもそも最初はesaの新着記事を通知センターで受け取りたいというのがスタート地点だったので、主目的が果たせてません。しかしもうじき3ヶ月になってしまうこと、年をまたぐと大きくモチベーションが低下する危険性があるので機能をそぎ落として年内に出すことにしました。

機能がショボすぎると出す意味あるのか・・とも考えてしまいます。しかし一度使える状態にして出すとモチベーション再燃につながると思います。自分でドッグフーディングすれば気づくこともあるだろうし、ブログなどでアウトプットすれば何かしらフィードバックが得られるかもしれません。

毎日最低1分プロジェクトの事を考える

仕事が忙しかったりして、どうしても個人プロジェクトに手がつけられない時期があります。今回まさにそうだったんですが、この期間が長くなるにつれて空き時間ができた時に「よし、プロジェクトの続きやるぞ!」という気持ちが湧きづらくなってきます。

そこで毎日無理のない範囲でプロダクトのことを考えるようにしました。今年のApple Design Awardsを受賞したSTREAKSというiPhoneアプリを気に入って使っているんですが、これに毎日「プロダクトの事を最低1分考える」というタスクを作って消化するようにしていました。

習慣づけを手助けしてくれるタスクアプリStreaks | AppBase

どんなに忙しい日でも1分くらいは好きな事を考える時間は作れます。そして「1分だけ・・」と思って考え始めると、意外と10分、30分とのめり込んで考え続けられたりします。「今日は忙しすぎるから考える時間がない...」なんてのが単なる言い訳だということがよくわかります。

毎日たったの数分だけ○○をする、みたいな目標は馬鹿げているように見えるんですが、意識すると意外と一定の成果が出せる気がしていてオススメです。

まとめ

最近作っていたMacアプリを通して感じた、個人開発をする際心がけておきたい点について書きました。

技術にこだわりすぎたり挑戦的な事をやりすぎない事、ファーストリリースまでは短期勝負…って読み返してみると仕事でのセオリーと同じですね。また「短期間で動くものを作る」という事と「良いコードを書く」という二つの事を両立させることの難しさを改めて感じます。GitHubのコードを見返して、ホンマはこんなはずちゃうんや!と思う箇所が多々。

個人開発でイチからリリースまでのプロセスをやってみると、仕事での開発とも照らし合わせられる部分が多くて面白いです。


明日は@m_nakamura145で「herokuでデプロイと同時にrake db:migrateを実行する」です?