Webishブログ

未経験からweb開発を目標に必死に勉強している人のブログ

Bootstrap4になってる!

僕がwebの勉強を始めた時に、初めて触ったフレームワークがBootstrapでした。

 

当時によく使われているのはBootstrap3でした。

 

勉強を始めた当時の感想としては

 

「こんな便利なものがこの世にあったのか!いやない(実はあった)」

 

といった感じでした。

 

Bootstrapを僕に教えてくれた方がいたのですが

 

「Bootstrap一つとっても、完璧にするだけで全然違う。Bootstrapを完璧に使えるようになるだけでエンジニアとしてやっていける」

 

といつも言っていました。

 

その、Bootstrapが4になったと言うことでめちゃくちゃ嬉しいと同時に、また新しい事を学ぶ事になるのか〜という大変さを感じます。

 

さて、今回新しいBootstrapになった事ですが

 

どう言うところが追加されたのか というところですよね。

 

全部を網羅できませんが、注目したい機能を見てみようと思います。

 

 

 

 

カラム数

 

Bootstrap3ではカラム数が4つでした。(xs, sm, md, lg)

 

しかし、Bootstrap4にはそこに、lgの次のxlが追加されたそうです。

 

たしかに、僕もMacのデスクトップを使っている時、ノートパソコンレベルのページで開いた場合、lgでもずれてしまう事があったので、それが解消できるのではないかな〜と思います。

 

これは嬉しい人も多いと思います。

 

Cardsクラス

 

このクラスの登場によって、panelやthumbnailsクラスが無くなったみたいです。

 

というより、同じような事がCardsクラスでできるようになったという感じでしょうか

 

いずれにしても、スッキリとしたデザインのbootstrapらしいものが出来上がります。

 

ちなみに、cardsの中にはヘッダーとフッターをつける事ができるそうです。

 

使い方としては

 

<div class="cards"></div>

 

で囲って

 

<div class="card-header"></div>

 

のようにする事で、cardボックスができるみたいです。

 

<div class="cards">

    <div class="card-header">

    ヘッダー

    </div>

    <div class="card-block">

    ボディ内の見出し

    </div>

    <div class="card-text">

    テキストエリア

    </div>

    <div class="card-footer">

    フッター

    </div>

</div>

 

 

このような感じになるのでしょうか。

 

cardの登場によって、楽になった所が多くなったような気がします!

 

 

タイポグラフィ

 

px指定からremに変更になりました。

 

これまでのbootstrapと同じように使えばそこまで気にする事もないと思うのですが

 

h1のクラスを入れた際の大きさが32pxから2.5remという感じになったようです。

 

大きさ的には変わらないのですが、これでHTML内で大きさの変更ができるようになったようです。

 

<p class="h1"></p>

 

のように使うようです。

 

 

これらが主にBootstrap4での変更点で、まだまだいくつか変更されていますが、個人的に注目すべきところだけをピックアップしてみました! 

 

Bootstrapは個人的にも好きなので、もっと勉強していきたいですね!

Google翻訳の活用。

エンジニアの方の中には、英語に苦手意識が強いと言う人も多いです。

 

個人的には、エンジニアこそ英語できると思っていましたが、意外とそうでもないのが日本のエンジニア事情らしいです。

 

そこで、エンジニアに限らずですが、多くの人はグーグル翻訳を使って読む事を試みると思います。

 

もちろん、僕も例外でなく、よく使わせてもらっているのですが

 

グーグル翻訳は、まさに英語ができる人のツールなのだと言う事を最近つくづく思います。

 

その理由には3つあります。

 

 

 

 

 

初心者は間違いに気付かない

 

これは、主に翻訳がメインで使用されてる方に多い事なのですが

 

グーグル翻訳も機械なので、全てをしっかり理解し、分かるように出力してくれる訳ではありません。

 

構文をどこで区切り、どことどこを並列しているのか、この関係詞はどこを修飾しているのとかをしっかり表示してくれる訳ではないので、そこら辺を読んでいて、「あっ、ここは違うな」というのが分からない人はよく分からない文章を読む事になると思います。

 

逆も然りで、「日本語」→「英語」の場合も、英語の表記を直せないので、とんでもない英訳を作る事もよくあります。

 

