カテゴリー : プログラミング

このカテゴリーの登録数:107件 表示 : 21 - 40 / 107

Feb 02, 2007

サーバ落ちてましてすみません

ポスト @ 21:25:58 | 日常,プログラミング

夕方から3時間近く止まってました。

今回は、メインおしごとのテストサーバが開通したのですが、あれftpできないよ? 正確に言えばPUTだけできないよ? というわけで、このマシン(=ルータ兼任)が20番をフォワードしないようになってたので修正してみたのですが。

リブートしたら思いっきり、LANからすら見えなくなっちゃった。大苦笑

自室の液晶モニタを物置までえっちら運んで、ifconfigとかしてみるとパケット数以外思いっきり正常状態な表示(つまりNICは認識されている)、でも自室マシンとはどちらの方向にも一切のIPパケットが通りません、さらに別のマシンには通ってるのでLAN自体は正常、と、正直お手上げになってしまいました。

であーでもないこーでもないとやってみたのですが結局、直した設定をはずせば動いてる…

結局、ftpはあきらめざるを得ませんでした。
私がかかわってるサーバはそちら以外すべてPASVアリで、よってこれまではまったく困ったことがなかったわけですが、今回のサーバは「PASV禁止です」(^o^;;) そちらのポリシなのでしょうからもうどうしょうもなく、UIが恐ろしく使いづらいWinSCPを使うことにしました。トホホ

あぁ仕事遅れた…日曜もちょっと作業しなければなぁ。涙
画像ファイルのアップロードをページ遷移なしで実装するしょーもねい技について、ちょっと試行錯誤してみる予定です。

Jan 25, 2007

今日の新宿は遠かった…orz

今日はメインおしごとの打ち合わせで新宿まで出ました。チャリで。

しかし行きはもう…たくさんある上り坂でほとんど向かい風!
そのせいで所要時間1時間5分、定刻に5分遅れてしまいました(涙)。

まぁでもよい運動にはなったかな。やっぱりふだんのサイクリングルートは勾配がほとんどないので、けっこう効きましたよ。

仕事の方も設計がどんどんカタチになりつつあり、来週からはAjax絡みのクライアントサイド用コードも書き始められそうです。prototype.js の利用許可もいただけましたのでいよいよキブンもホンバン、ガムバロウ(^O^)/~

Jan 10, 2007

ものすごい複合カテゴリにしちゃいましたが、去年の決算。

ポスト @ 20:09:40 , 修正 @ Jan 11, 2007 18:28:26 | プログラミング,戸田ひさよしと直接対決,旅・鉄・温泉

http://www.hige-toda.com/x/c-board/c-board.cgi?cmd=one;no=877;id=01より。

いずみなる(戸籍名も性別も違うことを自分で言っているが、それについては全く語らない)人物の放蕩三昧の所行をあなたはどう考えますか?
年中温泉旅行し、しょっちゅう全国にも遊興に出かけてる人と、人生をかけて、社会変革にいそしむ戸田さんは比較にならないですよ。

追記:ぉぃぉぃ、よく読んだら「戸籍名も違う」って書いてあるぢゃん! そら、戸籍名は米澤泉美で通名はよねざわいずみでちと違うけどさ…ひでーなこりゃ。

http://www.hige-toda.com/x/c-board/c-board.cgi?cmd=one;no=878;id=01 より。

本当の問題を言うなら、名著に、社会評論という素晴らしい出版社に正体不明の輩と、年中混浴温泉めぐりと全国遊興旅行を正体不明な資金源でずっと続けている怪しい奴が執筆している事のほうが問題ではないか! そっちを追及しなさいよ。

とまぁそういうことだそうなんですけれど、去年の決算は以下のとおりですよ。(消費税込)

