at backyard

Color my life with the chaos of trouble.

【画像あり】Eclipseが重いので、設定を変更して軽くしてみる

備忘録、まえがき

今月からJavaのプロジェクトに関わっている。
久しぶりにJavaに触れて、おなじみのEclipseの激重ぶりに戦慄しているが、
今日Eclipseの設定をいじってみたら、少しマシになったので備忘録として残しておく。

なお、設定変更については下記のサイトを参考にしているし、
むしろ書かれていることをそのまま実践しているだけなので、
Eclipseを軽くするための情報を探しにこの記事にたどり着いた方々は下記のサイトに移動してください。

参考記事

とてもわかり易い記事なので、ぜひ見てみてください。
この記事内でも引用させていただいています。

重いeclipseを早くするには?試した8つの方法

実践したこと

環境

今回、自宅のWIndows 8.1マシンにもEclipse 4.5(Pleiades)をダウンロードし、そちらでこの記事のキャプチャは取得している。 元々、設定済になっている項目もあったりしたので、Eclipseのバージョンによっては差異があったりするのかもしれない。

コンテンツアシストを早くする

Window>Preferences>Java>Editor>Content Assist

↑上記のAuto activation delayを80くらいにする。(僕は60にしています)

これでかなり挙動のもっさり感が改善。

日本語だと ウィンドウ → 設定 → Java → エディター → コンテンツ・アシスト にある、自動有効化遅延(ミリ秒) という項目。
私も 60 にした。これやると結構軽くなってテンション上がる。

テーマをクラシックにする

Window>Preferences>General>Appearance

↑上記のThemeをClassicに変更。

日本語版だと ウィンドウ → 設定 → 一般 → 外観 にあるテーマをクラシックに変更。

Eclipseのクラシックテーマってこんな感じだったのかという印象。
もっと劇的に変わるかと思いきや、そこまで見た目は変わらない印象。
なので、見た目にこだわりがなくて、動作の重さが憎い方はやっておいて損はない。

アニメーションを禁止する

Window>Preferences>General>Appearance

↑上記のEnable animationsを非選択に。

日本語版だと ウィンドウ → 設定 → 一般 → 外観 にある アニメーションを使用可能にする のチェック。
(検証目的で自宅のwindowseclipse 4.5(Pleiades)を入れて試してみたけど、元々チェック外れていました)

Eclipseってどこでアニメーション使われているんだっけ?ってレベルだったので、
アニメーションを禁止したところで特に使用感に変化ない。
そしてアニメーションにリソース使うより、もっと別の部分に力を向けてほしいと改めて思う。

パースペクティブをカスタマイズする

Window>Customize Perspective>Tool Bar Visibility

↑上記で、不要なツールバーを非表示にする。(僕はhelp以外は全部チェック外してます)

日本語だと、 ウィンドウ → パースペクティブ → パースペクティブのカスタマイズ を選択。 使わないものはガンガン消した。
私の場合、残ったものは 実行デバッグヘルプぐらい。

こまめにrun garbage collectorしてみる

Window>Preferences>General

↑上記で、Show heap statusにチェック。

すると、heap statusと共にバケツアイコンが表示されるようになるので、こいつをクリックしてこまめにrun garbage collectorする。(ただし、よく忘れる)

日本語版だと ウィンドウ → 設定 → 一般 → ヒープ・ステータスを表示
(これは元々チェックされていました)

本書はIDEに焦点を当てた書籍です。 IDEは豊富な機能が揃っているため、Java開発を行う際, IDE(Eclipse)を使うのはデファクトスタンダードになっています。
開発業務に必須の開発ツールEclipseによる、Javaプログラマーのための決定版入門書。 付録DVDのサンプルを動かしながら、プログラミングを体感学習。

セブン-イレブンの強炭酸水

時折、仕事帰りに買って帰る。
これでハイボールを作ると、割とうまい。
氷はたくさん入れちゃうと炭酸とんじゃうので、少なめで。

https://7premium.jp/product/search/detail?id=59857premium.jp