少しでも英語が分かれば、「ここの意味はこうしたかったのに、別の意味で捉えられてる・・・」ってなるのですが、できない方はそもそも出力された英文を見る事もしないと思うので

 

グーグル翻訳を活かしきれていないと言う事です。

 

 

勉強道具として利用する

 

翻訳機能を使う人は、基本的に外国語をできない人が、それを利用して理解するためのものってイメージになりやすいですが

 

勉強道具としてもとても役にたつものなのです。

 

「こう言いたいけど、どう言う風に表現するんだろう・・・?」と思う事は学習者には多いと思います。

 

これも全て、グーグル翻訳先生が「この表現は結構日常的に使われるし、この単語がいいよ!」ってのを教えてくれるので、とても勉強になります。

 

日本語は結構同じ事を表現する言葉が多いので、その一つ一つに対して、英単語を覚えるのはとても大変です。

 

もちろん、日本語だけでなく、英語にしても一つのものを表現するのに2個、3個と単語がある事も多いです。

 

これらを使い分ける練習としても、グーグル翻訳はとても役に立ちます!

 

 

文法的なミスがない

 

機械なので、ここは確実だと思います。

 

ただ、これと構文を取る能力は別なので、文法にミスはないけど、構文的に間違いがあるが故に、ここの文法はこうでないと行けないのに・・・と言うところはあります。

 

しかし、単純な文法チェックには使えます。

 

これはなかなか学習者の視点から翻訳を見ない人には考えが出ないものと思いますが、グーグル翻訳の使い方は様々にあります。

 

 

某海外の有名ラジオ番組で、外国語を何個も習得したと言う人が紹介されていましたが

 

彼の勉強法を聞いて見ると、グーグル翻訳を使う事がとにかく多かったと言います。

 

発音も確認できるので、「これ、どう発音するんだ?」って時でも困る事がないのが利点です。

 

 

最後に

 

グーグル翻訳を使った面白い遊びがあり

 

翻訳してもらった文章を、再度最初の言語に翻訳し直してもらい、

 

原文と、翻訳したのを再度翻訳して戻したソース言語(元の言語)で書かれた文章を比較するという遊びがあるのですが

 

これがなかなか面白いww

 

有名なので言うと

 

「お盆」を翻訳にかけると「festival of the dead」になるとか・・・(今は修正されてるみたいですがw)

 

何事も1万時間でプロに。

世の中の多くのことは、1万時間練習したりするとその世界での上位20%には入れると言われています。

 

多くのことと言ったのは、スポーツなど身体的なものも関わって来るためなのですが

 

大抵のことは1万時間することで20%に入れるそうです。

 

ちなみに、この1万時間というのは、平日約四時間を10年間続けた数字だそうです。

 

週末なども含まれるので、実際はもっと短いかもしれませんが

 

10年間、ひたすら続けるというのは普通の神経ではなかなか達成できないものですよね。

 

それこそ目標を持つ必要があると思います。

 

ただ、僕はこの考えを少し変えたいと思います。

 

1万時間で上位20%なら

 

5000時間で上位40%くらいになれればいいのではないかと思う訳です。

 

そして、残りの5000時間を別の事で、さらに上位40%になる事で

 

両方ができる人の中ではもしかしたら上位10%になるのではないかと思った訳です。

 

そうするとその人の価値というのはかなり上がり、一つの事で20%に入るより、二つこなす事で10%に加わる方が価値としては大きいのではないかと思うわけです。

 

そして、それらを5000時間行った後、また5000時間ずつそれぞれをスタートさせれば、二つの事を上位20%に引き上げる事ができる事に加え、相乗効果でもしかしたら、そんなに時間がかからないかもしれない。

 

これはかなり大きい事だと思います。

 

この考えは、某有名事業家の方が書いた本にも書いてあったのですが

 

僕もこの考えには賛成です。

 

一つのことを極めるのに費やす時間を、少し分散して極めなくてもいいから2つ、3つとできるようにした方が効率がいいと思います。

 

ましてやこれからの時代、一つのスキルで行きていくことはなかなか難しくなるかと思います。

 

できれば、汎用的なスキルを2つ、3つと身につけて生きて行くことができればと考えています。

 

