2014年1月14日火曜日

アメブロまたはBloggerでMarkdownでブログを書くためのmd2ameblo作った話

http://md2ameblo.herokuapp.com/ (ソースコード )

といっても半年以上前に作ったやつなんですが、今回Angular.jsを使ってUIをけっこう変えたのであらためて告知。

これは何?

MarkdownのテキストをアメブロやBlogger向けのHTMLに変換するヤツ。作ろうと思ったきっかけは会社でエンジニアブログを書かなくてはいけない時に、アメブロのエディタがアレ過ぎて辛かったので(*1)ついカッとなって作った。

*1) HTMLタグを書くエディタモードでも、改行が勝手にbrとか挿入されてm9(Д)プギャーってなる

自分の使い方

自分はブログはBloggerで書いていて

  1. wri.pe でMarkdownで記事を保存
  2. md2ameblo でHTMLに変換
  3. Bloggerのエディタにコピペ
  4. 「ブログに書いた」という意味合いでwri.peで該当の記事をアーカイブ

という感じで使ってる。今年は昨年よりもっとブログを書こうと思っているので、ガンガン使っていく所存です。

使った技術

  • Angular.js
  • Python (サーバサイド)
    • bottle
    • misaka - MarkdownをHTMLに変換するライブラリ
  • Heroku

データベースも使ってないのでHerokuに置いてある。git push でディプロイできてHeroku超便利。

今後

やっぱり変換かけるのが面倒なので、wri.pe的なエディタ作ってそこからワンクリックでBloggerに投稿するやつを作り中。

アメブロ Perfect GuideBook
posted withamazlet at 14.01.13
榎本 元

ソーテック社

売り上げランキング: 3,535

2014年1月4日土曜日

ヨドバシドットコムが始まり過ぎてる件

最近は日用品はスーパーやドラッグストア、アマゾンで買っていたんだけど、下記のものについてはヨドバシドットコムで買うようになった。利用しているうちにヨドバシの13時注文分までは無料で当日配送、品揃えの豊富さについてすごいなぁと思うようになってしまったので、その素晴らしさをここに書いておきたい。

  • 日用品
    • 歯磨き、ティッシュ、洗剤などの掃除用品、アルカリ電池など
  • 電化製品
    • USBメモリなどの小物から掃除機、加湿器などの大型のものまで
  • 書籍
  • ゲーム

「なぜヨドバシなのか」は以下の通りである。

13時までに注文すれば当日配送

対象に地域でかつ在庫があれば、という条件付きだけれども、13時までに注文すれば無料で当日配送してくれるのは本当にありがたい。自分はアマゾンプレミアム会員ではなかったんだけど、ヨドバシを利用するようになってからこの当日配送のありがたみがすごくよくわかった。

ポイントがつく&品揃えが豊富

だいたいのものは10%のポイントがつく(書籍は例外的に3%)。日用品は近所のドラッグストアで買うよりヨドバシのポイントがつくほうがありがたいし、購入して家まで持って帰ってくるのがだるいのでヨドバシで売っている日用品は軒並みヨドバシで買うようになってしまった。ネット通販だと家にある在庫を確認しながら注文できるのも利点の一つ。

猫を飼っているので、これでペット用品があれば言うことないのになぁ。

あえてアマゾンではない理由

「アマゾンの方が品揃え豊富じゃん」というのはその通りでアマゾンすごく便利なんだけど、アマゾンやアップルのように日本で大々的に商売しておきながら法人税をちゃんと払っていない企業は正直どうかなと思う。というわけで、ポイント込みの値段がヨドバシとアマゾンでほぼ同じならば自分はヨドバシで買うようにしている。

結果としてアマゾンで買うものは以下のものに限定されてしまった。

  • ヨドバシにない商品
  • Kindle書籍
  • 中古書籍

まとめ

今後も打倒アマゾンを目指して頑張ってほしいなぁと思う。興味がある人はこのへんも読んでみると良いと思います。

2013年12月31日火曜日

2013年を雑に振り返り

今年もあと1時間弱で終わりそうってことで振り返りをしてみる。もう1月1日まで時間がないのですごく雑になっちゃったw

仕事

  • ORMapper作った
  • サービスの新規立ち上げ3本をお手伝い
  • Chef覚えた
  • Fabric覚えた
  • MySQL 5.6実戦投入した
  • Jenkinsが嫌いになった

プライベート

まとめ

今年一番の思い出はISUCONの予選に惨敗したことだった。自分のショボさを思い知らされた&界隈で凄腕とされるエンジニアの人たちは本当にすごいんだなぁということをすごく痛感したイベントだった。もっと貪欲になってスキルを磨かないとなと思ったのと、とにかくレベルの高い人たちと一緒に仕事をしたいと前にも増して思うようになった。あと、仕事では相変わらずやっていることが1.5年前と変わらなくなってきたので、今年の年末年始はUnityで糞ゲーでも作ろうかと思っている。しかしUnity覚えることが多くて大変&糞ゲーを作るにも才能が必要なのだと感じているところ。

プライベートでは猫(ししまる)を飼い始めたのが一番大きかった。猫なのにやたら人なつっこくて(家に帰ってくると玄関までダッシュしてくる)、本当に毎日癒やされている。奥さんともいっつもししまるの話ばっかしている。

年越し蕎麦を狙うししまる

そして来年は家族構成がインクリメントされるので、家でも仕事ももっと濃い時間が過ごせるように頑張っていこうと思う。来年も皆さまよろしくお願いします。

2013年12月30日月曜日

ncコマンドでmemcachedにコマンドを送りつける

開発用のサーバでmemcachedのキャッシュを全消しするために flush_all をよく使うんだけど、telnetで対話的にコマンド送り込むのだるいのでそういう場合はnc(netcat)を使えばいいよー、という話。

