done is better than perfect

自分が学んだことや、作成したプログラムの記事を書きます。すべての記載は他に定める場合を除き個人的なものです。

msys2のexeが変わっていた

またもやmsys2絡みのお話

本日(2016-06-04 09:09 JST)にpacman -Syuして再起動しようとしたら一瞬プロンプト画面が出るんですが消えて何も出ない

以前の話でプロンプト消えるのはそれかなーと,以前の設定に戻してみだんですが,コマンドプロンプト画面が出るだけ

最終的に,C:\msys64\msys2_shell.batがなくなっていて,C:\msys64\msys2.exeを直接ダブルクリックすればいけることに気づきました.もしかしたらオフィシャルとかで書いてあったのかもですね(よく調べてない)

msys2のminttyを起動した時にcmd.exeが同時に立ち上がる問題への対処

個人的に一瞬困ったんで対処

pacman -Syuして,ターミナルを立ち上げようとしたときにcmd.exeが同時に立ち上がるという問題が起こりました.

実害はないのですが,普通に邪魔なのでいろいろ試した結果,いつも起動しているショートカットのプロパティを以下のように 弄ることでcmd.exeの窓が消えるようになりました.

前: C:\Windows\System32\cmd.exe /A /Q /K C:\msys64\msys2_shell.bat

後: C:\Windows\System32\cmd.exe /A /Q /C C:\msys64\msys2_shell.bat

取り敢えず動きますが,もしかしたら何か副作用ががあるかも知れません. 取り急ぎ.

備忘録として自分にメールを送る

いろんなtodoアプリを試して、最終的にたどり着いたのがこれ

備忘録でもメモでもtodoでも、とにかくなんでもいいから自分宛にメールを送る。終わったらアーカイブ。

後から検索できるし、やるべきことが未読のメールとして残る。何よりいいのが、メールは自然と毎日見る習慣があるから、後から思い返しやすい。

高度に使いたければフィルタリングとかしてフォルダ分けとかしてもいいけど、取り敢えず自分は細かいこと気にせずフリーフォーマットで書くようにしてる。

しばらくはこれでいきたい。

Stack OverflowのAPIをPythonから使う

自分用メモ。Pythonは3.5で、Anacondaでインストールしたもの。

最初は標準ライブラリのurllibだけでなんとかしようと思ったんですが、オフィシャル読みに行ったらいきなりrequests使えって書いてあったし、anacondaには標準でrequests入ってる?みたいなので、素直にそうしました。(ただ、無意識に自分でpipなり使ってインストールしていたのかも知れません。)

requestsはHTTPプロトコル扱うのにとても便利なライブラリらしいです。確かにサンプル触った感じとても良さそう。

Stack Overflowについてはもはや説明不要ですね。Stack Exchangeという会社が運営しているそうですが、よくわからん。

APIのドキュメントはここ読めば良い感じ。

今回は取り敢えず、Apache Hadoopにタグ付けされている質問をAPIで取ってきます。

In [1]: import requests

In [2]: url = "https://api.stackexchange.com/2.2/"

In [3]: r = requests.get(url + "questions?tagged=hadoop&site=stackoverflow")

In [4]: r.status_code
Out[4]: 200

In [5]: j = r.json()

In [6]: for k in j:
   ...:     print(k)
   ...:
has_more
items
quota_max
quota_remaining

取れてますね。これだけできれば後はなんとでもなりそう。便利

Ambariでsnmptrapのカスタム

自分用の走り書きなのであしからず

要は、カスタムするには/etc/ambari-server/conf/ambari.propertiesを編集しカスタムXMLの場所を示す。カスタムXMLは下記のURLを参考にする

ココらへんを読むと幸せになれる Pivotal

GitHub

Ambariのテスト&ビルド環境のメモ書き

AmbariのWikiに書いてあるHow to buildは正直不親切なのでは。直したい

Environment

インストールする必要のあるパッケージを入れる

$ sudo yum install -y git python-devel java-1.7.0-openjdk.x86_64 maven python-setuptools rpm-build gcc-c++  npm nodejs
$ sudo npm install -g npm@2.1.11
$ sudo npm install -g brunch@1.7.20

Buildやテストをする前に

~/.bashrcに追記

export PATH=/usr/local/apache-maven-3.0.5/bin:$PATH
export _JAVA_OPTIONS="-Xmx2048m -XX:MaxPermSize=512m -Djava.awt.headless=true"

Unit tests

  • mvn clean test

参考文献

マッキンゼー流 入社1年目問題解決の教科書を読んだ

新年一発目ということで、まずは一冊本を読みました。

入社して9ヶ月が過ぎ、最近落ち込むことしかなくて辛かったので、活路を求めて標題の本を掴んだわけです。

結論から言うと、あんまりすぐ役には立ちそうな内容ではなかったです・・・というのは、自分にとって目新しい内容がなかったからです。 新入社員研修でやったような内容ばかり。

内容そのものがつまらなかったとという訳ではないのです。天下のマッキンゼーでも突拍子もないことをやるというよりは、 基本を確実に行っているというのは興味深かったです。やはりどんなことでも基本が大事ってことですかね。 そこが難しいのですが・・・

マッキンゼーでは新入社員であっても完璧な仕事を求めているということは中々刺激を受けました。 細かい内容は本を読んでいただきたいですが、新人だからといって求められる仕事の品質が高く、こういうことの積み重ねが 会社全体のブランドとなっていくのではと思います。

自信喪失中の身分ですが、だからこそ今年は基本に忠実に、泥臭くやっていきたいです。