できる人というのは、ある程度それができるようになったら、すぐに切り上げて、次のことに取り掛かるそうです。

 

一つのことに拘りすぎていては、なかなか進むものも進まなくなりますよね。

 

ただ、例外的にずば抜けて才能があるようなことには、1つのことに集中した方がいいというのは、その方の本にも書いてありましたが、これにも賛成です。

 

将棋界のや、テニス界ののような人は、1つのことにとにかく突き進むのもいいと思います!

将来機械に乗っ取られない職業

最近街を歩いていても、目にするポイントやら、注文を取る際のiPod?とかアプリが目立つようになりました。

 

僕は結構好きでサイゼリアに行く事があるのですが

 

そこで注文を取っている人の手にあるものがハンディからiPodになっている事に驚きました。

 

最近は居酒屋でも、iPadを設置してそれから注文するというパターンが多くなってきましたね。

 

これは、人件費とかも削減できる事なので、とてもいい傾向だと思う反面

 

これを開発する側がメインで稼げる時代になってきた。言い換えれば、作る側だけが稼げる時代になってきたのだなぁという風に感じました。

 

将来無くなる職業ランキングなるものが巷で流行っているそうですが

 

確かに、こういうのを見てもそれは感じますね・・・。

 

アプリの登場は人間にとって非常に脅威になりうると思います。

 

さて、一つ究極的に考えてみたのですが

 

全てのものを機械化、アプリ化した世界とはどういうものだろう?と考えてみました。

 

まず、全ての事が携帯で行えるようになるのではないでしょうか。

 

今でも若干そうなりつつありますが、財布がなくなりつつあります。

 

カード払いで、携帯で払うと言う事が少しずつ可能になってるので、将来は全ての決済が携帯で済ませられるのではないでしょうか。またポイントカードなども全てデータ化する事で携帯で済ませられますしね。

 

レシートなども、全てアプリで管理できるようにすればきっと財布がいらなくなると思います。

 

実際、世界には財布を持たずに外出し、商品を手に改札のようなところを通るだけでその人が持っている商品を感知して、自動で引き落としされる仕組みができてきているそうです。(つまり、レジというものが無くなっている・・・)

 

車も、自動運転などができ、タクシーなども運転する人がもしかしたらいなくなる世界になるかもしれません。

 

夜中に乗っても深夜料金かかりませんねw

 

料理に関しても、もしかしたら食材をセットするだけで全てを切って、焼いて、煮て・・・などしてくれるものが登場するかもしれません。

 

しかし、唯一僕自身がこれが機械に取って代わるものがないだろうと思えるものがあります。

 

それは「通訳」です。

 

僕自身も、通訳を勉強してきて、その世界しか知らないので他の世界に関して言える事は少ないかもしれませんが、通訳に関してはなかなか機械が取って代わる事ができないと思います。

 

というのも、言語はその時その時の状況で同じ言葉でも意味が変わってきますし、その声色でも意味が変わってきます。

 

「昨日はどうだった?」

 

「昨日はどうだった?」

 

この二つの文章は同じですが、前者を言う時はニヤニヤしながら

 

後者をいう時は、心配そうな顔をして言ったとします。

 

前者はもしかしたら、裏で打ち合わせていた作戦か何かを実行した結果や、デートの結果を聞いてるというような感じがします。

 

後者に関しては、面接の結果であったり、知人の体調であったりといった事を聞いてるのだなと想像できます。

 

もちろん、これはほんの一部の例なのですが、この微小な違いがゴマンと存在しているのが言語の世界で、とりわけ日本語はとてつもなく難しい言語なので通訳が完全に機械に取って代わる世界というのは、そうそう来ないのではないかというのが僕の考えです。

 

僕自身も通訳をしていて、「これを直訳したら楽だけど、それだと本当に伝えたい事は伝わらないから、こう訳してみよう」というのを考える事がよくあります。

 

機械がどこまでこちらの意図を汲み取り、そして文章の並びを間違えずにキャッチするのかというのは今後の通訳技術の進歩と一緒に見て行きたいですね。

最初の言語として選ぶ

プログラミング言語で一番最初に学ぶといいよ!という言語の論争は今なお絶えず進んでおられるようです。(他人事w)

 

