WiMAX2+っていいね

こんにちは。
陽気なシステム屋の一員の「電柱の電線の上(ビル3階相当)を何事もなく平然と歩いている猫をみた」です。

 

WiMAXをご存知の方は多いと思いますが、

モバイルルーターで用いられているWiMAXは、WiMAX規格のサブセットである、モバイルWiMAXと呼ばれるIEEE 802.16e-2005として定められた規格となります。

WiMAX2は、その後継規格で、IEEE 802.16mとして定められた規格となります。

 

モバイルWiMAXは、第3.9世代移動通信システムの一つであり、

WiMAX2は、第4世代移動通信システムの一つになります。

お気づきの方もいらっしゃるかもしれませんが、WiMAX2は、本物の第4世代移動通信システムなのです。

LTEは、正確には第3.9世代移動通信システムです。

ただ、3.5世代や、3.9世代も、第4世代と名乗っていい、いわゆる4Gとして名乗っていいとのお達しがでたので、

キャリア(どうでもいいですが、海外ではオペレーターと呼ばれます。が、最近はキャリアと呼ばれる事も多いようです)は、LTE=4Gとした方がイメージがいいので、4Gとなのってます。

 

去年には、WiMAX2+の名称で、WiMAX2のサービスが開始されていたので早速使ってみたかったのですが、

私の諸事情と趣味で、つい先日、やっとWiMAX2+のモバイルルーターを手に入れました。

 

現在の住まいに、光ファイバーを通していないので(先日引っ越した為、工事待ちなのです)、その緊急避難的に、

WiMAX2+のモバイルルーターで、家のLAN環境を構築して利用していますが、

快適です。

 

使用環境による所も大きいでしょうが、とりあえず仮設のLANで、ストレスなく利用できています。

速度も、モバイルWiMAXの頃より体感で早いです。

今後、顧客が増えればとサービス事業者は言っていますが、今のところは、速度制限なしでWiMAX2が使い放題です。

制限なしで高速回線が利用できるのは、かなり魅力です。割増料金もないので安心して使えます。

 

私個人にとっては、めちゃくちゃありがたく、便利なWiMAX2+ですが、

飽く迄、私個人でのお話になります。

 

新し物が高じて衝動買いしてしまう性格がで失敗する事もありますが、

今回は当たりでした(飽く迄私個人の話です)。

 

システム屋として、勉強の為の自己投資という名の、ただの衝動買いですが、

やっぱり、実際に使ってみないとわかりませんね。

 

自分が使っていないと、お客様へ説得力をもった、ご説明ができませんから。

 

iPhoneアプリ開発実績はこちら

 

 

IT用語

こんにちは。
陽気なシステム屋の一員のシホンヌです。

IT業界は日々発展していて、新しい技術や用語がどんどん生まれていますね。

私はシステム屋であると共に主婦であり母でもあるので、
毎日スーパーの特売情報の収集や子供が興味あるアニメのキャラクター名や歌を覚える仕事もあり、
なかなかどうしてシステム屋としての新しい情報収集をする時間が持てません。
特に用語には疎く、スペシャリスト達の会話にキョトンとすることも多々あります。

そこで、忙しいけど新しい情報にはどんなものがあるのか、わかりやすくすぐに探せるサイトを探しました。

■株式会社大塚商会 新着IT用語
http://www.otsuka-shokai.co.jp/words/newwords/
■なにしろパソコン パソコン用語解説
http://www.724685.com/word/

これらのサイトは新しいIT用語に関してピックアップ&説明があるのでとても便利です。
ランキングがあるのも嬉しいですね。
みんながどんなことに興味を持って注目しているのかがわかった上、その内容も理解できます。

わからない用語が出てきた時は辞典サイトが一番ですね。
有名どころはこのへんでしょうか。

■IT用語辞典 e-Words
http://e-words.jp/
■ITトレンドのIT用語集
http://it-trend.jp/words/

仕事の会話中に出てきたわからない用語はその場で聞くタイミングがなければメモを取り、あとで調べるのもいいですね。
毎日空いた時間に上から順に読んでいくのもいいかもしれません。

システム屋さんは日々勉強が必要ですね!

 

iPhoneアプリ開発実績はこちら

Chromebookを体感してみよう

こんにちは。陽気なシステム屋のうっちーです。

今回は、国内における企業・文教向けの展開が先日開始されたChromebookについて書いてみます。

Chromebookに搭載されているオペレーションシステム、「Chrome OS」はGoogleが開発しているクラウドベースの新しいOSです。

WebブラウザであるGoogle Chromeと同様に、スピード、シンプル、セキュリティの3点を追及して開発されています。
アプリはGoogle Chromeのサンドボックス(セキュリティ機構)の中で動き、インターネットに繋がる度に最新版へ自動更新されます。

OS自体がGoogle Chromeを動かすことに特化した非常にシンプルな作りであるため、軽快に動作します。

