へんてこのブログ

日々気づいたことや、最近やっていることを書いています

2012-01-01から1年間の記事一覧

jenkinsでrspec実行

rubyで開発してて、RSpec使ってテスト書いてるけど、何故かjenkinsユーザーでrspecが実行出来なかった。 rspecなんてコマンド無いよって言われる。 $ sudo -u jenkins rspec spec とかやっても怒られるし、 $ sudo -u jenkins rvm だけでも怒られてた。 一応…

jenkinsで自動デプロイ神

継続的インテグレーション的話題です. 最近流行のjenkins導入しました. CIですCI.時代はCI. jenkinsさんにデプロイを自動化してもらいました. ローカルでgit pushするだけでテストが実行され、テストに成功するとデプロイ的な感じです. 今まで手動でやってた…

SRM565 250 & 500

SRM565参加しました。 結果は250だけ通せて、500落としました。残念です。 500の反省点として、 long long int sum を、ただのintにしてしまったのと、 sum < d[i] を sum <= d[i] としてしまい落としたので、こういったちょっとしたミスが一番キツいので、…

Merge pull request

朝起きたらgithubからあんたのpull requestマージされたってよってメールがきてた。 少し前に、android_market_api | RubyGems.org | your community gem hostを使っててうまく取得出来ないとことかあったから直したのをgithubでpull requestしてたのがマー…

C++でテスト

C++でどうやってテスト書けば良いのか調べてみたけど、なんかテストフレームワーク使うとかじゃなくて普通に自分で書く感じでやってみた。 TopCoderで普段使ってるプラグインでテストの自動生成するやつがあるんだけど、それで自動生成されたものを元にまね…

UEC休講情報APIライブラリ

UECの休講情報をRubyで簡単に取得出来るgemを作成しました。 ここから取ってきてます。 今は学部の情報しか取ってきてないですが、近いうちに大学院のものも取得出来るようにします。 RubyGems 使い方 インストール $ gem install uec_express_api 簡単な使…

チカチカページ

Chrome拡張機能として、ページをスクロールすると色が出てきてチカチカする拡張機能を作りました。 Android4.x系から追加された開発者向けオプションの、"表示面の更新を表示"をチェックしたときに表示されるあのチカチカがとても良かったので作ってみました…

Twitter UserStreamのハッシュタグフィルター

RubyGemsのtwitter-streamを使って、ハッシュタグでフィルターかけたかったのだけど、細かい所で詰まった。 最初、こんな風に書いてたけどダメだった。 CONF = Hash.new CONF[:host] = "userstream.twitter.com" CONF[:path] = "/1.1/statuses/filter.json?t…

kobito(markdown) -> pdf変換

kobitoでmarkdownを書いてそれをpdfに変換出来たので、メモしときます。 kobito使い始めました。 便利ですね。 即時プレビユーが気持ちいいです。 kobitoで書いたmarkdown記法のドキュメントをpdf化したかったので調べました。 pdf化は結構環境依存なので、…

超インタラクティブ次世代型Twitter表示Webアプリ

調布祭展示用に作成した、「超インタラクティブ次世代型Twitter表示Webアプリ」です。 TeResの部内LTでもこれを発表し、1位を取ることができました。 自分のTLを取ってきているので、誰かがつぶやくと即座に花火的な物が上がります。 文字は読めないと思うの…

Facebookアプリ

Facebookアプリ(タブ内動作)作ってて、iframe内でページ遷移するとどうしても、 FB.getLoginStatus(function(response) {}); がresponse返してくれないみたいになった。なんでだろーなんでだろーって考えて、結局、 FB.login(function(response){}); を呼び…

Webデザイン

第一回 プログラマ向けデザイン勉強会 - connpass というのが土曜日にあったらしい。 土曜日は大学の授業で行けないので、こういうのは日曜日にやってもらいたいものですね。このイベントの中で、TAEKO AKATSUKAさんがプレゼンした、 zurui-design // Speake…

CakePHP 多重継承Controllerでのmodel

CakePHP使ってて、継承してるしされてるContoroller内の $uses = array('TableName'); とかしてる所にモデルを追加する際、このController内でだけそのモデルを使う処理を書いていても、継承先のControllerの$usesにもモデルを追加しなくちゃいけない。 こん…

プロキシ設定 networksetup

大学の無線LAN使う時に、毎回プロキシ設定しなくちゃいけない。 今だと、chrome開いて設定画面からプロキシ設定的な所まで行ってって設定してたけど、コマンド一発で設定出来ないかとコマンド探してみたらあった。 networksetupってコマンドで色々出来るらし…

iframe内からのリダイレクト

facebookページ(?)のアプリ作ってて、iframe内で呼び出してるphpでリダイレクト(header("location:hoge.php");)しようとしたらリダイレクトされずにリダイレクト先のfacebookボタンが出現しておかしい感じになった。 解決法として、php内からjavascriptを実…

Timestamp out of bounds

