はてなキーワード: C#とは
C#がTypeScriptの完全ラッパーになりつつWebAssemblyも出来ちゃうかもしれない未来について
10年超のプログラマやってるものだけど自分の成長過程を書いてみよう
プログラミング言語を印象批評している記事に触発されて、自分も印象批評してみようと思う。
JavaScript以外にもブラウザ上でぐりぐりするのにはJava AppletとかFlashとかSilverlightとかいろいろあったけれど、結局標準化を成し遂げたHTML5に淘汰されちゃった感じがする。LiveScriptからJavaScriptに改名されたり、規格を話すときはECMA Scriptだったりといろんな別名を持つ。一応、プロトタイプベースのオブジェクト指向言語なんだけれど、それを意識してコードを書く人がどれくらいいるかは謎。
Pythonは小さいコードを書くのには楽だけど、これで大きなコードを書くと思わぬ変更で思わぬことが起きるのでつらい。しばらく使うとPythonイヤイヤ病にり患し、goを使うようになるらしいとか、ならないとか。pythonで大規模なコードを万一書こうと思うなら、カバレッジが高いテストを書いてくれと思う。
Javaは初期のころオートボクシング / アンボクシングもなく、ストイックなオブジェクト指向言語だった記憶がある。ただ、staticを多用してオブジェクト指向とは程遠いコードも簡単に書けるので、Javaで書いているからと言ってオブジェクト指向だと思うのは禁物である。
PHPはWebネイティブな言語で、初期のころHTTP POST/GETなどで渡された変数がそのままプログラム中に出てくる機能や初期化していない変数を最初に使うと空文字列あるいは0で初期化するという機能があった。また、文字列と数字を臨機応変に切り替える機能もあり(今もそうかは知らん)、数字と文字の比較を比較演算子(==)でシームレスにできる。パスワードチェックみたいなコードで===ではなく、==を使っているとPHPを知らないバカ扱いされる。
C#はHello Worldくらいしか書いたことないから知らん。monoのような互換環境があるのは知っているけれど、わざわざPC Unix上でmonoを使う気分にはなれなかった。
C++は黎明期に使った感じと、C++11以降に使った感じが驚くほど違う言語。今はかゆいところには大抵STLで手が届くし、autoを使えばイテレーションで腱鞘炎になることもない。PC Unixにも最初から環境がインストールされているか、簡単にインストールできるので毛嫌いせず使うとよいと思う。
Rubyはぎょっとする変更をよくやるというイメージ。これで書かれたプログラムを長年愛用してきたが、ぎょっとした変更を入れられて動かなくなったのでgoで書き直した。その点ではpythonも3でおいていかれたので嫌い。
TypeScriptは書いたことないから知らない。JavaScriptだと大規模コードを書くとつらいのでTypeScriptを使おうという人がいるのは知っている。大規模なコードを書くとしたら、インタフェースに合った呼び出しかコンパイル時にチェックしてくれるような強く片付けされた言語のほうがよくなってくるというのはわかる。
Cは片付けし、構造化したプログラムを書きやすくしたアセンブラ...というイメージだったんだけど、C99くらいから便利機能がいろいろ入ってそうでもない感じになった印象。昔はCのコードを見たら最適化した後のx86アセンブリが見えていたんだけれど、最近は見えなくなってしまった。子供のころ、本屋で秘伝C言語問答 ポインタ編に出会ったのがこの業界に入るきっかけだったのかもしれない。ほかの言語でいろいろ楽に書けるから、カーネルをいじるか、システムコールをたたくかするときくらいしか自分の中では出番がなくなってしまった。
これ以下のランキングのもその気になったら書こうかな。
プログラミング未経験者から「プログラミングを勉強してみたい、でもどのプログラミング言語をやればいいのかわからない」というような悩みを聞くことがあるので、https://redmonk.com/sogrady/2020/02/28/language-rankings-1-20/ に載っている人気の言語TOP 20について、未経験者が最初に学ぶのはどの言語が良いかという観点で簡単に解説してみます。
対象読者はプログラミング未経験者なので、なるべく難しい言葉を使わないようにしたつもりです。また、正確性よりもわかりやすさを重視しているので何かしら間違っているかもしれません。ご留意ください。
Webブラウザの上で動くプログラミング言語。元々ただの文書しかなかったインターネットの世界に、グリグリ動くページを作りたいという欲求により生まれた。JavaScriptのおかげで今のWebページはグリグリ動きまくりである。
元々HTMLをちょちょっといじる為だけのものだったが、どんどん進化を続けて今は一つの超人気プログラミング言語である。今ではブラウザ上でなくても普通に動かせる(Node.jsという)ので様々な用途で使われている。
ブラウザ上で動くプログラミング言語は基本的にJavaScriptしかないので、JavaScriptはすべてのWebプログラマが学ぶ必要があると言っても過言ではない。
ちょっとしたプログラムを書いてすぐブラウザ上で動かせるので楽しい。そういう点ではプログラミング入門に適していると言えるかもしれない。
機械学習を始めとしたデータサイエンスの分野で激烈に人気のある言語。理由としてはNumPyとかTensorFlowのようなライブラリが充実しているというのが大きく、資産がたくさんあるのでこれからも使われ続けるであろう。
言語としては、誰が書いても簡潔で読みやすいコードになる傾向にあり、小さいプログラムを書くにはいい感じである。米国ではプログラミング教育にPythonがよく使われているという話も聞くし、初心者がプログラミングを始めるのにはいいのかもしれない。
将来AIやデータサイエンスをやってみたいと思うのであればPythonから始めましょう。
ランキングでは常に一位に近い順位をつける言語。Javaができた当時は色々と革新的だったらしく、組み込み業界からWebまで流行りまくっていた。今でもその名残か使っているところは多い。過去の資産やプログラマの数が多いのが一番の理由だと思う。AndroidアプリもJavaで書く(もしくはKotlin)。
実行速度が速く、また下位互換性がしっかりしているので過去に書かれたコードが新しいマシン上でも動きやすいのが長所。短所としては、歴史ある言語で下位互換性を保っているため文法が古い感じがする。タイプ量も多くなるし、学習コストはJavaScriptやPHP, Ruby, Pythonあたりに比べると高い。
正しく使えば強力な言語だが、日本のクソSEもどきは全員(自称)JavaエンジニアであることがJavaが毛嫌いされる理由の一つになっている[要出典]。いわゆるGAFAもJavaをかなりヘビーに使っているので要は玉石混交ということである。
Androidアプリを作ってみたいというならJavaからはじめるのはアリ。
Webページを作るためだけに生み出された言語。プログラマの数が非常に多い。日本で求人が一番多いのはJavaかPHPであろう。
初心者でもとっつきやすく、すぐに動くプログラムを作れるので入門に使われることも多い。学習コストの低さはトップレベルである。しかし基本的には古くてダメな言語とみなされており、PHPで作られたWebサービスは脆弱性が多いという都市伝説もある。真実は闇の中である。
近年のバージョンアップで比較的良い方向に向かっている(と個人的には思う)ので、選択肢としては意外と悪くないかもしれない。
Microsoftが生み出した言語で、.NETというプラットフォームを使ってWebサービスを、Unityというゲームエンジンを使ってゲームを作ることができる。
最近有名なのはUnityで、今やほとんどの3Dソーシャルゲーム(の一部分)はUnityで作られている。そう考えるとC#のプログラマは結構いそうだし将来もある程度安泰かもしれない。もちろん.NETも広く使われている。
ただし.NETもUnityも触らない人にとっては基本的に縁のない言語である。
なんかゲーム作ってみたいかもなーと思う人はC#から始めてもいいんじゃないでしょうか。
C言語に色々な機能を足しまくってできた巨大な迷宮のような言語。言語仕様は複雑怪奇だが実行速度は全プログラミング言語中でも最速レベルなので、パフォーマンスが重要な開発において使われる。アプリやサービスというよりは、それらを作るためのライブラリ、プラットフォームなどを作るときに使われることが多い。Web系の会社でいうとGoogleなどは主にC++を使っている。
基本的には初心者が触る必要はない。競技プログラミングを極めたいとかならC++からはじめてもいいかもしれない。
このランキングの中で唯一、日本人によって作られた言語。作者のまつもとさんは世界的有名人である。ちなみに島根県出身、在住。
プログラミングを楽しくすることがモットーらしく、確かに書き味は良い。また作者が日本人なこともあってか日本語情報が多く、情報収集という点ではとてもやりやすい。
Ruby on RailsというWebサービスを作るためのフレームワークが世界的に大ヒットしたため、必然的にRubyの知名度も上昇した。少し前まで日本のWeb系スタートアップは猫も杓子もRuby on Railsといった様相であった。今は少し落ち着いたようだが今も人気は根強く、Web系プログラミングスクール等ではだいたいRuby on Railsを教えているとかいないとか。
Webに興味があるのならRubyから始めるのが一番無難な選択肢と言える…のか?まあ悪くはないと思う。今でも需要は多い。スクールに行きたいのであれば黙ってスクールのカリキュラムに従いRailsをやりましょう。
これは他の言語とは毛色の違う言語である。というかCSSはプログラミング言語と呼んでいいのだろうか?
CSSはHTMLを装飾するためのものである。字に色をつけたり、背景を変えたり、レイアウトやサイズを変えたりするのは基本的にCSSの役割である。
すごく大雑把にいうと、HTMLで表示する内容(文章や画像)を定義し、CSSでその見た目を整え、JavaScriptで動きをつける。というのがWebサービスの”見た目”を作るやり方である。
なので、Webに興味があるのであればある程度はCSSの知識が必要である。が、これ単独で学ぶようなものではない。Webサービスを作る時についでに調べて少しずつ覚えていけば良い。
TypeScriptは比較的新しい言語で、JavaScriptをさらに拡張したものである。Microsoftによって開発されている。
プログラムにはデータの型(Type)というものがある。例えば「1」や「2」は数値型、「あいうえお」は文字列型といった具合である。大まかに言うと、この「型」に対して厳しい言語は型チェックによりバグの混入を防ぎやすいがプログラムを書くのが大変、というかコード量が多くなる。型が緩い言語はサクサクかけるし短く書けるがバグを生みやすくプログラマの力量が問われる。ランキングの中だとJavaScript, Python, PHP, Ruby, Perlあたりは緩く、Java, C++, C, Swift, Go, Kotlinあたりは厳しい。
そんな中、世で広く使われているJavaScriptの型チェックが緩すぎるのでもっとちゃんと型をつけたい、そんな要望を叶えるのがTypeScriptである。基本的にJavaScriptを理解している人間が使うべき上級者向け言語というのが現状なので、初心者が始めるには適していない。
ただしこの先主流になっていく可能性は大いにあるので、どこかのタイミングで勉強してみても損はしないと思う。
C言語は基本的にOSを作るための言語である。OSというのはWindowsとかmacOSとかLinuxといったもので、マシンを動かすための基盤となるソフトウェアである。AndroidスマホにはAndroid(という名のOS), iPhoneにはiOSが載っている。コンピュータは基本的にOSがあって初めて動かすことができ、OSが提供する機能を使ってブラウザやスマホアプリなどを動かせるのである。
というわけで、初心者が学んで実用的なものではない。ただしC言語というのは世の中の様々なものの基盤になっており、他言語の文法もC言語から拝借しているものが多い。例えばC言語をある程度勉強していればJavaやPHPなどはなんとなく雰囲気で書けてしまったりする。
そういうわけで、コンピュータサイエンスをこれからちゃんと学んでいきたいという人(大学生とか)はC言語から始めるのもいいと思う。ちなみに筆者は初めて書いた言語はCであるが、意味が理解できるまでに2年かかった。才能がないとこうなるので注意。
SwiftはAppleによって作られたAppleのための言語である。iOSアプリ(iPhoneアプリと言い換えても良い)を作るためだけに存在している。
言語自体は他と比べて新しいため文法や機能がイケてる雰囲気があるので基本的にはいいのだが、iOSアプリ以外で使っている人は多分世界で5人くらいしかいないと思う。なのでiOSアプリに興味がない人はやめておきましょう。iOSアプリを作りたいあなたは他に選択肢はない。Swiftをやりなさい。
Swiftが生まれる前はiOSアプリを書くためにObjective-Cが必要だったため、多くの人がこの言語を使っていた。が、今はSwiftがあるので、古くからあるObjective-C製アプリをメンテナンスする時以外に使う機会はない。名前すら覚える必要がないので存在を忘れてしまって構わないが、これだけ順位が高いということは多くの企業がいまだにObjective-Cで開発し続けているということであり、ニッチな需要はこれからも残るのかもしれない。
Scalaは関数型言語と呼ばれる言語の一つ。Javaの親戚みたいなものなのでJavaとの連携が容易であり、上手く使えば性能も出るしコード量も少ないしバグも少なくて最高、な感じらしい。が、その分難易度が非常に高いので初心者が手を出すものでは絶対にない。どんなに早くても他に二つは言語を覚えてから勉強しましょう。Javaを覚えてからやるのがベター。
正直ほとんど書いたことがないのでよくわからないが、ビッグデータというワードが流行りだした頃はデータ解析用途でかなり流行っていた。その後機械学習やAIブームが来て、今でも現役で使われてはいるがPythonがどんどん勢力を拡大しているので少し目立たなくなってきた、というのが個人的な印象である。まあプログラミング初心者が最初にやるようなものではないことだけは確かである。
Go言語は比較的新しいGoogle製のプログラミング言語で、Googleのように巨大なシステムでの使用を目的に作られたものである。しかし実際には様々な企業が利用しており今一番勢いのある言語と言ってもかもしれない。
他のプログラミング言語の良い点や悪い点を参考に設計されており、実行速度の速さと生産性(プログラムの書きやすさ、読みやすさ)を両立できるような言語になっている。ただし、機能を増やすのではなく本当に重要な機能だけに絞るという思想があるようで、他の言語に慣れていると機能の少なさに不便を感じるかもしれない。
学習コストが低いという点では最初に学ぶ言語として適しているかもしれないが、GoだけでWebサービス等をサクッと作れるのかというと微妙なので、アウトプットを出しにくいというのはあるかもしれない。
シェルというのはテレビなんかでハッカー的な人間がPCを開いて謎の黒い画面に白い文字を打ち込んだりするアレである。説明としては正確ではないがまあ大体そんなもんである。何が言いたいかというと初心者が最初に学ぶとかそういうものではない。しかし実際に開発の仕事をやるとシェルの知識はあったほうがいいし、シェルに多少詳しくなるとPC上でテキスト操作をしたりファイルをいじったりというのが便利にできるようになる。ただし(通常は)極める必要はない。
Shellと言っても実際にはbash, csh, tcsh, zshなど色々あるのだがそれらをひとまとめにしてShellとなっているようだ。
PowerShellは上のShellの親戚みたいなもので、ShellがMacやLinuxで動くのに対しPowerShellはWindowsで動く。そんだけである。あと正直あまり知らない。
ランキングの中ではかなり昔からある言語で、サーバーと呼ばれるマシンには大体Perlが入っている。そのくらい市民権を得た超有名言語で、C言語やC++で書くほどでもない小さなプログラムはとりあえずPerlで書く、というくらいには広く使われていた。インターネット初期はほとんどのWebサイトはPerlで書かれていたとかいないとか。PHPなどの登場はその後である。
今でも広く使われてはいるが、RubyやPythonがPerlの後継的な位置付けであるため、初心者が新しくPerlを学ぶメリットというのはあまり思い浮かばない。何か特定の目的があるのであればいいと思う。
Kotlinは簡単に言えばBetter Javaである。Javaをもうちょっといい感じに書きたいという気持ちで作られた言語で、Scalaと同じくJavaの親戚のようなものである。
ランキングの中ではSwiftと並んでかなり新しい部類。AndroidアプリをKotlinで書けるようになったことがきっかけで人気が爆発的に上昇、今ではWebの開発にも使われていたりする。
とは言えまだまだ新参者といった感じで、ドキュメントなどの情報も他の言語に比べると物足りないので初心者には厳しいかもしれない。
言語自体はとてもいい感じなので、もう少しコミュニティが成熟してくれば最初に学ぶ言語の選択肢として有力になるかもしれない。
HaskellはScalaと同じく関数型言語である。ScalaがJava的な書き方でも動くの対し、Haskellは「純粋関数型言語」と呼ばれ、ランキング中の他の言語とは一線を画した書き方になる。どう考えても初心者にはオススメしない。少なくとも他に二つは言語をマスターしてからやりましょう。
なんとなくWebに興味がありそうならJavaScriptかRubyもしくはPHP、Androidアプリに興味があればJava、iPhoneアプリに興味があればSwift、AIやデータ分析に興味があればPython、3Dゲーム開発に興味があればC#。この辺りをやりましょう。
特に目的がないのであればフィーリングで選んで大丈夫ですが、やめておくべき言語というのはあるのでその辺だけ参考にしてもらえれば。
なお筆者はただのヘボプログラマであり、大好きな記事(http://www.mwsoft.jp/column/program_top10.html) の現代版かつより初心者向けなものを書いてみたいと思ってこの記事を書きなぐった次第である。あまり真に受けないよーに。
ツイッター、なんだか一部でプログラミングスクールについて盛り上がってるみたいですね
「プログラミング...スクール...?あっ5年前通ってたんだ...」みたいな感じで忘れてた記憶が蘇ったので振り返ってみます
当時高卒で上京してきた直後で、「とりあえずなんかプログラム書いてお金もらう感じになりたい」程度のテンションでした
それまでプログラミングはしたことないし、いわゆるIT知識も持ってるようでいて持ってないというバックグランドです
正直「ここに通えばなんとかなるんじゃないか」くらいの気持ちだったと思います
たしか期間は1か月で、割引制度を使って料金は10万円だったかな...(ヒーヒーいいながらなんとか支払った)
5年前の話なのできっと今ではそのスクールのシステムもいろいろ変わっていることでしょう
内容は、用意されたHTMLやCSS、Ruby教材の課題をこなしていって、最後にRuby on Railsで簡単なWebサービスをつくり、時間が余ったら自分の好きなWebサービスをつくるといったものでした
作業は別に家でやってもよいし、スクールの物理教室にいけばメンターがいて質問もできます
いよいよスクールが始まりましたが教材の課題をこなすのが難しかった...
きっと一般的にみて特別難しい内容ではないのでしょう、メンターというサポート体制もあります
が、ダメだった...
たしかRubyの四則演算から先の課題がこなせなかったような...
ほんとに教材に書いてあることが理解できなかった
メンターに質問しようにも「分からないことが分からない」みたいな状態で、なかなか前に進みません
最終的に教材の修了度は60%くらいだったかな...
なんとなくHTMLタグの種類が分かったくらいで、プログラミングする上でのメンタルモデルが形成されるわけでもなく「あぁ僕にはプログラミングは向いてないんだなあ」という感想を得て1か月が終わりました
一応継続してスクールに通えるプランはあったようでしたが、金銭的に余裕がなく1か月で綺麗そのスクールから離脱しています
スクールに行った前後で特に状況変わってないぞどうしよう...という状況で、コンビニバイトしつつ知人にベンチャー企業を紹介してもらって「何かつくったらまたおいで」と言われてさよならされる日々を送っていました(そりゃそうなる...)
数か月後、Unityというゲームエンジンの初心者向けハンズオンが開催されることを知ります
もともとVRには興味があり、Unityを使うとVRアプリがつくれる程度の知識はあったので軽い気持ちで参加しました
そのハンズオンが楽しかったので以降Unityにハマっていきます
後日Webの教材で改めて一番基本的な操作を覚え、「まだ手を出したことのない機能をひとつ盛り込む」というテーマを持って週にひとつゲームをつくって投稿サイトに上げていました
そんなことをしているうちに、縁があって会社に入ったりニートしたりアプリをリリースしたり転職したりしました
結局いまプログラミングスクールでやっていたことがそれほど関係しないポジションでふんわりC#を書いてご飯を食べていて、「プログラミングスクールのおかげでどうのこうの!」というパターンにはならなかった人です
いまも「あぁ僕にはプログラミングは向いてないんだなあ」という気持ちだし、Rubyはなんとなくトラウマで...
職場は自分以外のプログラマーがみんな修士卒以上で超こわい、行ったことないから分かりませんがプログラミングスクールよりちゃんと大学行ったほうがいいんじゃないのみたいな気持ちです
せっかくお金出して行ったのにまともに血肉にできず、自分のだめさを思い知っただけという意味で人に話してこなかった黒歴史なんですが、いろいろ書き連ねてみました
今VBAでExcelとか触ってるならPythonでSelenium使ってWebシステムの自動化や、PyAutoGUIで普通のアプリの自動化とかやってみて欲しい
Pythonは少し癖があるけど難しい言語ではないし(VBAとはかなり毛色が違うとは思う)、ちょっと手間かかるけどPyCharmとかVSCodeとかの環境整えて補完やテストやデバッグやバージョン管理のやり方覚えると、VBAよりもイライラが驚くほど減ると思う
あるいは、プログラミングは自動化が好きな人と道具的なツールアプリを作るのが好きな人と自己表現が好きな人がいるように思えて(あとゲーム作り好き)、自動化が好きな人とツールアプリを作るのが好きな人は結構好みが似ていると思うから、PCのソフトを作るならC#+VisualStudio、iOS/AndroidのソフトならSwift/Kotlin、WebアプリならJavaScript(と今ならVueとか?よく知らない)とかを覚えると面白いかもしれない
自動化で転職するのは難しい気がするけれど(事務系の資格持ちとかならスキルとして強いと思う)、アプリ開発ならかなり求人多いし、零細が多いから年収気にしなければ高卒でも就職は出来ると思う
コロナ自粛で勉強中。以前買ったHaskell本を読み直している。落ち着いて読めば結構理解できる。
https://gihyo.jp/book/2016/978-4-7741-8390-9
現場の方々に向け,関数プログラミングのエッセンスを厳選解説した入門書。
関数型言語Haskellを用い,基本から,Java 8/C/C++/Python/JavaScript/Rubyをはじめ各種命令型言語との比較,オススメの開発/設計テクニック等を平易に解説。
改訂版ではGlasgow Haskell Compiler 8ならびに新機構のStackage/stackへの全面対応,関数型言語由来の他言語の機能解説章(第8章)の新設(Swift/Go/Rust/C#等の例も紹介)をはじめ実践開発に役立つ解説を増強し,関数型言語でも命令型言語でも活かせる「使える基本」を凝縮しました。
それはある
Unreal Engineで使われるC++もJavaのパクりだし
TypeScriptやEcmaScriptもJavaのパクりだから
とりあえずJavaやっとけばいいよ
中堅SIerでいわゆるSEをやっている。中小企業や、大企業があっても部門システム程度のシステム導入や保守サポートが自分の仕事だ。オーダーメイドであればJavaやC#とOracleやMSSQLで開発するし、業務パッケージの導入支援なんかもする。規模が小さいから多重下請けみたいなのはほぼないが、PMだけとか仕様決めだけで、作成は外注頼みにして数回そうって、社内の技術空洞化が心配される普通のSI業だ。
IT業界の端くれらしく在宅リモートワークになった。お客さんは休業するところもあるにはあるが、多くはそのままだったり、営業時間を縮小したり、総務経理なんかをリモートにしたり、工夫しながら営業を続けている。チャット、メール、電話はそれなりに入ってくる。
例えば給与管理なら4月で雇用保険徴収の対象外になる人が出るけどどうすればいいの?みたいな季節モノから、自宅PCから会社PCにつないで/会社のノートを自宅において、あのシステム使える?とか、IT補助金出るみたいだけどPC10台調達できるか営業に伝えて、みたいなこの状況ならではの対応とか。出荷システムでピッキングがうまく行かないとか、普通の保守対応もたくさんある。
開発案件はストップや延期もちょいちょいあるけど、自宅から質問に答えたりリモートでトラブルシュートしたり営業やインフラ担当の手配をしたりなんのかんの忙しい。自分もお客さんも自社の営業やインフラSEもみんな在宅だったりするし普段とは違って変な感じだ。
いろんな企業のいろんな部署のいろんな人が働いていてITやソフトウェアに頼っているんだなとあらためて感じた。
Amazon楽天ヤフオクメルカリなんでもそうだが、今はみんながプラットフォーマーになりたがる。
商流を握れば手数料で儲けがスケールする。ITをコアにスケールする企業が生き残る。
でも、そこで流れる商品を作っているのはメーカーだし、調達して販売してるのは卸だし、在庫が置かれてるのは倉庫業だし、ものを運ぶのは運送会社だ。その他たくさんの業種。マケプレで僕らが買えるのはそうした企業があるからだ。
いろんな会社が、この状況下でも営業をしなけりゃ生活必需品が行き渡らない。
その大部分は中小企業で、ITはコアコンピタンスじゃない。高年収のフルスタックなITエンジニアを何人も抱えて内製化できない。情シスが何人かしかいなかったり、総務のお兄さん一人なんてところもある。そんな企業が日本だけで何十万とある。
そういうところに頼られて、なんか問題を解決して、支えていけるなら、喜ばれるんなら、SIerもそんなに悪くはないなと思ったりした。
会社の大先輩のおじいちゃんは、SAPが出てきたころにパッケージオーダーメイドなんてなくなると言われたけど、パッケージ導入や足りない部分の開発で結局食えたと言っていた。ならクラウド時代でもSaaSが主流になっても多分仕事は尽きないんだろうな。最悪自分がどっかの会社の情シスに潜り込んで内製に回れるような技術は身につけておきたいけども。
俺の古典的な認識ではさ、JavaScriptってHTMLにくっ付いて、Webページの内容を書き換えたりするものだと思ってるんよね。
だからどんなに言語仕様が洗練されて高度なことができるようになっても、最終目標は「Webページの制御」に留まるというか、それを越えられないと考えちゃう。
一方で俺の思ってるプログラミング言語、C系列とかJavaとかは、最終的にexeファイルやそれに類するものを作成するのが目標なわけで。
だから「C#でアプリケーションを作る」っていう文は成り立つと思ってるけど「JavaScriptでアプリケーションを作る」っていう文は変だと俺は捉えてしまっている。
JavaScriptはWebの制御をしているだけで、その場合「HTMLでアプリケーションを作るfeat.JavaScript」みたいな認識が正しいんじゃないかと。
でも俺のこういう認識はおそらく物凄く古臭い考え方だとも感じてしまうんだよね。
なんか、俺の認識のどこが古臭いのか、目を覚まさせてくれるような一言が言える人は、是非ぶつけてほしいな。極力そのまま受け入れようとするつもりだから。