. てやんでい!職人気質 ブースターテクノロジー Webシステム開発 . .

社長日記

FlexのSDKのバージョンを変えた際の注意

FlexのSDKのバージョンが結構な頻度で変わる。
2010年1月時点でFlexSDK3.5。

で、最新をダウンロードしてプロジェクトのSDKのバージョンを変えてビルドし起動するとエラーになることがある。
埋め込みフォントを使っていて、StyleManager.loadStyleDeclarations した際、

『VerifyError: Error #1053: mx.core.FlexModuleFactory の FlexModuleFactory のオーバーライドが無効です。
at global$init()

というエラーが出る。
全く意味不明だったのだが、埋め込みフォントのSWFも使用するバージョンのSDKでコンパイルしないと、このエラーが出るらしい。

で、3.5 のmxmlc を使ってコンパイルしたフォントswfなら無事OK!
はまった。。

--
2010年02月25日


JDOだと遅すぎないか?

GAE/J をいじっていて最初から気になっていたのだが、
パフォーマンス悪すぎないか?お話にならないくらい遅い。

「なんで?」と思ってデバッグしてみると、
■PersistenceManagerFactory の初期化が遅い
■JDOQLのexecuteが遅い

たった数件を検索するだけでも7~8秒かかる。

・ソースが間違ってる?
・無償だから遅いの?
・インデックスがないとだめ?

など疑ってみるが、そういうことではない模様。
で、調べていると slim3というフレームワークを使えばかなり高速に出来るとのこと。
⇒ slim3
ひがさんという日本人のエンジニアが作成されたもの。
本当にすばらしい。
ありがたく使わせていただきます。

--
2010年02月23日


PostgreSQLで連番生成

PostgreSQL で連番を生成できるなんて知らなかった。
8.0からの機能らしい。

select * from generate_series(1, 99);

1~99までの連番の集合が取れる。
知らなかったのでメモ。

--
2010年02月09日


PHPでExcel読み込み

■目的
PHPでExcelファイルを読み込みたい

■ライブラリ
PHP-ExcelReader

■サンプル


<?php
require_once "Excel/reader.php";

$excel = new Spreadsheet_Excel_Reader();
$excel->setUTFEncoder('mb');
$excel->setOutputEncoding('UTF-8');
$excel->setRowColOffset(0);
$excel->read('てすと.xls');

$rowCount = $excel->sheets[0]["numRows"];
$columnCount = $excel->sheets[0]["numCols"];

for ($i = 0; $i < $rowCount; $i++) {
for ($j = 0; $j < $columnCount; $j++) {
echo $excel->sheets[0]["cells"][$i][$j].":";
}
echo "<br>";
}

■結果
・日本語ファイル名もOK (ファイル名はSJISで指定)
・ファイル中の全角文字も取得OK
・セルが結合されている場合は、左上のセルからのみ値が取れた。結合された他のセルだと値が取れなかった

--
2010年02月02日


shadowbox.js

随分前に使ったことがあるが、完全に忘れていたのでメモ。

■便利なJavascriptライブラリ
ShadowBox

--
2010年02月01日


プログラマになりたいです。

プログラマを希望する学生がどんどん減っているらしい。
理由は、残業・徹夜といったイメージで過酷な現場という印象があり
IT業界は避けられる傾向があるというようなニュースをよく聞く。

ちょっと残念に思ってたが、実際のところそうでもないらしい。

・プログラマ志望の学生は実はかなりいる。
・女性の希望者が増えている。

というのが現実らしい。
ただ就職先が少ないため、他の職種についてしまうケースが多いとのこと。
もったいない。

また、オフショア開発とかいって中国・インドに開発を投げ、国内のプログラマが使われなくなっていることも影響しているだろう。

志のある人間が社会情勢で諦めてしまうなんてもったいなさすぎる。
じゃウチが何ができるか?
会社をもっと大きくして、受け入れ態勢を作ればいい。
そうなるために今よりもっとがんばろう。

--
2010年01月29日


クラウドを活用しよう

すごい時代になったなと改めて感じる。
「クラウド」というキーワードだけが先行するのではなく、間違いなく大きく変わる要素だろう。
取り急ぎチェックしたもが以下の3つ。

■GoogleAppEngine
これぞクラウドという感じだが、ちょっと自由度が低すぎないか?
制限がきついが、無料で実現可能な範囲が広い。
RDBではなく、BigTable。

■AmazonEC2
普通のレンタルサーバのごとく、自由度が高い。現実的に使うとしたらこれか。
無料ではない。月額1万弱か。

■Microsoft Azure
開発マシンにあれこれインストールしないとNGなので今の所パス。

今後GAEがどの程度まで自由がきくようになるのか期待。
普通のHPとかは全部GAE上に載るようになるかな。

--
2010年01月22日


C/C++の開発環境を作る

Apacheモジュールにしても、PHPのPECLにしても開発言語はC言語。
ということで今年は原点回帰して、C言語をまたやろう。
WindowsXP上のNetBeans6.7にて、C/C++の開発環境を作る。

■NetBeans に C/C++ のプラグインを追加

Cygwinのインストール
・接続先は末尾が「jp」のものを選択
・「Devel」のツリーを開いて「gcc」「gdb」「make」をクリック