合資会社ダブルエスエフの業務受託売上 4935000円
※8ヶ月しか働いてないので、1ヶ月平均で616875円。これはだいたい、フリーランサーなプログラマの平均報酬に一致してますね。
米澤泉美への役員報酬 3600000円
※月平均で300000円。もち経費でいろいろ落ちてるので、実感としてはもう少し高収入ってことでしょうか。
2月の九州旅行の旅費 約100000円
3月の四国中国旅行の旅費 約60000円
6月の九州旅行の旅費 約80000円
11月の母娘(笑)中国四国旅行の旅費 約200000円
11〜12月の日本1週旅行の旅費 約250000円
12月〜今月の年越湯治の旅費 約120000円
計 810000円
※これに毎月行く(笑)鳴子湯治の費用、GWとかに関西遠征した旅費とかありますけど、それらは当然とても安く済んでるので、合計しても1000000円には達しません。

はい、ということで、これ、どう考えても普通の生活ぶりだという結論が出ました。

あぁかわいそうに、この「統一戦線」という人は、湯治がとても安くできるという事実を知らないのだろうなぁ。

初日からやっちまいました

ポスト @ 19:51:28 | プログラミング,日常

今日から本格的に仕事初め。午前中は歯医者さんに行きましたが、それ以外は久々に、というか数ヶ月以上ぶりにがっつり取り組みました。

しかし…今日夕方までにやれるはずの仕事が終わりませんでした。苦笑

まだ分析フェーズなんですけど、分析は終わりましたがそれをWordでまとめるのが大変…久々にWordと格闘してますよ。。

クライアントさんの広い御心により締切を明日に延ばしていただけたので(初日からかよ!)、とりあえずこれから健康上の理由からいずみママに「見れ!」と厳命された「試してガッテン!」を見て、その後仕事まっしぐらだっ!

Dec 21, 2006

1月からのお仕事決まりました

ポスト @ 21:57:12 | プログラミング,PHP

まだ条件面を詰めていないのですが、とりあえず3ヶ月、おおむね在宅勤務可能な形態でのお仕事が決まりました。ほっ。

環境はLAMP(Linux, Apache, MySQL and PHP)で、ようやく本領発揮かなぁ、といったところです。

ただし問題は…支払いが2ヶ月遅れになるという(@_@)
これは正直ムッチャクチャキツいところなので、超倹約は当然としても、それ以外に何かしないといけないなぁ、というのがありますね…在宅だしニコニコ払いの軽作業バイトとかしようかしらん(爆)

Nov 06, 2006

今日もAjax開発進まず…

というのも、フレッツスポットを申し込もうとしたのですが…

今現在ウチのBフレッツはルータ専用機なしでLinuxますぃ?んにNIC2枚挿しで接続されて、そいでもってこのサイト含め各種サイトを外部公開している状態。
なので、フレッツスクエアに接続することが普通に考えるとできないわけです。
んでもってもう仕方ないや、ということで、PPPoEマルチセッションでなんとか逃げようと、夕方日帰りツアー・高尾山から帰宅したところで、ますぃ?んにbindインストールして.fletsの正引き逆引き設定して、ルーティング設定して、iptablesの設定もなおして…
と書けば簡単そうですが、お約束の設定トラブル多発で今の今までかかってしまいましたよ設定。
でもっていよいよフレッツスクエアに接続できた!(^o^) と思いきや…
フレッツスポット申込ページにログインするためのパスワードが書かれた書類を紛失してました
結局、パスワード再発行を固定電話でNTT-Eに依頼したのですが、その依頼先でフレッツスポットには申し込めたりします

もう、ホントなんていうか、いつもどおりのドハマリ。。。

Oct 31, 2006

今から黒部峡谷に行ってまいります

ようやく仕事が終わりました…
次の仕事は決まっていないのですが、年内は旅行と、あとAjaxなんかの勉強にあてるつもりです。

というわけで早速今晩から黒部峡谷へ。吉村昭「高熱隧道」で描かれた、まさにその高熱隧道の中を通って黒四発電所を見学するという、富山県主催の見学会に参加してきます。
それは2日朝に欅平出発なので、前日は欅平の温泉に泊まり、でその前に黒部峡谷鉄道沿いの温泉を1日かけて巡ります。

