ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

ドコモ中村社長、「孫氏の発言には怒りすら覚える」と、ソフトバンクの予想外割を批判

2006-10-27 23:17:56 | Weblog

ここのニュース

ドコモ中村社長、「孫氏の発言には怒りすら覚える」
http://k-tai.impress.co.jp/cda/article/news_toppage/31710.html


によると、Docomoの中村社長は、(以下斜体は、上記ニュースより引用)

「0円の表記と、孫社長の名前は大きく書いてあるが、大切な条件が小さく書いてある。ソフトバンクモバイルに移動したが、請求書を見て、こんなはずじゃなかったという人が増えることが心配。こういう出し方はフェアなのかどうか」などと語った。


そうな。で、

ドコモとauの料金体系が複雑であると指摘されたことや、日本の携帯電話料金が世界一高い料金体系としたことに対しても、「ソフトバンクは、時間帯を4つにも分割し、曜日ごとに料金を切り分けている。どっちの方が複雑なのか。トラフィックを分散させるためのプランだろうが、もしJRがラッシュ時だけ料金を高くしたら、どんな批判が集まるか。また、総務省の発表でも、日本の携帯電話料金は世界的に見ても、決して高くはない」などとした。


これ、おっしゃるとおり、複雑にしすぎちゃいましたよねー。
ソフトバンク。
時間帯によって違うって言うのはねえ。。。
で、さらに


、「固定発携帯電話料金は、3分120円だったものを、ドコモは3分70円、auは3分80円へと値下げしてきた。それに対して、ソフトバンクモバイルは3分120円のまま。これはかなり収益に作用する部分であり、こうした点を言わないことは疑問」などと語った。


って言っているけど、確かに、今回の予想外割、よーくよーくよーく検討しないと、
なんか、高くなっちゃうかもしんない。。
ほんとうに、今回の予想外割で、ケータイって、どこまで値段体系複雑にするんだよー
っていう感じになってきた。。。(>_<!)

そのうち、値段が高いか安いかでなく、
「料金体系が理解できるのが、ここしかない」
とかいう理由で、ケータイ選んだりして(^^;)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

富士通のパソコンから発火!!ソニー製充電池で!!

2006-10-27 22:44:29 | Weblog

ここのニュース

ソニー製充電池搭載、富士通のパソコンから発火
http://headlines.yahoo.co.jp/hl?a=20061027-00000315-yom-soci


によると(以下斜体は上記ニュースより引用)

 富士通は27日、ソニー製充電池(リチウムイオン電池)を搭載したノート型パソコンから火花が出て、利用者がやけどをする事故が発生したと発表した。

 ソニー製充電池を巡る一連のリコール(自主回収・無償交換)問題で、国内のパソコンメーカーの発火事故は初めてだ。


そうだ。ただし


事故の起きたパソコンの充電池はリコールの対象だった。


だそうな。。

なお、

電源を切った状態で充電中に発熱し、火花が出た。においと音で気づいた使用者が火花を消そうとしてやけどを負ったという。


ということだけど、火花が出てるのに、消さないわけにもいかないしなあ。。。(^^;)



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

YOU TUBEの著作権違反動画を、ブログで紹介しても、違法!という記事

2006-10-27 20:28:41 | Weblog

ここの記事
「YouTube人気動画リンク集」は合法か (1/2)
http://www.itmedia.co.jp/news/articles/0610/27/news029.html

によると、

YOU TUBEで、著作権違反をしている(たとえば、テレビ番組をそのまま貼るとか)
違法動画を、

ブログなどで紹介して、リンクを貼った場合、「自動公衆送信権侵害のほう助」となり、
ブログで紹介した人も、違法となるらしい。

 ただし、私的利用ならOKで、少人数の間で言うのならOKらしい。
 また、引用もOKらしい(というので、ウィリアムのいたずらは、すべて、
 引用とブログに書いている)

 少人数の間ならOK...
 ってことは、SNSで、著作権違反しているサイトを紹介しても、
 友達にしか公開しない場合、
 「少人数の間でしか紹介してない、私的利用だ!」
 って主張すればOKってこと。。。??

 でも、ブログはだめってことなんですかね??
 (ほんとーなのかなあ、この話??)


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

仕様書からプログラムソースを生成する方法(Excelの仕様書編 その4:マクロ説明)

2006-10-27 17:41:21 | ケータイ

シリーズ仕様書からプログラムソースを生成する方法のつづきです。

 前々回、マクロを公開し、前回、そのマクロをExcelに貼り付けて、生成させる方法について書きました。今回は、その前々回公開したマクロの説明です。




■マクロの関数の概要
 このマクロには、3つのサブルーチン(Sub)または、ファンクション(function)があります。

