2016年1月13日水曜日

はじめまして、エンジニアのKです

こんにちは。エンジニアのKです。
既に何個か投稿済みですが、今回は簡単な自己紹介をしたいと思います。

経歴

学生時代は工学部に在籍し、無線通信の研究を行っていました。
ITSと呼ばれる自動車に搭載する無線通信技術や地上デジタル放送波の受信品質の改善などをテーマとして扱っていました。
今考えると怪しさ満点ですが、地デジの放送波を計測するためにアンテナを持ってビル陰などを徘徊していたような学生時代でした。

計測した電波の解析やシミュレーションを行うためにプログラミングを本格的に学び始めたのですが、
次第にアプリケーションを作って世の中の人に使ってもらいたいと思うようになり、webサービス系の会社に就職しました。
早いもので社会人6年目となりました。

扱ってきた言語としては、
  • Javascript
  • PHP
  • MySQL
  • Java
  • C、C++
あたりで、一番好きな言語はjavascriptです。ブラウザに表示されるDOMをゴリゴリ動かすのが楽しいです。
HTML5によってブラウザでも色々なリッチな表現ができるようになってきており、
今はまだスマホのネイティブアプリのリッチさには敵いませんが、いつかアプリとブラウザの垣根が無くなって、
web上でリッチなコンテンツを作れる日を夢見ています。そう遠くは無さそうです。

趣味

コレと決めたものに没頭する傾向があり、少し前まではパズドラにどっぷりハマっていました。課金額は秘密です。
最近はモンスターハンターの新作が発売されたので、そちらにどっぷりハマっています。
モンハンは4から始めたニワカなのですが、当時もどっぷりハマって気づけばハンターランクがカンストしていました。
今作も村の平和のために頑張りたいと思います。

あと、今はシーズオフですが野球観戦も好きです。最近、贔屓球団の球場の近くに引っ越したので、シーズンの開幕が待ち遠しくてたまりません。

おすすめアプリ

他のメンバーの流れに乗って、僕からもひとつ「TimeTree」というアプリを紹介します。


ひとことで言うと家族、恋人、友人達と使う共有カレンダーなのですが、UIが優れていてとても使いやすいです。
一度聞いた予定を忘れて「○日に××って言ったじゃない!」と良く怒られている方には、とても重宝すると思います。
僕も凄く助かっています。

最後に

今、技術的にはJavaを習得中で、ServletとAndroidアプリの両方を実務で扱っています。
今後もJava(と、好きなJavascript)中心の投稿になっていくと思いますが、よろしくお願い致します。

2016年1月12日火曜日

いのうえです。

改めまして、自己紹介をさせて頂きます。
※私って、こんな人です。


■職歴&技術歴

□2000年4月 新卒入社


 不動産営業を希望し、就職をするも 

 「システムエンジニアという響きが格好いい」

 という理由で、ネット系の関連会社への勤務を希望

 Yahooジオシティーズで、見よう見まねでHPを作ってアピール ⇒ 希望が通り、ネット系の関連会社へ出向
 もちろん、開発の「か」の字も知らない超初心者。
 でも、「自分で作ったものが動く」という体験に心奪われ、楽しくてしょうがない状態に。

 開発言語 : ASP(VBScript) データベース : SQLServer


□2002年5月 新しい言語の習得へ①


 Javaを覚えるべく、所属会社の好意もあり、1ヶ月間の詰め込み型研修へ参加させてもらう
 なかなかハードな研修で、1週間毎にテストがあり、結果が悪いと、研修を打ち切られてしまう
 さらには、卒業試験があり、こちらも結果が悪いと、卒業できない(=1ヶ月研修延長)という・・・。

 私は、こういった追い込まれた状況が好きなので、楽しみながら研修を満了。

 無事、JavaでのWeb開発のきっかけをつかむことができました。

 以降、数年間は

 開発言語 : Java(Struts) データベース : MySQL or PostgreSql


 での開発中心

□2004年1月 新しい言語の習得へ②


 初期に習得したASPからASP.NETへの移行タスク
 ASP.NETにはVB.NET、C#.NETといった選択肢はあったが、Javaに似ているという理由もあり、C#.NETを選択

 当時は、Frameworkバージョン1.0

 その後、1.1、2.0とバージョンアップを重ね、2.0中心の開発をする。

□2004年1月~現在


 遅まきながら、Framework4.5をやっと経験。もちろん、MVC。
 Razarの使い勝手の良さや、LINQの便利さに心奪われるも、今は80%開発卒業。
 マネージャーとして稼働して、早5年となりました。

 今でも、ちょくちょく時間を見つけては、開発にも携わりつつ、でも本命は、組織マネジメントプロジェクト推進



2016年1月7日木曜日

処理を短くする

ねこもちです。