最近はタラモア・デューを飲んでます。
でももう少しでなくなるので、そしたらラフロイグかなー。
ただ、最近はあのラフロイグ臭さが悪い意味でキレイになってしまったやつにばかり遭遇している気がするので、いい感じの香りのものを購入したいと思っている。ただそういうものを選別する能力がないので、ちょいとリサーチしたいところ。。。

IKEAで買ってよかったもの - 2017 夏

IKEAの紙ナプキンは万能選手でかなり使える!

先日、久しぶりにIKEAに行き、なんとなくなノリで紙ナプキンを買ったら、これが相当便利だした!という話。

www.ikea.com

購入したものは THE シンプル is the best な白い紙ナプキン。
私は食事中などによくティッシュを無駄に使ってしまう(※)人間なのだけど、この紙ナプキンは結構厚手で、かつ吸水性があるので、これが卓上にあるとティッシュの使用頻度が減って、以前よりも無駄なゴミが出なくなった。
机にこぼした食べ物を拭いたりするのにも十分使えるので、あると結構便利。
私が買ったのは白色の100ピースのもの。またIKEA行く機会があったら色違いで購入してみようかしら。

※口を拭いたり、食べ物に触れた手を吹いたり、コップの水滴を拭いたり、などなど。

そのうちコードリーディングしようと思っているオープンソースのプロジェクト

最初に

ずっと"下書き"の状態のまま、保存されていた記事。
最近Rubyを触り始めた、と書かれているので去年に書かれた投稿であると思う。
ふと思い立って読み返してみたら、やはりコールドリーディング欲が掻き立てられたので記事を公開することにした。

ここから本編

f:id:shinshin86:20160911080843p:plain

タイトルのままである。
ソースコードを読もうと思っているオープンソースプロジェクトを幾つか、
自分へのメモがてら書いていく。

Ruby on Rails (Ruby)

github.com

最近Rubyを、そしてRailsを触り始めたので読んでみようと思った次第。

下記の記事もRailsを読もうと思うに至った要因の一つ。

tango-ruby.hatenablog.com

qiita.com


Bottle

github.com

1つのpythonファイルのみで構成されている、軽量なPython製Webフレームワーク。
自身もちょくちょく触っているので、ちゃんと中身も理解しておこうと思った次第。

Bottle自体の解説については、触り始めた当時この記事にとても助けられました。

myenigma.hatenablog.com


Janome (Python)

github.com

Pure Pythonで実装された日本語の形態素解析ライブラリ。
依存ライブラリなしで簡単にインストールでき、とても使いやすい。
ユーザーフレンドリーというのは実に素晴らしい、というのを改めて感じたライブラリでもある。

下記はライブラリの作者自身が書いているDocument。

Welcome to janome's documentation! (Japanese) — Janome v0.4 documentation (ja)

Pythonに触れ始めてまだ間もない時期に出会ったライブラリの一つであり、mocobetaさんはPython使う際の私の目標の一つとなっている。

形態素解析というものがどのように実装されていのか?
ずっと上手くイメージができていなかったので、ソースコードを読んで学んでいきたい。


ここから下は息切れ的なメモとなっています。
後日、加筆していきます。


D3.js (Javascript)

github.com

下記の記事を読み、そのうち読んでみようと思った次第。

D3はJavaScript関数型言語としての側面を最大限に活用して作成されているライブラリです。

shimz.me


kilo (C)

github.com

最近関心を集めているらしい、Salvatore Sanfilippo氏によって開発されたエディタ「Kilo」。
KiloはC言語1000行程度で実装されている、"実用的"なエディタとのこと。

news.mynavi.jp

HTML5テトリス

github.com

今回のブログのテーマとは少し離れるが、勉強としてこちらにも触れておきたい。

www.chrome-life.com


Java関連

Javaオープンソース関連は

d.hatena.ne.jp

qiita.com

個人的に買ってよかった歯磨きペースト

