ああムジョ―

かのした といいます。農学部からのIT業界。作ったWebアプリの紹介とか、IT転職のこととか、将来どうやってお金を得ていくかとか、そんなことを記事にしていきます。

ちなみにTwitterやってます↓

僕が農学部4年の時にプログラミングを始めた理由

f:id:zyohnbike:20170719214433p:plain

 

こんばんは。かのしたです

 僕がプログラミングを始めたのは大学4年の時です。そのとき僕は農学部の学生でした。なぜ?と思うかもしれません。農学とITってすごく遠い感じがしますよね。いいえ、決してそんなことはありません。農学に限らず、ITはあらゆる分野に強い影響力を持っています。なので、ITもといプログラミングに興味を持つことは誰にでも意義のあることです。

 

そこで今回は、僕が何故プログラミングを始めたのか、もといITに興味を持ったのか。そして、農業においてITはどのように活用されているのか。そこから派生して、農学に限らずITの有効範囲がどれだけ広いのか。そんなことをお話しして、皆さんにITやプログラミングに興味を持ってもらいたいと思います。

 

農学とITの関係

 農業とITってすごく遠い感じがする、というお話でしたね。いいえ、決してそんなことはありません。例えば農作物を、温度や土中成分を図るセンサーで四六時中監視したり、ドローンを使った空中写真で空から葉っぱの色を調べたりということが行われています。こうして得られたデータをソフトウェアを使って解析することで、どういう条件(温度、湿度、土中成分など)でどういう状態(葉っぱの色など)になれば、美味しくて大きい作物ができるか、なんてことが研究されているのです。

 

冒頭に乗せた写真では、水田に入っている男性がタブレットを持っていますよね。解析した情報を手に持ったタブレットで確認しながら、稲の生育状況なんかを確認しているんだと思いますよ。

 

さて、そもそも物事にITを使う理由って何でしょうか。色々あると思うんですが、僕は効率化だと思っています。上述のようなことを実施する目的は、美味しくて大きい作物を効率良く手に入れるためですよね。そして、美味しくて大きい作物を簡単に作れれば、お金ががっぽり儲かります。高い利益を得るために、ITを使って効率良くイイものを作ろうとしているわけです。

 

それではどうでしょうか。これは農業だけの活用に限ると思いますか?もちろんそんなことはありません。効率良くイイものを作って高く売って利益を上げよう。そのためにITを使おう。という考え方は、現在あらゆる分野に普及しています。近年人気のIoTやAIというバスワードは、まさにその典型的な形です。僕が就活でIT業界に目を向けたのも、ITを使った効率化って何にでも使えそうじゃん!と短絡的に思ったからです。

 

なおこれは余談ですが、最近僕が注目している一次産業のIT活用は林業に対するものです。スマート林業と呼ばれたりもします。なぜ林業か?単に僕が奇麗な森を好むからです。日本の森林資源は余っていると同時に、整備されずに荒廃しています。何とかな整備されて欲しいものです。良かったら↓のリンクからご覧ください。これはアフェリじゃありませんよ(笑)林業に限らず、ITの一次産業活用のイメージが感じられるのでは無いでしょうか。いつかスマート林業について、林業の現状から掘り下げて記事を書こうと思います。

 

hanjohanjo.jp

 

プログラミングを始めた理由

 上述の通り、就活を目前にしてIT業界へ進むことに決断しました。とりあえずということで求人票を覗いてみると、なんと未経験OKばかり。とはいえ何もできないんじゃ流石に無理だろう、何かしら書けるようにしよう。と思ったのが発端ですね(全然無理じゃなかったです。同期の多くは本当に何もできませんでした)。

 

それともう一つ、手を動かせるようになりたかったからです。手を動かせれば、まさに手に職が付きますよね。そして、自分で作ったサービスなりアプリなりで副業ができるかもしれない。僕も自作でWebサービスを作ったりしています。ちょっとまだ収益化とか考えられないレベルですが、動く程度には・・・。まだ可能性は捨てていませんよ(笑)

(余談ですが、いかんせん仕事で全くプログラム書かないので、なかなか腕が伸びません。勉強する時間にも限りがありますからね。転職も考え中です。。。)

 

また、何か画期的で面白い事業が起こった場合、ベンチャー企業が多いと思いますが、仮にそういう会社に参加したくなった時、手を動かせないと入れないですよね。それもあって、プログラミングは絶対にできるようにしたいと思ったのわけです。僕は例えば林業やその他諸々、もしITを活用できたら面白そうだなあと思うような、個人的に好きな分野があったりします。

 

IT・プログラミングに興味を持って下さいね

 どうでしょう。ITに興味を持っていただけましたでしょうか?あなたが学生であれ社会人であれ、何かの専門分野を持っていますよね。その分野で、ITを使ってあんなことできたら面白いなあ、と思うことがあれば、今すぐプログラミングを始めてみましょう。道のりは長いですが、きっと得るものがあると思いますよ。

 

そして本気で仕事にするのもありだなあと思ったら、ぜひIT就職・転職に強いプログラミング言語① 必須編 を読んでいただけると嬉しいです。僕もまだまだ超未熟な身ではありますが、初めて勉強を始められる方向けに有益な記事を提供できればと思っております。

 

そしてIT業界に進みたくなったのなら、市場価値を知るためにも、一度転職エージェントと話した方がいいですよ(学生さんは別ですね。新卒なら未経験で入り放題だよ!)。自分がどの程度なのか知ることができると、良くも悪くも地に足の着いた活動ができるでしょう。

 

ありがとうございました。

 

ITエンジニアを志すうえで選んではいけない会社 3選

f:id:zyohnbike:20170718224308p:plain

 

こんばんはかのしたです

 IT業界未経験だと、どんな会社が良いか悪いかなんてよくわからないですよね。よくわからないからとりあえず大きい会社入ってみたら、失敗だったなんてことも多い業界です。僕もそうですね。会社の規模で良し悪しが決まらない業界ですから。

 