古いプログラムを修正していると、そのプログラムが非常に「長大」であると気づくことがあります。
一つの関数(メソッド)が数百・数千行に及んでいることもあります。

こういうのは、大体
「どこにあるデータがいつ更新されるのか、追うのが難しい」
「ifのネストが多く、ifとelse節の対比が難しい」
「途中でreturnすればいいのに、制御フラグに値をセットした上で最後まで処理を続けるので、処理を追うのが難しい」
「途中でreturnしているが、どの条件でそこに入るのかを追うのが難しい」
「同じようなコードが何回も出てくる(が、100%同じと断言できないので、結局すべて追う必要がある)」
など、その他のいろいろな「難しいポイント」を含んでしまっていることも多いのです。


■「どこにあるデータがいつ更新されるのか、追うのが難しい」
これについては、下記の方法を取ると、難しさが減ります。
「変数は使う直前で定義する」
「できるだけローカル変数にする」
「できるだけImmutableな設計にする」

たとえば、Webアプリケーション(ASP.NETなど)の例を挙げます。

public class XxxxPage : Page
{
private string _a = "";
private int _b = 0;

public void Page_Load(object sender, EventArgs e)
{
_a = Request.QueryString["a"];
if( string.IsNullOrEmpty(_a) ) {
return;
}
_a = _a.Trim();

if( IsPostBack )
{
_b = int.Parse(_a);
}
}

public void OnXxxxEvent(object sender, EventArgs e)
{
// _a, _bを使用するコード
}
}

このようになっていると、OnXxxxEvent()が呼ばれるときに、
・事前にPage_Load()が呼ばれていること
・Page_Load()内で、どのようなルールで_a, _bの値が決まるのかを知っていること
の2点がわかっていないと、OnXxxxEvent()を書くのが難しくなります。
また、他のメソッドが_a, _bの値を変更する可能性もあり、
結局すべてのプログラムを調べないと、挙動がわからないということになります。

public class XxxxPage : Page
{
public void Page_Load(object sender, EventArgs e)
{ // 何もしない。
}

public void OnXxxxEvent(object sender, EventArgs e)
{
string a = (Request.QueryString["a"] ?? "").Trim();
int b = !string.IsNullOrEmpty(a) && IsPostBack
? int.Parse(a)
: 0;
// a, b を使用するコード
}
}

このように、「使用する箇所で」変数を定義し、同時に初期化することで、aがなんなんか、bがなんなのか、
まぎれることがなく、プログラムが非常に明快です。

また、この書き換えの際に、元のコードでは
_a がまず Request.QueryString["a"]を指し、
つぎにそれをTrim()したものを指すようになっていましたが、
書き換え後ではaはRequest.QueryString["a"]をTrim()したものを指し、それを変更しないようにしています。
こうすることで、aという変数がいつでも同じ値になり、プログラムの挙動を理解するのが簡単になります。


その他についてはまた後日。

はじめまして、エンジニアです。


初めてのかた、はじめまして。
ご存知の方、こんにちは。

Zメンです。

今回は私の自己紹介がてら経歴などを書きたいと思います。

生い立ち~学生時代

生粋の北陸生まれ、北陸育ちです。
昨年からHOTなあの雅な県です。
余談ですが左手親指をサムアップし、ちょっと曲げた形が似ているます。

今はエンジニアとして働いていますが、実家が建築関係だったこともあり
高校の時も大学の時も、自分は建築業界にいくんだろうな~とぼんやり思っていました。

ちなみに大学時代は防災と都市デザインの2種を専攻してました。
防災のほうは全国ニュースで流れるような火災の原因分析・解説を教授がやっていたり、
某有名タワーの防災設計を見せてもらったりで意外と面白かったです。

都市デザインはイメージが難しいですが、都市に関わる制度・ソフト・ハード・デザイン等
なんでも研究対象となるような感じです。
どう伝えて良いものか難しいですが、こんなイメージです。

入社~現在

そんな建築畑にいた自分がなんでいまエンジニアをやっているかというと、
スマホに興味があったからです。
当時はまだAndroid1.6がようやく出たような時代でした。
今でこそAndroidも洗練らされたデザイン・操作性ですが、1.6はメカメカしい感じで、
物好きが使ってます、 くらいの感じでした。当然アプリも怪しいものばかり。
未だに有名どころで残っているのはShimejiあたりでしょうか。

そんなわけなのか分かりませんが、現在はスマホ部隊とSEO部隊の管理を担当しています。
ここ一年はGoogleにどっぷり浸かりぎみですが、どんどん新技術を発表してきているので
刺激が多く楽しい毎日を送っています。

おすすめアプリ

そんなわたしが最近注目しているアプリ・おすすめのアプリをいくつか紹介したいとおもいます。

