Browsing "ソフトウェア"
9月 2, 2009 - ソフトウェア    コメントは受け付けていません。

Snow Leopard と NAS で御難

SnowLeopard.jpg28日に、Snow Leopardが届いたのは良いのですが、試しにMacBookにインストールすると、 NAS(NETGEAR Ready NAS NV+)にSMBで接続できなくなった。Apple とNETGEARのサポートに連絡して、かなり長い時間、試行錯誤をしたのですけれど、回復しない。まだ情報がないみたいです。ネットで検索すると、IOデータの NAS とBUFFALO のNASでも同じようなことが起こっていて、 IOデータの NASはファームをアップグレードしたら接続できるようになったそうな。NETGEAR のフォーラムでも31日になって同様の書き込みが。こちらは最新ファームでもダメ。なんでもNAS側のパスワードを削除したら接続できるとのこと。
それでとりあえず、NASのファームを最新の4.1.6にしようとするとチェックサムのエラーでアップできない。これもサポートの方と、初期化したり、USBフラッシュを使って、TFTPを使って、と試みたがことごとく失敗。ついにハードを交換することに。先ほど宅配業者に引き渡したところです。
重要なデータはみんなNAS上にあるので仕事ができないかと思っていましたが、何とかなるもんです、メールはMacBookでも受信できるし、いろんな生データはローカルにあるのでとりあえず、何とかなります。
でも1日以上NASが停止するのは、7年前にLINUXのNASを立ち上げてから初めて。冷却ファンの音が懐かしいです。変に静か。

8月 14, 2009 - ソフトウェア    コメントは受け付けていません。

メタトレーダー

metatrader20090814-400.jpg今、メタトレーダーでFXの自動売買ロボットを作っています。
もともとはお仕事だったのですが、これが面白い!
メタトレーダーはフリーの高機能なトレードソフトで、C言語ライクなMQL4と言う言語で、チャートを作ったり、売買ロボットを作ったりできます。
CやC++、C#の経験があれば、すぐに慣れます。
その面白さに、自分でも少額でFXを始めてみようと思っています。
現在、EA(Expert Advisor:自動売買ロボット)を作成中なのですが、そこで得たTipsを少し。
・論理結合子は、A && B || C と書くと、A && ( B || C ) と等価になる。括弧は必須のようです。単純にオペランドをスタックに積んで処理しているような感じです。
・ログ等のためにファイルのオープン操作を行う時、ファイル名は、絶対パス、相対パスでは動作しません。単純に指定したファイル名が、「experts」の「files」の下にできます。
・「OrderSend」でエラー番号1が返ることがあります。1は本来、OrderModifyの、前と同じ値で更新しようとする時に返るエラーですが、この場合は、単にリトライが必要なようです。最初、悩みました。エラー処理に関しては、ここが参考になります。こういうことって入門書には絶対に書いていないですよね。

7月 11, 2009 - ソフトウェア    コメントは受け付けていません。

近況20090711