(1)ボタンから起動されるサブルーチン(shiyoToFile)
(2)雛形ファイルと仕様書を読み込んで、自動生成する(makefile)
(3)制御内容ごとの処理(chgTagToStr)

 (1)から、(2)が呼び出され、(2)から(3)が呼び出されます。
 (1)は、仕様書によっては、書き換わります。

 以下、それぞれの関数を説明します。



■(1)ボタンから起動されるサブルーチン(shiyoToFile)

 ここでは、以下の処理をします。

(1-1)前処理
     (2)のプログラムは、固定化するため、
     (2)で処理できるようにするため、
     前処理を行う

(1-2)(2)のプログラムを呼び出す

(1-3)後しまつ
     (1-1)でシートやファイルを作成したら、
     削除します。

 今回は、(1-1)、(1-3)が必要ないので、(1-2)だけ行います。
Call makefile(雛形ファイル名,シート名,出力ファイル名)

 です。



■(2)雛形ファイルと仕様書を読み込んで、自動生成する(makefile)
 makefile(雛形ファイル名,シート名,出力ファイル名)というカタチの
サブルーチンです。内容は、以下のとおり

(2-1)雛形ファイルを読み込みます
   indataに、ファイル内容を全部入れます。

(2-2)書き出し内容を作成します
   ・indataの開始ポイント(str_pos)を1、
    (VBAにおいて、文字列の先頭は0でなく、1)
    出力内容を(outdata)を空文字("")として
   ・制御内容のタグ$#$があるかないかチェックします **
   ・あったら、
      前回のタグの終わりから、今回のタグまでoutdataにセットし、
      制御内容部分を切り出し
      chgTagToStrで制御内容を処理します
       →この内部でoutdata(書き出し内容)をセットします
       →chgTagToStrは、次の開始ポイント(str_pos)を返します
      **に戻ります
   ・**のループが終わったら、残り部分をoutdataにセットします

(2-3)作成データを書き出します
  ・まず、書き出しファイルがあったら削除し
    ここが、変な風になっているのは、<>っていうのを書くと、
    変換しないといけないので、面倒だからというだけで深い意味はないです
  ・書き出します   
 


■(3)制御内容ごとの処理(chgTagToStr)
chgTagToStr(制御内容,次の開始ポイント候補,仕様書のシート名)というカタチの
ファンクションです。返り値は、次の開始ポイントです。

内容は、制御内容が、それぞれのタグだったら、それにあった内容をします。
こんなかんじ

(3-1)制御コードが"REPEND"だったら、
  仕様書チェック行(lpgyo)を次の行にして(1足す)
  そこの行の指定箇所が空白だったら
    ループ終わりなので、引数の次の開始ポイント候補を返す
  そうじゃない(まだ行続く場合)
    ループするため、ループ開始ポイント(lpstr_pos )を返す

(3-2)制御コードが"REP"だったら、
  仕様書チェック行(lpgyo)を取得
  ループするためのループ開始ポイント(lpstr_pos)を、セット
   →この制御コードの終わりの次の文字
        =次の開始ポイント候補にする
  引数の次の開始ポイント候補を返す

(3-3)制御コードが"CELL"だったら、
  指定箇所を、出力データ(outdata)に追加して
  引数の次の開始ポイント候補を返す

(3-4)制御コードが"KETA"だったら、
  現在行の指定桁を、出力データ(outdata)に追加して
  引数の次の開始ポイント候補を返す


*"REPEND"を先に聞き、"REP"をあとに聞く理由は、
 先に"REP"を聞いてしまうと、そこに"REPEND"も
 引っかかってしまうからです("REP "で聞けばいいんだけどね)

**今後、ここに条件文IFが追加される予定です




こんなかんじです。
人に、「同じプログラムを使えば枯れるから」とかいっておきながら、
実はこのプログラム、よく作るんだけど、いつも即興で作ってしまっていて、
今回も、即興でつくったので、バグとかもあるかも。。
あったらごめんなさい。

では、今回はここまで。



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ソフトバンクとウィルコムでは、同じスマートフォンでも、システムの考え方を変えないと。。。

2006-10-27 15:47:16 | Weblog

 ソフトバンクモバイルのX01HTと、ウィルコムのW-ZERO3、同じスマートフォンだけど、予想外割をうまく使うには、システムの考え方を変えたほうがいいのかな?と思った。