auは全区間にわたって完全に圏外なので、電話もメールもなにもかも、明日1日朝7時からあさって2日昼13時まで一切通じません。
のでいつも旅blogでやってる速報も今回は中途半端になってしまいますが…その分自分はリラックスして、心を洗ってこようと思います。。

Oct 16, 2006

もういいよBREW…って書いてばっか

ポスト @ 22:28:21 | プログラミング,BREW

ソケットライブラリをいじっているのですが、BREWなので当然ソケットの読み書きは非同期になります。
で、EWOULDBLOCK 相当の戻り値だった場合、コールバック関数を登録するのですが、読み出し用のコールバック登録メソッドが ISOCKET_Readable()...(実はカプセル化してるのでクラスメソッドになってますがここではBREW生APIで話を進めてます)
「読み出し可能になった」のがわかるのはこの関数ではなくて、この関数で登録した関数のはず なので、このネーミングが既におかしいのですが、何も考えずに書き込み用のコールバック登録をISOCKET_Writable() で登録しようとしたらコンパイルエラー...

もう、何がおかしいのかわかりませんでしたが、念のためヘッダを見てわかりましたよ。

正しいメソッド名は ISOCKET_Writeable()
ISOCKET_Writeable()ですよ奥さん!!

BREWを考えた人は英語すらできない、という事実を私は今日学びました。。。がそんなこと学びたくもなく、もういい加減解放されたいです。。。。

Oct 07, 2006

Pocket PC 2003 Emulator が起動しません。。。

大雨で東北の鉄道がほとんどすべて止まってしまい、福島からバス2本乗り継いでなんとか鳴子温泉入りできました。。。

で、もうプロとしてC++屋はできないと思われる私が、アマとして最後の悪あがきで、昨晩eMbedded VC++ 4.0を自宅PCとれっつのにインストールして、自分で使うW-ZERO3用のアプリを組もうというわるだくみ。今回は体調最悪なのでリアル湯治で、宿から買物以外では出ずに開発だけしてよう、と思いインストールと起動確認だけして出発して、電車の中で軽くやってみたのですが。。。

もののみごとに、Pocket PC エミュレータにイメージが転送できません。。。

せっかく久々に新たな環境で何かやってみようかな、と、相当心にドーピングで臨んだにもかかわらず、この体たらくですよ。。。

そして先ほどやってみたら、何の問題もなく転送成功。もしやと思いテストしてみましたが、要するにLANかインターネットとつながってないとエミュレータ起動しねーよってことでしょうか。。。

解決策もモバイル環境でぐぐったレベルではちょっとみつけられなかったので、とりあえず電車の中ではできないけれど宿の中ではできる、ということで今のところナットクしたことにしておきますが、まぁこんなものですよねぇ。。。99粒の涙

Sep 08, 2006

AECHARなんとかしてくれよ。。。

ポスト @ 3:09:15 | プログラミング,BREW

普通のcharで動くモノを、もちろん文字型はテンプレートパラメータ化するということで、AECHARにしてみましたが、ものの見事に動きません…

いろいろあーでもないこーでもないしてみたのですが、その結果こーんなことがわかりました。

まず、AECHARに日本語文字列を入れると、1バイト文字はそのままの数値で入りますが、2バイト文字はバイト順が入れ替わります
たとえば、半角空白文字は0x20、全角空白文字はシフトJISで0x8140ですが、AECHARに変換すると、前者は素直に0x0020になるのですが、後者は0x4081になるのでした。
BREWが動くARMは基本的にリトルエンディアンなので、文字列バッファからベタに読み出すとそりゃ上下バイト入れ替わるわけですが…いったいどんな設計になってるのやら…大苦笑

