プログラミングに速いタイピングは必要?
カタカタ..カタ......カータカタカタカタカタカタ!!
見えへん!なんちゅう指の速さや!!...でも音うるさ!
どうも筆者のつくしです。
なんとなくですけどプログラミング得意な人ってタッチタイピング当たり前にできるし、タイピング速度もめちゃくちゃ早いイメージありますよね。
実際にアニメやドラマなどでもハッカーのキャラがすごい速度でタイピングしているシーンをよく見かけます。
実際にあんな風にカタカタとキーボードをたたいているのでしょうか?
今日はそんな疑問につくしが言及していきたいと思います!
プログラミングしてるとタイピングは早くなる?
プログラミングを続けていると確かにタイピングは速くなります。ですが、速くなるのは今自分が書いている言語のみです(笑)
C言語を頑張っているならC言語、HTMLならHTMLのタイピングしか速くなりません。
なので、ローマ字タイピングや英語タイピングが速くなりたい方はプログラミングとは別途タイピングの練習をすることをお勧めします。
プログラミングに必要なタイピング速度
プログラミングを続けていれば今やっている言語のタイピング速度は速くなると述べました。ですが、プログラミングには実際にどれほどのタイピング速度が必要なのでしょうか。
タイピングは速ければ速い方が良い?
まあ、タイピング速度は速ければ速い方が良いです。
光の速さでタイピングができれば
これ、仕様変更になったから明日までに直せる?
みたいな呪いをかけられたとしても、問題なく定時退社を実現できるでしょう。
ですが、現実問題ある程度のタイピング速度があれば業務をこなすうえでは問題ありません。これについて次章で解説します。
遅くても問題ないぞ!
実際、Youtubeに上がっているような爆速タイピングができなくても、PC操作に慣れていない人から見て「まあまあ速いね」と思ってもらえるぐらいで問題なく業務をこなせると思います。
プログラミングはもちろんコードを書くことも大事ですが、プログラミング言語の文法やエラーの解決法などを調べることがほとんどです。数行のプログラムに数十分(下手すると数時間)を費やすことも割とあるので、業務をする上ではタイピング速度はあまり気にしなくてもよいと思います。
ですが、つくしの経験的にタッチタイピングができないと若干、業務に支障が出てくるので、キーボードは見ないで打てるように練習したほうがいいかもしれません(笑)
おすすめのタイピングゲーム・アプリ
とはいってもタイピング速度が気になってしまうという方はもうタイピングを爆速にしちゃいましょう!
おすすめのタイピングアプリを紹介します。
寿司打
超有名タイピングゲームなので知っている方も多いと思います。
このように、出てくる文字をお寿司の皿が通り過ぎるまでタイピングするとそのお皿分の値段が得点として加算されるゲームです。皿が流れるまでにタイプしないといけないので、ローマ字入力のスピードを上げたい方にお勧めです。
今日の朝つくしも高級1万円コースに挑戦しました。
まあ、可もなく不可もなくって感じでしたね(:^_^)
でも一か月ぐらい練習すると1.5倍ぐらい速くなったので投資効果大です。
typing.io
typing.ioはプログラマー用のタイピング練習サイトです。
こんな感じで、実際のコードをタイピングすることができます。寿司打で練習すればローマ字タイピングは速くなりますが、プログラミングは英字なので、プログラミングでのタイピング速度を上げる効果は低いです。
最初がかなり難しく感じますが、プログラミングを速く書けるようになるにはここでの練習が最適なので、ぜひトライしてみてください。
つくしのスコアはこれぐらい
これも何とも言えないスコアですが、wpmが40ぐらいあればyoutubeのプログラミング解説動画にも一時停止なしで何とかついていける感じがします。
最後に
いかがでしたでしょうか。タイピング速度が遅くても締め切りさえ守ってプログラミングができれば何も問題はありませんし、タイピング速度よりもきちんと整理されたコードを書くことの方が大切です。
しかし、周りの方々はプログラマーはタイピング速いものだと思っているので、家族や友達の前で、あまりにゆっくりタイピングしていると若干がっかりされるかもしれません。ソースはつくしです。
もし、タイピングをひろーしたときに変な空気になるのが嫌なら、自分の面目を保つためにタイピングの練習をしてもいいかもしれません。ちなみにつくしは毎日朝起きたら寿司打とtyping.ioを開いています。
画像出典
最初の言語選択があなたのプログラミング人生を決めます
プログラミングやろうと思って調べたけどどの言語からやればええか分からん
どうも筆者のつくしです
プログラミングをこれから始めようと思っている方の悩みの種、どの言語から始めたらいいのか問題についてつくしなりの見解を述べていきたいと思います。
筆者の経験
一番最初、つくしはHTML/CSSとC言語をほぼ同時に始めました。HTML/CSSは大学に入った瞬間の謎のやる気
何かかっこよくて新しいことがしたい!
にあやかって本を買いに行ったのがきっかけです。C言語はたまたま入ったモノづくり系のサークルで覚えないと戦力になれなそうだったので勉強することにしました。それぞれ勉強した感想と成果を述べていきたいと思います。
HTML/CSS
特徴
HTML/CSSはよくひとまとめにして扱われますが、HTMLは簡単に言うと皆さんがみているWebページの文字や画像を表示するための言語です。また、CSSはWebページのレイアウトを整えたり、色などで文字を装飾したりするための言語です。
この2つは正確にはプログラミング言語ではなくHTMLはマークアップ言語、CSSはスタイルシートと呼ばれています。
学習した感想
HTML/CSSはWeb個人でWebアプリケーションを作るうえでは避けては通れない言語なので、最初に触っておいて損はないと思います。また、最初のほうがそこまで難しくないので、無理なく続けられました。
C言語はかなり難しかったのですが、C言語で失った自信をHTML/CSSで取り戻すみたいなことをよくやってました(笑)
C言語
特徴
C言語はできたのが1972年とかなり古めの言語で今使われているいろいろな言語に影響を与えたといわれているプログラミング言語の元祖のような位置づけの言語です。
かなりの実行速度と高い汎用性を誇っており、結構何でもできます。
OSなどのソフトウェアも作成できますし、機械やロボットなどの組込みシステムなどにも使われたりします。難易度はベリーハード (:-_-)
学習した感想
いやー、難しかったですね(笑)。
多分周りに助けてくれる先輩がいなければとっくに挫折していたと思います。C言語は特にメモリの操作などがほかの言語よりも自由にできる反面、操作方法も難しく仕組みも理解しがたいので、ある程度習得に根気が必要です。
まあ、一番最初にやる言語としては少し微妙かなといったところです。
おすすめの言語
HTML/CSS
おすすめの理由
HTML/CSSはめんどくさい環境構築だとかPCの設定だとかが不要です。メモ帳とChromeやEdgeなどのブラウザがあれば実行できるので、割と簡単に始めることができました。それに言語自体も「とりあえず使えるようになる」ぐらいまではかなりシンプルなので、挫折せず続けられました。
あと、自分が書いたものが画面に表示されるのがなんかうれしい(笑)
注意
HTML/CSSはほかのプログラミング言語とは少し毛色が違います。HTML/CSSもプログラミングだとつくしは思っていますが、それだけしかできないとなるとその先厳しくなるかもしれません。ですが、HTML/CSSに時間をかけすぎて力尽きる方も一定数いると思うので、ちょっとできるようになってきたなと思ったら、早めにJavaScriptなどに移行することをお勧めします。
PHP
特徴
PHPはWebアプリケーションでよく使われており、データベースというデータがたくさん入っている箱とのデータのやり取りなどが得意な言語です。サーバで動作するので、サーバサイド言語ともよく言われます。
おすすめの理由
PHPは使っている人が多いので情報が豊富ですし、フレームワークもCakePHPやLaravelなどがあり、充実しています。フレームワークとはアプリケーション開発をするための部品がいろいろ入った道具箱のようなものです。
フレームワークを使わずに開発をするということは友達とやりとりするのにチャットアプリを使わず、いちいち手紙を書いてポストへ入れに行くのと同じくらい意味が分かりません!
複雑な処理になると自分で頑張ってコードをかく必要がありますが、ほとんどの場合はフレームワークの機能や他のWebページのコードをコピペするだけでWebアプリケーションを制作することができるので、挫折せず続けられると思います。
C#
特徴
C#はMicrosoftが開発した.NETFrameworkで動作すること前提としたプログラミング言語です。Windowsと相性がよくWindowsのデスクトップアプリやWebアプリケーションなど幅広い用途があります。また、unityでゲームなども作ることもできます。
おすすめの理由
現在はオブジェクト指向という考え方でプログラミングを組むことが多いのですが、C#はそのオブジェクト指向を覚えることに最適な言語です。また、VisualStudioという統合開発環境も提供されており、とてもコードが書きやすいです。
フレームワークにも特徴があります。PHPなどのフレームワークは規則がきっちりしており、それを勉強してしっかり守らなければなりません。規則さえ守っていればフレームワークが処理してくれるのでこれはこれで楽なんですが、.NETFrameworkは結構好きにアプリやコードを使いやすいようにアレンジできます。やりすぎると自分しか読めない暗号を書くことになるのでご注意ください(笑)
最後に
いくつかおすすめの言語を上げてきましたが、これはあくまで自分一人で独学するときに参考になればいいかなぁってぐらいのものです。独学は挫折する可能性が極めて高いです。プログラミングを覚える一番良い方法はプログラミングを使っている現場に飛び込むことだと思っています。それが難しければプログラミングを教えてくれる友達や師匠を頑張って見つけてください。
また、ここまで言ってきてなんですが、プログラミング言語一つの言語を覚えれば、ほかの言語との違いは方言の違いのようなものだと感じられるはずです。なので、あまり悩まず最初にやると決めた言語をしっかりやり切れることを願っています。
プログラミングを始めるときに本は必要ない!?
よっしゃ! 分厚い入門書買ったし、ごりごりプログラミングやるで!!
どうも筆者のつくしです。
プログラミングの勉強する際、本屋さんに並んでいる分厚い入門書や参考書を買う方は多くいると思います。つくしも初めてプログラミングをするときにHTML/CSSの本をいそいそ買いに行きました。
お金がなかったので、古本屋で少しでも安い本を探したのを覚えています(笑)
しかし、HTML/CSSをやりながら、C言語を覚えたのですが、そのときは本は買わず作りたいものを作りながら学びました。
プログラミングをしているとどうしても新しい言語を覚えざるを得ず、本で勉強したりググって何とかしたりを繰り返してきましたが...結局どっちがええねん!
と思う方も多いと思うので、本を買うべきか否か、参考書あり無しの両方の勉強法の経験したつくしが考察していきます。
本を買う勉強法
メリット
- 知識が偏りなく身につく
- 検索して調べる労力が少ない
- 目標設定が簡単
知識が偏りなく身につく
プログラミングに関する参考書では、そのプログラミング言語に関する基礎知識がまんべんなく記述されており、最初から読み進めるだけで体系的に知識を習得することが可能です。またほとんどの参考書に演習問題がついているため、手を動かしながら学んでいくことも可能です。
検索して調べる労力が少ない
本を使った勉強ではわからない部分は本をもう一度本を読み返せばよいので、わざわざググる必要はありません。また、演習問題もわからなければ、すぐに回答を見ることができるので素早く学習を進めることができます。
目標設定が簡単
学習には何を目指すべきかという目標が必要ですが、何もないところから学習を始めるとき、目指すべきものを決めることはとても大変です。一方、本があれば、それを読み切ることを目標にすればよいので簡単に目標が定まります。
デメリット
- 検索能力が身につきにくい
- 挫折しやすい
検索能力が身につきにくい
本を使っていると、忘れてしまった内容も目次を見てそのページを開くとすぐに思い出せますし、わからない演習問題にも回答がついています。これらはとても楽なのですが、勉強を終えて実際にモノづくりをするとき、本以外からの情報収取能力がないと詰みます(笑)
プログラミングをしていると必ず出会ったことのないバグに出会い続けるので、Webページを検索してバグの原因を特定する力も必要です。
挫折しやすい
本を買った最初のうちはやる気に満ち溢れています。
こう思う人は多いのではないでしょうか。ですが、3日後にはこうなってます。
今日やらんでも読み終る日が1日伸びるだけやしまあ、ええか
本は目標設定は簡単なのですが、その目標に対する熱意が少なくなりがちなので、結局挫折してしまうことが多くあります。つくしも買った本のうち最後まで読み切ったのは10冊に1冊ぐらいです。
本を買わずWebサイトを見る勉強法
メリット
- お金がかからない
- 検索能力が身につく
- 無駄な勉強を省ける
お金がかからない
なんといってもこれが本を買わない勉強法の最大の利点であることは言うまでもありません。今の世の中には無料で質の良い学習教材やWebサイトがかなり多くあります。本を買うのは、これらを一通り見てからでも遅くないかもしれません。プログラミングの本は割と値段が張るものが多いので、かなり助かっています。作成者の皆様、ありがとうございます。
検索能力が身につく
情報収集の方法がWeb検索しかないので、嫌でも検索能力が身につきます。現在は様々なエンジニアの方が情報発信をしてくださっているので、割と簡単に自分の探したい情報ヒットしますが、たまに英語のサイトからでないと情報が引っ張ってこれないこともあります。つくしは英語は得意ではないですが、Google翻訳が優秀なので何とか助かっています(笑)
無駄な勉強を省ける
プログラミングの参考書では随所でプログラミング言語の文法を詳しく説明されます。それ自体はとてもありがたいのですが、
最初からそんなん言われてもわからへんわ!
となる人も多いと思います。理解しておいたほうが良い部分もありますが、コードを動かすという点のみにおいては必要ない説明もところどころにあります。ですが、Webページは文法の紹介、サンプルコード、必要最低限の説明という構成になっているので、読みやすく、短時間でコードを動かして次のステップへ進めます。
デメリット
- 知識にむらができる
- 目標設定が難しい
知識にむらができる
プログラミングの参考書には必要な知識が順序だてて記述されているので、それを最初から読んでいけば、正しい順序で抜けもれなく知識を吸収することができますが、Web検索だけで勉強すると分からない部分が出たらその都度調べるという方針上どうしても自分の知識を整理しきれないことがあります。順序だてて学習できるサイトもありますが、知識が短髪で記述されているWebページも多いので、情報の取捨選択が難しいですね(;´∀`)
目標設定が難しい
本を買うと買った時点でその本を読み切るという目標を一瞬で定めることができます。一方何もないところからいざ勉強し始めようとしても「最初に何をすればいいんだ?」となりがちです。僕は本を使わずに勉強するときは必ず何か制作物を作るようにして、その制作物の慣性をひとまずの目標にするようにしています。掲示板系のアプリケーションだと割と作り方の方向性が見えやすくアプリの重要な処理も勉強できるので、おすすめです。
本を買うべきか否か
これまで、本を使った勉強法と使わない勉強法のメリットとデメリットを説明してきました。つくしの経験では本を使わずWebサイトで勉強した方が、気持ち挫折しにくくて安く済むしいいかなって感じです。また、本を買ってしまうと何か制作物を作るよりそのプログラミング言語の習得のほうに時間を割くようになるので、いつまでたっても自分で考えて作った制作物がないなんてことにもなりがちです。
勉強法は人それぞれだと思いますが、この記事の情報が少しでも迷っている方々の力になれば幸いです。