2010.01.28
EC-CUBEにつぶやくボタンを設置する方法
「つぶやくボタンを設置したいけど、どうしたらいいんだろう?」というつぶやきをTwitterで見かけたので調べてみました。
エンジニアの活動報告などなど
2009.11.12
Closure Library (クロージャー・ライブラリ) は先日Google から出されたオープンソースのJavaScriptライブラリです。GmailやGoogle Docsなど様々なGoogleのAjaxサービスで使われてるそうです。もともとJavaScript自体は、異なるブラウザで挙動が違ったり、標準のモジュール化方法が提供されなかったりと、素で使うには厄介でした。そのために、これまで幾つものJavaScriptのライブラリ(prototype.js、jQuery、dojo、Ext JS、YUI、MooToolsなど)が登場してきました。今回のClosure LibraryはそれらライブラリにGoogleが本格的に対抗するものと捉えられます。
2009.11.06
Yahoo!でも採用されて注目を浴びたSilverlight。最近最新版のSilverlight3が出ましたね。
Silverlightはver.1の頃から気にはしていたのですが、あまりに機能が少なくて「これはちょっとなあ~」と思ってたのも束の間、Silverlight2になってグッと機能を充実させてきて、「これはいつか勉強しておこう」とずーーーーーーっと思ったまま今日に至ってしまいました。
Silverlight3も出たことですし、やはりここは取り組んでみよう!ということで、その記録です。
2009.10.15
筆者は最近PHPを使い始めました。
PHPは型キャストをしなくとも文字列と整数などを勝手にキャストしてくれるなど、型をあまり気にせずにプログラムを書いても、なんとなく動いてくれます。
もちろん変数の型宣言もなし、です。
こういった動的な、弱い型付けを持つ言語では、キャストなどに必要なコードの量を減らすことができる反面、プログラマの意図しない変換が行われてしまうことがあり、原因のわかりづらいバグを生み出しがちです。
静的であれ、動的であれ、コンパイラのチェック(と制約)が弱いとき、バグを減らすために重要なのは、プログラムを小さな単位に分解し、それぞれの動作を検証することができるようにすることです。
そうすると、プログラムが動かないとき、テストを使ったバグの原因推定を行いやすくなるからです。
というわけでユニットテストのツールを導入してみました。
2009.09.25

このブログは、エスキュービズムのエンジニア陣が持ち回りで更新している。
といっても、ブログ更新がメインというわけではなく…
毎週木曜はエンジニア勉強会を開催していて、担当1名が事前準備して発表する。
その担当になった人がブログを書いている。
発表テーマは「自由」。
だけれども、人数も増えたので自然と「みんなの貴重な時間を無駄にしない内容」に工夫する流れができている。
で、本日は僕が担当。
twitter仲間募集中^-^ 【hirolog】。
仕事に関連があるということで、大学院で「データマイニング」の勉強をしているので、テーマは「データマイニング」にした。
はて、さて、「データマイニング」とはなんだろう???
「先月のアクセス数は10万でした」というのは「統計」。
「1.2%の伸びで成長しているので、来月は12万」というのは「解析」。
データマイニングとは、これら統計でも解析でもなく、「データから知識を得る」ことである。
2009.09.06
2009.08.07
次々と新しい技術が生まれては消えてゆくこのご時世ですが、
基本に立ち返り黒い画面を見つめ直そう、ということで、
python cursesによるTUI(Text User Interface)プログラミングを練習してみました。
(more…)
2009.07.31
Python界では有名なWEBアプリケーションフレームワークであるDjango
いろいろと高機能なんですが、ひとつだけ困ったことが。
それは「セッションがクッキーベース」なこと。
確かにこの方がセキュアですし、おススメなんですが、
携帯向けにECサイトを作成しようとすると必ずネックになるのが
クッキーが使えない!ということ。(一部の端末では対応していますが)
そこでDjangoでセッションキー(セッションID)をURL(またはPOST/GET)に
埋め込む方法を考えてみました。
2009.07.10
Androidを使うと、Javaによる携帯電話プログラミングが数段パワフルになった感じがします。
Androidのドキュメントを読んでいると、どうやらリフレクションも使えるご様子。
リフレクションとは反響、反映のことです。転じて、Javaにおいてはプログラムが自分自身(プログラム要素)へアクセスするための手段を意味しています。名前だけではちょっとイメージしづらいですね。
簡単に言うと、Javaクラスのフィールドやメソッドの情報を取得するためのAPIです。
・・こんなクラスのこんなメソッドを呼び出したい・・・
・・が、そのメソッドやクラスの名前がプログラムを書いている時点では未知である
(たとえば、開発者ではなく、利用者が指定する)
そんなときに使います。
テストや分散処理などのフレームワークづくりをしたいときや、APIを提供したいときに便利です。
今回は以前、JavaCCを使って作成した電卓を拡張し、リフレクションでjava.lang.Mathに含まれるメソッドを呼び出すことが可能な、高機能電卓にしてみましょう。
さらに、Android上で電卓を実行できるようにします。
果たしてAndroid上でのリフレクションは簡単に使うことができるのか?JavaCCプログラムをAndroido上で動かすことはできるのか?
試したいと思います。
リフレクションなぞ知っとるわい、というかたは後半を、JavaCCによる構文解析器について知りたいかたは土日でつくるコンパイラをご参照ください。
前半ではAndroidでもJavaでも使える(はずの)リフレクションの利用手順を簡単に追っていくことにしましょう。
(more…)
2009.06.11
Yahoo!デベロッパーネットワークという
Yahooの資産を使ってたくさんのWeb-APIを公開してくれるサイトがあります。
そのAPI群の1つに
「送信したテキストを解析して、重要なキーワードを判別してくれる」
という、キーワード抽出APIというものがあり、これをサーバから使いたいなと言うことで、PythonでそのAPI用のサンプルコードを書きました。
(more…)