次に、せっかくのワイド文字なのに、WSTRUPPER() / WSTRLOWER() で、2バイトアルファベット文字の大文字小文字変換はできません

どちらも、AECHARのまま文字列として扱うことは考えてない、ということなのでしょうけれど、それならなんでAECHARなんか導入したのか。

もう、QUALCOMMの考えてることは、まったく理解できません。。。ってそりゃ私の能力&脳力の問題か。(u_u)

Aug 31, 2006

もうC++でプリミティヴはムリ(ってこればっか…)

ポスト @ 1:14:05 | プログラミング,C++,BREW

昨日更新しようと思ったのですが、まったくキーボード上の指が動きませんでした。。
というわけで多少復調した今夜書いています。

ただいまのお題はBREW上で動かす非決定性有限オートマトンエンジンを作る。ちなみにオライリー本は持っておらず買うつもりもありませんので、純粋に理論から組みます。

BREWなのでメモリ制限(正確には、フラグメンテーションに対する制限)がキツいのですが、とりあえずは普通にノードを構造体で抱えてグラフを作ることにします。

そして、それらノードを抱えておくメモリプールをどう管理すればよいのか、で時間が空しく失われてしまっていったのでした…涙

もっと読む...

Aug 25, 2006

ARM C++ Compiler のバグというかだめだめなところ

ポスト @ 0:37:10 | プログラミング,C++,BREW

BREW用C++ライブラリを作っていていつもハマるのが、ARMコンパイラのC++、特にテンプレート絡みでのバグの多さです。。。

今日ハマったのは、こんなケースです。(実際にはもっとテンプレート引数多し)

template<class Key> class EqualTo { ... };
template<class Key> class DefaultHasher { ... };
template<> class DefaultHasher<int> { ... };
template<> class DefaultHasher<const CString&> { ... };

template<class Key, claee Value, class Hasher = DefaultHasher<Key>, class Compare = EqualTo<Key> > class CHashTable { ... };

CHashTable<int, CPairT<int, int> > map; // <- ERROR OCCURRED!

コンパイラのメッセージとしては「テンプレート引数が無効」だとか…

いろいろ調べましたが、どうやら、以下のようなカラクリがあるようでした。

  • テンプレートクラスのテンプレート引数に、前方参照で引数を用いるテンプレートがあって、
  • そのテンプレートに、その引数で一致する特別バージョンがあると、
  • ARMコンパイラはそのテンプレートを解決済みの普通のクラスとみなしてしまい、
  • 大元のテンプレートクラスをインスタンス化する際に「テンプレート引数の型が合わない」とみなしてしまう

あぁなんのこっちゃ。。。

ちなみに、特別バージョンのない EqualTo<Key> ではそういう問題は起こりません。

ARMコンパイラは、少なくとも VC6 よりはテンプレートをまともに解釈できるようですが、そのまともぶりが中途半端なので、時としてこういうよくわからないワナにはまってしまうのでした。。。。涙

Aug 15, 2006

もうC++でプリミティヴはムリ

ポスト @ 23:59:01 | 日常,プログラミング,C++,BREW

昨日はまずまずの調子も、今日は昼までもう大変な状態になってしまい、落ち着いたところで出勤、その後はなんとか過ごせました。。。

で、今は例外が使えない(のでboostどころかSTLすら使えない)BREW用にC++のライブラリを実装しているのですが。。。

もう、私の脳では、プリミティヴなメモリ管理をしながらも汎用性を持つようなクラスを書くのはかなり困難だってことを、改めて感じつつも作業しています。
まだギブアップしていませんししなくて済みそうな気もするのですが、いかんせん作業遅すぎ重過ぎなのでした。

似たことをしてるJavaのサンプルソースを見て、これならまだ今の自分にだって楽に書けるさ、とかは正直思うのですが…この落差、確実に「感じていなかった」少し前までの自分を思い出すに、老化をリアルに体感しています。。。

Aug 09, 2006