今回の選択基準としては、ホワイトかブラックかといったものではありません。IT技術者としての将来を考えた上で、一番最初に入るには絶対に間違っている、と言い切れる仕事内容の会社を紹介します。

 

 

絶対に入ってはいけない会社3選

 

1.パッケージ製品・他社製品の導入がメインの会社

 自社や他社(有名・無名問わず)を問わず、何かしらの製品、つまり出来合いのものを導入しているだけの会社は、あなたのキャリアの最初にはふさわしくありません。こういった商社的な会社・部署は意外と多いので注意です。

 

出来合いの物を導入するだけでは、一般的なIT知識・技術を身に付けることができません。身に付くのはその製品の知識のみです。それは専門性でいえば営業と変わりません(営業の武器は口と頭であって、製品知識ではありませんが)。

 

こういった会社は意外とホワイト度でいえば悪くないかもしれません。しかし、考えてみてください。その会社の事業が立ち行かなくなった時、あなたはどうしますか?あなたは技術を身に付けたかったはずではありませんか。僕が言いたいのはそれだけです。

 

十分な知識・技術を備えたキャリア中盤以降であれば、それまでの知識も活かせて、よい選択肢の一つとなるかもしれませんが、序盤のキャリアでは避けた方が絶対に良いでしょう。

 

2.SIer系多重下請け(最下層寄り)

 しばしば土方と揶揄される業態の会社です。下請けの下請けのまたまた下請けの下請け、なんてことも。こういった業態に入ると、全てにおいて劣悪な労働環境故に精神を病む可能性があります。決して入ってはなりません。

 

なお、コーディング等の経験は詰めるかもしれません。しかしSIerという業態故に、あなたがやるのは意味不明な詳細設計通りに文字を打ち込むことであったり、仕様も見当たらないぐちゃぐちゃなスパゲッティーコードを何とか解読して、それを改修する作業だったりします。プログラミング、というほど創造的な仕事ではありません。

 

IT業界は今、非常に人材需要の高い業界です。あなたが入れるもっと良い会社は絶対にあるはずです。つまらない会社でつまらない時間を過ごすのは、物凄く勿体ないことです。焦らず、自信を持って、より良い会社を目指してください。

 

3.ガラ携向け開発などのマイナー分野がメインの会社

 今の時代、携帯機器はスマートデバイスがシェアの大部分を占めています。ガラ携はいずれほぼ絶滅するでしょう。同様に、マイナーなデバイスや分野でしか使えない技術を身に着けるのは、得策ではありません。

 

最近では逆に、ガラ携向け開発などのマイナー分野に手を出せる人が減っていることもあり、一時的に需要が伸びている所も確かにありますが、やはり将来的なことを考えると不利であるといわざるを得ません。

 

また、VB6やCOBOLといった非常に古い言語で開発している企業についても、出来る限り避けるべきです。何か物凄いこだわりがあるわけではないのなら、まずは今メジャーな分野で経験を積むべきでしょう。

 

将来のことを考えて、一社目は慎重に

 総括です。1社目というのは非常に重要です。何故ならそこで詰めた経験に応じて、次の行き先が決まってくるからです(僕は非常に後悔しました)。経験の濃さに関わらず、年齢だけは一定の勢いで積みあがっていくとを忘れてはなりません。

 

未経験からの1社目ということで、えり好みは難しいとは思いますが、上記で示した企業だけは何としても避けてください。その上で、会社の雰囲気や給与などを踏まえて考えてみてください。

 

なお、ソフトウェアにせよインフラにせよ、少なくとも入社1~数年は末端のプログラミングや構築経験の出来る会社を選ぶべきです。その後のキャリアに対する考え方は人によって変わってきますが、そういった末端の経験は一生の糧になります。

 

1社目は慎重に。今はIT技術者の需要が非情に高いチャンスの時期です(ぶっちゃけ大したことなくてもいい会社に入れます)。すぐに決まって喜んでも焦らずに、先方がどんなことをやっているのかしっかりと確認をして、納得してから入社してください。

 

自分の市場価値を知ることも大切なので、まずは転職エージェントの方とお話しするのもアリです。よかったら↓のアフェリ広告からどうぞ。面談は無料ですし、エージェントさんは美人が多いのでお話しするだけで楽しいですよ。

 

というのは冗談(実際に美人さんが多いです!)で、自分の価値を客観的に知れるというのは安心感につながりますよね。僕も面倒で渋っていましたが、今思うと早く行っておけばよかったです。だから本気でお勧めします。

 

IT就職・転職に強いプログラミング言語② サーバーサイド編

f:id:zyohnbike:20170717184057p:plain

こんにちは。かのしたです。

 今回は前回の【必須編】に引き続き、サーバーサイド編をお送りします。前回も冒頭で述べたように、エンタメ・業務系など分野に限らず、Webベースで開発をしている企業へ入るという前提でお話しします。

 

Web関連技術は潰しが利きますし、お金に直結しやすいので、コンピュータ―サイエンスに強い思い入れがあるとか、これからはIT業界でエンジニアとして生きていく以外考えられないとか、そういう信念が特にないのであれば、この路線でひとまずOKです。

 

なお、組み込み系や、IT以外の深い専門知識を生かした方面(データサイエンティスト、ITを使ったアート系の分野など)に行きたい人向けの内容については、後日扱えればと思います。

 

 

サーバーサイド(Web)とは

  サーバーサイド、何それ?という方もいらっしゃると思うので補足をしておきます。【サーバーサイド】というのはそのままの意味で、【サーバー側】ということです・・・はい、サーバーとは何か説明します(既知の方は読み飛ばし推奨。長くなりました)。

 