■サンプル作成
・NetBeansの「新規プロジェクト」から「C/C++」の「C/C++ アプリケーション」を選択
・プロジェクトの作成はCygwinをインストールした先に作成
例)c:\cygwin\home\user

・mainにprintf("Hello World!\n");
を追加し、実行 ⇒ 出た!

■デバッグのテスト
gdbも入れてあるので、デバッグ可能なはずだが、
「主プロジェクトをデバッグ」してもブレークポイントで止まらずスルーしてしまう。
なぜ?
「デバッグ」「新規ブレークポイント」にてブレークポイントを作成すればOKだった。

まずはここまで。

--
2010年01月06日


Apacheを知ろう

Apacheなんてインストールしたら、httpd.conf をPHPが使えるように書き換えるだけで後はもう放置、というパターンが普通だった。

そんな時、『Apacheモジュール』というキーワードに出会った。
プログラムをApacheモジュールとして作成し、Apacheに組み込んでしまえばOKでしょと。
こういう発想はまるでなかった。
それもApacheのことを全然知らなかったためだろう。

ということで『the Apache Modules Book』という本を読み始めたのでキーワードをメモしておこう。
久々にC言語に触れた。かなり忘れてた。。

APR(Apache Portable Runtime)
MPM(multi-processing module)
APU(APR-UTIL)

metadata → generator → logger

httpd.h
・request_rec
・server_rec
・conn_rec
・process_rec

content generator
apxs
SetHandler

--
2009年11月20日


httpsでのファイルアップロード

少しはまったのでメモ。
Flexの fileReference のupload メソッドを使ってアップロードする際、
https だと Firefox・Safariでファイルをアップできなかった。
IEはOK。

色々調べた結果SSLの認証が原因。
認証されたhttps環境ならば問題なくアップ可能でした。

--
2009年10月30日


MacOSX 10.6 売れ切れ

先日、打ち合わせ帰りに snow leopard 買おうと思って
川崎のヨドバシに寄ったら在庫なし。入荷未定。
ラゾーナのビックカメラも同じ状況。
そんなに売れてるのか?それとも供給量を抑えて煽っているのか?

ただ特段今すぐ必要というわけでもなく、ネットで買うほどでもない。
出回ったら買おう。

注目は 64bit 対応。
どう変わるのか?大して変わらないのか?

--
2009年09月02日


Corei7はどれほどなのか?

通常の開発をしていて一番マシンパワーがいるのが、
Flexのビルド。
かなり大きいシステムだと、ビルド時間もバカにならない。
Core2のCPUフルに使われて数分かかかるとさすがにきつい。

で、話題のCorei7はかなりいいらしい。
ハードにあまり明るくないので、詳しいことはよくわからないがいいらしい。
試しに1台買ってみようかと思う。

--
2009年08月30日


HT-03Aにしてみた

携帯をHT-03A(Google携帯)に機種変更してみた。
iPhoneの対抗馬になりうるのかどうかを確かめるため。
実際自分で使ってみないとわからないし。
 
使ってみた当初はiPhoneの圧勝かなと思ったけど、
・アプリをJavaで開発できる
・開発したアプリをすぐ実機に入れられる
・Android の成長が期待できそう
・ストリートビューがトラックボールでクルクルできて面白い
・FlashPlayerがのるらしい?
 
といった感じでだんだん愛着でてきた。
これでFlashPlayerがのって、
Flexが普通に動くようになったらもっと面白くなりそうだ。
 
■とりあえずインストールしたアプリ
antivirus
Battery Status
Digital Clock
Internal Memory Widget
PDF Viewer
QuickUninstall
Simeji
Stopwatch
Task Manager
QRコードスキャナー
Voice Recorder
世界の天気
朝日新聞
 
■設定
・同期はOFFに(省エネのため)
・GPSはOFFのまま(省エネのため)
・Wi-Fiを有効に
・画面ロックを「指の軌跡」に

--
2009年07月25日


Macに移行中

なぜあえてMacを使うのか、実はよくわからなかった。
Windowsでいいじゃんと。

☆メリット1
Macといっても中身はLinuxベースで、
MacOSXのTerminalで普通にLinuxコマンド使える。
CUI好きにはうれしい。

☆メリット2
本番サーバがLinuxであることほとんどなので、
ローカル環境もLinuxが望ましい。
#ディレクトリ構成を合わせられるし、cronも使える。

ならばUbuntuにすればいいと思うが、
Ubuntuだと、
・無線LANプリンタのドライバがない
・Linux用FlexBuilderが開発中止
などで問題があった。

☆メリット3
PC自体が格好いい。視覚効果がクール。

ざっとこんな感じだろうか。
PHPのIDEはNetBeansを使っている。NetBeansならRubyもいける。
ただFinderが使いづらいが、そのうち慣れるのだろうか。
使いつづけてみよう。

--
2009年07月05日


Ubuntuインストールしてみた

以前から興味があったUbuntu をノートPCにインストールしてみた。
バージョン 9.0.4。
WindowsXPとのデュアルブート環境。

ドライバ類が心配だったが、無線LANは普通に動いた。
印刷は厳しそうだ。
あとはおいおい試してみよう。

--
I am interested in Ubuntu.
So, I have just installed it in my laptop-computer.
The version is 9.0.4.
The PC is dual-boot environment with WindowsXP.

I am worry about device drivers.
Wireless LAN goes well, but printer-driver does not work.
I have to try a lot of functions later.

--
2009年06月17日