下記はlocalhostの11211でLISTENしてるmemcachedにflush_allを送りつける例。

$ echo flush_al | nc localhost 11211

2013年12月28日土曜日

IntelliJ IDEAを使いやすくするための設定とか

3ヶ月前ぐらいからPython、RubyやJavaScriptなどのスクリプト言語でコードを書く時はIntelliJ IDEA(有償版)を使うようになった。以前はEmacsユーザだった。乗り換えた理由としては

  • IntelliJを試しに使ってみたらけっこう使い勝手が良かった
    • 例えばPythonだと、SDKの設定さえすればimportしているモジュールのメソッドに簡単にジャンプできたり、変数や関数などのシンボルも可能な限り補完してくれる
  • Emacsの設定をするのが辛くなった(プログラマとして恥ずべきことであるのは知っている)
  • IntelliJが様々な言語に対応しているため、これ一つあれば大丈夫感が強い

などだろうか。有償版はパーソナルライセンスで2万円ぐらいだけど、そのぐらい払う価値はあるかなぁと今のところ感じている。ただ、そんなIntelliJさんもやっぱり使いづらいところはあるので、個人的に必ず設定している項目を書いてみる。なお環境はMacで、IntelliJのバージョンは13。

概念とか

Eclipseユーザの人はEclipseユーザの為のIntelliJ IDEA QA を読むといいと思う。Eclipseとの違いが書かれている。ちなみに自分はJavaを書く時はいまだにEclipse使ってるw 長年蓄積された手癖というものがどうにも捨てられない。

プラグインのインストール

IntelliJでPythonやRubyを書くにはプラグインをインストールする必要がある。PreferencesのPluginsからポチポチ選択する。自分が入れているのは下記。

  • Python
  • Ruby
  • NodeJS
  • Scala
  • ReStructuredText

IDEAが使うJVMを変更する

IntelliJはJVM上で動く。そのJVMを変えたい場合は

/Applications/IntelliJ\ IDEA\ 13.app/Contents/Info.plist を下記のように修正

<key>JVMVersion</key>
<string>1.6*</string>
       ↓
<key>JVMVersion</key>
<string>1.7*</string>

IntelliJ IDEAのヒープサイズ

Version 12以降は /Applications/IntelliJ IDEA XX.app/bin/idea.vmoptions を ~/Library/Preferences/IntelliJIdeaXX/ にコピーして編集する。自分は下記のようにしてる。

-Xms768m
-Xmx768m
-Xmn384m
-XX:MaxPermSize=384m
-XX:ReservedCodeCacheSize=96m
-XX:+UseCodeCacheFlushing
-XX:+UseCompressedOops

設定のimport/export

Preferences -> File -> import settings / export settings

でできる。SDKの設定はexport/importしない方が無難かもしれない。

エディタのタブの設定

Preferences -> Editor -> Editor Tabs

以下の2つの設定をデフォルトから変えている。

  • Show directory in editor tabs for non-unique filenames: ファイル名が同じものを開いている場合ディレクトリ名を表示
  • Mark modified tabs with asterisk: 編集されたファイルのタブにはアスタリスクをつける

エディタ上でコピペした時に自動でフォーマットしない

コピペする時に勝手にフォーマットしてくれて元のテキストの体裁を維持してくれない場合があるので、自分はCmd + V でペーストした場合の挙動を変えている。

Preferences -> Keymap -> Paste Simple にCmd + V を割り当て

英語のスペルチェックをオフ

造語などにいちいち波線がついてうざいのでオフにしてる。

Preferences -> Inspections -> Spellingのチェックを外す

クォートやカッコを自動挿入しない

自分はこういうのオフにする派。

Preferences -> Editor -> SmarkKeys -> Insert pair bracket

エディタで表示しているファイルとプロジェクトのツリーの選択ファイルを同期する

Eclipseではデフォルトで有効になっている機能。ファイルが多いプロジェクトだとこの機能ないとつらい。

  • プロジェクトを開いた状態で、projectの設定(歯車みたいなやつ)をクリック
  • Auto Scroll from Sourceにチェックをつける

2013年12月14日土曜日

環境をリセットする

最近日々思っていることを文章にしてみる。特に深い意味はないし結論もない。

何年も同じ会社や部署にいると、自分の立ち位置・イメージみたいなものが凝り固まってくる。「この人はすごいデキる人だ」「この人と一緒に仕事をすればいいものが作れる」とか、もしくはその逆。こうなってくると自分は定期的に「ああ、リセットしてゼロからやり直したい」と思ってしまう。いわゆるダーマの神殿行く的な?おそらく頻繁に転職する人だったり部署異動する人はこういうリセット志向が強い人だと思う。

例えば転職して新しい会社でまわりは誰も知らない人だと、早く一人前に仕事できるようになってまわりからの期待に応えたいと思うし、そうやって信頼を勝ち取って行くのは自分にとってもすごく嬉しい。何より転職前に比べてモチベーションは圧倒的に高い。

なので、頻繁に転職するいわゆるジョブホッパーな人は、ネガティブに見れば「どこの組織でもうまくやれてない」可能性もあるんだけど、上のようなリセット力の高い人もけっこういるんじゃないかなぁと思うし、そういう人はいろんな環境・仕事をやってて経験豊富で優秀だったりする。でも世間ではあまりこういう考え方が浸透していない気がしていて残念。

2013年12月7日土曜日

MacでターミナルからSublimeTextでファイルを開く

こんな感じでPATHが通っているところにsublコマンドのシンボリックリンクをはってやる。

$ ln -s /Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl /usr/local/bin/subl

で、あとはsublコマンドでファイルなりディレクトリを開けばOK。