さて少し立ち戻って、僕は以前よりWebベース、Webベースと繰り返し書いていますが、これが具体的にどういうものを示しているのか。ざっくり示したものが↓の図になります。

 

f:id:zyohnbike:20170717152959p:plain

 

即興で作ったので、あまりカッコよくなくてすいません。クライアント側ではHTML, CSS, javascriptのデータからWebページを表示している。サーバー側ではサーバーサイドプログラムが常駐している。ユーザーのブラウザ操作によって発生する要求に応じて、クライアント~サーバー間で通信がなされている。このような関係が作られているものをWebベースと呼んでいました。

 

今回ご紹介するのは、このサーバーサイドを形成するプログラミング言語です。具体的には上述のように、サーバーサイドに常駐し、クライアント側の要求に応じて、データを返すプログラムを作成することができます。

 

例えば、皆さんはリンクを踏みますよね。このページであれば、【必須編】とか、もっというとアフェリエイト広告とか踏んで頂けると死ぬほど助かるんですけど。実はリンクを踏んだ瞬間、リンク先のサーバーに対して「お前のWebサイトの情報をくれ」という要求が飛びます。

 

そうするとサーバー側のプログラムは「お前のWebサイトの情報をくれ」という要求を読み取って、応答として自分のHTML, CSS, javascriptやらをクライアントに送信します。受け取ったクライアント側のブラウザは、そのデータを解析して、Webサイトとして表示するわけですね。

 

また、アマゾンで購入確定ボタンを押した時にも、サーバー側に対して「○○を□□個買ってやったぜ畜生!!」というデータが送られています。するとサーバー側のプログラムが、嬉々としてその商品の発注処理を行ってくれているというわけです。Webの仕組みとサーバーサイドの意味について、ザックリとご理解頂だけたでしょうか。。。

 

 

おすすめのサーバーサイドのプログラミング言語4選

 前回の【必須編】でお話ししたHTML, CSS, javascriptは、すべてクライントサイドの技術です。エンジニアとして実務で活躍、あるいは自分でWebアプリを作りたいとなると、クライアント~サーバーサイドの一通りの知識が必須です。

 

そこで以下に、サーバーサイドを構築できるプログラミング言語のうち、特に潰しが利きやすいもの、外れがないものをご紹介します。このうちどれかを習得、何かしらの制作をして、その言語を扱っている会社に就職・転職すると良いでしょう。また、今回は相対的な習得難易度、人気、案件数、給与などを比較しながら書いていきます。

 

1. Java

<比較表>

 学習難易度: ★★★★★

 案件数  : ★★★★★

 将来性  : ★★★★☆

 給料   : ★★☆☆☆

 汎用性  : ★★★★☆

 

<解説>

 言わずと知れたプログラミング言語の代表格。プログラミングをしてみたい、と思った人ならば、一度は聞いたことがあるんじゃないでしょうか。IT企業の新人研修で扱うプログラミング言語として選択されることも多いです。

 

Javaの最大の特徴は、球数の多さでしょう。世界中の無数の企業、無数のWebサービスJavaが使われています。そのためひとまずJavaを習得すれば、AIによる全自動プログラミングが始まらない限り、食いっぱぐれることはないでしょう。

 

球数の多さ故、開発者が多くて平均的な給与水準は低いものの、優秀であれば非常に重宝されるので、最高額もトップクラスです。Androidアプリ開発にも利用できるので、活躍の幅は広いです。

 

最大のネックは学習難易度の高さです。しばしばネット上において「JavaはCやC++よりも遥かに簡単である」といったようなことを言われますが、はっきり言って独学による習得難易度は非情に高いです。

 

しかしJavaがしっかりと書ければ、PHP等のスクリプト言語が必要となった際に、すんなりと学習に入れるでしょう。また、Javaをベースとした生産性の高いScaleやKotlinといった新たな言語も誕生していますが、Javaが身についているのであれば、習得のハードルはそれほど高くないでしょう。

 

おすすめ書籍は以下。これが入門の定番になっています。とにかく超入門から入ってくれる本を選ぶべきです。挫折します。

 

2. PHP

<比較表>

 学習難易度: ★★☆☆☆

 案件数  : ★★★★★

 将来性  : ★★★☆☆

 給料   : ★★☆☆☆

 汎用性  : ★★☆☆☆

 

<解説>

 これもまた誰もが一度は耳にしたことのある言語です。PHPの特徴もやはり球数。プログラミング言語としての出来が疑問視されており、新規開発などの将来性はやや不透明ですが、球数はJavaに次いで多いため、それほど心配する必要は無いでしょう。

 

そして学習難易度も屈指の低さです。簡易導入パッケージ的なものを利用すれば、数分で開発環境を整えられますし、便利な関数(標準搭載のプログラム部品)が揃っているので、とりあえず何かを作るということに向いています。

 

簡単である・書き方の自由度が高い(滅茶苦茶に見えるコードを書いても動いてしまう)故に、PHPから入ると他の言語を学び始めたときに辛さを感じるかもしれません。しかしそれを補うほどの取っつきやすさは魅力的です。

 

給与水準としてはJavaと同様低め。しかし習得が簡単な割に最高給与はJava同様トップクラスです。また、Webサーバー上でしか動作しないため、Webシステムを構築する以外の用途で使用することはほぼありません。

 

おすすめ書籍は以下。実践に必要な範囲を網羅しており、わかりやすいです。これで足りない部分はググればいいでしょう。似た関数の微妙な違いについても取り扱ってくれています。

  

3. Python

<比較表>

 学習難易度: ★★★☆☆

 案件数  : ★★☆☆☆

 将来性  : ★★★★☆

 給料   : ★★★★☆

 汎用性  : ★★★★☆

 

<解説>

 みんな大好きPythonです。Pythonの特徴は、やはり近年のアツさ、つまり人気でしょう。近年はAIブームもあって、統計解析や機会学習といった分野が取り沙汰されています。そういった分野に強いのがPythonです。よって勉強しておくと後々美味しいかもしれません。

 