image_JohnPowell_20090711.jpg・Music Cloud 1.1 : Ready for sale また Wakeup Tunes 1.01 : Ready for sale です。予想はしていましたが、Wakeup Tunesは評価が真っ二つですね。私も弱点はよく認識していて、スリープ状態(スクリーン・ロック)にならないという仕様なのですが、これを回避するためには、今のところiPhoneネイティブのアラームの鳴動音を、目覚ましに使う音楽のファイルに置き換えるしかない。曲の長さが40秒の制限があったり、iTunesと同期した時に元に戻る可能性があったり、将来Appleが制限をかけてきたりする可能性のある、リスクの高い方法です。そのへんを分かった上で高く評価してくださる方がいるのは非常にうれしいことです。
・iPhoneアプリの開発は、リリースのタイミングと完成度の兼ね合いが難しいですね。たかが115円のアプリと思われるかもしれませんが、ユーザーは非常に高いスペックを要求します。しかもそう簡単には買ってくれません。油断していると、競合製品が次から次へと現れます。ベンダーの中には自力でのヒットを諦めて、アプリの開発を請け負うところも出てきています。ヒットはないかもしれませんが、確実だと言うことでしょう。ゴールドラッシュの時に、自分では金を探さずに金を探す人にジーンズを売って儲けるのと同じです。
・日経コンピューターの、アメリカのベンチャー起業家、ジェイソン・カラカニスの記事は非常に刺激になった。アメリカのネットベンチャーが今何に注目して、どうやって起業して、成長させるのか。起業コストはほとんどゼロだから、何でもやって見ろ、カップ麺で食いつないでいるエンジニアなら一日中コードが書けるだろう、と。元になるアイディアをさらに改良された多数の「リフオフ」からどうやって逃げ切るか。ものすごい世界。元気をもらえる部分と、とてもついて行けない、と思う部分と。この記事を読んだ日は1日ブルーだった。日本の、終身雇用が是か非か、なんて言う議論の対極だな。まだまだ日本は平和だ。
・エスプレッソの出し方に一工夫。最初に少し出して止め、数十秒後にもう一度出す。コーヒーの粉が膨らんで、濃厚なコーヒーが出来ます。最近気に入っています。私がカフェを開店したら、このメニューを加えますね。エスプレッソの意味がないと言われそうですが。
・夕食のメインディッシュに97円のサンマやニシンの缶詰。フーちゃんの缶詰より安いですが、これが結構おいしいんです。DHAやEPAもとれそうだし。
・フーちゃんの最近のお気に入りの場所は、使わないPC類が置いてある物置部屋。キーボードを枕にして寝ています。今度クッションでも置いてあげようか。

7月 5, 2009 - ソフトウェア    コメントは受け付けていません。

Mind Sketch:Ready for sale/MyCollage機能追加

MyCollage-200907186101226.jpgようやく、Mind Sketch 1.21 のレビューが終わって、Ready for saleとなりました。バージョンは.01上がっただけですが、かなりの機能追加が行われています。
・OS3.0に対応。(3.0のみに対応)
・トピックとして、音楽ライブラリの、曲、アルバム、アーティスト、作曲者、ジャンルが設定可能。アートワークのアイコンのタップで、曲を再生します。
・アイコン(写真とアートワーク)の大きさ、テキストのフォントの大きさが変更できます。
・メール添付でJPEGファイルを送れるようになりました。
・その他のバグ修正。
MyCollageの方は未だ未リリースですが、新機能として、テキストの反転表示が可能になったのと、背景を紙の画像にしたこと、写真をグレースケールあるいはセピアに変更できるようになったことです。コラージュらしくなってきました。今の自分の興味をコラージュで表現して、他の人と交換する、ようなことを想定しているのですが。
これが作ってみたコラージュです。

7月 2, 2009 - ソフトウェア    3 Comments

Wakeup Tunes : ready for sale/Music Cloud 機能追加

IMG_0025.jpg
IMG_0031.jpg
バグを直してから2週間、ようやくWakeup TunesがReady for saleとなりました。Appleからメールが来たのは日本時間の1日午前でした。2日の朝には、早くもapptoiphoneのサイトで レビューが。管理人の方からは、質問とバグの指摘のメールをいただきました。バグというのは、独自にプレイリストを作る場合、プレイリストの名前を入力する際にキーボードを日本語に出来ない、というもの。早速修正しました。申し訳ありません。また質問の方は、アラームを止める方法だったのですが、現状、アプリの終了しかありません。そこで、アラーム時、画面のダブルタップでアラームを止めて、次のアラームをセットするようにしました。
競合が無いかと思って探すと、ありました!songrise。機能は似ていますが、どうやら設定できるのは1曲のみ。ボリュームが次第に大きくなる機能は同じ、加えて、写真のライブラリから写真を表示できるみたいです。画面はきれいだけれど、この機能で$9.99とは、昨今のアプリの価格から見ると、高いですね。ちなみに、Wakeup Tunes は、$0.99です。
さらに、My Aralm を発見。これはもう少し洗練されている。が、日付・時刻でしか設定できず、曜日や平日といった設定は不可。また、設定できる曲も1曲みたいです。再生中のアートワークの表示もできません。価格は、$1.99。
こうしてみると、Wakeup Tunes は十分、競争力がありますね。他社がキャッチアップして、ストアにアップするまで1週間、さらにAppleのレビューで2週間はかかると思いますので、それまでにWakeup Tunesで何が出来るか?緊急の課題です。
先ほど海外からのレビューが1件ありました。5点満点の評価をいただいています。
Music Cloud は、機能追加。テキストやアートワークをタップすると、曲が再生されるようにしました。当初は、出来上がったJPEGファイルのやり取りがメインな使い道になるのかと思っていたのですが、こういう使い方もありかな、と。こちらは昨日登録なので、Ready for sale になるまで、10日から2週間かかると思います。旧バージョンは現在販売中止中。ちょっとメール添付のところがあまりにもまずかったので。

