「コンピュータサイエンス」を含む日記 RSS

はてなキーワード: コンピュータサイエンスとは

2022-12-28

コンピュータエンジニアプログラマになりたい人って

なり方、スクールの是非や費用、未経験エンジニア年収、将来性とかばっかりググってない?

コード書いてみた?

からググって、標準のメモ帳とかテキストエディタ使って、コーディング初体験するまで五分もかからないよ?

自分語りになるが俺は1970年に生まれ中学時代ジャンクショップを巡ってMSXパソコンを組み立て、雑誌手続き型言語写経しては書き換え写経しては書き換え、ゲームを作り自作基盤でカートリッジ化しては界隈で知り合ったオタクと交換し合っていた。その後MS-DOS搭載のIBM-PCを手に入れてからも、まずは動かしてみることから始まった。電通大講義で学んだことより、図書館論文オタク仲間とのやり取りで学んだことの方が大きい。

とりあえずコーディングしてみようよ。書き換えてみようよ。電卓でも作ってみようよ。シンプル電卓ができたら機能を追加してみれば良いし、サンプルコードを色々書き換えてみれば良い。プログラマエンジニアへの一歩目はスクールに対する評価や是非を見ることじゃない。

別に職歴の有無、大卒かどうか、文系理系かどうか、専攻が情報系だったかなんて関係ない。コンピュータサイエンス至上主義者が現れたらジョン・カーマック名前を出してやれ。間違ってもスティーブ・ジョブズ名前なんて出すなよ。計算機科学素養なんて歩き始めた時点ではない方が良かったりする。手を動かしてコーディングエンジニアリングに取り組んでれば、その内嫌でも複雑性やアルゴリズムなど計算理論に関する書籍を漁ることになるはず。

さあ!コードを書け!

2022-12-25

技術者の会話を政治屋デタラメだと思ってる

コンピュータサイエンスアルゴリズムしろOSしろ「作って証明」的な側面があるから発展しやすいんだろうな

OSSで代表されるように、技術はある程度オープンなのでそれも発展を後押ししてる

どっかの老害が「IT系は声がデカイ!」とか言ってるの見たけど、むしろ老害こそOSS文化を学んでも良いのではと思う

老害がどっかのマネージャーなのかしらんけど「コンテナ!」「Python!」とか表面的な言葉だけピックアップして腹立ててるんじゃどうしようもねぇよな

老害IT価値のない仕事だと思い込んでるらしいが、技術発展がマクロ的に見て生産性を上げるってことは統計出てる (コブ・ダグラス生産関数ってモデルがあることぐらいは老害も知ってるだろうけど、技術発展などに依存する項目が関数にはある)

http://www2.toyo.ac.jp/~mihira/keizaitoukei2014/08_production/08_production_slides.pdf

技術者は意味もなくコンテナを使ってるのではない可能性が高い。

老害の部下は、おそらくAWSとかの兼ね合いでマイクロサービス運用するのが良いと判断した可能性があるし、嫌いな「声のデカさ」でマイクロサービスってこんな利点があるんですよと世界中で共有してるので利点は把握してる。

https://stackoverflow.com/questions/34903605/microservices-what-are-pros-and-cons

老害基本的政治屋から技術者の会話を見てデタラメ言葉をチョイスしているだけに見えるのかもしれないね

技術者は老害が思っているよりもちゃん意味のある言葉の使い方をしてるよ。

あるいは生産性向上そのもの無意味だと認めて、世の中の大部分の仕事無意味だと悟って老害会社を畳んでも良いんじゃないかな。

https://anond.hatelabo.jp/20221225044757

2022-12-18

anond:20221218144820

経済学者にあこがれて経済学部目指したのなら、いっそ博士まで行って博士号(Ph. D.)取得するのも一つの道じゃないかと。

その話と、現実的就職のための話がイマイチ繋がらない感じはするけども。


憧れは憧れで、GAFAみたいな巨大テック企業エンジニアになりたいって言うのだったら、

コンピュータサイエンス情報科学)系の学部入り直す方がよさげ特にGoogleエンジニア採用コンピュータサイエンスやってないとほぼ即死するような計算量やらの問題が出て来まくるんで、やっぱり情報科学出身エンジニアめっちゃ多いし。


ちなみに、数学が得意であるが、高校数学が得意レベルである、つまり計算が得意レベルだったら、経済学者かには向いてないとは思う。大学数学以降をある程度まともにやろうと思うと集合論ベース現代数学の発想に頭を切り替えないといけないし、経済学で使う「数学」もある程度大学数学素養がないときつい。

2022-12-09

anond:20221209163603

ワイはコンピュータサイエンスが専門なんだけど

