青色プログラム。

日々楽しくプログラミングを学ぶ

IT業界に入って半年

久しぶりの記事、ブログ記事を書くのはほぼ一年ぶり、理由はQiitaやGitHubに投稿した方が良いと思ったからです。

今日はGWの折り返しで暇だったので書いてます。

【最近あったこと】

・優秀新人社員賞 受賞
自社の賞で新人での受賞者は2名のみ、その中に選ばれた。
これは本当に嬉しかった。頑張りが伝わるって事はこんなに嬉しいのかと、親にも伝えて喜んでいたので自分的には親孝行な意味で本当に嬉しかった。


新人代表として成果物を100人以上の前で発表、登壇した。

合宿で取り組んだ成果物『MiniBookSearch』を発表。
パワポ、マイクを持つのも人生初でしたがやって良かった。
このQiita記事が、30いいね!を超えたり、Elasticsearchの関係者さんとTwitterで絡めたり、合宿では仲の良い友人が出来たり本当に色々あった。
合宿参加者の中で合宿前後に1,2番目に色々あった人だと思う。

・Qiita記事が複数トレンド入り

【Rubyの父】まつもとゆきひろ氏の特別講演に行って大切だと思った事。 284いいね
【JavaScript】始めたての頃に間違えた初歩的な出力問題【アロー関数】 86いいね
【Python+Flask】WebAPIを使った簡易書籍管理アプリ【Elasticsearch、Vue.js】 31いいね

一記事目は5桁viewを達成、アロー関数の記事に関しては初歩な内容の割に、デイリートレンド入り, 週間ランキング一位の人気Qiitaユーザーにコメントを貰ったり、色々褒めてくださる機会も多くてお気に入り。

私は昔ブロガーとして2年ほど、月36万pvのサイトを運営していた。
運営といっても収益化もしていない中高生時代に趣味でやってたブログで、人生を狂わせたかもしれないと思うし何も残っていない黒歴史だと思っている。

だが、見やすさ、数字を取る、万人受けを狙うノウハウは持っているのか、見やすさやまとめ方の書き方に関して社員の方に褒められたり高評価を貰えた。うれしい

個人的には100を120に魅せる書き方を知っていると感じている。全く意味の無かった物ではなかったのかもしれない。


GitHubフォロワーが25人超え
これは結構個人的な事ですが、私はGitHubが好きです。
IT業界で最初に頑張って理解した物はGitHubだと思う、という事で少し嬉しい。

・勉強会へ沢山参加した
最初はそんなものがあるのか、自分が行く事になったりするんだろうか、など思っていましたが、『自社勉強会の皆勤賞』『外部勉強会へ月1,2回参加』など普通に楽しい。

周りにそこまでやってる人は居ないので頑張れてるだろうか、それとも井の中の蛙


・自社忘年会用にイラスト描いた
私は絵が描けるので弊社の忘年会のビンゴゲームの待機画面などの絵を描いた。

個人的には絵を描ける部分は、武器にしていくべきだと感じる。

 

じっくり考えたらもっと出てきそうだがとりあえず最近ではこんな感じ
ここからはパッと雰囲気を変えて日記を書いていこうと思う。

 


 

去年の10月にIT業界に潜り込んで(就職)半年になりました。

■ 初めてのお仕事は炎上
Javaテスター、JUnitを使用して業務を行うまぁよくあるやつですね。
しかし炎上、0時前帰宅の6時起きでした。

これは忘れましょう...。
私は楽しくてやっているし天職だと思っているので全然苦ではなかった。
しかし流石に睡眠不足が続いた辺りでメンバーのパフォーマンスが下がってきます。心理的安全性どころか管理者達が喧嘩を始めたり空気も悪くすべてを覆う『負の連鎖』を体感しました。

でも、まだ駆け出したばかりでこんな事では一ミリも挫けませんIT業界の闇を知った事で反面教師で得られた物も沢山ありました。

■ 実はこの時に『Web業界』に転職しようとしていた。

理由は、私と似た志の人が多いから、私はIT業界が天職だと思っているしとても楽しい『自社の勉強会を皆勤賞』や『月1,2回の外部勉強会への参加』など頑張るというより『楽しく出来る』のだが、周りにそういった人は全く居ないのだ。

『周りの人と高め合える環境に行きたい』

そして転職活動をしたが、私は一社目でやめるんですね、理由はとある方との出会い。
一社目は、UUUM株式会社で面接官はCTOの超有名な方です。
ネットでも調べればすぐ出てくるでしょう。

変わった方でした。
最初は転職が早すぎると言われ自分でも分かっているが自分の気持ち、Web業界へ業界チェンジ、やる気を伝えました。すると面接だったのに面接は無くなり真剣なキャリアコンサルが始まったのです。