もちろんWeb開発においても有効な言語で、GoogleFacebookなどの名だたる企業でも主力言語として利用されています。誰が書いても読みやすいコードになるよう設計されており、開発者に優しい言語です。将来性に対する期待は非常に高いと言えます。 

 

分かりやすいコードとなるよう設計されているだけあって、ルールがやや厳格な面もあり、雑に書いて動くようなタイプの言語ではありません。また、オブジェクト志向という開発の概念のようなものを学ぶ必要もあるでしょう。

 

しかし細かい説明は省きますが、開発環境は非常に整えやすい他、対話式プログラミングができる、オープンソース(公開されている便利なプログラムの部品)が豊富などの理由もあり、習得難易度は低めであると言えます。

 

難点としては、まだまだ日本での活用が多くないこと。期待はされているが、普及度でいえばPHPJavaの方が上、といったところでしょうか。また、ほかの言語に比べて構文が簡素という特徴があります。基本的に悪いところが見当たらない言語です。

 

こちらのオススメ書籍は・・・すいません。僕は完全にネットで勉強しました。今度いい書籍があったら紹介させてください or 教えてください。一応↓を張っておきます。評価数が多い、評価が高い、入門的である、の三点を基準に選びました。

 

 

4. Ruby

<比較表>

 学習難易度: ★★★★☆

 案件数  : ★★★☆☆

 将来性  : ★★★☆☆

 給料   : ★★★★☆

 汎用性  : ★★★☆☆

 

<解説>

 日本のWeb界隈で一世を風靡した言語、Rubyです。最大の特徴は、日本で大人気であるということです。それもそのはず、開発者が日本人のまつもとひろゆき氏だからです。したがって日本人・日本語のコミュニティが充実しています。

 

そしてもう一つの大きな特徴はRuby on Rails(以降Rails)という超強力・超人気なWeb開発フレームワークの存在です。このフレームワークのおかげで、効率的なWeb開発が可能、つまり生産性が非常に高く、少人数のスタートアップ企業などで非常に好まれています。

 

そのため一時期は爆発的な人気を誇り、現在は少々落ち着いたものの、相変わらず球数は多いです。しばらくは需要も高いと思われます。給与水準も現時点でトップクラスです。

 

懸念すべき点としては、以前に比べると勢いが落ちていること、Railsというフレームワークが前提となる場面が多い(開発者個人のキャリアとしても、将来性という面でも懸念すべき)ことでしょう。

 

僕はRubyに詳しくないので深いところまでの言及は避けます。しかし強力なフレームワークが前提になるため、それに偏った知識になりがち。利便性のためにフレームワークが包み込んでいる(深い)部分を見れない。などの問題があります。

 

またフレームワークを覚えることが必要になるため、Ruby自体の学習コストはともかく、それに上乗せする形で別途コストがかかります。そしてそれがどれだけコストに見合うものなのか。そういった点を踏まえて選択した方がよさそうです。

 

とはいえGitHubオープンソースが集まる場所の一つ)は相変わらず賑わっている、給与水準が高い、日本発祥の言語である、という点を踏まえれば、やはり有用な言語のひとつであることは間違いありません。

 

何か一つ覚えて、何か一つ作ろう

 総括ということで。ぜひ今回紹介した言語を一つ習得して、クライアント~サーバーまで書いてみてください。さらっと言ってますが、1カ月程度のお話ではないことは覚悟しておいた方が良いでしょう。

 

しかし本気でIT就職・転職を考えるのであれば、入社後も勉強が必須です。これは無理だと思うのであれば、早めにギブアップするのも悪くない選択です(Javaから入ってギブアップしたなら、試しにPHPやってみてください)。

 

ある程度習得して一つ作品を作ったら(最悪作り切れなくてもいいです)、その意欲を元に転職エージェントに会ってみましょう。もちろん、勉強を始める前に合うのも良いでしょう。あなたが現在どの程度の価値があるのか知ることで、何をすればいいか明確になります。

 

もし学生の方であれば、もしIT就職しなくともやっておくことをオススメします。教養として、というのも勿論ですが、もしあなたがプログラミングに向いているのであれば、早めに気が付いた方がよいからです。

 

実のところ結構好き嫌い、適性は分かれます。それは僕がIT業界に就職して、何10人もの同期とともに研修を受けたときに分かったことです。自分を試すという意味でも、何か1つ作ってみてください。その時に「楽しい」、「出来そうだ」といった感覚を覚えるならば、ぜひIT業界へ飛び込んでみてください。

 

IT就職・転職に強いプログラミング言語① 必須編

f:id:zyohnbike:20170716195041p:plain

 

こんばんは。かのしたです。

 就職・転職に有利なプログラミング言語について、複数回構成で進めたいと思います。というわけで第一回目は必須編ですね。まず勉強の優先順位とか見るのもありだと思うので↓の目次使ってみてください(はじめて導入)。

 

 

本題に入る前に

 就職・転職でIT業界に入りたい方、結構いるんじゃないですか。ITは総じてブラックだ、なんてことよく言われますが、最近はかなり改善していますね。僕の会社もそうですし、周りを見ていても、ほかの業界と比べて特別悪いとかっていうことは無いです。

 

今の時代、ITって必須ですから。すごく大雑把に言うと、電気の流れてるものにはITを活用できます。電気って業界とかの垣根を超えますよね。ITも同じですよ。例えば関係のなさそうな農業や林業にだって、ITはもはや必須の時代です。

 

だから貴方がIT業界に行きたいと思った感性は間違っていないと思います。仮にIT業界から出たとしても、そのスキルはどこへ行っても活用できますし。それに今後よりその傾向が高まります。

 

なぜならITというものは、物事を効率化することに利用されるものだからです。世の中で未だ効率化できていないこと、たくさんありますよね?それが尽きない限り、IT活用の幅は尽きません。

 