6月 29, 2009 - ソフトウェア    コメントは受け付けていません。

Mail Composer サンプルプログラム

IMG_0030.jpgOS 3.0 になって、メールのインタフェースが公開されると前から言われていたのですが、ネット上を探しても、自前でインプリする例しかない。やはりダメなのかなと思って、Appleのサンプルコードを丹念にみていくと、「Mail Composer」というのがある。5月30日登録で、説明には「古いOSで新しいAPIをビルドするときの方法」とある。これだけでは、メール送信のサンプルとはわかりにくいが、実際はメール送信APIのサンプル。おかげで今まで自前で添付ファイル付きのメールを送信していたのが、一気に楽になったし、多分安定性も増し、きれいなユーザインタフェースになった。これがその画面。

6月 28, 2009 - ソフトウェア    コメントは受け付けていません。

Mind Sketchを買ってくださった皆様

MindSketch-200906173163537.jpg申し訳ありません。現バージョンは、OS3.0では動作しません。アプリの説明に誤って3.0対応との記述が載っていました。今日気がついて、アプリの販売を中止しました、次期バージョン1.21から3.0対応となります。本日Appストアに登録しましたので、Appleのレビューを待って問題なければ10日ほどでアップデートできるかと思います。本当に申し訳ありませんでした。

6月 26, 2009 - ソフトウェア    コメントは受け付けていません。

Music Cloud 1.1

MusicCloud-200906175233937.jpg
MusicCloud-200906177175625.jpg
Appleのレビュー中ですがプレビューです。フォントが選択できるようになること、画像で表示が出来るようになること、文字でJPEGファイルを作る場合、行末の処理をよりきれいに行うオプションを追加しました。

6月 24, 2009 - ソフトウェア,    コメントは受け付けていません。

近況20090624

image_JohnPowell_20090624.jpg・大阪のN君、マンションの駐車場にいつも見かけるノラくんが具合悪そうだと気になって、いてもたってもいられない。近くの動物病院に行ったり、親しい獣医さんに写真を送って診断を仰いだり。私とも何度もメールのやりとりをして、どうやら、ダニのせいで体毛が抜けて、痒いし、それが元気のない根本原因らしい。獣医さんからレボリューションを取り寄せて、いつもえさをあげているおばさんに頼み込んで首筋にチュッと薬をつけることになりました。八面六臂の活躍です。彼は虐げられている小さな命をほっておけないのです。「ゴンちゃん、君はひとりぼっちじゃないよ」。私はそういうN君のことが大好きです。
・Music Cloudは23日に公開が始まって、早速レビューが1件。なかなか厳しかったですが、建設的なご意見で3点をいただきました。ただ着想はいい、と。ありがとうございます。それからiPhoneの開発情報を検索していて偶然見つけたのですが、AppBankのサイトで長文のレビューをしていただきました。非常に恐縮です。既に、バージョン1.1が出来ていて、Appleのレビュー中です。1.1では、フォントの選択や、JPEGイメージをもう少しきれいに文字を配置するオプションを追加しました。ただメール添付のオプションは前出のレビューではどちらも触れられていなくて、開発に苦労した割には、あまりニーズが無いのかもしれません。やはりiPhoneの画面でどれだけきれいに見せられるかが一番大事ですね。
・でもこういうのって、時間との戦いであると思う。AppBankで紹介されたもの、音楽ライブラリにアクセスして処理するアプリが少ないから。今にたくさん出てくる。そのときにどうアドバンテージを保つか。厳しい世界だが、やりがいはある。なんとか、これを主な収益源に出来たらと思う。レビューでクールだって言われたら本望だな。

6月 21, 2009 - ソフトウェア    コメントは受け付けていません。

iPhone App のことなど