このまま頑張れば必ず優秀になれる、経歴に傷が付くのは勿体ないのでこういったタイミングの方が良い、キャリアについて、これからこういった事をした方がいい、優秀なエンジニアとは、など大量のアドバイスを貰えました。

そして最後に、また会おう、一年後の君に期待している。と

Java

私はIT業界に入ってからJavaに嫌悪感を持ってしまっている。
Javaプログラミングが嫌いな訳ではないむしろ学ぶのは楽しい。

完全に個人的な思い込みかもしれないが、Java多重下請け構造のIT業界の闇の部分で最も多く好まれている言語だと思ってしまっているから。

案件も多く高単価が貰えるので、周りもJavaの一点張りで新人達もプログラミングしてない人達に、"言われて"資格を取ろうかと思ってたりしている。

自分の道は自分で決めなければならない

Rubyの作者まつもとゆきひろ氏の言葉だ、「案件も多く高単価を貰えるから学べ」って人に言われて学ぶのはおかしい。Javaエンジニアとしてキャリアを築いた場合の将来のキャリア像まで考えているのだろうか?周りはただ言われてやってるように思える。


■ やる気の高い友人が出来た。
スクール時代の友人として今でも仲の良い師匠と呼んでいる人はWeb業界にいるが、私の周りの環境で居て仲よくなった。

優秀社員賞を取ったもう一人の社員だ。
同期で歳もプログラミングを始めた期間ほぼ同じ、彼はPythonエンジニアを目指している。
Kaggleの機械学習で高得点を取っていたり負けたくないと思いつつとても仲が良い。
私のWeb業界へ行きたい理由の一つでもある、高め合える人だと思う。
彼はずっとPythonを学び続けているので、私とは少し違った道だが学べる事は多い。

そして気づく、そう、私は学ぶ軸が定まっていなかったのだ。


JavaScriptとの出会い

・周りはJavaを押す、Rubyの仕事なんてない。
・Web業界はRubyを押す、Javaの仕事はほとんどない。

私はこれでかなり悩まされ遅れを取った。
友人と違って私は今の環境だと目指したいキャリアの道が矛盾しているのだ。

そしてPythonを学んだり、資格を取ろうなど、色々定まっていない軸を正そうとしている時に思い返した。
絵が描ける、デザインが好き、フロントエンドに興味を持った。

どこでも通用して、無くならない言語『JavaScript』、そしてTypeScript, Vue.js, Reactどんどん最新のトレンドにも派生していけるし、これを習得出来ればWeb業界でも通用すると思った。

現在、JavaScriptをメインに学んでいる。
既にアロー関数のQiita記事が伸びて、某人気Qiitaユーザーにコメント貰えてTwitterフォローして貰えたり楽しい。がんばりたい


SIer駆け出しエンジニアの壁

Web系と違ってSIerは最初の一年はテスターがザラである。
そこで現れる壁、『テスターから開発への壁』です。

テスターをしててもコードを書けるようにはなりません。
開発で募集する人達は経験の無い人を呼ぼうとは思いません。
そしてこの壁は独立系SIerだと営業の力にもよる気がしている。

私は沢山相談をしてもらってなんとか、最初はテスターだがいずれ改修も出来る仕事に着けた。

しかし改修部分が少なく結局テスト、ドキュメント作業になった、完全未経験の新人の女性同期と働いていたのでワガママで取り残すわけにもいかなかった。彼女は仕事の緩さに満足しているが、私は危機感しかなかった。

しかし9時出社、17時30分終わりと時間と心理的安全性が築けていて、とても良い環境ではあるので、ここで働きつつ資格を取ろうと思った。

また"業界経験"が積めてプログラマーとしての"業務経験"が積めない仕事なら限界かなと思い、仕事はしっかりやるが、自分の市場価値を上げるよう意識が強くなり行動を移す。

この辺りでQiitaが伸びたりした。

そして諦めていた今の仕事で、Pythonでの開発を任される話がやってきた。本当は関わらないはずだったのだが任される話が来て現在Pythonでの開発に入った所だ。


■ 最後に

自分は、IT業界へ来て良かった。
将来が楽しみなのだ、やりたい事もあり過ぎて困っている。

やってる事も楽しい、私は一つの事にひたすらのめり込むタイプで、以前ゲームや趣味にのめり込んでいたがこの、のめり込む対象を今のプログラミング、IT業界に変えた。これは自分の人生で一番良かった判断でありやった行動だと思う。

つらい事も時にはあるが将来のやり遂げたい事を考えるといくらでも乗り越えられる。開発も出来るようになり、駆け出しはそろそろ卒業になるかもしれない。ここからは私の市場価値を高める努力や、給料も倍にするくらいの意識も持っていきたいと思っている。