なお、今回対象とするのはいわゆるWeb系に行きたい方、またはWebベースの業務系システムを作りたいと思っている方です(組み込み系は除きます。組み込み系に行きたい方はCというプログラミング言語を勉強してください)。

 

Web系はともかく、業務系はなぜWebベースに絞るのか?それは今の流れから言って、その方が潰しが利くからです。細かくは説明しませんが、私は業務系に関してもWebベースで作っている会社へ進むことを強くおすすめします。

 

必須のプログラミング言語

 さて本題です。世の中にはたくさんのプログラミング言語がありますから、そのすべてを習得する必要はありません。しかし習得必須なものがいくつかあります。今回はそれを紹介します。

 

1.javascript

 IT業界に興味を持ったことがある、あるいはネットサーフィンが好きな人ならば、javascriptというプログラミング言語を一度を耳にしたことがあるんじゃないでしょうか。これが使われていないWebサイトは無いです。

 

貴方がYahooニュースの記事をクリックしたとき、Twitterでいいねボタンを押したとき、Amazonでなにがしかの商品をポチった時。Webサイトにおいて何かしらのアクションを起こしたということは、裏でjavascriptが動いたということです。

 

会社で使っているグループウェア、勤怠システム、旅費精算システム・・・これらをInternet ExplorerGoogle Chrome で操作している方もいるのでは?これらも裏でjavascriptが動いています。

 

今の時代、非常に多くのことがブラウザを使って実行されます。これは至極単純に言うと、使う方にとっても作るほうにとっても楽だからです。よって今後もjavascriptの需要は尽きず、この業界にはいるのであれば必須の知識と言えます。

 

とはいえ、javascriptはそれだけたくさんの用途があるため、非情に多様な言語でもあります。専門家になる必要はありませんが、最低限は絶対に扱えるようにしておく必要があるでしょう。

 

また、Google Chrome などのブラウザーとメモ帳などのテキストエディタさえあれば、簡単にプログラミングを始めることができるので、入門のプログラミング言語としてうってつけです。

 

2.HTML

 これはjavascript以上に必須です。貴方が今ブラウザで見ているもの、これはHTMLをブラウザが解析して表示しているものに他なりません。特に文字や画像といったものはほぼすべてHTMLに記載されているものが表示されています。

 

注意していただきたいのは、HTMLにはいくつかバージョンがあるということです。現在の最新はHTML5です。HTML5はそれまでのバージョンと比べて機能的に充実しており、今後も(新しいバージョンが出ない限り)普及していくことが間違いありません。よって、ひとまずこれだけ勉強しておけば大丈夫です。

 

また、仮に新しいバージョンが出たとしても、基本的な書き方は変わらないでしょう。したがって、新しいものが出ることをそこまで恐れる必要はありません。

 

厳密に言うとHTMLはプログラミング言語ではなく、マークアップ言語というものです。そのため最も必須でありながら、2番目に持ってきました。しかし初心者の方にとってはそこを細かく気にする必要はありません。必須の技術の一つなんだと思っておけば大丈夫です。

 

3.CSS

 HTMLで書かれたものは、それだけだと単なる文字の羅列です。これを装飾するのがCSSです。文字や背景の色を変更したり、Webサイトの各要素の配置を決めたり、マウスカーソルを当てるとボタンが動いたり。HTMLの様々な制御をしています。

 

今あなたが見ている「はてなブログ」もそうですが、こうした奇麗なWebサイトは、どれもCSSによって装飾されたものです。今時文字だけがズラーっと並んでいるようなサイトなんて見かけないですよね。よってCSSも必須の知識となります。

 

とはいえ、デザイン的な部分に関しては専門の方がいらっしゃることが多いので、そっちの方向を目指すのでなければ特別詳しくなる必要はありません。最低限のことをしっかりと抑えれば大丈夫です。

 

CSSは複雑な計算式を考えずとも、画面に動きを出すことができます。つまり手っ取り早く視覚的に面白いものが作れるということです。なので人によっては一番最初に面白みを感じられる分野かもしれませんね(僕は見た目や動きといった面よりも、バックエンドの仕組みを作る方が好きなので、未だに必要最低限しか弄れません。)。

 

CSSにもバージョンがあり、最新のものはCSS3です。HTML同様、最新のものだけ学んでおけば問題ないでしょう。CSSも厳密にはプログラミング言語ではなく、スタイルシート言語といわれるものです。

 

CSSの一番の難点は、使うブラウザによって表示が変わってしまうことです。つまりInternet ExplorerGoogle Chrome では、同じCSSでも表示が変わってしまうのです。ここら辺は追々勉強していけばよいでしょう。

 

勉強する優先順位

 

 HTML > CSSjavascript  

 

 HTMLは最初に勉強しなくてはなりません。HTMLを装飾したり、機能を与えることが、CSSjavascriptの役割だからです。javascriptCSSを操作して、より複雑な動きを生み出すといったこともできるので、順位としては上記が良いでしょう。

 

とにかく仕組みや機能を作ることをやりたいんだ!という人は、CSSを飛ばしてjavascriptから弄ってみるのもありでしょう。とにかく楽しいと思うところから手を付けてみることです。それが一番上達が早いですから。

 

効率の良い学習方法としては、書籍を一冊買って読み進めて行きながら、自分なりにその内容をアレンジしていくという方法ですね。大体読んで、作りたいもののイメージができたら、最後まで読み切らずに作り始めてしまうのもありです。僕はそれでした。

 

無料の勉強サイトは多々あるのに、なぜ書籍をお勧めするのか?やってみるとわかるのですが、コーディングも PC、基礎学習もPCってしんどいですよ。一冊辞書的に使えるものがあった方が絶対に捗ります。

 

