プログラミング

Nighthackに参加してきた

12/21に秋葉原コワーキングスペースCEROで開催されているNight_Hackに参加してきました。 12時半くらいに会場にイン。 それからは雑談しつつ、ずっと開発していました。 今回は、数独を解くプログラムを作ってみました。 まだ必要なアルゴリズムの実装が一つ…

新人女子プログラマの書いたコードを直すだけの簡単なお仕事をしてきた

ちょっと前にはてブとかで話題になっていた新人女子プログラマの書いたコードを直すだけの簡単なお仕事です!|paizaオンラインハッカソンVol.1をやってみました。 最初は言語の勉強を兼ねてJavaで書いていたのですが、どうにもテストケース3が通過できなか…

PythonでMockを使ったユニットテスト

PythonでMockを使ったユニットテストを書いてみる。 Python3.3以降は標準でMockが使えるようだけど、Python2.7系では標準では入ってないのでインストールする。 $ pip install mock サンプルコードは以下に。 # -*- coding:utf-8 -*- import unittest from m…

Python + PypeRでPythonからRをつかってみる

Pythonは機械学習周りのパッケージは充実している感じがあるのですが、どうにも統計周りのパッケージが不足している感じがあって、PythonからRを叩くパッケージを試してみることにしました。 PythonからRをつかうパッケージとしてはRPy2が有名っぽいですが、…

Pythonとscikit-learnで単回帰分析

前回の記事で整えたPython環境で単回帰分析をしてみます。 単回帰分析というのは単純に言えば各データ(x1, y1)・・・(xn, yn)からy=ax+bという式を推定するということです。 推定したyの値と実際のyの値の差の自乗値を最小とするような直線を引きます。 0. …

ニコニコデータセットで「www」と「GJ」コメント数の散布図を描く

ニコニコデータセットで、少し分析してみました。 今回は「w」と「GJ」に相関関係はあるかなーというもの。 感覚的には、動画中で笑うタイミング、つまり「w」ってコメントするタイミングがある動画ほど、最後に「GJ」ってコメント打つことが多いんじゃな…

Pythonで統計の環境構築から集計とグラフ描画まで

これまでRとかExcelとかで回帰分析やってたけど、Pythonでもできるように環境整えるところから始めます。 メモって置かないと次、構築するときに忘れるのでメモです。 OSはWindows7(64bit)で試しましたが8でも同じはず。 Pythonは2.7.5(32bit)。 0. Pythonの…

「あの楽器」ActionScript版(続き@ハッカソン)

ハッカソンに参加したときに、あの楽器をマルチタッチに対応させようかということで、途中で飽きたActionScript版をいじっていました。 mia-0032/anogakki_as · GitHub 結果としては、マルチタッチ対応どころか、タッチ後に図形を回転させるって処理でつまづ…

ActionScriptでHelloWorldと簡単なユニットテストやってみた(FlexプロジェクトとASプロジェクト)

一昨日くらいからActionScriptも触り始めたのでちょっとやってみた。型を変数名の後ろに書くのは何か慣れないなー。Flexプロジェクト ASプロジェクト

「あの楽器」プログラムをActionScriptで途中まで書いてみた

一応、□と○がランダムで表示されて大きくなって消えるくらいまでは書けた。 一昨日くらいからActionScriptさわりはじめて、このプログラム書いてだいぶ感覚をつかんできた感じはある。 けど、やっぱり変数名の後ろに型を書くのは慣れないなー。 あと抽象クラ…

PlayFramework2.0でHelloWorld+UnitTestをしてみた

まだPlayFrameworkのコーディングの定石があまりわかってないけど、HelloWorldと簡単なユニットテストを書いてみた。

Play Framework 2.0 + IntelliJの開発環境構築(Windows)