そして技術を付け自信を持ってフロントエンジニアと言えるように、JavaScriptなど頑張っていきます。

【プロフィール絵】気分転換にオリジナルキャラクターを新しく描いてみた。

 

最近は、エンジニアとして内定が決まり入社までに基盤を作っています、こんにちは。

内容としては、すっきりJavaを読み込んでProgateをやりこんでいます。

 

今回は気分転換にサムネ → プロフィール絵に困ったので描いてみた。(第二回)

のオリジナルキャラクターを新しくサムネ絵描いてみました!のでペタリ

f:id:aocattleya:20180818171206j:plain

※画像の無断使用は禁止します。
いつものIDの『青カトレア』の擬人化みたいな雰囲気です。

 

作業工程

f:id:aocattleya:20180818171523j:plain

 

使用ツール

・FireAlpaca(無料)
FAVO F-430(ペンタブ:2000円)

 

そういえば絵が描けるプログラマーって需要あるんですかね(ゲーム・アプリ?)
昔の経験でアイディアの生み出し方みたいな物は持っているので、良い物思い付いたら個人でもアプリ開発とかで積極的に活かしてみたいですね!

 

前回
プロフィール絵『青カトレア』差分var.描いてみた。

前々回
プロフィール絵を描いてみた。

 

ではでは。

【C#】VisualStudioで簡単計算プログラムを作ってみる

 ここ最近ずっとJavaの勉強していますが、
自分がプログラミングを始めたきっかけの人が使っている言語「C#」も触り初めました。

今回はいきなり触ってみる感じですが、C#って何?って方は簡単に言うと「C言語」「C++」の後継言語であり「C++++」の+を合体させて「C#

C++Javaをベースに作られていてJavaをやってる人はC#に入りやすいと言われ、とても似ています!ですが基本はWindows環境です。

 

至らない点もあると思いますがアウトプットが大事なので、まとめてみます。

最初は参考書を参考に「簡単計算プログラム」を作成してみます。
作ってみるって人がいるかは分かりませんが、書いてるとうりにすれば出来るはず。
(上手くいかない&間違えてるなどあればコメントください)