では、僕の話をしたいと思います。 

 

 

 

Pythonを選んだ理由

 

僕はあまりどの言語がーーとかに興味がなかったのですw 2、3個紹介してるサイトを見て決めましたw

 

そのサイト達が言っていたことは、Pythonをやるのが一番!と言う事でした。

 

ほぉほぉ? となり、調べて行くと以下のような事が分かりました。

 

 

 

書きやすい

 

一番の理由はこれかもしれません。

 

Pythonの思想として、正解の道は一つで十分、いくつも正解があるのでは混乱を起こすだけというような気持ちが込められているようで、どのように書けばいいのか一目瞭然という事らしいです。

 

そうはいっても、Pythonで書くにしても書き方はいくつもありますし、いろんな言語やってる人からしたら、こう言う書き方の方が合ってるんだよ!とか言う人もいるでしょう。。

 

しかし、この理由は伊達ではなく、僕自身も勉強を進めて行く上で体感した事なので、間違いなく書きやすい言語であります。

 

 

読みやすい

 

似たような理由ですが、書きやすいと言う事は、逆にいえば多くの人がその書き方で書くため、必然的に似たようなコードが出来上がり、非常に読みやすいのです。

 

僕も勉強中、いろんな人のコードを見たりするのですが、このおかげで大分勉強が捗っています。

 

勉強しやすい言語って事に繋がりますので、初学者にも優しいと言う事でしょう。

 

 

できる事が多い

 

スクリプト言語と呼ばれるPythonは、webの世界でも大活躍します。

 

フレームワークとして、いくつか有名なものがあり、Django、Flask、Pyramidなどがあります。

 

これらを使えば、web開発も容易にできます。

 

そして、もちろんwebだけでなく、最近では機械学習などにも使われます。

 

AIや、ディープラーニングという言葉はよく聞く人も多いと思います。

 

僕はあまり機械学習の方は知らないのですが、Pythonが使われる事が多いと聞きます。

 

というのも、Pythonは数学的な処理にとても優れているらしいのです。

 

数学やってる人とかだとPythonをやってる人は多いのではないでしょうか

 

 

 

以上が理由になります。

 

僕自身、Pythonを好きになったのは、これらの理由もありますが、一番大きいのは

 

「なんか、名前がカッコよかったから」

 

でも、これも大事な理由だと思ってますw

 

感覚的なところで嫌悪感を抱いたら、先に進めませんしね。

寿司職人が米炊きで3年と言われるなら、Web屋はキーボード入力練習だけで3年?

最近よく目にするものがあります。

 

入社した会社で、データ入力の作業だけをやらされ、どれだけ入力作業をすれば開発に携われるのかと聞くと、「下積みで3年は必要」と言われたという。

 

正気の沙汰じゃないとは思います。

 

よくお寿司の板前さんになるための修行で米炊きだけで3年だか、5年だか、もしくはそれ以上という年月をやらされ、それまで包丁を握らせてもらえないという話を聞いたことがあります。

 

時代は変わったという事に気付いていない人が多いような気がします。

 

以前、某テレビ番組で、お寿司の板前さんになるスクールに通って、1年で自分の店を開いて、しかも賞をとったという板前さんがいました。

 

そこに立ち会った他の板前さんも彼の作るお寿司は美味しいと言ってはいたものの、その年月の短さから認められないというような感じでした。

 

なぜ、そこまで年月に拘るのか分からないですが、恐らく自分がそれだけの時間をかけたのだから、後輩達にも同じ時間をかけろという事なのかもしれません。

 

そんな事、今の時代通用しない考え方です。

 

話を戻しまして

 

データ入力する事が下積みとは一体どういうものなのでしょうか・・・?

 

世の中には、データ入力を仕事内容とするアルバイトやパートの求人もある時代に、入社した会社で3年間のデータ入力をする事で、何が身につくというのでしょうか?

 

キーボードを打つ練習が必要と思われたのでしょうか?

 

しかし、今回見かけたこの発言の方は、IT業界に勤務しておられ、プログラムを書く仕事としてやっていこうという方でした。

 

さて、ここで一つ疑問を投げかけたいのですが

 

「WEBエンジニアになる下積み」とは何をする事でしょうか?

 