■ウィルコムW-ZERO3の場合

 まず、話かんたんな、ウィルコムの場合。
 W-ZERO3を購入して、ウィルコム定額プランとデータ定額を使ったとする。
 この場合、ふつう、サーバーにデータを置くと思う。

 で、会社のデータにアクセスすると。。。
 このとき、会社のExcelなどを、できるだけ安く取得したいとすると、

 メールはただみたいなので、

   ・会社のあるメールサーバーにアクセスすると
   ・メールの内容を読み込んで
   ・必要なデータを送り返す

 というプログラムと


   ・会社のあるメールサーバーにアクセスすると
   ・添付ファイルの内容を
   ・メールに書かれた内容をもとにサーバに書き出す

 というプログラムを開発し、メールでやり取りすれば、よさそうである。

 そうすれば、届いたメールを、W-ZERO3のExcelやWordで編集し。。
 あるいは、手持ちのパソコンで編集したファイルをW-ZERO3に送って、
 それを送受信(無線LANが使えない場合)

 っていうアプローチが考えられる(作ってないので、考えられるというだけの話だけど)




■ソフトバンク X01HT+予想外割の場合

 予想外割をうまく利用するには、「ソフトバンク内のメール」にしないといけない。
 じゃないと無料にならない。
 つまり、サーバーに置く形だと、サーバーはソフトバンクのケータイではないので
 (ここでX01HTをサーバーに使う人はいないものとする)
 サーバーと直接やりとりする、上記の方法では、パケット代の問題が出る。

 なので、これを無理やりやらせようとすると。。。

1.サーバー側にX01HTをおく
2.サーバー側のX01HTに、以下のようなアプリを作成し、置く
  ・メールを受信すると、その内容をファイルにして、サーバーに赤外線、
   あるいは無線LANで書き出す
  ・サーバーのあるところから、ファイルを受け取って、そのファイル内容
   にもとづき、内容を添付ファイルにして、指定されたケータイへ送る
  ・適当な時間ごとに上記処理を行う

3.サーバー側で2のファイルが書かれたかどうかを監視するプログラムを
  作成、書かれたら、それに基づき処理して、送り返すファイルを作成する

 っていう、アプリとサーバー側ソフトを作ることになる。
 しかし、これは、ファイル入出力をメールで行うプログラムに比べて、書くのが大変だろう。




 っていうことで、おとしどころは、

1.ケータイに、みんなが、最新のデータを持ってしまう。
2.必要な人が居たら、みんなにケータイでCCで転送してしまう。
  →みんな、予想外割に入っていれば、ただなのでOK
3.会社のサーバーは暇なときに、無線LANとか、社内にきてとかで、更新する

 つまり、サーバー側に最新を置くのでなく、みんなのケータイに最新のファイルを置いて、必要な人みんなにメールするっていう形になる。まさに、サーバーレス、P2Pっぽい考え方。




うーん、でも、その考えはさすがに、ぶっとんでるかなあ。。

ただ、料金が無料になる箇所を見極めて、システム構成を考えないと、お金がかなり、かわってきちゃいそうですね。




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Javaの画面表示-その14:AWT,Swing,SWTによる複数画面方法のまとめ

2006-10-27 14:53:06 | JavaとWeb

シリーズJavaの画面表示のつづきです。
Javaの画面作成方法として、AWT,Swing,SWTを今までやってきました。
そして、それを通して、これらは、大体同じ方法できるということを示しました。

今回は、それらの画面表示における、共通的な方法と相違点、さらにBREWまでも含めた共通点について、考えてみたいと思います。




■画面作成における共通の考え方
 JAVAアプリで行う画面出力、すなわちAWT,Swing,SWTを使って、とくに、複数画面を表示する場合は、大きく、

(1)アプリ全体のクラス
(2)各画面のクラス

の2つに分かれます(BREWでも、同様な区別をします)
 このとき、各画面間のデータを読み書きするため、

(3)(画面間)共通領域

を作成します(これを、このブログでは、カオル姫方式と呼んでいます)
共通領域はJavaでは、ハッシュマップを使います
(BREWは、IKHMapというものを作りました)




■アプリ全体について
 アプリ全体のクラスでは、以下のようなメソッドを作成しました。

(1-1)アプリを起動するメソッド
  ・共通領域を生成する
  ・初期画面を呼び出す
  →Javaでは、main,BREWではアプリ_initAppData

また、今回は作りませんでしたが、
場合によっては(BREWの場合は必須)

(1-2)アプリ終了メソッド
  →BREWではアプリ_freeAppData

を作成することもあります。

さらに、今回は触れませんでしたが、複数画面の場合は、

(1-3)複数画面間のリンク関係

を処理するメソッドも必要な場合があります(*注として、後述)

そして、これは、BREWだけなのですが
(1-4)アプリのイベント処理メソッド
  ・各画面のイベント処理メソッドを呼び出す
  →BREWではアプリ_HandleEvent
  →Javaでは、システムがやることなので「ない」
というのがあります。




■各画面について

各画面には、以下の4ないし5種類のクラスが必要です
(2-1)画面初期表示メソッド
   ・ウィンドウを作成する
   ・画面部品を作成し、ウィンドウに付ける
   ・再描画処理を呼ぶ

