Python東海 第22回勉強会に参加してきました

Python東海 第22回勉強会について https://sites.google.com/site/pythontokai/studymeeting/22nd 初めてなの 今回、初めて勉強会で発表してきた。内容は自己紹介。 当日資料をつくろうとしたけど、何を話そうか迷った。けど、初めてPython東海の勉強会に参…

kanazawa.rb #7に参加してきた

はじめに http://kanazawarb.github.com/meetup/7/ 今回のkanazawa.rbは#6に続いて2回目。 申込時に 申込時はmeetupと懇親会の両方参加で申し込んだ。今回は人数が多くてキャンセル待ちだった。 そこで、懇親会の申込期限が切れた後に、懇親会だけでも参加で…

LaTeXiTで太文字を使う

太字にするにはbmを使えばいいのだけれど、 \bm{x}これをLaTeXiTを使って書くと エラーが出る Undefined control sequence. これに対処するために、テンプレートを編集 環境設定->テンプレート->プリアンブルに \usepackage{bm}を4行目あたりに書く すると太…

Arduinoでシリアル通信する際の注意点

Arduinoとシリアル通信をするには、起動時間のために1.5秒ほど待たなくてはならない。 でないとうまくプログラムが動かなくて、唸ることになる。 検証 検証プログラムとして、Arduino側でシリアル通信で何かの文字列を受け取ったら13番ピンに刺さっているLED…

sshコマンドでリモートマシンのコマンドを実行

クライアントからsshコマンドでリモートマシンのコマンドを実行する方法は次のコマンドでできる。 local$ ssh username@hostname.com pwd /home/usernameユーザの入力が必要なプログラムに対しては-tオプションを付ければ大丈夫。 たとえば、sudoコマンドだ…

Mac OSXにlibnfcをインストールしてICタグを読み込む

インストール 準備物 Mac Ports gcc libusb ICカードリーダー(RC-S370) Mac Portsとgccが入っているものとして話を進めます。 まず、libusbをインストール $ sudo port install libusb $ sudo port install libusb-compat 次にlibnfcのソースコードをダウン…

makeでジョブ数を増やしてビルドの高速化

はじめに makeコマンドでは $ make -j2 ジョブ数を2個に増やすことができ、ビルド時間を短くすることができる。-jNでジョブ数Nとして設定できる。 実験 どれくらい速くなるかベンチマークをとってみた。 環境 まず、ベンチマーク用に程よい大きさのソースを…

Chrome拡張のバックグラウンドのDOMを取得する方法

chrome.extension.getBackgroundPage().document これでバックグラウンドページのDOMを取得できる。またバックグランド内で定義された変数hogeも取得できる <script> // background.html var hoge = null; </script> <script> // NOT_backgroud.html chrome.extension.getBackgroundPa</script>…

Google Chrome 拡張機能でOAuthを利用する方法

記事について GoogleカレンダーAPIを使って拡張機能を作りたかったけど、OAuthでの認証が必要と分かった。色々調べていると認証が通ったので、そのメモ書き。 拡張機能でOAuthを利用する際に問題になること CONSUMER_KEYやCONSUMER_SECRETを公開してしまうこ…

Chrome拡張機能「ニコ生を見る予定」を作りました

公開場所 ニコ生を見る予定 - Chrome Web Store この拡張について ニコ生の放送予定をGoogleカレンダーに書く込むのがすごく面倒、そんな面倒を解決するのがこの拡張機能です。 2クリックでGoogleカレンダーの予定を作成します。 操作方法は簡単!放送予定で…

Visual C++を使っていてスタックオーバーフローが起こった

問題 Visual C++プログラムを書き、デバッグしていたら、スタックオーバーフローが起こった。 原因 参考資料スタックオーバーフロー - Wikipedia どうや大量に変数を宣言したのが原因かもしれない。 関数を呼び出しすぎて問題が起こったのではなさそうだ。な…

Binary Hacks 0x00

O'Reilly Japan - Binary Hacksを読んでみた。 動機 読もうとした同期は、低レイヤに対するコンプレックスがあるから。PythonとかPerlとか色んな高級言語を使用してきたけど、なかでどんな事が起きているのかしりたかったから。C言語を勉強し始めたのもBasic…

HTMLParserを使ってページのタイトルを取得

発端 ページのタイトルタグを取る必要があったので、正規表現で書こうかと思ったけど諦めた。理由はtitleタグには改行とかコメントアウトされている可能性があるから。 <title> タイトルだよー </title> --------------------------------------------- <title>こっちが本物のタイ</title>…

gitで特定のファイルの履歴を消す方法

$ git filter-branch --index-filter 'git rm --cached --ignore-unmatch targetfile' HEAD これで、特定のファイルtargetfileの履歴を消去できる。 特定のディレクトリは $ git filter-branch --index-filter 'git rm -r --cached --ignore-unmatch dir' HE…

fluxflexでunzipしたい。

なんと、fluxflexにはunzipコマンドがない。 $ unzip filename.zip なんてしても。そんなコマンドはないから、しても意味が無い。そこで、pythonにはzipfileモジュールという、zipファイルのアッシュや解凍をしてくれる便利なモジュールがある。しかも、シス…