備忘録としてまとめておく。 JDKのインストール (http://www.oracle.com/technetwork/java/javase/downloads/index.html からインストーラーを落として実行 環境変数を追加 JAVA_HOME C:\Program Files\Java\jdk1.7.0_21 ←環境に合わせて変更 PATHの末尾に追…

C#入門の勉強会に行ってきました

ちょっと前の出来事になりますが、初心者C#入門という勉強会の1回目、2回目に参加してきました。 C#触ってみたいと思いつつも、触ったことなかったので、どんなものなのかという感覚をつかむにはちょうど良い難易度の勉強会でよかったです。 内容はオセロゲ…

PHPのGDで画像の縦横比を保ったまま縮小・拡大

PHPのGDだけ使って画像の縦横比を保ったまま縮小・拡大、必要に応じて黒帯をつけるってプログラムを書いた。GDの関数、何かよくわからない名前だし、引数多いし、非常に面倒。ちゃんとしたライブラリ使えば、もっと使い勝手いいんじゃないかなー。まあ作って…

CoffeeScriptとProcessing.jsで「あの楽器」(その2)

今日も更新。 変更点は以下の点です。 円のエフェクトで溝ができていた問題を少しエフェクトを重ねることで修正 ProcessingのクリックイベントハンドラーからjQueryのクリックイベントハンドラーに変更 ProcessingのクリックイベントハンドラーからjQueryの…

CoffeeScriptとProcessing.jsで「あの楽器」作り始めた

タイトルの通り、CoffeeScriptとProcessing.jsで「あの楽器」のプログラムを書きなおし始めました。 理由としてはマルチタッチに対応するのがJavaScriptなら楽そうというのと、マルチプラットフォームに対応しやすいということ。 あと、単にCoffeeScript書き…

アクリル彫刻で\アッカリーン/の解説動画投稿

アクリル彫刻で\アッカリーン/ - 工作とか、プログラミングとか で投稿した動画の解説編です。 これでアッカリ~ンマシンについてはひとまず完了。 次は何を作ろうかな。

「あの楽器」の製作動画を投稿

ついに「あの楽器」の製作動画を作って投稿。 超会議のときから数えるとちょうど1年くらいで、1年間もずっと同じ作品を作ってたことは今までになかったので、すごく感慨深い。 もちろん1年間ずっと作ってわけではなく他の作品も作ったりはしてたんだけど、試…

simplexml_loadとエラー処理

PHP5から標準で搭載されているSimpleXMLの関数ですが、XMLの構造がおかしかったりするとWarningを吐いてしまいます。@でつぶすのもまあありといえばありですが、XMLのどこがおかしいのかよくわからなかったりするので、そのあたりがわかるようなクラスを作り…

issetとis_null

PHPの !isset($hoge) と is_null($hoge) は、両方とも変数$hogeがnullでないことを確認できるけど、isset()は言語構造で、is_null()は関数という違いがある。なので、isset()は以下のように使うとFatalErrorとなる。

Serializeと小数

よくある2進数の罠というか。PHPのserialize()について。 Memcachedとかにデータ入れるときは自動でserializeされるので、データ量考えたらできればintで入れたいなと。ただそれだけ。

DateTimeクラスでUNIXタイムを使うときの罠

PHPのDateTimeクラスはUNIXタイムからもインスタンスを生成することができる。$date_time = new DateTime('@' . time());といった感じで。@マークを先頭につけないといけないのはPHPマニュアルに書いてあるんだけど、この前、はまった罠はタイムゾーン。手を…

ConsistentHashing法の実装

PHPでConsistentHashingの実装をしてみたので公開。 ConsistentHashingのわかりやすい説明とかメリットは以下のページが詳しかった。 スマートな分散で快適キャッシュライフ - mixi Engineers' Blog PHPで実装するにあたり、ActionScriptで実装した方がいら…

file_get_contentsのちょっとしたオプション

この前はfile_get_contents()で無理やりExceptionを投げる方法を書いたけど、今回はもともとに用意されているオプションとかについて。 POSTで送るパラメータはhttp_build_queryで作る。 file_get_contentsの取得設定はstream_context_createに配列を渡して…

Pjaxでロード

最近流行ってるらしいPjax。(pushState + Ajaxの造語らしい) ちょっと使うことがあったので、調べたこととかをメモっておく。 どういう技術かというと、例えば何かリンクをクリックしたときに、一部分だけ書き換わって、ページ全体が書き換わっているわけで…

DateTimeクラスを触ってみた

PHP5.2から導入されているDateTimeクラスが便利ということを今更ながら知りました。試しにいろいろやってみた。一番、DateTimeクラスを使う利点は関数の引数で型を指定できることかな。$date_timeみたいな引数にintで渡すべきなのかstringで渡すべきなのか悩…

PHPのfile_get_contentsでException飛ばしたい

何かと便利なfile_get_contents()なんですが、うまく取得できなかったときに、Warningだけ吐いて、Exceptionを飛ばしてくれないのが残念。 うまいことExceptionでエラー取れないかなーと、ふとob_start()とかあったなーって思ってやってみたらできたのでメモ…

「あの楽器」プログラム少し修正

鍵盤の描画に使っている関数をvertex()からrect()に変更しました。 主な変更理由は、コードの読みやすさのため。 うえちょこ@ぼろぐ» [processing]2.0a5から大きく変わること(OpenGL化とか) このあたりを読むと、どうもPShapeを使うようにしたほうが高速…

アクリル彫刻で\アッカリーン/

もうだいぶ前になる(確認したらちょうど2か月前だった)けど、 アクリル彫刻で\アッカリーン/作ってみた ‐ ニコニコ動画:GINZA って動画を投稿した。 今回はネタっぽくまとめようかなーと思って30秒という短い動画を目指したんだけど、いまいちな構成になってし…

Arduino用の赤外線シリアル通信クラス

ちょっと赤外線でシリアル通信したいなーと思うことがあったのでArduino用に作ったので、いつも通りgistに公開しました。 ArduinoのDigitalPin12に赤外線LEDをつけて送信するようになっています。PORTBを直接いじってる関係でPORTB上にほかのデバイスをつけ…