2014年5月17日土曜日

エンジニアとビジネス

私は、サラリーマンのエンジニアです。
ある企業に所属し、その企業から給与を得ています。
なのでサラリーマンなのです。

しかし、エンジニアである以上、何かを創りだし、収入を得たいを思うのは当然です。

エンジニア仲間の中には、サラリーマンであることを忘れて、自分で作り上げたものと勘違いする人もいます。

でも、やはり、企業に属し、何も創りださなくても、収入を得ることができる以上、サラリーマンなのです。

そう考えると、自分で何かを作り出すには、企業から飛び出す必要があるのかもしれません。実際、企業を飛び出し、フリーランスとして活躍している人も多くいます。

一度、そういう環境へ身を置くのも、いい経験になるのかもしれないな。

2014年5月15日木曜日

残業について思うこと

最近、残業が半端ない。

毎日、帰り着くのは、日をまたいでいるのです。

先日、経営者の多くは、社員の「残業を評価しない」という記事を読みました。私も、残業は評価されるものではないと思っています。残業は、作業者が時間配分を間違えたか、社員を統括するリーダーが作業量を考えきれていないものと思っています。

時間は、平等に与えられた資産です。
時間をもっと自分のために使えたらいいのですが・・・

この状況、どうしたらいいと思いますか?

2014年5月11日日曜日

こんなプロジェクトやってみたい

これまで携わったプロジェクトは、どれも「やりたい」と思えるプロジェクトではなかったような気がします。

じゃあ、どんなプロジェクトをやりたいのかと聞かれると、困ってしまうのですが、使ってくれる人のライフスタイルが変わるようなシステム開発ができたらいいなと思っています。

例えば、このシステムを使うと、従来の作業時間が短縮されて、残業しなくてすむような誰かのライフスタイルが変わるようなシステム開発ですかね。

これまでのプロジェクトで作ったものも、実際に使ってくれた人のライフスタイルを変えたものがあるかもしれません。でも、実際に開発した私達には、それが伝わって来ないんです。

派遣契約で他社のプロジェクトに入っている場合は、作ったものが世の中に出る頃には、そのプロジェクトには居なかったり、世に出たのかさえ分からないこともよくあります。

ITプロジェクトは、よく建設業と同じでように見られます。しかし、実際のところは、全く違っています。建設業では、作ったのもが目に見える形で残ります。しかし、ITでは、作ったのもは、目に見える形で残るとは限りません。

作業工程も、同じように見えて違っています。

建設業では、設計段階に入ることには、顧客の要求は、ほぼまとめられていて、それを、設計図として起こしていく作業だと思います。

しかし、ITでは、設計段階に入っても、顧客の要求は、まとまっていません。まとまっていない要求をもとに見積もりをし、設計に入ります。そのため、要求がどんどん膨らみ、見積もり範囲を超えてしまうというのはよくある話です。

ITは、もの作りの業界ですが、建設業とは、全く違う考えのもと、作業の進め方や価値を追い求めていく必要があると思います。

何となく、まとまりのない内容となってしまいましたが、結局、ITは、ITとしての価値をまだ見い出せてないのではないでしょうか。その価値を見出だせるようなプロジェクトをやってみなたいなと思っています。

2014年5月10日土曜日

[IT]WebRTC

WebRTCについて調べているので、内容をここにまとめてみます。

●定義

WebRTC (Web Real-Time Communication)とはWorld Wide Web Consortium (W3C)が提唱するリアルタイムコミュニケーション用のAPIの定義で、プラグイン無しでウェブブラウザ間のボイスチャットビデオチャットファイル共有ができる。
(参照1より)

●ブラウザ

  • Chrome
  • Firefox
  • Opera
(参照3より)

●必要なサーバー

  • Signalingサーバー:PC間で交換するサーバー
  • ICEサーバー:NAT超えの情報を管理するサーバー
(参照4より)



rtcと付いているのでP2Pで接続が必要になるのだと思います。
そのために、上記のようなサーバを設置する必要があるのでしょう。

参照4のサイトには、それぞれのサーバに使用できるソフトが紹介されています。
また、クラウドサービスもあるようです。

それで、実際にWebRTCを使用するには、どうすればいいかというと、残念ながらまだ分かりません。先駆者のサイトを見ながらやってみる価値はありそうです。


[参照]
[1]http://ja.wikipedia.org/wiki/WebRTC
[2]http://www.w3.org/TR/webrtc/
[3]http://www.webrtc.org/
[4]http://qiita.com/atskimura/items/97b2cc04e19781f4a4e6
[5]http://peerjs.com/
[6]https://code.google.com/p/rfc5766-turn-server/

2014年5月8日木曜日

[vi]便利な操作

以前viの基本操作について書きました。
今回は、viでソースコードを編集するうえで便利な操作について記載します。

  • タブ
  • 画面分割
  • シェル画面への変更

タブ
viでは、タブ機能を使用することができます。
エディタにタブ機能が付いたのは、viが最初だと何かに書かれているのを以前目にしたことがあります。

:tabnew ファイル名
これで、新しいタブで指定したファイルが開きます。
タブを移動するときは、次のコマンドです。
:tabnext
このコマンドで次のタブへ移動することができます。
また、コマンドの後に数字を入力すると、指定したタブへ直接移動することができます。

画面分割
viでは、画面を上下に分割して作業することができます。
:split
 このコマンドで画面を上下に分割し作業できます。

画面を左右に分割することもできるようです。
:vsplit
私が使っているバージョン(?)ではできませんでした。
※上下に分割するよりも、左右に分割できた方が作業しやすいので、もう少し調べてみようと思います。

シェル画面への移動
viで作業していて、シェルを実行したい時は次のコマンドです。
:shell
ソースコードを書いて、コンパイルするときなどよくあります。
このコマンドでターミナルの画面が、シェル入力画面へと切り替わります。
戻るときは、exitコマンドで終了すると、viの画面へ戻ってきます。