僕自身が考えたのでは

 

1、プログラミングの文法知識

 

2、HTML/CSSの基本知識

 

3、フレームワークの基本知識

 

ぶっちゃけこれくらいなんじゃないかと思いました。

 

それ以外のことは、業務を通して使えるようになるものなので、あえて下積みとしてやらなくてもいいと思いました。

 

僕自身の体験から言うと、詰めればこの知識であれば未経験でも長くて4ヶ月、もっと早く身につく人もいると思います。

 

経験者であれば1ヶ月もあれば、恐らく基本的なことは理解できるようになると思います。

 

そう、たった4ヶ月あれば身につく基本知識を身につけず、3年が経ったとなれば、その時間がとても無駄なように思えてなりません。

 

この3年で4ヶ月で学ぶ基本知識のみならず、応用、果ては開発まで学んで、もしかしたらサービスをロンチする人も出てくるのではないでしょうか

 

そう考えると、そこで3年を費やし、その会社でしか得られない評価(能力としての評価ではない)を得ても、何か嬉しいことがあるのでしょうか。

 

そう言う、下積みが他の会社や世間での評価に繋がる時代は終わったと思います。

 

今一度、僕自身も自分の立ち位置を考え、今後の立ち振る舞いを考えて行きたいと思います。

 

IT業界の人材不足とは・・・?

僕の周り、そして僕自身、エンジニアになりたいという人が結構いて、そういうコミュニティが大きくなりつつあるのは知っているが

 

その傍らでよく聞く、IT業界は人が不足しているという情報。

 

 

はてさて、どちらが本当なのか?

 

 

実際僕の回りを考えても、エンジニアの数は増えているというような錯覚に陥っている。

 

僕の回りと言っても、ネットワーク上の関わりだったりするのだが、それでもエンジニアを目指す人は一定数いて、さらに小学生の夢が「ゲームプログラマー」が一位を取るという

 

ちょっと前だったら「Youtuber!」とか聞こえてきそうな話だったが、今ではさらに小学生達は盲目的にゲームプログラマーになりたい!という言うようだ。

 

ゲームとは言わずとも、そういったエンジニアを目指したいと言う人はこの時代増えているし、増えて行くだろうと想像できるのだが

 

いつまで経っても、ITの人材が不足していると言うのはどう言う事かを考えてみた。

 

 

そう、まず考えてもらいたいのは

 

エンジニアになりたい という人は、「エンジニアではない」からなりたいという気持ちを持つのである。

 

僕も例外ではない。勉強中ではあるが、エンジニアではまだない。

 

つまり、その時点で実際のエンジニア数が暗雲の中に隠されてしまうのである。

 

そして、さらによく見てみると

 

実際、エンジニアとして働く人の中には、どのレベルの層がいるだろうか。

 

ジュニア、インターンレベルのエンジニアは、果たしてITの中で生きて行くほどの能力を持っているのかという問題。

 

自分自身勉強していて思うのだが、ジュニア、インターンレベルとは、おそらく僕と同じ程度の能力を持つのだろう。(エンジニアとして活動して1年未満程度の能力)

 

すると、その人たちは、IT業界において、さほど役に立たないのである。

 

僕自身が役に立っていないから、そう断言できる。

 

そう考えると、ITに関わる人達の中で実際に人々の生活に影響を及ぼすサービスを生み出す事ができるエンジニアというのはごく一部と言う事になる。

 

ここから考えられるに

 

このIT業界の人材不足というのは、決してエンジニアになりたい人達の数が少ないと言う事ではなく、IT業界で猛威を奮える人材が不足していると言う事なのである。

 

 

年々生まれる新しい技術や成長に、エンジニアになりたての人達がついていける訳がない。なので、結局エンジニアを目指すと言っても、役に立てる人間にならなければ意味がないのである。

 

僕も早いところエンジニアになりたいと思っているが、エンジニアになれればそれで終わりかといえば、そんな事はまずない。

 

むしろ、そこからが長い道のりなのである。

 

そして終わりがない道のりなのである。

 

僕が果たして、IT業界で役に立てる人間になれるのはいつになるのであろうか・・・。

 

誰も楽しみにしていない僕の未来を目指してひたすら頑張るのであった。