ここ最近、興味が湧いたものについてはすぐに手をのばすようにしている。
今年に入ってから手を伸ばしてみたものをいくつか上げてみると、
サウナにはまり(Podcastでfogmog 森さんと話したのがハマったきっかけだ -> Episode 6 - Sadou's philosophy)、
週末にジョギングするようになり(fitbitとiPod touch + ankerのbluetoothイヤホンの力は偉大である)、
そして今回記事のタイトルになった"歯磨き"にもハマった。

歯磨きにハマった理由

理由というほどでもないが、私はそれほど歯が強い方ではなく、小さい頃からよく虫歯になっていたし、20代もよく歯科医院に通っていた。
どこかでそろそろ歯の健康管理を意識せねばという思いもあったが、他に歯磨きという行為が思いの外、気分転換になるということにも気づいたのである
作業に行き詰まった時に散歩に出るのと同じような効果が、歯磨きにはある。
また、当然のことだが口の中がきれいになると気分も良くなるし、口の中もきれいになるし、いいことづくしだ。
そして、せっかく歯磨きに興味をもったのだから普段使ったことのない歯磨きペーストをこの機会に購入してみようと思った。

この記事は自身が試してみた歯磨きペーストに対する感想を備忘録的に書いている。いわば、個人的な日記のようなものだ。
なお、歯磨きペーストの画像はそれぞれAmazonの商品詳細ページへのリンクとなっている。

コンクール ジェルコートF

見た目に惹かれて購入した。
一般的にミントの香りがしっかりとある歯磨き粉とは香りの種類が違うが、すぐに慣れるし、この香りが好きになる。
またジェル状になっており、泡も不必要に出ないので細かく磨けて良い。
磨き終わった後の歯のツルツル具合に衝撃を受けたと同時に、ちょっとばかりお金を出しても良い歯磨きペーストを使ったほうが良いと思うきっかけにもなった。

クリーニングジェル ソフト

研磨剤入りということで、歯をクリーニングする用途で使われる。
これは毎日は使わずに週二日のペースで使用しており、使用後は上に書いたジェルコートで再度歯を磨く。
最初使った時に多少刺激が強いと思ったが、今では気にならなくなった。
私はよくコーヒーを飲むので歯に着色があるが、これを使い始めてから多少白くなってきたようなきがする。。。あくまで気がするレベルだが。
上にも書いたように週二日ペースでの使用なので、持ちは良い。
引き続き使用して経過をチェックしたい。

余談だが、高校時代にデンタルヘルスに詳しい教師がいて、その方も研磨剤入りの歯磨き粉を週二日で使用していると行っていた。
こういうのを使い続けると歯が健康的な白(正確にはクリーム色)になっていくらしい。

プロスペック歯みがきペースト

最近購入したもの。フッ素配合のよう。
ペーストはジェル状でほのかなミントの香り。これもジェルコートと同様に、泡が少なめなので細かく磨けて良い。
歯磨き後の感じもジェルコートと似ており、良い感じに歯がつるつるになる。
まだ使い始めて日が浅いので、引き続き使用してみよう。

プラッカーズ フロスアップミント

歯磨きペーストではないが、歯磨きを意識し始めて使い始めたフロス。
以前はフロスの、あの歯の隙間に入ってくる感じが嫌いだったが、今となっては食後にこれをしないと気持ち悪いぐらいになってしまった。
おまけに私は歯並びが悪いので、よくものが挟まってしまうというのもある。旅先でも忘れたくない、必需品である。

さて、そのフロスだが、いくつか試してみたが、私はプラッカーズのをよく使っている。
ほんのりとミントの香りがするのも良いが(本当にほのかな感じ)、糸の張り具合が自身の歯に馴染むというのがよく使っている理由かもしれない。

引き続き、機会を見て他のものも試してみる。

Railsで複数テーブルのjsonデータを一度に返したい。

Railsのrender jsonを用いて、複数テーブルのjsonデータを返す方法。

調べてもぱっと出てこなかったので、一応メモとしておく。
(そもそも常識なのかもしれない)
そのため、あくまで個人的な備忘録の意味が強い。

最近RailsAPIを作っているのだが、"render json"で複数の関連テーブルを
1つのjsonとして返したかったので、そのやり方をメモ。

"posts"というテーブルに関連する"comments"と"images"データも一緒に返したいときは、
下記のようにrenderメソッドに記載する。
("@posts"にはpostsデータが入っているものとする。

respond_to do |f|
  f.json { render json: @posts.to_json(:include => [:comments, :images]) }
end


また、関連しないテーブルの情報を"render json"で一度に返すときは下記のようにした。

respond_to do |f|
  f.json { render json: [@posts.to_json(:include => [:comments, :images]), [user: @user.to_json]] }
end

# または

respond_to do |f|
  f.json { render json: [posts: @posts.to_json(:include => [:comments, :images]), user: @user.to_json] }
end

これで希望する情報をjson形式で返せる。
のだけど、あまりこういうやり方が検索情報で出てこなかったので、
rails的にありなのかはいまいち自信が持てない。


※一応、このポストを行う前に同じケースを今一度探してみたが、
たぶんこのstack overflowの記事が該当する気がする。

stackoverflow.com

追記

上記のやり方で出力した場合、postsデータはjson文字列となって出力されるが、
(js側で一度JSON.parseをする必要がある)
下記のようにして取得すると、そのままオブジェクトとして取得できる。個人的なメモとして残しておく。

# postとuserをそれぞれオブジェクトとして取得
respond_to do |f|
  f.json { render json: {posts: @posts, user: @user }}
end

geohotでおなじみのComma.aiが$88でローンチした "Panda"について

日本では上野動物園のシンシンとその赤ちゃんパンダ🐼が話題になっている、ここ最近ですが、
先日geohotことGeorge Hotzの設立したスタートアップ"Comma.ai"のリポジトリを何気なく見に行ったら、
どうやら彼らが新しいプロダクトを作っていることが判明。
プロダクトの名前は"Panda"。
調べてみるとTechCrunchに記事があった。

techcrunch.com


どうやら、日本語版のTechCrunchにはこの記事が翻訳されて掲載されていないようだったので、
簡単にこのブログで紹介する。

なお、私はこれらの分野に関する知識について非常に疎いため、記載内容に誤りがある可能性がある。
その際はコメント欄やツイッターなどから間違いを指摘いただけるとありがたい。

なお、comma.aiとは何か?どういうプロダクトを作っているか?などについては割愛する。

※昨年の彼らの動向について知らない方々のために、下記の記事を参考として貼っておく。

thebridge.jp

bita.jp



Pandaについて

comma – introducing comma three


Panda自体は上記Comma.aiのトップページにも写っている、白と黒のドングルであり、
このようなドングルは例えば"Mojio"のような他のプロットフォームでも使用されているものらしい。

www.moj.io


Pandaは"Chffr"というアプリとペアにすると、車内のすべてのセンサーから録画を開始できるようで、
このChffrは基本的にクラウドに接続されたダッシュカメラであり、事故のビデオを録画したい人や、運転している様子を見たい人に便利なようだ。
iPhone版アプリのサムネイルを見てみたが、色々と情報を取得できそうで面白そうだった。

https://itunes.apple.com/us/app/chffr-dash-cam-that-remembers/id1146683979?at=10l8JW&ct=hatenablog


このChffrを使って得たデータを"Cabana"と呼ばれる、CAN(Controller Area Analysis)ツールで、取り込んで解釈するようだ。

CabanaのDemoはこちらから見れる↓
(アクセスペダルやステアリングコントロールなど、様々なデータが取れていることが分かる)

comma.ai cabana



なお、Pandaは車のOBDII portに繋いで使うらしい。
(1996年以降の車は皆このportを持っているらしいが、車に疎い私にはよくわからない。)


comma – introducing comma three


medium.com


TechCrunchの記事によると、少なくとも1000台を販売すること望んでいるとのこと。
また、現在73人のComma.ai愛好家がテストをしているようだ。


以下はTechCrunchからの記事の引用である

“We’re trying to solve a really hard problem and basically there are only three real competitors:
Waymo, Tesla and us. We’re all coming at it from a different angle,” he said. “I can get a lot of smart people working on it for me if I open everything up like this.”

私たちはとても難しい問題を解決しようとしている。
そして基本的には、Waymo、Tesla、私たちという3つの本当の競争相手しかいない、とのこと。
WaymoやTeslaもクールな企業だし、今後のgeohotとComma.aiの動向からも、やはり目が離せなそうだ。