yunomuのブログ

プログラミング関係

sudoの時のPATH

sudoでコマンド実行しようとしたらcommand not foundになる。 sudo -iなら動きはするんだけど、カレントディレクトリが~rootになるのがあまり面白くない。sudoの環境変数ってどこから読まれるんだろう……という話。最初はrootとかそのユーザの環境変数が読ま…

fluentdのpluginを書いてみた: fluent-plugin-diskutil

仕事飽きたからfluentdのpluginを書いて遊んでいたよ。これを試してみたくて。 fluentdのためのプラグインをイチから書く手順(bundler版) - tagomorisのメモ置き場作ったのがこれ。 yunomu/fluent-plugin-diskutil · GitHub例がoutputだったのでinputの方を…

mighttpd2を使う

mighttpd2で遊んでみようと思う。 前に一度ビルドしてみようとして失敗したことがあったんですけど、なんとなくそれはそういうもんだというのがわかってきたので、それはそれで再挑戦してみよう。ということで、とりあえず % cabal instal mighttpd2 でいい…

Macでターミナルからアプリケーションを立ち上げる

Mac

Macはターミナルをメインで使っているんだけどたまにFinderを開きたい事があったりTextEditでファイルを見たい時があって。 Windowsだとstartコマンドでファイルやフォルダを開いたりするところなんだけど、Macだとどうやってやるんだろう。openコマンドでや…

なんでもアリ

プログラミングコンテストとか苦手なんだよねぇ。 でも「FizzBuzzで一番笑わせた奴が優勝」とか、そういうのならやりたい。なんて言ってたら大学の後輩がこんなのを教えてくれた。IOCCCで出てたFizzBuzz(?)のCode Golf(?)らしい?dev.c #include"/dev/tty" …

tmuxを導入

時代はtmuxらしいですよ。Terminal Multiplexer MacPortsに入ってるのでインストールは簡単です。だいたいscreenと同じように使えるらしいです。デフォルトのprefixがC-bっていうのはscreenを意識してるんですかね。まあC-aよりはマシですけど、適当に変えち…

redmine_projects_sorter ver.1.0.0

githubでwatcherが増えてたので、いい加減バージョンを1以上にしよう。しました。yunomu/redmine_projects_sorter at v1.0.0 · GitHub今回はDBを変更するのでmigrateが必要です。 % git clone git://github.com/yunomu/redmine_projects_sorter.git vender/p…

gitでタイプミスした時に出るアレ