(2-2)イベント処理メソッド(群)
   ・各イベントごとに以下の処理
      (2-2-1)画面入力値をチェックして共通領域へ
      (2-2-2)モデルの処理を呼び出し
        →モデルは共通領域の値を元に処理
         共通領域に結果設定
      (2-2-3)再描画処理
        (2-2-3-1)現在画面の再描画
          ・再描画処理呼び出し
        (2-2-3-2)次画面へ
          ・現在画面を消す必要があれば
           現在画面の終了処理メソッド
          ・単一画面の場合は、次画面の初期化
          ・複数画面のとき、
             表示していたら、次画面の再表示
             表示してなければ次画面の初期化

     
(2-3)終了処理メソッド
   ・ウィンドウを終了
   ・メモリ解放など

(2-4)再描画処理
   ・共通領域から値をセット
   ・再表示して、フォーカス設定

(2-5)(フォーカス移動の必要があれば)
  次カーソル移動項目決定




今回の例では、Javaの場合、
(2-1)コンストラクタ&initAppData
(2-2)内部クラスの各メソッド
(2-3)freeAppData
(2-4)DispAppData
(2-5)カーソル移動はどーでもいいので「なし」

また、BREWの場合は
(2-1)各画面_initAppData
(2-2)各画面_HandleEvent
(2-3)各画面_freeAppData
(2-4)各画面_DispAppData
(2-5)各画面_NextCurItem
となります。




つまり、各クラス、メソッドについては、AWTでもSWTでもSwingでも同じようにして
作ることが可能で、違いは
・ウィンドウの作り方(フレームを呼ぶか、Display,Shellとくるかなど)
・部品とウィンドウの結びつき
・イベント処理の継承対象や、メソッド名
といった、細かい部分の書き方程度の違いということになります。

そして、BREWにおいてすら、この考え方は同じような感じです
→なので今やってる、BREWのソース自動生成をちょっといじると、
 Javaのソース自動生成ができます。

むしろ、これらと、サーブレット、Strutsのほうが、考え方は大きく違います。
といったかんじです。




*注:複数画面間のリンク関係
 ユーザーごとに、第一画面と第二画面を提供するという場合、
 この第一画面は、どの第二画面とつながっているか?
 といった判断が必要になります。

 これを処理するのが、「複数画面間のリンク関係」メソッドです。

 具体的には、全画面に、一意になるような、画面IDをふります。
 そして、画面生成や、画面間の関係を付け替えたいとき、上記関数を呼んで、
 共通領域とリンク元の画面ID,画面の種類、リンク先の画面ID,画面の種類
 を引数として渡すと、共通変数に

  キー:リンク元の画面ID_リンク先の画面の種類 
  値 :リンク先の画面ID

 と、

  キー:リンク先の画面ID_リンク元の画面の種類 
  値 :リンク元の画面ID

 の2種類のデータをいれます。
 これによって、共通領域で、自分の画面(の画面Dは分かるから)の、次の画面は
 すでに表示されているか、表示されているとすればそのIDは?というのは
  自分の画面ID_次の画面の種類

 を共通領域から探せば分かる
 (帰ってきたIDが、その対象画面、NULLなら、その画面はない)
 というものです。

 画面を消去するときは、関係がなくなるので、それらを削除するメソッドも必要に
 なり、ちとめんどうです。



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

予想外割に他社が対抗するとしたら、Skypeと無線LANでメール搭載ケータイかな?

2006-10-27 09:38:20 | Weblog

 ソフトバンクの予想外割で、ソフトバンク内無料になったわけですが、
 これに、他の会社が対抗するとしたら。。。

 ソフトバンク間が無料になるっていうのに対抗して、他社も無料にしたら、大変なことのなっちゃいます。だとえば、Docomo間無料とかにしたら、かなり多くの通話が無料になっちゃいます。つまり、ソフトバンクは、加入者が少ないから、いまのところ、こういう芸当ができるということになりますよね。。

 だとすると。。。他に対抗策は?

1.ケータイに無線LANを載せて
  →ここまでは、「E02SA」、「N900iL」などが、法人向けで出てるから
   技術的には問題ない

2.そして、それにSkypeを載せて、ケータイで、Skypeができるようにする
  →無線LANを経由して

3.その無線LANで、プロバイダからメールも取れるアプリを入れとく

とすると、Skype会員間は、通話料無料、無線LANを使えばメール無料。
で、公衆無線LANサービスとケータイ、同時に入るプランを用意しておけば。。
家の中なら、無線LANの装置さえ買えば無料になるし、
外に出ても、その公衆無線LANを使えるところなら、ただ。。。
そーすると、その無線LANのアンテナを電話ボックスとかにつければ。。。

っていう感じですかねえ。。。「ようざん」あたりにがんばってもらう?



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする