とんちゃんといっしょ

Cloudに関する技術とか日常とかについて書いたり書かなかったり

プログラム

沖ソフトの資料室を久しぶりに見たら

相変わらずカオスwhttp://www.okisoft.co.jp/esc/members.html#05 昔ここでJavaインタプリタのやつをコツコツやったことがあるが、 当時はよくわからなかった。 でも後で構文解析とかを自分で遣ったときには少し生きてた気がする。 また機会があったらここ…

ある文字列にマッチしない文字列を習得する正規表現

槍の人にhttpとftpにマッチしないものを取ってくる正規表現について聞かれた。 どうも現在はこんな感じらしい。 /^[^((ht|f)tp)]/ 確かにこんな感じの気はするのだが、 確かこれだとは1文字のマッチだったはずなので、 先頭が[h, t, f, p]あたりだと反応する…

Strutsわかんね

StrutsというよりStrutsのカスタムタグを使えといわれても・・・ 簡単なレクチャーは受けたけどそれじゃ無理だってwww あとで気の利いた先輩社員の方がWikiにサンプルのっけてくれてた。 ありがたやー

フィボナッチ数列かいてみた

なんとなくJavaで書いてみた。 型宣言がめんどくせー intでやったらオーバーフローしてマイナスになったし・・・ べた名実装は1の方だけどそれでやると40越えたあたりから反応が鈍くなるので使えない。 というわけでキャッシュを使った2の方がベター。 GAE/J…

Rails 2.3.4 + PostgresQL

Rails 2.3.4とPostgres 8.3.7で開発しようとしたら、 migrateのところで undefined method `quote_ident' for PGconn:Class ってエラーがでた。 ぐぐって見たところ以下の手順で直るらしい。 config/initializers/new_rails_defaults.rbの先頭あたりに以下を…

SessionCleanupServeletの使い方

GAE/Jを触っていてセッションまわりのエラーが出たときは、 セッションを削除してやるのがいいらしい。 セッションを削除するようにGAE/JではSessionCleanupServletが用意されている。 使い方は以下の通り。 web.xmlに以下を追記 SessionCleanup com.google.…

FizzBuzzについて考えてみた

全てのことの発端はこのブログだと思う。 どうしてプログラマに・・・プログラムが書けないのか? 個人的にはプログラムの多くの処理は制御と条件分岐で成り立ってる思ってる。 FizzBuzzには制御(繰り返し処理)と条件分岐が必要となるため、 これができるかで…

RubyでFizzBuzzしてみた

1.upto(?d){|i|i%3<1&&x=:Fizz;puts i%5<1?"#{x}Buzz":x||i} ポイントは以下の通り 「100」を「?d」と使用することで1文字短縮 三項演算子を利用 &&の「左辺の処理が真なら右辺の処理を行う」を活用 Rubyは式ごとに値を返すので&&の右辺が実行された場合は…

Seasar Conference 2009 Autumnに行ってきた

ラーメン食べて最初のセッションに遅刻したのは内緒。 いまさら人に聞けないDIxAOP入門・2009 10月から開発OJT始まるけどDIとAOP使うらしいがWebは専門外のため勉強。 前までWebとかあんまり興味なかったけどこうして聞いてみると納得の仕組み。 最近はGAEと…

GAEでTwitterのbotを作る #2に参加してきた

ちょっと迷ったけど無事に会場に到着。 Javaの初心者組に参加して開発。 前回の資料を参考にとりあえずBOTが動くところまではできた。 あとはBOTが喋る用のデータを入れてやること。 次にリプライに反応してPOTSする仕組みを実装。 んでもってYahoo Text API…

Lightweight Language Television 行って来た

起きたら遅刻確定コースだった。 \(^o^)/オワタ とも言ってられないので急いで準備して出発。 1時間遅れで到着!

京都GTUGグーグル・ハッカソン事前勉強会にいってきた

黒薔薇に誘われてホイホイついていくことに決めたものの、 どうやって参加するのかわからないまま適当にGoogle Groupsに入ってみたが、 参加申し込みができないので黒薔薇に聞いたら申し込みは既に終了してた(ぉ 黒薔薇が主催者と連絡が取れるというのでお…

Storategyパターン

明日の読書会の担当なのに資料作ってない。 \(^o^)/オワタ そうも言ってられないので作れるところまで作る。

初心者に配列を教えるための走り書き

昨日の変数に続いて配列。 配列の生成 配列の生成は以下の通り。 // 型[] 変数名 = new 型[要素数]; int[] x = new int[5]; 分けて書くことも可能 // 型[] 変数名; // 変数名 = new 型[要素数]; int[] x; x = new int[5]; 最初から値を与える場合 // 型[] 変…

初心者に変数を教える方法を考えてみる

変数とは プログラミングにおいて、変数(へんすう、variable)とは、プログラムのソースコードにおいて、扱われるデータを一定期間記憶し必要なときに利用できるようにするために、データに固有の名前を与えたものである。 一人一人の人間が異なる名前によ…

2日間を通して学んだこと

C++のSTLコンテナは夢が詰まってる。 algorithmで夢の操作は簡単楽チン。 コンテナとalgorithmをつなぐのはiteratorのお仕事。 これをJavaのOJTに活かすのは無理ってこと。 C++でコーディングする時はいろいろ意識する必要があるなと感じた。 毎回iteratorを…

再びC++研修へ

本日からまたC++研修。 C++なんか仕事で使わないけどな! ・・・ほんとなんで受けてるんだろ。 前回より発展的なことをするのかと思ったら、 相変わらずSTLの説明されてる。 しかも前回より細かく。 algorithmの実装の話とかiteratorの実装とかはもうお腹一…

画像収集用

とあるまとめサイトの方に壁紙があげられていたのを見て一括保存したくて作った。 以前にも同じのを作ったのだがそのスクリプトがどこか言ったのでまた作り直した。 hpricotを使えば簡単にできるね! require 'rubygems' require 'hpricot' require 'open-ur…

3日目

Templateとか習ったけどTemplate便利でいいなー でも思いついたコードが通らなくてずっと首傾げてた。 #include <iostream> #include <vector> #include <algorithm> #include <iterator> template <class T> print(vector<T> &v){ vector<T>::iterator itr; std::cout << "start --> "; for(itr = v.begin(); itr !</t></t></class></iterator></algorithm></vector></iostream>…

研修2日目

本日学んだこと。 C++の==は同値性を比較している。 だからstringに対して #include <iostream> #include <string> int main(){ std::string str = "hoge"; if(str == "hoge"){ std::cout << "str == hoge" << std::endl; }else{ std::cout << "str != hoge" << std::endl; } }</string></iostream>…

C++研修なう

会社で研修を3日間受けることに。 買い指示のスキルチェックシートに 「よゆーで理解してるよwww」 ってな具合で書いたら後の確認テストが80点だった。 継承周りがほぼ全滅www 継承のところで「extends」と書いたら「:」だし、 「abstruct」って書いた…

なんか問題出されたので

http://kobin-lab.blogspot.com/2009/07/blog-post_19.html 前略 あんまり暇なので時間に余裕があるので、前みた問題考えてました。問題 以下のような出力を得るプログラムをC言語で実装。 ABCDEFGHIJKLMNOPQRSTUVWXYZ BCDEFGHIJKLMNOPQRSTUVWXYZA CDEFGHIJK…

RubyKaigi2009

お昼休みに無事にチケット取ったどー! これで7/17に夏休みを使った意味が出来た。 よし、Reject懇親会も頑張ろう。 とりあえず、他の幹事と連携取りながら人数と場所の調整をせねば・・・ 楽しくなってきた。

わんくま勉強会に行ってきた

クリーニングを取りに行ってから出発したら5分遅刻したorz そこからは普通に聴講。 初参加だったけど、すごいゆるいと言うか予想しない勉強会だった。 まず会場に入ったら猫耳つけたメイドがいたので来る場所間違えたかと思ったw LTではコーヒーについて喋…

書き方のお作法は

開発演習に入ったが、クラス図と要求される機能があるだけで、 シーケンス図などがなかったので各人が好きに内部をコーディングすることに。 Listから引数に一致するオブジェクトを返し、一致しない場合はnullを返す関数を実装する部分で、 1-1.拡張for分で…

その発想はなかった

私はプログラミング研修において中上級者コースで研修を受けている。 メイン・サブの両講師の方とも仲良くさせていただいているので、 他のクラスの研修の様子なんかもサブ講師の方から聞いたりしているのだが、 1日の終わりのアンケートにすごいことが書い…

研修中にFizzBuzz

研修の暇つぶしでJavaでFizzBuzzをGolf class A{static{for(int i=0;i<101;System.out.println(++i%3<1?i%5<1?"FizzBuzz":"Fizz":i%5<1?"Buzz":i));}} 確かこんな感じ。 100Byteが切れずに一人でうんうん唸ってた。 最終的には周りを何人か巻き込んで考えた…

Cubes Without Holes

Cubes Without Holes ikeが昨日ブログに書いてた問題を研修の休み時間にbyte型の3次元配列を使ったら、 メモリから溢れたので別の実装にしてみた。 研修先で書いたソースを家に帰ってから書き直してみたけど、 コードをサブミットするのにアカウントがいるら…

Scalaユーザ会に行ってきた

ミーティングが入ってギリギリ開幕に間に合うかと思ったら40分遅れで到着。 すでに発表が始まっていたので後ろの席でMacBook出してメモ取りながら見学。 Scalaは以前に少し手を出しただけなので、深いところはわからない。 でもソースコードがあればなんとな…

Integerの仮引数は参照渡しか値のコピーか

本日の研修にてJavaのプリミティブ型とオブジェクト型の話を聞いていた。 メソッドへ引数を渡すときにプリミティブ型だと値のコピー。 オブジェクト型だと参照渡しなのは知っていた。 突然Integer型はどうなのかとふと思う。 class Integer2 { int value; In…