いろいろあるんですよ。。。

ポスト @ 0:05:10 | プログラミング

昨晩コメントをいただきました

前にも旧にっきとかで何度かブチ切れたことがありましたが、私は基本的に、未来の仕事の方向性について他者から何か言われることを極度に嫌っています

私は自分自身の仕事に関してかなり独特の妙な価値観を持っているので、それを理解していただいた上で何かアドバイスを受けるということはほとんど不可能なのですよ。

でも今の状況では怒ったりブチ切れたりする元気もないので、一応反論をしておきます。

もっと読む...

Jul 24, 2006

はーい人間の屑未満ですよ☆

ポスト @ 23:03:48 | 日常,プログラミング

とか書いてる場合じゃないんですが…

せっかく休みをいただいて、2泊3日の鳴子温泉郷、超満喫して東鳴子で元気ももらって、さーて今週は仕事に…

…なんて甘いもんじゃなく、今朝起きたときからまた同じく大変な脳内状況。。。

明らかに、私のせいが5割近くで、プロジェクトが厳しい状況になっています。

といっても破綻しそうとかではなく、それはもう、スーパープログラマKさんが必ず結果を出すと思ってはいるのですが、世界的に有名で儲けてる企業なんていうのはスキルがないからこそ儲けていられるだけであって、そういう連中が「自分の仕事」と称して仕様をひっかきまわす、進捗に難癖つける、そういう無理難題を現時点で押し付けられてしまうのはやっぱり当初の予定とは違って進んでしまってるからに他ならないのです。

でも、もうすべてうっちゃりたいんですけどね、ふだん「私は自分の都合で生きてます、人を裏切ることに一切躊躇しません」とか公言してますけどね、それはやっぱり脳内が正常なときだから思い切れるのかもね。。。

今、なぜか到底そんなことは思い切れず、明らかに現状でずるずると、周囲も自分の脳内も悪化させるがままに日々過ごしてるのだなぁ。。。

Jul 19, 2006

またギブアップですよ、また。。。

ポスト @ 22:18:20 | 日常,プログラミング

今日は1週間かけて作っていた部分が、最終的にメモリ管理系バグを残したまま完成しました。

ってそれじゃ完成とは言わないか。

正直なところ、もう私は、C++やらBREWやらについて、自らが引いている「プロのプログラマの最低ライン」を明らかに下回ってしまっています。よって本当は明日にでも廃業したいところです。

ただ、どういう事情か理由か単なる温情かはわかりませんが、直接の雇い主であるKさんが「廃業まかりならぬ」とおっしゃった上で仕事が少しずつ振られてくるので、辞めるに辞められない、そういうところですか…

あぁ、PHPならまだまだやれそうなんですけどね。あと、JAVAもなんとかなりそうな気はしてます。でももうだめっすね、C++やらCやらは…

Jul 14, 2006

もういいよBREW…

ポスト @ 19:58:07 | プログラミング,BREW

  • なんでシーク可能な抽象ストリームクラスがないんだ?
  • なんでBASE64 encoder/decoder が IWebUtil に実装されてるんだ?

前者のおかげで、MIME マルチパートを各パートの抽象クラスから汎用的に合成しようとすると、独自の読み出しインタフェースを作らざるを得なくなってしまってます(boundary用文字列チェックのためn度読みが発生するのです)。

後者のおかげで、仮にMUAとか作ろうと思ったとき(今回は作らないけど)、http叩かないのにIWebUtilのインスタンスこさえなくちゃいけません。

もうホントにいい加減にしてほしいよ…

まぁでも、もともとBREWって、海外のシンプル機能携帯での実装、またはスマートフォンでの組み込みアプリ実装のためのもので、今の日本の異常に高機能リソース潤沢なケータイで使うことは考えられていないのでしょうけどね…

こういう諸々、「プリエンプティになるらしい」 BREW4.0 ではちっとは改良されるんですかね。まぁ、もし改良されてももうBREWの仕事は私は請けないので関係ないですけどね。