Media Pickerの件は、どういうわけか、その後、動くようになりました。Appleからも再現しないとのメールが。とりあえず、Pendingにしていたアプリの登録を行いました。SDKをインストールしてすぐにデバッグして出た現象だったので、クリーンしてビルドするか、マシンを再起動するかしてみればよかったです。
「iCollage」は、既にアプリ名が登録済みだったので、「MyCollage」と変更。なおかつ、テキストと画像に角度をつけられるように、また画像のアルファ値を変更できるようにしてから登録しました。
「Wakeup Tunes」は登録後、Appleから連絡があって、リストから「編集・削除」で削除できないとのこと。これは、3.0から動作が変わっているのですよね。エリカ本の3.0以前のコードは次のようになっています。


// Initialize and set up the table title array
- (HelloController *) init
{
if (![self = [super init]]) return self;
self.title = @"Table Edits";
tableTitles = [[NSMutableArray alloc] init];
ithTitle = NCELLS;
for (int i = 1; i <= NCELLS; i++)
[tableTitles addObject:[NSString stringWithFormat:@"Table Cell #%d", i]];
return self;
}
// Finished with edit mode, so restore the buttons and commit changes
-(void)leaveEditMode
{
// Add the edit button
self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc]
initWithTitle:@"Edit"
style:UIBarButtonItemStylePlain
target:self
action:@selector(enterEditMode)]
autorelease];
[self.tableView endUpdates];
[self.tableView setEditing:NO animated:YES];
}
// Handle deletion requests
- (void)tableView:(UITableView *)tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
forRowAtIndexPath:(NSIndexPath *)indexPath
{
printf("About to delete item %d\n", [indexPath row]);
[tableTitles removeObjectAtIndex:[indexPath row]];
[tableView reloadData];
}
// Enter edit mode by changing "Edit" to "Done"
-(void)enterEditMode
{
// Add the edit button
self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc]
initWithTitle:@"Done"
style:UIBarButtonItemStylePlain
target:self
action:@selector(leaveEditMode)]
autorelease];
[self.tableView setEditing:YES animated:YES];
[self.tableView beginUpdates];
}
// Initialize the view with its buttons
- (void)loadView
{
[super loadView];
// Add an add button
self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc]
initWithTitle:@"New"
style:UIBarButtonItemStylePlain
target:self
action:@selector(add)] autorelease];
// Add the edit button
self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc]
initWithTitle:@"Edit"
style:UIBarButtonItemStylePlain
target:self
action:@selector(enterEditMode)]
autorelease];
}

3.0以降は次のようになります。


// Initialize and set up the table title array
- (HelloController *) init
{
if (![self = [super init]]) return self;
self.title = @"Table Edits";
tableTitles = [[NSMutableArray alloc] init];
ithTitle = NCELLS;
for (int i = 1; i <= NCELLS; i++)
[tableTitles addObject:[NSString stringWithFormat:@"Table Cell #%d", i]];
return self;
}
// Finished with edit mode, so restore the buttons and commit changes
-(void)leaveEditMode
{
// Add the edit button
self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc]
initWithTitle:@"Edit"
style:UIBarButtonItemStylePlain
target:self
action:@selector(enterEditMode)]
autorelease];
//[self.tableView endUpdates];
[self.tableView setEditing:NO animated:YES];
[tableView reloadData];
} // Handle deletion requests - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { printf("About to delete item %d\n", [indexPath row]); [tableTitles removeObjectAtIndex:[indexPath row]];
[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]
withRowAnimation:UITableViewRowAnimationFade];
//[tableView reloadData];
} // Enter edit mode by changing "Edit" to "Done" -(void)enterEditMode { // Add the edit button self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStylePlain target:self action:@selector(leaveEditMode)] autorelease]; [self.tableView setEditing:YES animated:YES];
//[self.tableView beginUpdates];
} // Initialize the view with its buttons - (void)loadView { [super loadView]; // Add an add button self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"New" style:UIBarButtonItemStylePlain target:self action:@selector(add)] autorelease]; // Add the edit button self.navigationItem.rightBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"Edit" style:UIBarButtonItemStylePlain target:self action:@selector(enterEditMode)] autorelease]; }
ページ:«1234567...27»