僕も新しい分野に手を出すときはサクッと一冊買いますね。時間効率を考えれば当たり前のことです。本気でやるならば、こういう所に出し惜しみをするのは勿体ないと言い切れます。

 

書籍としておすすめなのはひとまず僕がお世話になったやつは↓に載せます。他にもいろいろ書籍はありましたけど、HTML, CSS, javascriptをまんべんなく抑えているのはこれですかね。

 

 

まあ正直なところ、大体のところさえわかってしまえば後は作りたいものに向かってひたすらトライアンドエラーを繰り返すだけなので、そこまで書籍を厳選する必要はないです。好きなのを買うと良いでしょう。特に初心者向けの書籍なんて似たり寄ったりですから。

 

独学して何かを作ったという経験は武器になる

 総括ですが、上記の勉強方法でひとまず問題ないと思います。特に今はjavascriptの力が強いですから。勉強せざるを得ません。そしてjavascriptが実際に操作したり、javascriptを起動する元だったりするHTMLやCSSも必須です。

 

書籍は何でもいいんですが、一冊手元に置いてある程度学んだら、最後まで読まなくてもいいので、ひとまず何か作ってみるのがいいと思います。それか例えば、自分のブログのテンプレのHTMLやCSSを弄ってみるのもありですよ。

 

ただしその場合、バックアップ、要はもとのソースのコピーを作っておいた方がよいでしょう。下手するとぶっ壊しますからね。あるいは捨てアカで試すとか。

 

そうやって、自分が作ったものを成果物として持っておくと、就職の時には有利です。僕はかなり意欲的に見られました。大したものじゃなくてもです。

 

しかし転職となると、ある程度のレベルが求められるでしょう。HTML, CSS, javascriptを使った画面デザインを本業とするWEBデザイナーであれば、今回説明した3つの知識をしっかりと叩き込むべきでしょう。

 

僕のようにバックエンドの仕組みを作りたい、というタイプであれば、次回紹介するバックエンドプログラム(Java, PHP, Rubyなど)が必須なので、上記のことをさらっと勉強した上で、そちらの勉強に進んでください。そしてやはり、ぜひ何か作ってみてください。

 

時間が惜しければ、「HTML テンプレート スマホ対応」みたいなワードで検索して、テンプレートを貰ってくるのもアリです。自分が作りたいバックエンドの仕組みに合わせてテンプレートを弄ればよいと思います。

 

実際に色々やってみたり、あるいは本当にこれでいいのかっていう方は転職エージェントとお話ししてみるといいでしょう。IT以外のスキルも含めて、自分の価値がどのくらいなのかを客観的に見れると安心感につながります。

 

これは僕の経験ですが、あまり転職エージェントを使わず、求人票だけで応募して受けると、本当にこれでいいのか少々不安になります。なので一度は専門家である彼らに相談した方がいいでしょう。もっといい求人を紹介してくれるかもしれませんし。

 

あとこれはすごく重要なことなのですが、リクルーターは女性が多くて話しやすいですし、美人が多いです。美人が多いです。2回言いました。美人さんに無料のお悩み相談コーナーやってもらう気分でいいので、ぜひ一度行ってみてください。よろしければ↓のアフェリエイト広告から!!(爆)

 

 

 

なんとかWeb副業でお金欲しいよね

日本人 女性 女 30代 アラサー ライフスタイル 部屋着 ナチュラル ミディアムヘア パーカー グレー 朝 ダイニング ダイニングテーブル テーブル PC パソコン ノートパソコン 仕事 ビジネス 在宅 在宅ワーク 主婦 副業 OL ネット インターネット ネットショッピング 喜ぶ 手を合わせる 合掌 mdjf013

 

こんばんはかのしたです。

 

何とかしてWeb副業でお金を稼ぎたいです。こういうブログもそうだし、Webサービス作ったりして。特に僕の場合Webサービスで儲けたい。物を作るのが好きだし、正攻法って感じがしますよね。

 

別にノマドワーカーとかフリーランスとかやりたいわけじゃないんです。むしろどっかの会社で働いていたい。じゃないと人付き合い無くなりそうだし、なんだかんだ人と何かやるのは好きだったりします。

本業年収500万(毎日定時・年間休日120日以上) & 副業年収入500万

みたいなのが理想ですね。

 

もし何か不測の出来事が発生したりしても、本業がダメになったら副業で何とかする。副業がダメになったら本業で何とかする。これぞ本当の安定志向だと思います。マジでやりたくなったら副業を本業へ、すなわち起業するのもカッコいいですよね。僕はやらないと思いますけど。

 

それに意外とWebの副業と会社勤めって相乗効果あると思うんですよ。Webで稼げる人って、コツコツ努力できて、集客が上手い人ですよね。その能力あればどの会社でも働けるじゃないですか。

 

それこそWebサービスなんか作ってれば、結構な技術と知識も身に付きます。僕はつまらないWebサービスをちょこちょこ作ってるわけですが結構知識はつくものです。転職エージェントさんと話した事があるのですが、僕のレベルでも(努力・期待値を含めて)Web業界のかなり良い所まで狙えるだろう、というお墨付きをもらえました。まさに相乗効果ですね(面白そうなので、いつかはそっちの業界に行く予定です)。

 

はあ。何とか儲けたいなあ。だからこうやって何とか毎日ブログを書いて、、、まずは月1000円を目指したいわけです。何で1000円かというと、VPSサーバーを借りたいからです。VPSサーバーっていうのは、有料で借りられるサーバーだと思ってください。これの最低スペックが大体月額1000円なんです。自作のWebサービスを運営&お勉強するのに借りたくて、せめてこれを損得0にしたいというわけです。

 

(まあアフェリだけを考えるならレンタルサーバーが安いです。月500円以下でざらにあったような気がします。あくまでアフェリだけを考えるのであれば、それで事足ります。大体はWordPressっていう、アフェリでよく使われるホームページのパッケージみたいなものを置けます。PHPというプログラムもおけるので、一応Webサービスを展開することも可能です。)

 

