はてなキーワード: ソースコードとは
趣味プログラマーだけど絶対pythonかそれに類するもの(Rubyとかもいいかもしれない,あんまよく知らんけどdfndfn)
プログラミングをやり始めた当初はCから教えられた。競技プログラミングとかもC,C++しか昔使えなかった。
今は色んな言語に便利なフレームワークがあるし、増田も職業でやってるんでなければpythonオススメ。てか当時もっとpython勢いあったらpythonから入ってただろうな。
やってくうちにフロントエンドとか、もっと計算機理論アルゴリズムとか自分のしたい方向性とか興味が出てくるからそれに従って楽しめばいいと思う。
GUIだってpythonだったらpyGobjectとかで簡単に実現できる。流行りのdeeplearningも割と敷居は低い。webframeworkはdjangoがある。
リバースエンジニアリングとかの本もあるし。
自分はCから入ったけど、結局CTF系の領域(脆弱性を探すゲーム)か配布されているソースコードのコンパイル関連(gentooのemergeとか)とかしか使わない。
三谷 「ソースが提供され納得と混ざって、とっても理論的だわぁ!」
荒川 「パンティー増田特有の嫌味な匂いがちっとも無いのよ!」
中松 「しかしよぅ、山岡の旦那。これははてなの増田とは全く別物だぜ?一体どんな魔法を使ったんだ?」
増田に設置されているホッテントリ機能は使わず、ワッチョイとIDをつけ実装し直しました。
更に、ソースもURL貼り付けではなく論文サイトから引用だけのソースを使っています」
富井 「ひええ、たかが増田に、そんなにお金と手間をかけるとは…!」
大原 「いやはや、何と贅沢な…」
山岡 「増田は、手間隙と金を惜しまなければ、本当に楽しい日記サイトなんだ。
だけど、殆どの人はその手間と金を惜しんで憂さ晴らしで使っている。
だから本当の楽しさを知らないんだ。嘆かわしい事だよ」
小泉 「ふむ…確かに、ブクマカやリテラシー低い増田は、人口のまがい物といった感じがするからなぁ」
山岡 「憂さ晴らしで書き込まれた増田は(中略)というくらい危険なんだ。
例えば、このソースコードを見て欲しい。(中略)これらは全て、1日1トン摂取すると死に至ると言われている」
三谷 「何ですって!そんな危ないものが増田に書き込まれているの!?」
山岡 「それだけじゃない、ここに書いてある(中略)これもやはり、1日にプール一杯分摂取すれば確実に死ぬね」
富井 「こんな危険なものを、どうして公開する事ができるんだ!?取り締まるべきだろう!?」
山岡 「それは、厚生労働省の怠慢が原因なんですよ。(中略)この国の政治家はどうかしているとしか思えない」
栗子 「私達は、知らず知らずのうちに、猛毒と同じ様なものを使わされていたのね…」
頻繁にベストプラクティスが変わっちゃうような、たとえばReactやらVueみたいなやつの情報だったら、古い本などを参考するよりは、コミュニティの評価やソースコードを追ってったほうがいいし、
マーケティングのフレームワークを学びたいなら、断片的なweb記事をみるよりはそこそこ売れている本を読むほうがいいし
あるいは誰それがなんと言ったみたいな情報であれば、Twitterでも実名の人を信頼するし
アカデミックな理論を業務に取り込みたいなーと思ったら査読付きでそこそこ引用されている論文をやはり信頼して読んでみる気になるし
一回だけ使うワンライナーみたいなどうでもいい話ですぐ試せて副作用がないならgoogleで一番上にでてきた情報で試してみるのもいいし。
初日:
先週納車されたバイクで意気揚々と初ツーリング。海辺の道をかっ飛ばしてたら白バイに捕まって速度違反で切符を切られてしまい、完全にやる気を失った。
2日目:
たまには運動しないと、と思って久しぶりに水泳をやってみたら水中で足がつっておぼれそうになり、完全にやる気を失った。
最終日:
研究に使ってる代々秘伝のソースコード(FORTRAN77)をfortran90に書き直す作業をした。10万行くらいあるのでperlで必要そうなところガッと変換したらコンパイルエラーだらけで結局かなりの部分を手作業で直す羽目になり、完全にやる気を失った。
なんか今回の連休は災難続きだったけど、そんなことはお構いなしに週明けはきます。がんばっていきまっしょい!
その上司独自の考えに基づいた、よそではまったく通用しない技術や仕事のやり方。
ソースコードをデグレしないようにする、数々の工夫や手順とか「普通にソース管理ツールを使ってればまったく無用の知識だよな」とか思ってしまう。
上司に気に入られるためには、それを疑問を持たずに吸収してその通りにしなければならないけど、すごい人生を無駄にしてる気がする。
しかもその人なりの一貫した思想があればいいけど、なにかあるたびにアドホックに、ああしろ、こうしろ、なぜわからん、みたいなことを言われるし。
だからこれだろ?
https://lwn.net/Articles/249460/
ここで「c++はクソ効率悪いコード吐くし、c++で高速化しよう思ったらそれはCのコードと同じになる」なんて言ってない。
inefficient abstracted programming models where two years down the road
you notice that some abstraction wasn't very efficient, but now all
your code depends on all the nice object models around it, and you
この文章で、非効率(inefficient)って言ってるのは、「abstracted programming models」「the nice object models」であって「c++はクソ効率悪いコード吐く」なんて話じゃない
https://anond.hatelabo.jp/20180909073549
↑で色々思い出したのでうっかり書く。
数年前までメーカで組み込みソフト開発やってた。今はWeb系と呼ばれるところに転職した。
どちらも超大手なので、両親レベルの年齢層でも企業名とかプロダクトの名前を知ってると思う。
元の文をディスってるというよりは、うちはこんな感じだったなーと思い出話と捉えてもらえば。
知らなかった。どういう機器を扱うメーカで人手不足なんだろう。自分が転職活動したときは車載機器メーカの求人がやたら多かった。
ソフト開発が好きでそれを超極めてるというよりは、元々優秀で、ソフト開発はいくつかそこそこできることの一つみたいな人が多かったかな…。
旧帝大以上の人がゴロゴロしてたので、その人達がまったり仕事してるから一見緩く見えたけど
雑魚国立大学出身の自分が120%で戦っても、ゆるふわ系高偏差値大卒の方々に多方面で敵わなかった思い出がある。
自分のいた部署では京大とか九大の人が多かったけど仕事の質速さともに、一生敵う気がしなかった。
web系はそこに比べると大学の難易度と仕事出来る度合いの相関がかなり薄いと思う。理由は良くわからないけど、他のメーカ出身の人の話を聞くと同じ感想を持つみたいだ。
まあそれはたしかに。ただその企業でしか使えないスキルもたくさん伸びる…。
古い体質の企業が多いのであんまりスキルなくても給料は年次で増えてく(ごく一部除いて年収600-650万ぐらいから頭打ちになってくるけど)
1年目で500万ぐらいだったけど5年すぎるとほっといても700万ぐらいになって(ただし残業代含む)
誰でも主任クラスになれてそこまでいくと普通にやってれば800万ぐらいにはなった。子供産むと万単位で月の手当つくし住宅補助もあったし退職金も…。
Web系は給料という面では手当も殆ど無いし、そこを除いた額同士で比較しても普通に低い。同じ額もらおうとすると部長以上級にならないともらえない。
古い企業で労働組合がちゃんと組織されていて、会社と色々バトルしてきた歴史のある企業は、やっぱりベースも高いんだよなと思った。
ごりごり忙しいweb系と違って既婚率高い
組み込みのときは深夜残業とか休日出勤しまくってた。既に色々な人が指摘しているけど試行錯誤とか学習含めて会社でしかできないんだもの。そりゃそうなる。
web系の今は休日出勤殆ど無いけど、緊急対応で電話がかかってくると突発的に対応しなきゃいけないのでそれはそれ。
これは嬉しかった。
組み込み系のよくないところ
最新の開発ツールに触れてたい人が発狂するような古い環境もちらほら。github知名度アンケートやっても知ってるが2割超えないところが大半だと思う。
自分も転職するまでgitとかgithubとか使ったこと無かった人なので…。組み込みのときはsvnだった。
開発部はそこまで酷くなかったけど、評価部隊は評価用のソフトをバージョン管理してなくて悲惨だった。
直接人命を預かる機器に関わったことはないけど、ストレージ系だとバグでユーザデータ消えると大トラブルになるのでレビューは厚めだった。
ソフトウェアの品質が高いかというとそうでも無かったと思う…。レビューで担保できるソフトウェアの品質ってわりと早い段階で頭打ちになると思う。
秘伝のタレ化してるけど長く受け継がれて歴史が証明しているコードには勝てない。
部門によってはコード1行変えるのに部長の承認が必要というところもあったみたいだけど(ダムとか電車とかのインフラ)。
自分のとこは弱電はまああればより良い(特許提案とかしやすいし、マネージャクラスは当たり前のように回路やメカや量産の知識も求められるのでHW出身が多かった)けど
担当者レベルならそれこそ担当が違うんでってことで回路のことは回路部隊がやってたし、それで回路担当の評価が良くなることもSW担当の評価が悪くもなることはなかった。
どちらかというとSW担当ならヘネシー&パターソンの本から重要な部分を抜き出して読んだ程度の計算機アーキテクチャの知識が必要だと思う。
今だとこれ読めば良いんじゃないかな。
ググっても出てこない。社内で作っていうrHWモジュールの開発者は社内に居ることが多いので、やたらドラクエする力がついた。
汎用的なモジュールになると社外のドキュメントを読む必要があるけど、たいてい英語なのでそこは同意。
ただ正確に読んだところで社内外問わず間違えてたり、HWが仕様どおりに動かないことも多かった。
レジスタ設定をするタイミングが超シビアでタイミング合わないとHWがロックするとかデータ失うとか。そんなのばっかり。
それがスキルかと言われると、うーん。転職で活かせそうなところとそうでないところはあると思う。
今朝、自殺に失敗した。Kindleで首吊りの解説書を買って、吊り方を勉強していた。よく聞く「いざとなったら怖くなってやめてしまった」とか、自分には関係ないつもりだったけど、実際やってみたら、息が止まりかけたときに、反射的に輪っかから首を外してしまった。しばらく床にへたりこんだ後、布団に入って寝た。
年始に「死のう」と決めてから、春に会社を辞めているので、今後どうしたものか、まったくあてがない。いますごく困っている。
ただ、準備のつもりで、数ヶ月がかりで部屋掃除した結果、足の踏み場のない汚部屋だったのが、だいぶスッキリした。そこはある意味よかったのかもしれない。
数年かけてたまっていた電子機器とか、大量の使いかけ清掃用品(ちょっと使ったら行方不明になるのでその都度買ってた)とか、数十着の古着とかを、徐々に捨てた。
時間がかかった理由のうち一番大きいのは、ゲームしたり動画見たりしながらのんびり進めていたせいだ。でも、ゴミ自体が大量にあったのと、一度にあまり大量にゴミを出すとゴミ捨て場がいっぱいになって他の人が捨てられなくなるというのもあった。
大量にゴミを捨てる場合、市区町村ごとのゴミの捨て方を確認するのも大事なようだ。例えば僕が住んでいるところでは、アルカリ乾電池は燃えないゴミに出せるが、それ以外のマンガンとかニッカドは出せない。その代わり、PETじゃないプラスチックの容器とかは燃えるゴミに出せる。燃えるゴミの回収は燃えないゴミより頻度が多いので、これは助かった。
燃えないゴミといえば、一度怖いことがあった。大きいゴミ袋いっぱいに燃えないゴミを入れて、夜中にゴミ捨て場に持っていったんだけど。次の燃えないゴミ回収日(2週間後)にまたゴミ捨て場にいったら、自分が前回出したはずの燃えないゴミが、袋ごと、しかも口が縛られてない状態で置かれていた。誰かが一度持ち帰って、中身を見て、また捨てたのか?
以下、思い出せる範囲で項目ごとに書いてみる。
PC、携帯電話: PCは色々捨て方があるんだけど、データ消去もやってほしいなと思ってググって出てきた、リネットジャパンという回収業者を使った。データ消去は、業者のサイトからそれ用のソフトをダウンロードしてCD-Rに焼けば自分でもできるってことだったし、ネット上には同様のソフトを無償配布してくれている人もいるけど、今回捨てたうち1台は古すぎてうまくいかず、もう1台は初代のMac miniだったのでソフトが動かず、結局有償で業者に消去してもらうかたちにした。古いフィーチャーフォンもデータを消してからPCと同じダンボールに入れて回収してもらった。
古い書類: 死ぬつもりだったので、過去にもらった年賀状とか、中学生の頃に友達からもらった詩とか、そういうのも捨てた。請求書とか給与明細とかも。僕が就職した頃はまだ、IT系でも書類を自宅に持ち帰るのがよくある話だったので、銀行の勘定系システムのソースコードを印刷したやつなんかもあった。そういった紙類は、シュレッダーを買ってきてまとめて裁断した。
古着: 全部燃えるゴミ。余裕があればリサイクルに出して繊維を再利用してもらうとかもできるらしいけど、古すぎて黄ばんでるものとかもあったので、効率重視で全部捨てた。冬服を全部捨ててしまったので、自殺失敗した今となっては今後ちょっとめんどくさい。
収納用品を買って整理したもの: テレビを床置きしてたのも、死後に「こいつテレビ床置きしてる」とか引かれるといやだなと思って、安いテレビ台を買った。下着やタオルも、安いプラスチックの衣装ケースを買って収めた。
ライター: これもちょっと大変だった。燃えないゴミに出す前に、ガスを抜かなければいけない。透明なプラスチックの100円ライターは、ライターに穴をあけるための器具が横浜の東急ハンズに売っていた。火気に気をつけながら、台所の換気扇の下でどんどん穴あけした。プラスチックでも不透明なライターとか、タバコのおまけにたまについてくる金属製のライターは、穴があかないので、ネットで調べると出てくる、「着火した状態でゴムテープで止めて、息をふきかけて火を消し、しばらく放置する」というやつ。これも換気扇の下でやった。本当は外でやるべきだけど、あまりに数が多かったので、換気扇の風量を最大にしたのと、1個やるごとに、しばらく時間をあけて、「そろそろガスなくなったかな」というあたりで次の1個に進んだ。
殺虫剤系のスプレー缶とか、ゴキブリ退治用の部屋で煙モクモク出させるやつ: ガス抜きは、外に出てやった。うちは庭とかないけど、目の前に川があるので、川岸に持っていった。ゴキブリ用煙モクモクのやつは簡単で、そもそも「一度スイッチ入れると中身が出続ける」ものなので、煙が人や民家に飛ばないように気をつけるだけでよかった。殺虫剤は厄介で、ずっと指で押し続けないといけない。薬剤が飛び散りまくるのが気になって、大きいビニール袋の中に噴射してたんだけど、ちょいちょい外に飛び出して手や顔にかかった。終わって自宅に戻ってから手と顔を洗ったら、顔がなんかヒリヒリするというか、なんかずっと雨が顔にあたっているみたいな変な感覚が出てきた。半日くらい消えなかった気がする。
書籍、CD・DVD・Blu-rayや、ゲームソフト、ちょっと古めのゲーム機: ゲオとブックオフに買い取ってもらった。どちらも、ダンボールに詰めれば、あとは無料で回収して、査定して、買い取ってくれる。値段がつかないものも多かったし、本当に古いゲーム機とかだとそもそも買取可能リストに入っていなかったりする。でも、音楽とかあまり聴かない僕でも合計で数百点になっていたので、こういうサービスでまとめて処分できたのはありがたかった。査定の結果値段がつかなかったやつも、向こうで処分してくれるし。なお、汚れてしまってる本はある程度バラして燃えるゴミへ。雑誌類はまとめて資源ごみへ。
使いかけのいろいろ: 洗濯洗剤とか、消臭スプレーとか、ボディソープとか。死ぬまでに使いきれなさそうなものは、中身がいっぱいだろうと捨てた。洗面所から流せるようなやつは中身を流して、容器を洗って燃えるゴミへ。調理用の油は、固めるテンプルで固めて燃えるゴミへ。
掃除: 捨てるのがだいぶ進んでから、今まであまり掃除してなかったトイレとか風呂の排水溝とかの掃除にも手をつけた。トイレについては、汚れたトイレ用の洗剤がちゃんとスーパーとかに売ってるのと、ネットで「茶色い汚れは尿が固まったもので、アルカリ性なので、酸性の洗剤を使うと落ちやすい」とあったのが役立った。排水溝はだいぶドロドロになってて触りたくなかったので、ゴム手袋を買ってきて汚れを掴み取っては捨て、ゴム手袋自体も一緒に捨てた。
発掘品: 掃除してたら、新品のタオルとかコップとか水差しとか出てきた。コップと水差しは要らないので燃えないゴミに直行したけど、タオルは使った。最近使っていたタオルはもうほつれかけだったので、それは捨てて新しいタオルを使うようにした。あと、昔なにかのキャンペーンであたったらしい、ポッカコーヒーのラジコンも出てきた。なんとなく取っておいたけど、電池とかはもうダメになってるかも。
あと、言及ツリーで「キモくて金のないおっさん」とか「雇ってほしい」とか書いてる人がいるけど、僕ではない。似た状況にある別の人なのか、悪ふざけなのかわからないけど。
おいでよ組み込み系ワールドへ。プライベートで一切勉強しなくてもそこそこの収入とよその会社からスカウト殺到のエンジニアライフがあなたを待っている
(ソースコードの最新は共有サーバのこのフォルダなんて運用だったり、コンパイラの都合でwindows XPを使ってたり)
年次で昇級するってのは人によってはデメリットに感じると思う
今回おすすめしてるのは「プライベートで勉強しなくても周りと大して差がつかない」という理由なので実力者はそれに見合う環境を選択したほうがいいですね。
目に見える範囲の競争が緩いとこが多いので業界丸ごと外国からの黒船で駆逐されたら諦めましょうの精神。ゆるくやっていきましょう。
これは鋭い指摘で、問題を解法のパターンマッチングで処理するタイプの人は厳しいかもしれない。
時として宇宙線によるメモリエラーとか突拍子もない原因の不具合に遭遇することがあるので目の前で起きている事象を論理的に切り分けられる人でないと仕事量が爆発するかも。