CS知識が無い翻訳者翻訳した専門書はクソオブクソなんよね

古いオライリー本とか本当にひどいのがあった

外資系企業会議で先方がアサインしてきた同時通訳

テクニカルタームボロボロ落としてて金ドブだなと思った

語学できる気の連中、専門性軽視しすぎやろ

2022-12-02

anond:20221129113646

プログラマーコンピュータサイエンス必要

理由は、いい加減な仕事をするプログラマーに「もうちょい自分の書いたプログラム責任当事者意識を持って考えを巡らせようよ」とオブラートに包んで伝えたいときに「コンピュータサイエンス勉強しようね・・・」と言えるから

元増田にはコンピュータサイエンスは要らない。地頭でなんとかできるから元増田法務部だったとしてもロースクール重要性を感じないだろう。

多くのプログラマーにはコンピュータサイエンス必要

いや、正確には私が同僚に「コンピュータサイエンス勉強しようね・・・(担当したプログラムはきちんと設計実装説明修正対応できるようになってください)」と言い続けるために、

プログラマーコンピュータサイエンス必要という風潮を守っていきたい。

なので、コンピュータサイエンス必要だ派に元増田も加わってください。お願いします。

2022-11-30

https://anond.hatelabo.jp/20221130083458

コンピュータサイエンス知識がないならば

コンピュータサイエンス知識があるならば

なのでコンピュータサイエンス知識があって O(1) なコードを書けたとしてもパラメータのチェックが漏れててやはり AP サーバメモリを使いすぎる、というやらかしをする自信がある。

知識があるとよりシステムが安定しそうなのはわかります論理?的に飛躍してる気がしました!

anond:20221129085814

コンピュータサイエンスという言葉が示す知識範囲はどれかという話と、それをどの程度の深さまで学習すべきかという話が混ざっているので議論収束しません

画面で選べる入力しかこないと思いこんでるのは、いきなりフレームワークから入ってHTTPの中身を意識してないエンジニアにありがち。

とはいえコンピュータサイエンスはいるかどうかは微妙

anond:20221130161202

お前の考えているサイエンス基準わからんので反応しようがないんだよね

俺の理解では数学サイエンスじゃないし

お前がコンピュータサイエンスの中に見出しているサイエンス部分が俺には数学に見える

その上で、数学的な話ならこの手の話題の随所に出てくるよね

OS言語RDBももちろんある

anond:20221130155602

無粋なツッコミをしとくと

OSI参照モデルネットワークプロトコルプログラム言語RFC

この辺はいわゆるコンピュータサイエンス範疇じゃないよね。特に4つ目。

コンパイラを作るための理論とかはコンピュータサイエンス範疇と言っていいだろうけど

特定言語知識を教えるのは学問領域じゃないと思うぞ

ボクの使ったCS(ジジイの思い出話) anond:20221129085814

まぁ、下っ端プログラマには要らないだろうけど、いわゆるシステムエンジニアとかアーキテクトとか言われるレベル仕事するには、なるべく知っとかないといけないよね。

オレの場合は、大学はかろうじて理系一角だったけど、学問的にコンピュータサイエンスを学んだことはなくて、某IT会社でなかば業務上必要に迫られ、なかば趣味的な興味本位もありで、ちょっとずつ勉強した。

で、もう20年くらい前だし、すでに廃止されてる(と思う)ので、守秘義務違反とかの面倒なことにならなそうだと想定してぶっちゃけると、大手携帯会社ショップで各店舗独自プロモーション打ったりするためのWebシステムの開発に関わったことがある。

顧客の(および自分とこの)エライ人なんかにシステム設計根拠(この方式が最善なのか?もっと安く早くやれる方法はないのか?などなど)を常に問いかけられ、説明説得しなきゃならない。そこでコンピュータサイエンスに基づいて理路整然と話をすると、ちゃんと信頼してもらえるし、納得してカネ払ってもらえるw

そこで使ったのが、以下のような各種理論だ:



などなど... 自分史上最高に残業させられたこ仕事やってた年の年収は、900万円台おしくも1000万には届かなかったねぇw

 --追記--

コンピュータサイエンスがらみの思い出でもう一個面白い(とオレが思う)ネタがあるので、ついでに書いとこうw

これは、上で書いた携帯会社システムよりだいぶ前のことになるが、とあるグループウェアの開発に関わってたときメールFAXに向けて出力するドライバを書いたことがある。昔のことなのでオープンソースあんまり普及してないし、タダでお手軽に使えるライブラリが見つからなかったので、「車輪の再発明」っぽいけど自分でハフマン符号化によるデータ圧縮アルゴリズム勉強して作ったのだ。

