done is better than perfect

自分が学んだことや、作成したプログラムの記事を書きます。

初心に帰ってKaggleで機械学習勉強し直し始めた話

就職してから2年と少し経ちましたが、最近色々辛くて大学生時代の意識高い系自分に戻りたくなりました。 あくまで意識高い 系 なので、決して高スペックでもなかったですがまだ自分に無謀な期待を持っていた時代が懐かしい。 あの頃を思い出しつつ、あの頃雰…

Log4jのDailyRollingFileAppenderはrollOverするタイミングでプロセスが実行していなくても、次にプロセスが実行されるタイミングでrollOverする話

自分用メモ DailyRollingFileAppenderで、日付でのローテーションを行う設定をする場合、普段ローテーションするタイミングで サーバーなりプロセスなりが落ちていた場合どうするのでしょう。 まずは確認。DRFAだと普段はMidnightにローテーションされる At …

cowsay + fortuneで遊ぶ

参考のサイトを少しいじった程度です。以下を~/.zshrcに記入します。 function random_cowsay() { cows=$(ls -1 /usr/share/cowsay | tr '\n' ' ') cows_array=${(z)cows} num_cows_array=${(w)#cows} random_cows=$(expr $RANDOM % $num_cows_array + 1) co…

LPIC Level 3 (303-150)に受かった

タイトルが全てです。今回、諸般の事情により勉強時間が3日しか取れなかったのでアカンかなと思いましたが、なんとか受かりました。得点は550点と低飛行でしたが・・・;) 使った教材は定番の黒本 そしてこちらのサイトです。 Linux Questions & Answers | Ca…

virtualbox5.1.2 windows 10 anniversary updateでVBoxManageが云々と怒られる件

superuser.com service - Cannot boot Windows guest in VirtualBox without kernel module error - Stack Overflow ここ見るよろし

Windows 10 anniversary update + VirtualboxでBSODを回避する方法

TL;DR Hyper-Vを有効にしてる方は,cmd(管理者権限付き)で以下のコマンドを打って再起動 bcdedit /set hypervisorlaunchtype off 要はHyper-VとVirtualboxの相性が悪いんでしょうかね. Bash on Ubuntu on Windowsが来てうっひょーとなりながらアップデート…

bash -c オプションの細かい話

とある案件でbash -cめっちゃ使いてえな・・・となり,いろいろ見ていたんですが,なんか思っていた挙動と違っていたのでメモ bash -c echo testでtestが出力されると思っていました.ところが・・・ $ bash -c test echo (何も表示されない) どうやら"など…

msys2のexeが変わっていた

またもやmsys2絡みのお話 本日(2016-06-04 09:09 JST)にpacman -Syuして再起動しようとしたら一瞬プロンプト画面が出るんですが消えて何も出ない 以前の話でプロンプト消えるのはそれかなーと,以前の設定に戻してみだんですが,コマンドプロンプト画面が出…

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

個人的に一瞬困ったんで対処 pacman -Syuして,ターミナルを立ち上げようとしたときにcmd.exeが同時に立ち上がるという問題が起こりました. 実害はないのですが,普通に邪魔なのでいろいろ試した結果,いつも起動しているショートカットのプロパティを以下…

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

いろんなtodoアプリを試して、最終的にたどり着いたのがこれ 備忘録でもメモでもtodoでも、とにかくなんでもいいから自分宛にメールを送る。終わったらアーカイブ。 後から検索できるし、やるべきことが未読のメールとして残る。何よりいいのが、メールは自…

Stack OverflowのAPIをPythonから使う

自分用メモ。Pythonは3.5で、Anacondaでインストールしたもの。 最初は標準ライブラリのurllibだけでなんとかしようと思ったんですが、オフィシャル読みに行ったらいきなりrequests使えって書いてあったし、anacondaには標準でrequests入ってる?みたいなの…

Ambariでsnmptrapのカスタム

自分用の走り書きなのであしからず 要は、カスタムするには/etc/ambari-server/conf/ambari.propertiesを編集しカスタムXMLの場所を示す。カスタムXMLは下記のURLを参考にする ココらへんを読むと幸せになれる Pivotal GitHub

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

AmbariのWikiに書いてあるHow to buildは正直不親切なのでは。直したい Environment CentOS 7.2 インストールする必要のあるパッケージを入れる $ sudo yum install -y git python-devel java-1.7.0-openjdk.x86_64 maven python-setuptools rpm-build gcc-c…

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

新年一発目ということで、まずは一冊本を読みました。 入社して9ヶ月が過ぎ、最近落ち込むことしかなくて辛かったので、活路を求めて標題の本を掴んだわけです。 結論から言うと、あんまりすぐ役には立ちそうな内容ではなかったです・・・というのは、自分に…

2016年のやりたいこと・やらないことリスト

あけましておめでとうございます。 今年は大晦日に何かしら「できた!」という感想を持てる年にしたいので、ブログにしておきます。 この記事は後から更新もします。 やることリスト 何かしらのOSSにコントリビュート Apache系のOSSや、GitHubでのコントリビ…

CentOS 6.5から7.2にアップデートした時のメモ

色々あって、VPS上で標題のことを行ってみました。すんなりいけるかとおもいきや結構ハマる。まあ自業自得ですが。 CentOS 6.5のアップデート まずは7.2にアップグレードする前に、CentOS 6.5を最新のバージョンにしておきます。 # yum -y update /etc/yum.r…

「フラッシュボーイズ」を読んだ

「フラッシュボーイズ・10億分の1秒の男たち」(マイケル・ルイス著)を読んだ。前評判通りとても興味深い内容が多く楽しめました(若干訳が読みづらい箇所がありましたが)。 HFT(High Frequency Trade)のことを扱った本で、一般の投資家は意識することもな…

CentOS x 2 on VMware ESXi on VMware Player on Windows 10

上記環境で、取り敢えずCentOS間でのネットワーク疎通ができたのでメモ。 とにかく、 VMware ESXi(ホスト)からCentOS(ゲスト)にSSHしようとしてはならない。 VMware ESXi(ホスト)からCentOS(ゲスト)にSSHしようとしてはならない。 大事なことなので2回言いま…

rm -fをした場合のexit-statusについて

bashにおいて、rmコマンドを使った場合のexit statusについてです。初歩的なことだとは思いますが、自分への備忘録。 結論を先に書くと、rm $PATH_TO_FILEをした時に$PATH_TO_FILEが元々存在しない場合、-fオプションがない場合はexit statusが1となり、-fオ…

Sparkのaggregateが謎すぎたのでメモ

謎っていうのは自分にとってというだけなのであしからず。 初めてのSpark読んでて、aggregate関数なるものが説明読んでもよくわからなかったので、備忘録として今の自分の理解を書いておきます。 あまり良く調べていないので、間違っている可能性大です。後…

自分をよく見せたい欲求

ポエムです.落ちもないです. 新入社員なのですが,最近とある仕事を任せてもらえました.自分で得意ですと公言していた分野の仕事で,喜び勇んでとりかかったはいいものの,失敗してしまいました, 結局その日に行った作業は全てパーで,一からまたやり直…

[読書日記]読んだら忘れない読書術を読んだ

たまには普通の本でも読もうってことで買ってみました.記憶力悪いので結構期待. 感想 ・・・正直微妙.いや,何が微妙って,あまり「記憶に残すためにはこうすればいい!」みたいな本ではなかったので若干期待はずれだったってところです. 「わくわくする…

Debian環境でApacheのMPM確認やMPM切り替えの方法

調べるたびに忘れるので自分用メモ. まだ勉強中なので普通に嘘を言っている可能性があります. 誰か指摘していただけると嬉しいです. ちなみにMPMとはMulti Processing Moduleのことで, リクエストを複数受けた時にどうやって捌くかで違います. 例えば,…

Vimの正規表現で(変数) = (値)となっているものを(変数)だけにする

タイトルではわかりづらいかも知れません.以下の様なことをしたいときです. # このように変数 = 値が羅列されているときに・・・ listen = False command = False upload = False execute = "" target = "" upload_destination = "" port = 0 # こうしたい…

Black Hat Pythonを読み始めた

少し余裕が出てきたので,空き時間を使ってBlack Hat Python: Python Programming for Hackers and Pentesters を読み始めました. 簡単に内容を紹介すると,Pythonでネットワークを覗き見たり,VMにアタックするといった感じでペネトレーションテストなどを…

就職しました

実際入社したのは4/1なんですけどね とあるSIer大手です.正直最近ひどく悲しい出来事しかなくてとてつもなく落ち込んでいるのですが,本年度もブログを続けたいという気持ちを示したかったので本投稿を書いています. 自分の勉強の時間はなるべく削らないよ…

Mac OS ΧでProxy設定をCLIで操作する方法

自分用のメモ。 こちらの記事のとおりです。 例えば、SSH tunnelを使って自分専用のプロキシサーバーとローカルマシンとの間を安全に繋ぎたいときなどにこんな感じに書くと便利です。 #!/bin/bash sudo networksetup -setwebproxystate Ethernet on sudo net…

outlook for iosが素晴らしかった件について

最近はずっとGoogleが出した新しいメールアプリのinboxを使ってGmailのやりとりしていたんですが,この度Microsoftから出たOutlook for iOSが素晴らしかったので乗り換えてしまいました. 詳細な情報はこちらやこちらのサイト様を見たほうが早いかと思われま…

numpy.arrayやscipy.sparse.lil_matrixなどで指定した行だけでできた行列を作る

自分用メモ書き.ある行列から指定した行だけ(例えば[1,3,4]みたいな感じでリストで抜き出したい行が入っているとする)でできた行列を作る. In [1]: choices = [[0, 1, 2, 3], [10, 11, 12, 13], ...: [20, 21, 22, 23], [30, 31, 32, 33]] In [3]: import …

Go言語でPythonのcollections.Counterを簡単に実装してみた

Pythonのcollections.Counterは個人的にすごく好きなんですが,Go言語の練習を兼ねてGo言語で実装してみました. 完璧な実装ではなく,カウントできるのは文字列だけです.また,普通に実装間違えてる可能性もあります.自己責任でよろしくお願いします. Py…

Pythonの文字列連結に"+"演算子は必要ない

Pythonの入門サイトとかだと,文字列連結に+演算子を使うことがよく例示されているようです. s = "this " + "is " + "test" print(s) ==> "this is test" ですが,Pythonにおいて文字列連結には+演算子は必要ないです. s = "this " "is " "test" print(s) …

git diffで日本語の文字化けを治す

このページのまんまです. ファイルはutf-8なのになぜか文字化ける(というか,みたいな表記になってしまう)ので,↑のように設定しました. 環境はMac OSΧ 10.10.1,git versionは2.2.1です. $ git config --global core.pager "nkf -w | LESSCHARSET=utf-8 …

情報セキュリティスペシャリストに受かった

情報セキュリティスペシャリストに受かった 表題の通りです.大学院生の間に高度試験に一つは受かっておきたかったので目標が叶いました. 行った対策などを残しておきたいと思います. 情報セキュリティスペシャリストとは? 独立行政法人であるIPAが行って…

Pythonを始めた時から知っていたかったベターな書き方

かなり基本的な内容です.それと記事に一貫性があるわけではないです. 1. with statement 定番のwithです.ほとんどの場合で使えると思うので,積極的に使いましょう. Goでは同じようなことをdeferを使ったりしますね. # not good... f = open("./test.tx…

指定ディレクトリ(デフォルト: カレントディレクトリ)の指定サイズ以下(デフォルト: 4096 bytes)のファイルを削除するスクリプト

を作りました。 大量にファイルをダウンロードした時にゴミがいっぱいある時、一時ファイルを削除したいときなどにお役立てください。 Python3依存です。 gist

Numpyで1-of-K表現を簡単に作る方法

愚直にやるとめんどくさそうでしたが、結構簡単に出来たのでメモ。 一応、1-of-K表現とは、ある要素だけが1で、それ以外が0なベクトルです。 [0, 0, 1, 0, 0] みたいな奴。 ここでは、あるidxの要素が1、それ以外が0であることがわかっていると仮定する。 im…

Go言語でのSet(集合)型について

Pythonとかではset型が標準でありますが、Go言語には標準ではなさそうなので調べてみたら便利なライブラリが見つかったので簡単に紹介。 deckarep/golang-set 使い方は以下のような感じです。 package main import ( "fmt" "github.com/deckarep/golang-set"…

Go言語のencoding/gobは1GBまでのファイルしか読み込めない

結構悩んだのでメモ。あるmapやsliceなど、何かしらのデータの入った変数をファイルとして書き出して、後で利用したいことがたまにあります。 Pythonならpickleなどを使いますが、Go言語ではencoding/gobという標準ライブラリを使うと似たようなことができる…

Yosemiteに入れたアプリ

前回の続きです。取り敢えず最低限な感じで自分に必要なソフトを入れました。 GUIなアプリケーションのみで、CLIは含んでいません。 Google Chrome なんだかんだいって外せません。そういえば最近ChromeのアプリでMarxicoというアプリを入れました。雰囲気は…

Yosemiteを入れてからやったこと(クリーンインストール)

Mac miniが2年ぶりにやっとアップデートされたので買ってきました。某掲示板では結構酷評ですが、自分は今の所満足しています。Yosemiteでの環境構築を一から書いてみます。 homeの暗号化 Mac標準のFileVaultを使用します。システムの環境設定→セキュリティ…

GNU/LinuxやWindowsに入れたいフリーソフト

特にGNU/Linuxとかだと割りと頻繁にOSセットアップすることがあるので、個人的によく使うソフトを書き出してみます。 GNU/Linux (Ubuntu) Google Chrome ド定番ですね。OSを選ばず使えるのが本当に便利でよく使っています。Firefoxでもいいのですが、やっぱ…

脱Googleについて考えてみる

TL;DR やっぱ無理 気がついてみると、世の中Googleに完全に支配されている。検索エンジンのみならず、ブラウザ、IME、Android、Chromebook、将来的には車の自動運転やら原義通りのアンドロイドやら出てきそうな勢い。 別にGoogle嫌いではないし、むしろ好き…

Matplotlibで株価の推移を時系列で表示する

株や統計の勉強を兼ねて、まずはPython3+matplotlibで株価の推移を見てみることにしました。 シンプルにX軸に日付、Y軸に株価(終値)をプロットしてみます。 1. データ 今回使用するデータはk-db.com様からダウンロードしました。 一部抜粋すると、以下の様な…

プログラミング言語別ソースコードのエンコーディング規約

2014年になっても文字コードには悩まされることはしばしば。 最近だと取り敢えずUTF-8ということが多いですが、 プログラミング言語だとどうなっているのかちょっと気になったので調べて纏めてみました。 プログラミング言語の選定には特に意味はありません…

Go言語でコマンドラインAA表示

Go言語で予め用意しておいたAAをランダムに表示するプログラム書いてみました。 はっきり言って実用性は皆無です。text/templateを使ってみたかっただけです。 プログラムとテンプレート // aacreator.go package main import ( "fmt" "io/ioutil" "log" "os…

Go言語でNgram (with channel)

Go言語で簡単なN-Gramのカウント部分(tokenに分割し、カウントするだけ)を実装してみたいと思います。 ただ実装するだけではつまらないので、channelを使って少しでも早くしてみます。 以下で出てくるGo言語のソースコードで、最初の行に書かれているのはフ…

7つのPythonにおける正規表現例 (Re Match Search FindAll)

7 Python Regular Expressions Examples – Re Match Search FindAlの一部翻訳+αです。 正規表現は特に混乱することが多いのでメモ。一部端折るので必ず元記事の方も参照して下さい。 また、必要に応じてPythonの公式ドキュメントも参照しています。 Pythonの…

Go言語のArrayとSliceについて

Go言語のArrayとSliceについて 調べるたびに忘れるのでメモしておきます。 基本的にGo Slices: usage and internals に基いています。 というかほとんど直訳です。 Introduction Sliceは他の言語のArrayに似ているが、違う部分がある。 Arrays Slice型はGo言…

bzip2とgzipのParallel版、pbzip2とpigz

bzip2とgzipのParallel版、pbzip2とpigz 巨大なテキストファイルを圧縮する必要に迫られたのですが、標準のbzip2やgzipは並列処理に対応しておらず、今どきのマシンだともったいないです。 そこで調べてみると、それぞれのParallel版が見つかりました。pbzip…

Pythonでのanyの速度

Pythonにはanyやallといった便利な関数があります。 こちらのサイトに、 しかし特にany関数では、ジェネレータ式を使用した方がパフォーマンスが良いと思う。 と書いてあったので、せっかくなのでipythonに慣れることも兼ねて簡単に計測してみました。 結果…