でも1000円って大変ですよ。大体普通のアフェリエイトをやって、月3000pvで1000円程度だそうです。1日100pv・・・遠すぎやしませんかね。上記の数字を基準とすれば、単純計算で1円/3pvなので、もし年間500万儲けたければ年間1500万PV。毎月125万PVということになります。果てしない・・・。

 

まずはこのブログを日々更新すること。そしてこそこそとWebアプリを公開することですね。ブログはあくまでもサブで、やはりWebアプリを・・・。副業で稼げなくても、技術さえついてくれれば、本業の方は何とかなりそうですし・・・

 

かのした

 

クズにはITの世界がおすすめ

f:id:zyohnbike:20170606214233p:plain

 

こんばんは。かのしたです。 

 

クズにはIT業界がオススメです。これホントですよ。何故かというと、周りを見ているに、口だけ無駄にデカい野望を持っているようなクズな人ほどプログラミングができる傾向にあります。本気出せば俺最強みたいな人が多いんじゃないでしょうか。まさにクズですね。でもあながち間違っていないと思います。可能性はあると思います。

 

クズはなぜクズになるのか

 クズはなぜクズなのか、それは予測力が高いからです(実際に読めてるかは微妙)。たぶん↓みたいな人たちをクズというのでしょう。

 

 メンタル面

  ・努力はしたくない

  ・リスクを負いたくない

  ・つまらないことなんてやりたくない

 実態

  ・怠け者

  ・努力をしない

  ・実力もない

 

実力が無いのは努力をしてこなかったからに他なりません。じゃあなぜ努力をしなかったのか、たぶん目標はデカいけど大したことのない未来が見えてしまうからだと思います。

 

たとえば学生のうちなんかは、特に男だと、運動部に精を出す人が多いですよね。僕もそうでした。でも挫折した人も多いのでは?だって、いくら頑張っても、生まれつきの運動能力にはかなり差があるからです。

 

中高生のうちは努力しますよね。努力すれば上手くなるんじゃないか!全国いけるんじゃないか!いいえ、無理です。僕はテニスをやっていたんですが、僕よりも年下で体格も劣るやつが、僕の1.5倍くらいの速さの球を軽々とぶち込んできたときに、こいつは無理だなと思いましたよ。努力何それ美味しいのって思いました。

 

運動に限らず何でもそうです。例えば一番酷くて分かりやすい例がですよ。顔以外が同じスペックで、今のあなたは生田斗真に勝てますか?心は福士蒼汰だ!とでもいいますか?無理ですね。

 

そういう経験を多くと積んでくると、これは無理だな、向いてないな、可能だとしても労力がかかるな、っていう予想の精度が高くなってきます。想像できてしまうんですよね。自分が上手くいっていない姿が。そしてそれを言語化したものを言い訳として用い、努力をしない。それが積もり積もってクズになるわけです。

 

なぜクズがIT業界に向いているか

  では本題に入ります。ITもといプログラミングに必要なモノって何だと思いますか?巷では論理的思考力なんかが言われます。確かに重要だとは思いますが、現実的なところでいうと、若干違うと思います。

 

 ずばり、一番重要なのは イメージする力 だと思います。

 

現代コンピュータの父はノイマンとかいうIQ200だかの天才らしいですが、彼は頭の中に1haの黒板を持って(イメージ出来て)おり、それを使って難解な数学の問題を暗算でバリバリ解くことができたらしいです。バケモンですね

 

もちろんノイマンにはなれませんが、プログラミングも同じようなことをやるわけです。作りたいもの、作るべきものがあって、そこにたどり着くための具体的イメージを想像し、さらにそれをソースコードする

 

これってクズの特徴に似ていませんか?クズの得意技は、自分が上手くいっていない、緻密なイメージを構築し、それを言い訳として利用するために言語化することです。似てますね!!!!(押し切る)

 

そう、クズはIT業界に向いているのです。

 

クズはITで稼ぐのに必要な素養を兼ね備えている

 残念ながら相当な才能が無い限り、プログラミング一本で食っていくのは難しそうです。僕は勉強会にも顔を出したり、ネット上で色んな人の記事を読んだりしますが、ヤバい人いっぱいいます。技術じゃ勝てません。

 

でもどうでしょう、なんでIT使うんですか?ひとまずは金欲しいからですよね。そしてクズの特徴をもう一つ思い出してください。野望だけはデカいことです。

 

その野望、社会的地位とか成功とかじゃなくて、いかにお金を稼ぐ仕組みを作るかというところに傾けてみましょう。そしてそのための緻密なイメージを構築し、プログラミングを始めましょう

 

貴方が本当にクズならば、きっとその素養があるはずです。

 

ちなみに僕もクズなので

 そんな僕も、プログラミング歴1年ということで、色々作ってきました。今作っているのは、【俺のITブックマーク】というWebアプリです。

 

俺のITブックマーク ←  是非いらっしゃい!!!

 

ITの勉強を始めたばかりの人向けに、とりあえずこれ読んでおくとためになるよ!っていうページをまとめているアプリです。これから機能追加もどんどんやっていきます。

 

ちなみにIT業界に入ってみたいって言う人は、ある程度独学しないときついです。中途は特にそうですね。逆に自分で勉強してなおかつWebサービス立ててたりすると、大したことなくても結構評価をもらえたりします(こんなしょぼいサービス作ってる僕はSEですが、Web業界に転職するにあたっての評価は結構高く貰えています。)。

 

正直大したもんじゃないし、まだ一銭も稼げてないけど、ひとまず転職のネタにはなります。つまり自分の市場価値をちょっぴり上げるものになるというわけですね。なので、仮に儲からなくても最悪は・・・

 

いいやビッグな不労所得者になってやるぜ(^o^)

 

