iOSで開発 [仕事]
ここのところ、iOSで開発に挑戦中。iPadで何か動かそうかと。
なんせMAC環境初めてだから四苦八苦だ。
まずはMAC入手からスタート。コンパイルできればいいから、Mac-miniを購入。
こいつね。これで十分。ディスプレイはWindowsと共用。キーボードも共用。
なんでMAC純正のキーボードってあんな打ちにくいのしかないんだ?私はバシバシ打てる堅牢なキーボードが使いたい。
さて、ターゲットとなるiPadも購入だ。
さあ、モノは揃った。あとは開発環境。
最初、Titanium Mobile で作ろうと思ったんだけど、せっかくやるんだからネイティブ環境でやってみることにした。
なんせMAC環境初めてだから四苦八苦だ。
まずはMAC入手からスタート。コンパイルできればいいから、Mac-miniを購入。
APPLE Mac mini/ 2.5GHz Dual Core i5 /4G/500G/USB3/Thunderbolt MD387J/A
- 出版社/メーカー: アップル
- メディア: Personal Computers
なんでMAC純正のキーボードってあんな打ちにくいのしかないんだ?私はバシバシ打てる堅牢なキーボードが使いたい。
さて、ターゲットとなるiPadも購入だ。
iPad (Retinaディスプレイモデル 第3世代) 16GB Wi-Fiモデル ホワイト MD328J/A
- 出版社/メーカー: アップル
- メディア: エレクトロニクス
さあ、モノは揃った。あとは開発環境。
最初、Titanium Mobile で作ろうと思ったんだけど、せっかくやるんだからネイティブ環境でやってみることにした。
Oracleへの接続がだんだん遅くなる [仕事]
会社は今日から夏季休業なのだが、わたしはそうも行かない。
とはいえ、いつもと違ってのんびりはじめようとしてたら、来るわ来るわ。
で、まず第一の問題。
Oracle11gへの接続がだんだん遅くなり、ついには接続できなくなったという。
サーバ再起動しても同じ現象だというので、システムの問題じゃない。sqlplusで接続もできないそうで。
というわけで、これは、listener.log だな、と。
リスナーサービス止めて、listener.log 調べてみると、4Gもあるではないですか。
リネームして、リスナーサービス開始。
無事接続できましたとさ。
とはいえ、いつもと違ってのんびりはじめようとしてたら、来るわ来るわ。
で、まず第一の問題。
Oracle11gへの接続がだんだん遅くなり、ついには接続できなくなったという。
サーバ再起動しても同じ現象だというので、システムの問題じゃない。sqlplusで接続もできないそうで。
というわけで、これは、listener.log だな、と。
リスナーサービス止めて、listener.log 調べてみると、4Gもあるではないですか。
リネームして、リスナーサービス開始。
無事接続できましたとさ。
タグ:仕事メモ
年末近いというのに… [仕事]
少しは楽、っていったい何から楽になったのかちっともわからん。
あれもこれもやらねばならぬし、お客さんは30日まで営業だし。
まあ、仕事がないよりはマシなのであまり嘆かないようにしようとは思う…がそれにしても(笑
今日はひさびさに緊急で古臭い仕事をした。
古いプログラムで、EXEしかない。自分で作ったやつじゃないので、どんなになってるかちっともわからん。
そんなプログラムを修正しなければならんという。
というわけで、できるだけの情報をもらい、久々にバイナリエディタなどで実行モジュールの中身をそのままみる用意をする。
どこまでできるかわからないが、逆アセンブラも用意して、とりあえず逆アセンブル。う~ん、シンボルがわからないから大変だなぁ。C++Builderで作成した、ということなので、もうすっかり忘れてたコンパイラの癖を思い出して、アセンブルコードから問題箇所を特定しようと。
うむ。確かにこれはMicrosoft系じゃなくて、Borland系のコンパイラだとはわかる(笑
switch-case文とか特徴あるんだよね。
とはいえ、EXEが1M超えてるから大変だよ、探すの。
時間かければわかるとは思うが、時間がないのだ。
30分くらい眺めてこの手法はあきらめた。
というわけで、バイナリエディタで直接16進ダンプから捜索することにする。
staticで確保してる配列があって、初期値もあるので、そこはすぐ発見。このテーブルの値をまずは修正。
問題は、それを参照してるコードの処理の修正だ。
その部分であろう、という、おそらくこれかも、というソースコードの一部があったのでそれから類推する。まあ、処理上そんなに変更ないだろうという箇所なので、そこをどうやって特定するかを考える。
ラッキーなことに即値が使われてるじゃん。intだから32bitで当然のことながらリトルエンディアンなので、4byteの16進数表記で検索すると…3ヶ所見つかった。たった3ヶ所か、ラッキー!
で、そのあたりのバイナリみて、命令を予測。ふむ。おっと、直前にも違う値の即値が使われてるじゃん。
近接してる2つの即値で照らし合わせると、一ヶ所に特定できた。
さて、昔のパッチの様に、jmpさせてその先で処理書いてretさせるのかあ、86系の命令セット思い出さないとだめかなぁ、と思ったのだが、なんとその即値を変更すれば処理上うまくいくことを発見。楽チンじゃん~!
というわけで、残り30分で、即値で書かれていた部分の値を変更することで完璧直りました。
ん~、こういうのうまくいくと嬉しいね。
ほとんど完全にあきらめていたお客さんも喜んでくれたし。
ちょっと仕事した気がします(笑
あれもこれもやらねばならぬし、お客さんは30日まで営業だし。
まあ、仕事がないよりはマシなのであまり嘆かないようにしようとは思う…がそれにしても(笑
今日はひさびさに緊急で古臭い仕事をした。
古いプログラムで、EXEしかない。自分で作ったやつじゃないので、どんなになってるかちっともわからん。
そんなプログラムを修正しなければならんという。
というわけで、できるだけの情報をもらい、久々にバイナリエディタなどで実行モジュールの中身をそのままみる用意をする。
どこまでできるかわからないが、逆アセンブラも用意して、とりあえず逆アセンブル。う~ん、シンボルがわからないから大変だなぁ。C++Builderで作成した、ということなので、もうすっかり忘れてたコンパイラの癖を思い出して、アセンブルコードから問題箇所を特定しようと。
うむ。確かにこれはMicrosoft系じゃなくて、Borland系のコンパイラだとはわかる(笑
switch-case文とか特徴あるんだよね。
とはいえ、EXEが1M超えてるから大変だよ、探すの。
時間かければわかるとは思うが、時間がないのだ。
30分くらい眺めてこの手法はあきらめた。
というわけで、バイナリエディタで直接16進ダンプから捜索することにする。
staticで確保してる配列があって、初期値もあるので、そこはすぐ発見。このテーブルの値をまずは修正。
問題は、それを参照してるコードの処理の修正だ。
その部分であろう、という、おそらくこれかも、というソースコードの一部があったのでそれから類推する。まあ、処理上そんなに変更ないだろうという箇所なので、そこをどうやって特定するかを考える。
ラッキーなことに即値が使われてるじゃん。intだから32bitで当然のことながらリトルエンディアンなので、4byteの16進数表記で検索すると…3ヶ所見つかった。たった3ヶ所か、ラッキー!
で、そのあたりのバイナリみて、命令を予測。ふむ。おっと、直前にも違う値の即値が使われてるじゃん。
近接してる2つの即値で照らし合わせると、一ヶ所に特定できた。
さて、昔のパッチの様に、jmpさせてその先で処理書いてretさせるのかあ、86系の命令セット思い出さないとだめかなぁ、と思ったのだが、なんとその即値を変更すれば処理上うまくいくことを発見。楽チンじゃん~!
というわけで、残り30分で、即値で書かれていた部分の値を変更することで完璧直りました。
ん~、こういうのうまくいくと嬉しいね。
ほとんど完全にあきらめていたお客さんも喜んでくれたし。
ちょっと仕事した気がします(笑
仕事は… [仕事]
んー。年末年始もきつい感じだ、仕事。
あれもこれもやらないといけない。
お仕事ないよーくださいー、という連絡もたくさんくる。
お仕事あるけど安くて難しいよーと返事する。
売り上げあがってもぜんぜん儲からん。コストかかりすぎ。
外注したほうが安くあがるなら出しますよー。
というわけで、明日も仕事です。客先へ行かねばならぬ。
土曜日も仕事はしょっちゅうだけど、客先作業だとちょっとしんどい。日曜もあまり休めないし、しんどいまままた月曜日を迎えるのがまたつらい。
あれもこれもやらないといけない。
お仕事ないよーくださいー、という連絡もたくさんくる。
お仕事あるけど安くて難しいよーと返事する。
売り上げあがってもぜんぜん儲からん。コストかかりすぎ。
外注したほうが安くあがるなら出しますよー。
というわけで、明日も仕事です。客先へ行かねばならぬ。
土曜日も仕事はしょっちゅうだけど、客先作業だとちょっとしんどい。日曜もあまり休めないし、しんどいまままた月曜日を迎えるのがまたつらい。
上海 [仕事]
仕事で三日ばかり上海に行ってきた。
なんとかしてもぎとらないと明日がない。めっちゃくちゃなこの一年間終わってほっとしてたら食えなくなる。
三日ともずーっとアルミニウム関係の見本市会場にいたので、あまり上海って感じはなかったが、二日目の夕方にサッシ加工工場を見学に行った。そのあと宴席を設けてもらってごちそうになった。
まあ、中国はイケイケドンドンな感じなのはわかっていたが、目の当たりにすると凄いねえ。
しかしまあ、暑い。暑い…と思ったが、成田に戻ったらもっと暑かった。節電もあるし、とにかく日本は暑い。
この間、いろいろあった。
原発反対のデモに3回行った。
久し振りに植物に手を入れてる。
とにかくやっとココロが落ち着いてきた感じ。
仕事以外のことが少し考えられるようになってきた。
やっと人間に戻ってきた。
蓮はいい。
なんつったって、水の鉢。
小さいからちょっとかわいそうな気がしたが、鉢にめだかも入れた。元気に泳いでる。
あー。今週も週末は大手町だ。
一体いつ休みが取れるんじゃい。せめて週末くらい寝てタイぞ。
なんとかしてもぎとらないと明日がない。めっちゃくちゃなこの一年間終わってほっとしてたら食えなくなる。
三日ともずーっとアルミニウム関係の見本市会場にいたので、あまり上海って感じはなかったが、二日目の夕方にサッシ加工工場を見学に行った。そのあと宴席を設けてもらってごちそうになった。
まあ、中国はイケイケドンドンな感じなのはわかっていたが、目の当たりにすると凄いねえ。
しかしまあ、暑い。暑い…と思ったが、成田に戻ったらもっと暑かった。節電もあるし、とにかく日本は暑い。
この間、いろいろあった。
原発反対のデモに3回行った。
久し振りに植物に手を入れてる。
とにかくやっとココロが落ち着いてきた感じ。
仕事以外のことが少し考えられるようになってきた。
やっと人間に戻ってきた。
蓮はいい。
なんつったって、水の鉢。
小さいからちょっとかわいそうな気がしたが、鉢にめだかも入れた。元気に泳いでる。
あー。今週も週末は大手町だ。
一体いつ休みが取れるんじゃい。せめて週末くらい寝てタイぞ。
ノートPCに集積 [仕事]
緊急時のためにノートPCにいろいろ集積中。
Windows7 でC++Builder 5 がちゃんと動かない。
メイクはできるがIDEから実行時にエラーが出る。bordbk51.dllが存在しないか登録されてない、ってやつ。
存在はしてるから登録できてないのだろう。
いろいろ調べたが、ActiveXDLLのようなので、regsvr32で登録してみる。
でもうまくいかない。
で、結局、管理者モードでコマンドプロンプト開いて、そこから、regsvr32で登録したら動いた。
まあ、XPのVMいれてもいいんだけど、そんな余裕が今ないから、直接インストール。
とりあえずこれでいま必要な開発環境がすべて入ったので安心だ。常に持ち歩こう。
それにしても福島原発。危機的状況である。
脱出も考えたが、ひとり脱出はやはりできない。
芝浦まで直線距離で228Km
三鷹まで直線距離で231Km
さいたま市まで直線距離で213Km
国立まで直線距離で238Km
足立まで直線距離で214Km
Windows7 でC++Builder 5 がちゃんと動かない。
メイクはできるがIDEから実行時にエラーが出る。bordbk51.dllが存在しないか登録されてない、ってやつ。
存在はしてるから登録できてないのだろう。
いろいろ調べたが、ActiveXDLLのようなので、regsvr32で登録してみる。
でもうまくいかない。
で、結局、管理者モードでコマンドプロンプト開いて、そこから、regsvr32で登録したら動いた。
まあ、XPのVMいれてもいいんだけど、そんな余裕が今ないから、直接インストール。
とりあえずこれでいま必要な開発環境がすべて入ったので安心だ。常に持ち歩こう。
それにしても福島原発。危機的状況である。
脱出も考えたが、ひとり脱出はやはりできない。
芝浦まで直線距離で228Km
三鷹まで直線距離で231Km
さいたま市まで直線距離で213Km
国立まで直線距離で238Km
足立まで直線距離で214Km
滝沢まで直線距離で257Km
しかし日本のマスコミは最悪。
知りたい情報はすべて海外メディアからだ。
政府がチェルノブイリのように石棺化するってのも、ドイツのサイトから知った。
わかっちゃいたけど、なんだかなぁ
しかし日本のマスコミは最悪。
知りたい情報はすべて海外メディアからだ。
政府がチェルノブイリのように石棺化するってのも、ドイツのサイトから知った。
わかっちゃいたけど、なんだかなぁ
なめたらいかんぜよ [仕事]
サラリーマン、なめたらあかん。
これがイヤで自分で仕事始めたのに、そこに絡めとられている。
24年振りに苦しい。
こちらのペースがまったく作れない。
みんながみんな苦しんでるのに、助けようがない。自らも助けられない。
まだ続くのか…追い越すことは不可能か?
わからない。
当面続く地獄に耐えられるか…
これがイヤで自分で仕事始めたのに、そこに絡めとられている。
24年振りに苦しい。
こちらのペースがまったく作れない。
みんながみんな苦しんでるのに、助けようがない。自らも助けられない。
まだ続くのか…追い越すことは不可能か?
わからない。
当面続く地獄に耐えられるか…
大阪は八尾市 [仕事]
昨日は大阪は八尾市まで仕事の打ち合わせに行ってきた。
暑さは東京も大阪も同じ。もっと暑かったらどうしようかと思ってた…
朝早く行くつもりが、夕べ遅くて寝不足、二度寝したりして、新幹線乗りそこねて遅れてしまった…
新大阪からタクシーで行ったのでなんとか20分遅れで間に合った。
暑さは東京も大阪も同じ。もっと暑かったらどうしようかと思ってた…
朝早く行くつもりが、夕べ遅くて寝不足、二度寝したりして、新幹線乗りそこねて遅れてしまった…
新大阪からタクシーで行ったのでなんとか20分遅れで間に合った。
ひとつは終結 [仕事]
先週のはじめから連日3時過ぎまでの作業。
連日の仕様変更と既存問題の解決に追われ、最終結果出力に着手できずに週末を迎える。
ほとほと草臥れ果てて気力もだいぶ落ちてる状態で金曜、昼間は別件でまったく思考すらできずで、夜22時過ぎからやと作業開始。とはいっても、そこから、いったいどうやればできるのか?と、仕様を考える前段階。納期はすぐそこ。
だめだ。
連日の仕様変更と既存問題の解決に追われ、最終結果出力に着手できずに週末を迎える。
ほとほと草臥れ果てて気力もだいぶ落ちてる状態で金曜、昼間は別件でまったく思考すらできずで、夜22時過ぎからやと作業開始。とはいっても、そこから、いったいどうやればできるのか?と、仕様を考える前段階。納期はすぐそこ。
だめだ。
ひと段落…まではまだ遠い [仕事]
技術的な問題は昨日解決したがまだ物量が残っている。
まあ、これは寝ないでやればすむ話だが…寝ないで頑張れないんですけど…
データの保存に関してかなり悩んでいたけれどもあっさりできた。意外にもちゃんとデータ構造ができていた(笑)ために、芋づる構造でそれぞれのクラスにRead,Writeメソッドを書くだけで解決。ま、データバージョン管理を考えないとならないけど、ま、それは問題ないでしょ。
問題となるのは保存データのでかさだ。
でかい。
最適化して保存が非常に困難なため、すべての型に対して、
サイズ
データ
という形式で一項目ごとに保存していることが原因。
まあ、実利用でギリギリってとこか…
Pipeで圧縮かけるかな…そうするとおそらく、1/100くらいになるだろう…あああぁぁ
まあ、これは寝ないでやればすむ話だが…寝ないで頑張れないんですけど…
データの保存に関してかなり悩んでいたけれどもあっさりできた。意外にもちゃんとデータ構造ができていた(笑)ために、芋づる構造でそれぞれのクラスにRead,Writeメソッドを書くだけで解決。ま、データバージョン管理を考えないとならないけど、ま、それは問題ないでしょ。
問題となるのは保存データのでかさだ。
でかい。
最適化して保存が非常に困難なため、すべての型に対して、
サイズ
データ
という形式で一項目ごとに保存していることが原因。
まあ、実利用でギリギリってとこか…
Pipeで圧縮かけるかな…そうするとおそらく、1/100くらいになるだろう…あああぁぁ
GW直前 [仕事]
あっ、と気がついたらすでに4月末。
みなさまお元気ですか。私は生きています(笑
昨日も打合せで休みなんか関係ない。
明日からは電話やメールがない分やっと2ヶ月振りに落ち着ける…気がする。
蜂蜜の公演も近し。
川は呼んでいるし。
眠いし。
お腹空いたし。
3月は地獄のようだった。4月でも終了せず、まだまだ続く…うちに次の仕事も始まった…
ああああ、射影法…
おお? [仕事]
今朝、画期的アイディアを思いつく。
早速実装。
…
だめか…
いや…
ミスしてる…
直して実行…
!
!!
!!!
おお?
いいんじゃねえか?
いいいいんじゃねいかぃ!?
うおおお?
いい。
いいよ。
いいじゃん!
できたかな?
うおっと。もう22時じゃんか!飯食うぞ!
マグロの角煮だ
早速実装。
…
だめか…
いや…
ミスしてる…
直して実行…
!
!!
!!!
おお?
いいんじゃねえか?
いいいいんじゃねいかぃ!?
うおおお?
いい。
いいよ。
いいじゃん!
できたかな?
うおっと。もう22時じゃんか!飯食うぞ!
マグロの角煮だ