また、データは基本的にクラウド上に保存するので、自分のGoogleアカウントでログインすればどの端末からでも同じ環境が再現され、アプリや設定も同期が取られています。ハードウェアの交換に気を配る必要がありません。この作りはセキュリティ面においても有利で、仮にChromebookを紛失したとしても、従来型のPCやタブレットと比べて情報漏洩のリスクを最小限にとどめるように構成することができます。

 

Chrome OSは、オープンソースのChromium OSプロジェクトをベースに開発されています。
先日のイベントでは多数展示されていましたが、Chromebookが一般の手に届くまでもう少し時間がかかりそうですので、今回は、このChromium OSをUSBメモリ内にインストールしてChromebookの雰囲気を感じてみましょう。

インストールは
http://chromium.arnoldthebat.co.uk/
からChromium OSのイメージファイルをダウンロードしてきて、USBメモリへ書き込むだけです。

書き込んだUSBメモリから起動したら、、、

これがChromium OSのデスクトップです。Google Chrome Webブラウザを中心にデスクトップが構成されているのがわかりますね。

アプリは「Chrome ウェブストア」からインストールします。
これもChrome Webブラウザと同じなんですが、様々な種類のアプリが増えてきました。

 

Microsoft ExcelのファイルをGoogleスプレッドシートで開いてみました。

以前は一度ファイル変換をしてから開く形だったのですが、現在はそのまま編集できるようになっています。
グラフの色がちょっと異なっていますが、再現性がかなり高くなっているのがわかります。
Googleスプレッドシートは日々進化し続けているという感じですね。
※アイエンターではChromebook向けアプリの開発も行っていきます。システム開発、クラウドの活用など、ITのことならなんでもアイエンターへご相談ください!

 

テスト自動化について

初めまして、こんにちは!

テスト大好き テスタです。

 

今回は初投稿ということで、

Selenium(セレニウム)を紹介していこうと思います。

 

ではでは、Seleniumとはなんぞやということろから

書いていこうと思います。

 

Seleniumとは、FireFoxのアドオンとして

入れられるブラウザ自動操作ツールです。

 

Seleniumを使用することにより回帰テストの負荷を軽減することができます。

※  システムの特性によっては手で操作して確認したほうが良いところもあるので、

一概には言えません…。

 

やり方は、とっても簡単 4 STEPです。

①  FireFoxを起動

②  Selenium起動ボタンを押す

③  画面操作行う

④  再生ボタンを押す

これで、記録した操作をそのまま再生してくれます!

 

さて、具体的な導入方法と使い方についてです。

前述のとおりSeleniumはFireFoxをインストールすれば導入可能なアドオンです。

FireFoxをインストール後、アドオン入手で『Selenium』と検索すると沢山ヒットしますので、『Selenium IDE x.x.x』を選択して追加してください。

 

※上記はアドオンに追加済の状態です。

 

FireFoxに追加された以下のボタンを押下すると操作の記録がスタートします。

 

以下はGoogleで『テスト自動化』と検索した記録です。

これを再生すると記録した操作を再生してくれます。

 

 

 

 

SeleniumはJava、C#等の言語に変換することもできます。

なので、コード出力後コードを少し修正するだけで、画面操作以外の

高度な操作が可能になります。

 

そして、FireFoxだけではなくIEやChromeでも動作させることが可能です。

 

今回は以上になります。

PHPで無名関数

こんにちは、陽気なシステム屋です。

今さらですが、PHP5.3で無名関数(Closureクラス)が実装されました。

個人的にJavaScriptなどで馴染み深い無名関数ですが
PHPではどんなふうに使えるのか試したことがなかったので
ちょっとやってみたいと思います。

▼クロージャ(Closureクラス)とは?
(PHPでは)無名関数を表すために使うクラスです。

▼無名関数とは?
関数名を指定せずに関数を作成できるようにするものです。

↓↓では使ってみます

①無名関数をコールバックに使う
array_walk()のコールバックに無名関数を指定してみます。

// 配列の全ての要素のうち空文字をNULLに置換する
$hoge = array(‘aaa’, ”, ‘ccc’, ‘ddd’, ”);
array_walk($hoge, function(&$val) { if($val === ”) $val = null; });
var_dump($hoge);

▼出力結果
array(5) {
  [0]=>
  string(3) “aaa”
  [1]=>
  NULL
  [2]=>
  string(3) “ccc”
  [3]=>
  string(3) “ddd”
  [4]=>
  NULL
}

②無名関数を変数にセットする
無名関数を生成して変数に入れておくことができます。

// 引数を返すだけの無名関数
$hoge = function($arg) { return $arg; };
echo ‘hoge1 => ‘.$hoge(‘fuga’);

// 外部変数(値渡し)を返す無名関数
$fuga = ‘fuga’;
$hoge = function() use($fuga) { return $fuga; };
echo ‘hoge2 => ‘.$hoge();

// 外部変数(参照渡し)を変更して返す無名関数
$fuga = ‘fuga’;
$hoge = function() use(&$fuga) { return $fuga.=’!?’; };
echo ‘hoge3 => ‘.$hoge();
echo ‘fuga => ‘.$fuga;