ということで、クズ同士頑張っていきましょう。そしてぜひITの世界に飛び込んできてくださいね。

 

Webアプリ・サービスの開発を続けるコツ

f:id:zyohnbike:20170713234101p:plain

こんばんは。かのしたです。

 

個人Webアプリ開発を続けるコツを書いていきます。なお、今のところ副業収入0円ですし、我ながら大したものを作っていないので、うわざっこwwwwって思われて当然だと思いますし、しょぼいのもわかってて書きます。

 

僕は今までWebアプリを、今公開している【俺のITブックマーク】、こちらも鋭意制作中ですが、それ以外に1つ完成、1つ制作中です。

 

1つ完成ということですが、もう公開はしていません。というのも、スクレイピングによるエ〇サイトだからです(笑)もういいかな、と。クオリティも低いし、アクセス数もあまりなかったので・・・。制作中の物は、社内SNS的なもので、いわゆる Who know what を実現するためのアプリです。社内のどこにどんなスキルを持った人がいるのか明確化するものです。

 

さて、そんな感じで、プログラミングを初めて1年と少しですが、結構色々作れています。おかげで、仕事ではやらないプログラミングも、最低限は出来るようになった気がします。

 

なぜ僕はWebアプリを作るのか

 周りを見ていると、僕よりもかなり優秀な方でも自作で作品を作るということをする人は少ないです。仕事では所謂上流工程を担当する方が多い会社なので、そもそも家でプログラミングをする人自体少ないのですが・・・。

 

じゃあなぜ僕はWebアプリを作るのか?それは日課だからです。もともとは結構打算的で、今後Web技術はITエンジニアとして必須だし、手を動かせる奴はなんだかんだ強いと思って始めました。

 

今はIT開発の現場でもどんどん効率が上がっている時代ですよね。ERPパッケージのカスタマイズ性(多様性というよりも簡易性)が高まったり、プログラムの自動生成だったり、今後はAIもそうですね。

 

そうなると、プログラミング技術がいらなくなるのでは?と考える方もいますが、僕は逆だと思っています。PGとしての仕事が短くなるのなら、たとえばSEであれば、要件定義からPGまで全部できてしまう人が出てくるのでは?と思うわけです。

 

なので、サクッと作れる人はやはり強いと思います。また、いわゆるWEBサービス開発のような現場でも、手を動かしてプロトタイプをサクッと作れる人が重宝されますよね。単純に考えて、手を動かせる奴は強い。と思います。

 

とはいえ、今となっては日課になっています。毎日帰ってきて1, 2時間コーディングするのが当たり前です。最初は全く知識が無いので辛いですが、慣れてくれば結構すらすらとコーディングできるようになって、楽しくなってきます。

 

モチベーションの保ち方

 とにかく自分にとってのメリットを洗い出すことです。そして俺すげえwwwwと思うこと。

 ・ITスキルアップでもっと上にいけるぞ、俺すげえ

 ・こんなもの作ったら有名になれるかも、俺すげえ

 ・もしかしたら副業収入得られるかも、俺すげえ

とかこんな感じです。周りに嫌がられなければ、Twitterとかで、おれすっげwwwwwって感じのツイートでもして自己顕示するのもいいかと思います。

 

基本的にこのスタンスで行くのですが、時折嫌になるときがきます。人間だもの。プログラミングって創作活動ですから、やっぱダメなときはダメです。そういう時は、IT業界であれば、基礎を勉強することをお勧めします。

 

基礎というのはネットワーク、データベース、OSなどなど・・・。学問寄りの知識ともいえます。こういったものに関する書籍を適当に買ってきて、とにかく読む。そこまで集中しなくてもいいです。へえ~って感じで軽く読みます。

 

そうやってパラパラ読んでると、「これ、あの時の!」って感じでプログラミングをしたときに呪文的に扱っていた部分が理解できたりします。処理の内容を呪文ではなく、具体的なイメージに描きやすくなるんですね。

 

また、前提知識が増えることで、コーディング中のググり時間が減って、ストレスを抑えられますし、思いつくアイデアの範囲も広がります。人間、使える知識で何とかしようとしてしまう生き物なので、使える知識が増えないと、なかなか新しいチャレンジができません。

 

知識が増えるとアイデアの範囲が広がり、ワクワクが増えるわけです。そうなるとまた創作意欲が高まります!知識も増えて一石二鳥!永久機関ですね!

 

いい趣味だと思います

 僕はITについてはもうほぼ趣味であり日課になっています。Herokuなんかを使えばお金も電気代くらいで元手がかからないですから経済的に優しい。

 

まあ個人的には、結構Herokuは限界があると思っていて、細かいことやりだすと、VPSサーバーとか借りた方が色々都合がいいです。要はLinuxコマンド弄ったりとか、Apacheチューニングしたりとか必要になるので。

 

それに、「本格的にサーバーを運用した」という箔と技術が付きますから、転職に有利だそうですね。ひとまず今作っている 俺のITブックマーク がひと段落着いたら、VPSサーバーを借りてまた違うアプリを開発しようと思います。今度は会員制の物を作ります。

 

というわけで、もしかしたら一発当てられるかも・・・、技術が付いてもっと上の会社へ・・・、努力が認められて転職しやすく・・・

 

まずはそんなそんな野望を持って、ぜひIT業界へチャレンジしてみてください。

 

そんな中「俺のITブックマーク」始動!

 基礎を勉強しよう!と思っても、何していいかわからないですよね。僕も最初はよくわかりませんでした。なので、ITの勉強始めたばかりで右も左もわからない人が、ひとまず覚えておけば後々役立つような情報をまとめるサイトあったらいいなあと思ったわけです。そう、それが

 

俺のITブックマーク!!!!!!!

 

です。はい、宣伝でした。まあまだすんごいしょぼいですが、機能強化していくんで、ぜひ使ってみてください。

 

かのした