web2py for fluxflex パッケージを公開

fluxflex用にweb2pyパッケージを公開しました。 http://www.fluxflex.com/library/47https://www.fluxflex.com/は、Web開発者のためのクラウド・ホスティング・プラットフォーム」です。このサービスは、数クリックでRedmineやWordPressをインストールできま…

web2pyをバックグラウンドで実行

web2pyを実行するのに、ターミナルウィンドウをもう1つ起動し、 $ python web2py.pyとして実行するのは面倒である。そこで、web2pyをバックグラウンドで起動する方法がわかったので、メモ。 バックグラウンドでの実行方法 $ python web2py.py > /dev/null &…

「OpenCL入門」を読んだ

動機 前々から、GPUで計算をさせてみたいと考えていた。書店で「OpenCL入門 GPU&マルチコアCPU 並列プログラミング - 秀和システム あなたの学びをサポート」を見かけ、読んでみることにした。 感想 OpenCLで扱う概念を図と併用して説明されていたので、分か…

web2pyでTwitterのOAuth認証

今回作ったもの http://dougwarren.org/2010/06/oauth-and-web2py-part-1/ ↑のサイトに書いてあるプログラムがTwitterのOAuth認証でユーザのタイムラインを表示するwebアプリ。PerlでCGIプログラムは以前に書いたことがあるけど、Pythonでは初めて。 動機 Tw…

boost::arrayの勉強

boost::arrayは配列をイテレータで操作できる事を知ったので、勉強してみた。題材はウェイポイントを管理するオブジェクトについて。 ソースコード https://gist.github.com/a321013519a4f98197c7 #include <iostream> #include <boost/array.hpp> class Point { public: Point(double _</boost/array.hpp></iostream>…

「達人プログラマー システム開発の職人から名匠への道」を読んだ

覚えているキーワードだけを書きだしてみた。 テストの自動化 直交性 std::auto_ptrの使いどろ ドキュメント プレイン・テキスト テストの自動化 テストを手作業で行うことで、多くの時間が奪われる。 そこで、テストを自動化しよう。そうすれば、コードを新…

iptablesで特定のIPアドレスを弾く方法

対象OSはUbuntu。 設定ファイル : /etc/network/if-pre-up.d/iptables めんどうだから /etc/iptablesにシンボリックリンクを張っている設定ファイルの編集 # vim /etc/iptables 特定のIPアドレスを弾く iptables -A INPUT -s 127.0.0.1 -j DROP設定の反映 # …

SCons on Windows リソースファイルの指定方法

WindowsのSConsでリソースファイルを指定する方法のメモ。 方法 リソースファイルのコンパイル リンク時にコンパイル済みのリソースファイルを追加 1. リソースファイルのコンパイル import sys env = Enviroment() RESOURCES = ['resource.rc'] # リソース…

ファイルの圧縮

mac

tarコマンドを使った圧縮コマンド $ tar czvf out.tar.gz target-dir

Boost C++でSleep sort

元ネタ 常識を覆すソートアルゴリズム!その名も"sleep sort"! http://dis.4chan.org/read/prog/1295544154 Sleep sortについて ソートしたい対象 t = [8, 2, 4, 5] があるとする。 tにおけるi番目のt[i]だけsleepさせた後にt[i]を出力するとソートしたこと…

Macの数式入力ソフト

mac

Macのkeynoteを使っていて数式を入力したいと思ったがそんな機能はなかった。 そこで、数式入力ソフトを探してみたら、LaTeXiTというソフトが見つかった。 LaTeXiT LaTeX書式で数式入力ができるソフトウェアインストールする際に参考にしたページ Pirates of…

mac ports のコマンド集メモ

mac

メモ 参考ページ http://doruby.kbmj.com/tmatsuzawa_on_rails/20090521/MacPorts_ MacPortsでステキなUNIXツールをインストール - はこべにっき ♨ パッケージのインストール $ sudo port install <package> アンインストール 経験上、うまくアンインストールできたこ</package>…

「 MSVCP100.dllが見つから・・・」というエラーが出たときの対処方法

問題 Visual C++でプログラムをReleaseモードでビルドしたけど、 「MSVCP100.dll が見つからなかったため、このアプリケーションを開始できませんでした。」 というエラーが出たときの対処方法。 事の発端は ニコニコ生放送用のコメントビュアー For Google …

Chromeで動くニコ生コメントビュアーを作りました

Google Chromeで動作するニコニコ生放送用のコメントビュアーを作りました。 ブラウザのプラグインのためインストールが簡単です。起動も速いです。 配布場所 https://github.com/nus/CommentViewerForGoogleChrome/wiki 機能 コメントをキーワードによる抽…

VRMLのブラウザ

わけあって、OpenHRP3を使うことになった。なぜなら、CADデータを物理シミュレータに取り込めたらいいなぁと思ったからだ。 OpenHRP3で扱っているデータフォーマットはVRMLで記述することができる。http://www.openrtp.jp/openhrp3/3.1.0.beta4/jp/create_mo…