▼出力結果
hoge1 => fuga
hoge2 => fuga
hoge3 => fuga!?
fuga => fuga!?

// 無名関数をセットした変数を見るとClosureクラスになってます
var_dump($hoge);

▼出力結果
object(Closure)#1 (1) {
  [“static”]=>
  array(1) {
    [“fuga”]=>
    &string(6) “fuga!?”
  }
}

③無名関数にオブジェクトをバインドする(PHP5.4~)
PHP5.4以降、Closureクラスにメソッドが追加され
無名関数に別オブジェクトをバインドできるようになりました。

// Piyoクラスオブジェクト生成
class Piyo {
  public $pub_val = ‘public_value’;
  private $pri_val = ‘private_value’;
}
$piyo = new Piyo();

// Piyoクラスオブジェクトをバインドした無名関数を生成
// (第1引数に無名関数、第2引数にバインドするオブジェクト、第3引数にスコープ(省略するとstatic))
$hoge = Closure::bind(function() { return $this->pub_val.=’!!’; }, $piyo);

// private変数を操作する場合はスコープをPiyoクラスにする
$fuga = Closure::bind(function() { return $this->pri_val.=’!?’; }, $piyo, ‘Piyo’);

// いったん無名関数を生成し、bindTo()で複製という書き方もできます
// 無名関数を生成
$fu = function() { return $this->pri_val.=’!?’; };

// Piyoクラスオブジェクトをバインドして無名関数を複製
// (第1引数にバインドするオブジェクト、第2引数にスコープ)
$fuga = $fu->bindTo($piyo, ‘Piyo’);

// 無名関数内で $this が $piyo を参照します
echo ‘hoge => ‘.$hoge();
echo ‘fuga => ‘.$fuga();

▼出力結果
hoge => public_value!!
fuga => private_value!?

// Piyoクラスオブジェクト($piyo)の値を変えてみる
$piyo->pub_val.= ‘ Hooooo’;
echo ‘hoge2 => ‘.$hoge();

▼出力結果
hoge2 => public_value!! Hooooo!!

// Piyoクラスオブジェクト($piyo)がどうなったか見てみる
var_dump($piyo);

▼出力結果
object(Piyo)#1 (2) {
  [“pub_val”]=>
  string(23) “public_value!! Hooooo!!”
  [“pri_val”:”Piyo”:private]=>
  string(15) “private_value!?”
}

こんな感じでした。

コールバックはよく使いますが、変数やバインドは今のところ実務で使ったことないです。
どんな有用性があるかは今後みつけていきたいと思います。

 

iPadでEclipseを動かす

こんにちは。陽気なシステム屋のうっちーです。

今日は開発ツールのEclipseをiPad上で動かしてみたいと思います。

iPad上でEclipse

 

はい!動きました!

これで電車の中などの移動中でもコードレビューやバグ修正なんかが捗っていいですね。情報漏えいには気を付けなければいけませんけどね。

 

次にMicrosoft Excel 2013を動かしてみましょう。

iPad上で完全版のMicrosoft Excelを動かす

まあ、普通のExcelですね。

 

よく見ると、メニューが英語版だったりするのですが・・・

 

というわけで、今回は完全にネタタイトルなのですが、Microsoft Azure RemoteApp(以下、Azure RemoteApp)をご紹介します。

これは所謂リモートデスクトップサービスの一種で、Microsoft Azureというマイクロソフト社が提供しているクラウドサービス上で動いているWindowsアプリケーションを、さも手元の環境で動かしている感覚で操作できるサービスです。

 

リモートデスクトップサービスというと一般的にはデスクトップ丸ごとリモートのシステムに接続するので、どうしても別もののシステムのような印象を受けます。

Azure RemoteAppは次元が異なります。パブリッククラウド上で動作しているアプリにネットワーク経由で接続する仕組み自体はそう変わらないのですが、ユーザー体験が全く異なります。Azure RemoteAppは予め指定しておいたアプリの画面だけを転送するので、まるでローカルで動作させているアプリと、さも同じかのように動きます。

Surface RTではintelアーキテクチャ向けのアプリは全く動きませんが、Azure RemoteAppを使用すればまるでローカルアプリと同じようにウィンドウ表示されて動きます。タスクバーのアイコン右下に付いている同期マークを見なければリモートアプリと分かりません。

SurfaceRT上でWindows RTを動かす

 

GIMPのようなSDIウィンドウのアプリは完全に溶け込んでいます。

GIMPをSurface RT上で動かす

 

Microsoft Azure RemoteAppはアイコンをタッチするだけでWindowsアプリをリモートで起動しスマートデバイスで違和感なく使うことができます。

現在はまだプレビュー提供のため海外のデータセンターにアクセスしに行っていますが、日本でも提供されるようになれば選択肢の一つとして充分検討できそうですね。

 

※アイエンターではスマートデバイスアプリ開発から基幹業務システム開発、クラウドリソースの活用まで幅広くソリューションを提供しております。IT活用のことならなんでもアイエンターへご相談ください!