前提:VisualStudio2017(C#,.NET Framework)をインストール

 

1、Visual Studio Community 2017を起動

2、[新規作成] → [プロジェクト]

3、新しいプロジェクトの[テンプレート] → [Visual C#] → [Windows フォームアプリケーション(.NET Framework)] をクリック

4、名前欄に「SimpleCalc」でOKボタン
  From1の何もないアプリ画面が出来ました。

6、画面に[ツールボックス]タブから"TextBox"を探してドラック&ドロップ

7、画面にテキストボックスが作成されました。
  左上に配置する(ガイドラインが出るのでバランスの良い位置に)

8、作成されたテキストボックスをクリックし、
  [プロパティ]タブの(Name)欄を「Input1TextBox」と入力

9、[ツールボックス]から"Label"を探しテキストボックスの右にドラック&ドロップ
  テキストボックスの右に配置します。

10、作成されたラベルをクリックし[プロパティ]タブの(Name)欄に「PlusLabel」と入力
  +と表示させたいので[プロパティ]タブのText欄に「+」と入力

※現在のイメージ:[               ] +

11、+ の右側にツールボックスから"TextBox"をドラック&ドロップ

12、[プロパティ]タブの(Name)に「Input2TextBox」と入力

※現在のイメージ:[    ] + [    ]

13、イメージの右にさらに"Label"を配置

14、[プロパティ]タブの(Name)欄に「EqualLabel」と入力

15、[プロパティ]タブのText欄に「=」と入力

※現在のイメージ:[    ] + [    ] =

16、Form1のサイズがバランスよくないので、Form1をクリック
(作成しているアプリの画面全体を選択してる感じになったら)

17、プロパティのSize欄の数値を「400, 110」に変更

18、= の右に"TextBox"をドラック&ドロップ

19、[プロパティ]の(Name)欄に「AnswerTextBox」と入力

※現在のイメージ:[    ] + [    ] = [    ]

20、イメージに下にツールボックスから"Button"をドラック&ドロップ

21、画面に貼り付けたボタンをつまんで右に伸ばします

※現在のイメージ
[    ] + [    ] = [    ]
[                      button1      ]

22、作成したボタンをクリックし、
[プロパティ]タブの(Name)欄に「CalcButton」と入力
[プロパティ]タブのText欄に「計算する」と入力

23、Form1の[プロパティ]を表示(全体選択)
  プロパティのText欄に「簡単計算プログラム」と入力(タイトルが変わる)

23、見た目が完成しました!VisualStudioの上あたりにある[開始]をクリック

f:id:aocattleya:20180708174359j:plain

こんな感じのアプリの外観が完成!
しかし、数字を書いて計算ボタンを押しても今のままでは画像みたいに結果は出ません

ここからプログラミングコードを書いていきます。

24、さっきの画面に戻り画面の[   計算する   ]ボタンをダブルクリック

25、コード画面に切り替わります。

26、今、点滅している所に下記のコードを書いていきます。

f:id:aocattleya:20180708174758j:plain

27、左上の[ファイル]から[すべて保存]をクリック

28、完成!開始をクリックしたら最初の画像みたいに計算ができるようになりました。

 

しかし、このままでは数字以外や何も書かなかった場合に上手く動作しないので、
コードを変更する必要があります。

29、下記のコードを追加します。

f:id:aocattleya:20180709022322j:plain

 これで完成!

アプリの使用

保存したファイルの場所を開き [SimpleCalc] → [SimpleCalc] → [bin] → [Debug] → [SimpleCals.exe]

 

他にもタイマー、付箋メモ、ボールゲーム、家計簿などいくつか作ってみたので興味があったらGitHubにまとめているので見てみてください。

【本】アイデアの生み出し方・アイデアとは何か

 

f:id:aocattleya:20180606202807j:plain

部屋整理していたら1年ほど前に読んだ良い本があったので紹介です!

イデアのヒントという本です。

この本はジャック・フォスターさんが書いた本を日本人の方が翻訳した本になります。

1章目から1940年に初版されたジェームズ・ウェブ・ヤング『イデアのつくり方というアメリカで知的発想法のロングセラー本を分かりやすく取り上げ、普段気にしないアイデアというものについて語られています。

まずアイデアとは何か
イデアとは既存の要素の組み合わせ以外の何ものでもない。

このジェームズ・ウェブ・ヤングの言葉がこの本のメイン。

料理のレシピだと、すでに知っている材料をこれまでと違った方法で組み合わせるだけ
これは天才でなくてもロケットを作る科学者、ノーベル賞受賞者である必要もない

創造的な行為とは、すでに存在する事実、考え、技能を新たに発見し、選び、並べ直し、組み合わせ、統合することである。(イギリスの作家 アーサー・ケストラー

 

そしてアイデアがどう生まれていくのかも書かれている

二つの既存の要素の予期せぬ結合によってまったく新しい心理が生まれる「異なる二つの思想」での出会い

・ダリは夢と芸術を結合させてシュールレアスムを生み
ニュートンは潮の満ち引きとリンゴが落ちる現象から重力を発見した。
・ハッチンズはアラームと時計を結合させて目覚まし時計を作り
・リップマンは鉛筆と消しゴムを一緒にして消しゴム付き鉛筆を考案した。

 

イデアの生産は5つの段階を経由して行われる
 1、データ集め
 2、データの租借(物事や文章の意味を十分に理解し味わう事)
 3、データの組み合わせ
 4、Eurekaの瞬間(ユーレカ:何かを発見・発明した事を喜ぶ事)
 5、アイデアのチェック

 

そして、
昔から自分が一番思いプログラミングの道へ進んだ理由でもある『楽しむ』こと。

まゆ根にしわを寄せていたチームはいいアイデアを出した試しがない、逆に笑いが絶えなかったチームはたいてい素晴らしい提案をしてくる、彼らはいいアイデアを思い付いたから楽しそうだったのか?それとも楽しんでいたからいいアイデアを思い付いたのか。

楽しんでやった人ほどよい成果をあげる」というのは何にたいしても通用する心理である

 

他にも考え方や詰まってしまった場合など色々語られています。
この本の内容はエンジニア、絵、料理など、すべての人にアイデアという基礎の原理を教えてくれる、ぜひ読んでみてほしいオススメの本です。

 

【プロフィール絵】青カトレア 差分var.描いてみた。

 

以前サムネに困って描いてみたオリジナルキャラクターを『リボン(黄色)』から

HNとブログIDのaocattleya『青カトレア』で差分を描いてみました。

 

使った物:フリーペイントツール『FireAlpaca』と2000円のペンタブ『FAVO F-430

f:id:aocattleya:20180604001444j:plain

 

以前のリボンver.はこちら

f:id:aocattleya:20180415003107j:plain

キャラコンセプト的には『青カトレア』ですが『黄リボン』の方がシンプルで落ち着きがある気もする

 

前回で記事 → プロフィール絵を描いてみた

にて作業風景とか載せてるので興味あれば見てね!
企業などがキャラクターを作る理由とかについても書いてるよ