Win32APIとか呼び出して、ビットマップテキストを描画させたとこからドットをちまちま数えて、白のドットがいくつ続いてたらこコード、黒がいくつ続いてたらあのコード...って可変長のビットパターンをつなぎ合わせてファイルに書き出す...みたいな。これが理論通りにうまいこと動作して、FAXから文書が出てきた時はとっても楽しかったw

anond:20221130134939

その一行を入れる発想、

それ自体コンピュータサイエンスの賜物なんだよ。

まり、君は、コンピュータサイエンスが分かっているということなのだ。

anond:20221130083458

n = n > 20 ? 20 : n;

コンピュータサイエンスからなくても

この1行入れるだけで良くね?

anond:20221129085814

正直気持ちはわかる。

個人の実感としては、コンピュータサイエンス定義と関わるシステム要件によるとしかいえないかな。

例えばコンピュータサイエンスを、

アルゴリズム計算

OSの仕組み

DBの仕組み

分散システム理論合意形成とかサービスディスカバリとかレプリケーションとか障害リカバリとか)

CPUの仕組み

・並行プログラミング

TCP/IP

みたいな知識定義したとする。

toC向けのスタートアップフェーズプロダクトとかだと正直なくても回る実感はあるし、実際テキトーに作られてるけどなんとか動いてるシステムはかなり見てきた。

でもある程度成熟してユーザ数もトラフィックもかなりあるみたいな状況だとこの辺の知識なしではお話にならない。

そういったプロダクトだとセキュリティ要件スケール要件がかなり厳しくなってきて、その観点なしに開発運用できないから。

正直ただ作るだけだったらライブラリフレームワークの使い方さえ覚えておけばなんとかなるけど、

大規模になればなるほど、効率的に作らないとコストがかかりすぎて大変だし、最悪動かない。

で、効率的に作るためにはこのあたりの知識はどうしても必要になるはず。

データ量的にO(n)とO(n^2)ではそれはそれは段違いになる。

コンピュータサイエンスっていうか、基本情報応用情報程度の知識は持っとけってこと

20代応用情報持ってる人なら、よほどコミュニケーションに難が無い限りはうちの会社では採用

anond:20221129085814

俺は大学電気専攻だったので電気電子知識だけ身につけて組込みプログラマーになった人間だけどやっぱりコンピュータサイエンス勉強しておけばよかったかな、とも思ってるよ

ただ電気知識は本当に役立ってるから電気ちゃんと学んでおいたほうが捗るってことは言っておきたい

CSしろ電気しろ結局のところは「大学目的を持って学んだ知識仕事で役立つ」ってだけなんだけどね

anond:20221129085814

いくつか反論したいポイントはあるが、多分ほとんど他の人が突っ込むだろうから

俺はとりあえずオーダーについての勘違いについて指摘しておく

  • XX.sortで勝手に実行環境がよしなにやってくれる

厳密には間違い。大半のケースではそれで良いが、XX.sortを呼んでもその先でしっかりオーダー(多くの場合nLog(n))が掛かっているため、100万だか1億だかの膨大な値を扱う場合無視できない影響が出てくる

そうした場合データの質によっては、別ライブラリのYY.sortを使ったほうが良いということがありえる。

オーダーはデータの規模に応じて処理時間が増えていくか、という割合なので

リリース直後は3秒と2.8秒の違いしかなくても、登録ユーザーデータが増えてくると5分と3.0秒という具合にどんどん差がつくもの

そうなってからサービス停止してパッチを当てるよりは、最初からオーダーを意識したコーディングをしたほうが良い

あとAI開発には必要って自分で言ってるじゃんとか経験則でも必要ならそれを言語化して周知するだけで財産だよねとかあるけど眠いのでこのへんで。

最新のフレームワークを追うのは確かにコンピュータサイエンス(CS)を知るよりずっと大事かもしれないが、CSが無価値ということは決してない

anond:20221129085814

それはお前が小規模の開発しかしてないからだよ。コンピュータサイエンス素養が効いてくるのは大規模開発。ユーザーが何百万人、何億人といるようなサービスだと少しのアルゴリズム効率の差で大きなビジネスインパクトがある。逆に言えばお前らみたいなしょぼいプログラマにはコンピュータサイエンス必要になる機会なんてものほとんどないということだね。

anond:20221129085814

モロにコンピュータサイエンス知識が求められる仕事自体そんなにナイ気がする

言語系そのものの開発、という非常に珍しい案件に(下っ端で)関わったことはあるが

コンピュータサイエンスをカジってないとそもそも理解不能だったろうな」というのはその案件だけだったし

ログイン ユーザー登録
ようこそ ゲスト さん