かみまみた % git statsu git: 'statsu' is not a git command. See 'git --help'. Did you mean this? status これ。この"Did you mean this?"ってのどうやって出してるのかなって思って、とりあえずgitのソースをgrepしてみたけど(ソースはFri Mar 23 14:…

Parsecを使って正規表現の代わりにパーサを与えるgrepのようなものを作る

Haskellやるならパーサ作っておかなきゃいけないかなって。ということで試しにIPv4アドレスのパーサと、正規表現の代わりにパーサを与えるgrepのようなものを作ってみようかなと。 完成イメージはこんな感じ。(実際にはこの記事のコードの完成直前に固まり…

HaskellでOSコマンド実行

当たり前の事を当たり前にやりたいよね。ちょっとしたスクリプトを書く時に、OSのコマンドを実行してその結果をgrepしてcutしてとか、そういう事をよくやる。Haskellでやるかどうかっていうのは別として、そういうのってどうやるんだろうと思って。 grepとか…

getLineでファイルを最後まで円満に読む

UNIXっぽいストリームっぽいコマンドが作りたい。 といった時に、入力を「最後まで」読むにはどうしたらいいのという話。何も考えずにcatっぽいのを書くとこうなる。catじゃなくてechoだな。 import System.IO main :: IO () main = do l <- getLine putStrL…

Redmineのプロジェクトの並びが気に入らない その3

まだやってました。でも大枠は完成って感じです。 Redmineのプロジェクトの並びが気に入らないという話なのにHaskell書いてた - yunomuのブログ Redmineのプロジェクトの並びが気に入らないという話その2 Redmineプラグイン試作 - yunomuのブログ ちょっと前…

Hoogleをローカルで使う

Haskellのマニュアル検索のHoogleってシステムがある。 http://www.haskell.org/hoogle/ 便利なんだけど、manに慣れた我々としてはコマンドで使いたいじゃない。Erlangもmanっぽいの用意してくれてるし。 ということで、パッケージがありそうなので入れてみ…

ApacheでUserDir以下でCGIが実行できない

ApacheでUserDir以下でCGIが実行できないという話。やったこと。 mod_userdirを有効化。 <IfModule mod_userdir.c> UserDir public_html </IfModule> ...... <Directory /home/*/public_html> AllowOverride All </Directory> userのディレクトリをotherが読めるようにする。 # chmod 755 /home/user CGIを実行できるようにする。 # cat > ~/…

Redmineのプロジェクトの並びが気に入らないという話その2 Redmineプラグイン試作

前回の続き。 Redmineのプロジェクトの並びが気に入らないという話なのにHaskell書いてた - yunomuのブログ前回は、プロジェクトの並び順が気に食わないのでデータ構造を調べてアルゴリズムを考えてみたという話でした。 今回はそこら辺をなんとかするRedmin…

Redmineのプロジェクトの並びが気に入らないという話なのにHaskell書いてた

Redmineを使おうと思ってセットアップしてみたんですけど、なんか、プロジェクトのソート順が気に食わないというか。 プロジェクト1, 2, 3があって、そのサブプロジェクトがそれぞれあって、 1. 1-1 1-2 1-3 2. 2-1 2-2 3. 3-1 3-2という風に、当たり前のよ…

GHCをビルドする

その昔、ソフトウェアのインストールというのが一大イベントだった時代があったという。って20年前くらいですけど。 なぜ難しいかというと、今のようにパッケージ管理なんてものは無かったし、そもそもバイナリ配布できるほどいろんなものの規格が統一されて…

Haskellでインタプリタみたいなのを実装する時のBufferModeの事

Haskellはもういいよって言いながらまたHaskellの話。Haskellでdcっぽいのを作ってる時、 Haskellでdcっぽいのを作る その1 - yunomuのラクに生きたい Haskellでdcっぽいのを作る その2 型安全とは - yunomuのラクに生きたい 両方とも最後に「なんかコンパイ…

AmazonLinuxにAWSSDK-for-Rubyを入れようとしたら面倒くさかった話

なんかもうすっかりソフトウェアインストール日記ですね。AWSSDK-for-Ruby自体は実はgemで入るのでラクなもんなんですが、 # gem install aws-sdk ↑こんな感じ。 とにかくデフォのAmazonLinuxにはいろんなものが入っていない。びっくりするくらい入ってない…

fluentをインストールしようとしたらRubyがちょっとめんどくさかったのでRVMを入れた話

fluentを入れる。 # gem install fluentd ERROR: Error installing fluentd: fluentd requires Ruby version ~> 1.9.2. えー # ruby --version ruby 1.8.7 (2011-06-30 patchlevel 352) [i386-linux] ええーということで、ついに私もRVMを入れる時が来てしま…

CentOSにソースからHaskell Platformを入れる

Haskell Platformってyumに無いの?ブログタイトルを「ラクに生きたい」にしたのに、ソースから入れる記事とかHaskellで悩んでる記事ばっか書いてるとなんか裏切ってる気が。いっそGentoo使いになって「苦労を買ってでもやるブログ」とかにしようかというこ…

Haskellでdcっぽいのを作る その2 型安全とは

Haskellでdcっぽいのを作る その1 - yunomuのラクに生きたい これを書いてから、なんか、なんとなく気持ち悪い感じで日々を過ごしていたんですが、 なんていうかアレですよ、「それモナドにしないの?」って、言われているような気がしていて。参考:「モナ…

Haskellでdcっぽいのを作る その1

「Haskellやると彼女ができる」という都市伝説がある。そういえばスタートHaskell第0回参加の時のアンケートで「なぜHaskellを始めたいか」って聞かれて「彼女ができると聞いて」って答えた気がする。そして私はHaskellを勉強しはじめてしまったので、今私に…

縦分割できるscreenとあと設定とか

だいたい長文を書くときは酒を飲んでいるわけなんですけど、ここを見ていた同僚から「書いてる途中の酒量を明らかにしろ」って言われたので、書いてみようか。 ここまでは0ml。いやうそ、ビール2口飲みました。で、ネタ作るための作業してるうちに500ml缶が…

プログラマと数学

割とよく「数学わかんないしプログラミングなんて」とか「数学のできないプログラマなんて」とか、逆に「数学できなくてもプログラミングはできる」とか、そういう言葉を聞きます。よね? 私は聞きます。言いますし。 私は数学苦手だけどプログラミングは割…

Mighttpd2のビルドしようかと思ったけれど

結論から言うとできてません。やたら早く目がさめたので遊んでる。Haskellはもういいよって言ったけど、なんか適当なHaskell実装は一度は見てみたいなぁとは思っていて、Mighttpd2のソースを見てみたら案外量が少なかったのでちょっとやる気が出た。気になる…

Erlangをソースから入れる

なんかちょいちょい電車の中から広告で見てた水樹奈々のTHE MUSEUM IIのジャケットがかわいかったから衝動買いして、それについてたPVを見ながらこの記事を書いています。 かわいいなぁ。 とかやってるうちに終わりましたけど。 まどか☆マギカ見よう。最近、…

エンジニア的コミュニケーション

前回までのあらすじ 2つ前の記事で「記事書くのに時間がかかるようになって一度ブログやめた」みたいな事を書いていますけど、理由は前回の記事で一目瞭然でしたね。 要するに前回の記事は 「CでB-Treeを実装してGitHubに置きました」 以上終わり。長いんだ…

普通のやつらの下を行け

慣らしでちょいと文章書いてみましょうかね。ビール片手に。お仕事ではいわゆるアプリケーションレイヤのプログラムを書くことがおおい?かな? いや割と鯖缶的な仕事が多いので自分用のツールをシェルスクリプトでちょちょっと書くようなのが多いかな。まあ…

ブログ

ブログ、といえば、日記と技術ネタとゲーム、半分くらいゲームの感想半分くらい日記みたいなやつを実は5~6年ほどやってたんですけど、徐々に記事を作るのに時間がかかるようになってきて、一旦やめると「あ、なんだ記事書かなくても生きていけるんだ」と気…