あぁ、せめてもの気紛らわしのため、BR×W Tシャツでも作って、それ着て仕事しちゃおっかなー。笑

Jul 03, 2006

IWebUtil::UrlEncode() のドキュメントはメチャクチャ

ポスト @ 19:15:30 | プログラミング,BREW

というか、BREWのすべてがメチャクチャなだけとも言いますが…

IWEBUTIL_UrlEncode() のAPIリファレンスを読むと、冒頭に「RFC2936に従い」と書かれてますが、RFC 2936 って、MIMEタイプのマッチングの手順じゃないかと思うんですが…

これ、恐らくは2396のtypoなのでしょうけど、しかしそうだとしても、いわゆる「URLエンコード」はRFC 2396 とは違うもののはずです。

このメソッド(マクロだけど)、実際に動作させると、「application/x-www-form-urlencoded 用のエンコード」を行ってくれるようです。すなわち、PHP の urlencode() と同じ動作をしてくれます。

というわけで、BREW1.1 の頃からずっとマニュアルがメチャクチャなまま、という、BREWではやっぱりよくありがちなことのようです。

やっぱり、BREWは世界中で最も汚く不条理なプログラミング環境です

AEECallback 構造体はゼロクリアが前提

ポスト @ 18:54:30 | プログラミング,BREW

単なる備忘録です。

BREW のコールバック設定・解除用構造体である AEECallback ですが、APIリファレンスを見ると

pNext: 予約済み。 コール側でこのメンバを変更する必要はない。
pmc: 予約済み。 コール側でこのメンバを変更する必要はない。
と書かれていますが、それを真に受けて、適当に確保した構造体インスタンスに CALLBACK_Init() だけ施した上で BREW API に渡したりすると、BREWシミュレータは見事に異常終了してしまいます。

Visual Studio のデバッガで追った感じから、「あぁたぶんこれゼロクリア必須なんだろうなぁ」と思い、そうしてみたらやっぱり落ちなくなりました。

まぁ、BREWの場合、MALLOC()で確保できるメモリはデフォルトでゼロクリアされてきますし、コールバック関連の変数はスタックに持てるわけないし(笑)、そういう前提で言うなら「変更する必要はない」んでしょうけどね…

やっぱり、BREWは世界中で最も汚く不条理なプログラミング環境です

Jun 28, 2006

Kさんすごすぎ

ポスト @ 0:04:06 | 日常,プログラミング

土曜日の芸備線&木次線&一畑電車紀行に無理に行かせていただけて、やっぱり旅はいいなぁ、と癒された結果、ちょっと上向きな今日このごろ。

というわけで今日は、そんな私を尻目に徹夜の連続でみなさんが仕上げているコードを、この体制に入ってから初めて拝見したのですが。

おーい、私の書いたコードがほとんど全部消滅してるよー! 笑

Kさんが、多分私が6週間くらいで書いた分を、2〜3日で書き直して、んでものすごくスマートにすっきりさせちゃった、という次第。

私としては、自分がやりかけて破綻寸前まで行ってしまったコードがなくなって、やっぱりキブン的にはラクになりましたね(^^)。そしてプロジェクト全体からしても、ここまですごいコードに変身できたことは、とってもプラスになったんじゃないでしょうか。

しかしなんていうか、Kさんが今、社長業やらプロマネ業やらやってるのはやっぱり何か損失のような気がするのも事実です。はじめっからこうしてりゃ、徹夜してなくても5月中にここまでできてたと思うんですよね。

まぁそれは結果論なので仕方がありません。そんな私に声掛けて雇ったのは他ならぬKさんなのですからね。(ひどい居直り)

で、この山場を乗り切ったら、もう私いなくてもプロジェクトはつつがなく進められるんじゃないでしょうか。

あぁ、辞めたいなぁ…辞めさせてくれないかなぁ…