さくらのVPS上で半年くらい前からRubyGemのTwitterでTimestamp out of boundsエラーが出るようになった。 そろそろ解決しなくちゃいけないと思ってやった。 原因はTimestamp out of boundsの通り、サーバーの時刻が正しく設定されていなくて、ずれてるのが原…

僕たちの夏が終わった 〜はてなインターン2012〜

はてなサマーインターン2012に参加してきました。 今年のインターンは過去最長の1ヶ月半で、冒頭の写真はインターン滞在期間中に買ったジャンプさん達です。 この長かったインターンを最初から振り返ってもいいのですが、前半2週間の講義内容とか、後半1ヶ月…

はてな新東京オフィスに行ってきた

はてな新東京オフィスに行ってきました。 インターン中に応募締め切りだったのですが、東京に住んでるしどうせなら新東京オフィスも見てみたいと思い、応募した所、厳選な抽選の結果無事行く権利を勝ち取ることができ、嬉しかったです。 何の話をしたとかは…

ITmedia PC USERでアプリ紹介された

itmedia.co.jp/pcuser/article… さり気なくアプリが紹介されてる @bilyakudan ▲— numaさん (@numa08) 9月 17, 2012numa師匠から教えてもらった。 多分教えてもらわなかったら気づいてなかった。ITmedia PC USERのSmart Display紹介記事にて、Black and White…

SRM554 Div2

久しぶりにSRMに参加した。 今回は京都のホテルから参戦した。 Easyしか通せなかった。そのEasyも効率悪い書き方してるからヤヴァイ Easyを出す時に、TopCoderの方でコンパイルしようとしたらエラーが出た。 問題はコメントに日本語を使っていたからだった。…

はてなサマーインターン2012に参加します

今年のはてなサマーインターンに合格したので、参加してきます!! http://www.hatena.ne.jp/company/staff/internはてなの社員のみなさん、選んでくれてありがとうございます。参加コースはWebアプリケーション開発 実践コースですので、 1ヶ月ほど、8/10くら…

学内LANでのgithub利用まとめ(CUI版)

学内LANでのgithub利用まとめ(CUI版) リポジトリを最初から作る場合 githubにてリポジトリを作成しておく //proxy設定 $ git config --global http.proxy {proxy url}:{port} //普通のgit $ mkdir {リポジトリ名} $ cd {リポジトリ名} $ git init ファイル編…

学内においてのgithubからのclone

学内LAN環境においての、githubからのcloneのやり方です。 proxyを越えます。まず、--globalで.gitconfigに設定を追加する $ git config --global http.proxy {proxy url}:{port} あとは普通にhttpsでcloneしてあげると、上で設定したconfigが読み込まれる $…

学内からのgithubへのpush

学内のLANはproxyが設定されているため、普通にはgithubにpushできません。 ですので、proxyをgit config http.proxyで設定する必要があります。 調べたのでまとめてみます。gitの初期設定 $ git init git configでproxy情報を追加 $ git config http.proxy …

ICPC2012国内予選に参加しました

題名通り、先日行われたICPC2012国内予選に参加しました。 初のICPCだったので緊張しましたが、無事2問解けてよかったです。 ですが、3問解けそうだったので、次回の2013では、頑張って練習して5問以上解きたいです。提出解答: Problem A Problem B最後に結果…

ICPC2012国内予選 Problem B繰り返す10進数

Problem B繰り返す10進数 http://www.psg.cs.titech.ac.jp/icpc/icpc2012/contest/B_ja.html 解法:最初のinputをstringで受け取り、ソートして最小最大を求める #include<iostream> #include<vector> #include<string> #include<sstream> using namespace std; inline int toInt(string s) { int</sstream></string></vector></iostream>…

ICPC2012国内予選 Problem Aミレニアム

Problem Aミレニアム http://www.psg.cs.titech.ac.jp/icpc/icpc2012/contest/A_ja.html 解法:(1年1月1日~1000年1月1日までの日にち) - (1年1月1日~実際の入力された日にち) = 解答 #include<iostream> #include<vector> using namespace std; int main() { int X; for (int i=</vector></iostream>…

AOJ Volume11-1153

Problem A: 等しい合計点 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1153&lang=jp解法:一個づつ交換していって判定する #include <vector> #include <algorithm> #include <iostream> #include <cmath> using namespace std; int main() { int n,m; while (cin >> n >> m) { if(</cmath></iostream></algorithm></vector>…

SRM548 Div2

250 本当に久しぶりに250問題通りました。 嬉しいです。解法:回数数える includeとか省略 int minDucks(vector <int> duckTypes) { int result; if(duckTypes.size() == 1) return 1; SORT(duckTypes); vector<int> date,date2; for (int i=0; i < duckTypes.size(); i</int></int>…

AOJ Volume11-1147

Problem A: ICPC 得点集計ソフトウェア http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1147&lang=jp解法:配列ぶち込んでソートする #include<iostream> #include<vector> #include<algorithm> #include<cmath> using namespace std; int main() { int n; while (cin >> n) { if(n ==</cmath></algorithm></vector></iostream>…