GoogleNowLauncher
ランチャー系はいくつも試してみましたが、動作が重かったりバグが多かったり
メモリ食いまくったりとあまりお勧めしたいものはなかったのですが、ここ半年くらいはもうこれ。
多分もう変えられないとおもいます。やっぱりGoogleさん神。

Favrica
ファッション好きとしてはZOZO系列以外のアプリを探していて、Origamiも結局すぐ使わなくなったのでなにかないかと思っていたところでした。好きなブランドの新着を見るならこれが一番いい。
もうちょっと情報量とEC部分強化されないかなぁ。

E・レシピ
Exiteが運営してるみたいです。料理ポータルアプリは既にたくさんありますが、料理ポータルサイトの雑多なプル・プッシュ情報をカレンダー視点でサジェストしてくれるのがちょっと新しいです。
写真もいいですし、好き嫌いが多い人には向かないかもです。


今後もSEOやスマホ・アプリ系の書き込みが主体になると思いますが、温かい目で見守ってください。
こういうテーマ調べてというのもいただければ可能な範囲で頑張ります。

2016年1月6日水曜日

改めまして、おかだです。


このブログが開設されてから約半年、、

これから記事を整理してみんなで分担して書いていこうという流れになっていますので、
そのトップバッターとして自己紹介をしたいと思います。はずかしい。


おかだと申します。

千葉県出身、辰年生まれのアラサー女です。2012年入社の社会人4年目になります。
社会人デビューからずっと今の会社で働いています。

初年度は自社サービスの営業を1年間担当し、そのあと今の部署に異動してきましたので、エンジニア歴は約3年になります。(自分で書いていて驚きですが、、時は残酷ですね、、)

昨年まではほとんど自社のWEBサービスの開発をしていましたが、昨年からは自社アプリのサーバーサイドの開発を担当しています。


好きなこと?

せっかくアプリ開発チームにいるのでそれを踏まえつつ、私のお気に入りのアプリをいくつか紹介したいと思います♪
プライベート携帯はずっとandroidなので、androidよりになってしまいますがご容赦ください。

Scene

Sceneは写真整理アプリです。
個人的に、出掛ける時に食べたものなど写真を撮ることも多いですし、画像を加工することもまぁまぁありますし、仕事柄キャプチャをとることも結構多いです。
Sceneのいいところは、画像一覧と日付表示が一体化しているところです。
サムネと日付が同列に並んでいることで、写真を見返すのも日記を読み返しているような感覚で楽しむことができます。
日付をタップするとカレンダー型の表示に切り替わるのですが、それもまたかっこよくて素敵なのです。

ギャラリーアプリに困っている方はぜひ使ってみてください^^

google playへGO >>

特に気に入ったのはこの表示。日記みたいで好きです


Google Fit

ご存知の方も多いかもしれませんが、Googleの運動管理アプリです。

これは偶然ストアで見かけたので入れてみたパターンなのですが、機能がシンプルで、わかりやすいのがいいです。
ふつう、ダイエットアプリとか、運動管理とか、食事管理とか、健康系のアプリは、かなりモチベーションの高い人には機能が充実しているものが便利だと思いますが
このGoogle Fitは「特にそこまで運動とかがんばってやるつもりないよ~」という人がとっつきやすいです。

1日の運動(走る、歩く、自転車)の目標値を設定すると、アプリを起動したときに
「いまここまでやったよ!」とゆる~くおしえてくれるだけなのですが
ちゃんと目標を達成するとほめてくれるのも、なんだかいいところ。

人とアプリの気持ちいい関係ってこういう感じなのかな、と思います。

日々自分がどのくらい歩いたり走ったりしているのか、気にはならないけど知りたいな~という方はぜひ使ってみてください^^

google playへGO >>

自分がどれだけ運動していないかを実感できます

スマホゲームも好き

仕事の一環で書いているブログなので、ゲームのことを書くのは少し悩みましたが、ゲームを作っている方々も仕事でやられていると思うので、すこしだけ、、
(紹介したいゲームアプリが多くて書ききれないので、それはまたいつかの機会に、、)

最近はテレビのCMもゲームばっかりで、世の中の人がたくさんゲームしているということなのでしょうが、みなさんはいくつくらいゲームやってますか?
可処分時間も限られますし、そんなに何個も同時に遊べないですよね。。。

そんな私は、ひょんなことから出会ったゲームアプリを、遊ばなくなったからと言ってアンインストールせず、端末にストックしています。
たまにそのストックを見返して、「やっぱりいいゲームだ~」なんて思いながらちょっとだけ遊びます。

だからなんだよって話になってきてしまいましたが、アプリと人の付き合い方っていろいろあって、
アプリの企画は大変、という結論です。



これからもスマホやアプリについての記事を書いていこうと構想していますので、もしよろしければお付き合いください。

おかだでした!