「C++」を含む日記 RSS

はてなキーワード: C++とは

2021-12-16

anond:20211216153903

Rって統計用の言語じゃん

Pythonは実行速度遅いか実用的じゃないと思う。プログラマ向けのおもちゃイメージ

あんまり詳しくないけどWebならTypeScriptJS関連の周辺ライブラリSQLphp、(言語じゃないけどDockerなどのコンテナ技術)がひとまず一般的に見るモダン環境かなと思う

組み込みならとりあえずC

ゲームならC#C++(とこちらも言語じゃないけどUnity、UEなどのゲームエンジン)かなって思う

 

あとコンピュータサイエンスは押さえておけば間違いないと思うからITパスポートって選択肢は悪くないと思う。

そのうち基本情報も取りたいね

知らんけど。

2021-12-14

物語伏線とはCやC++ポインタのようなものであり、伏線回収とはメモリが開放されるようなものではないか

まり物語ガベージコレクション機能があれば、自然伏線は回収されるのではないか

無責任伏線というポインタだけを返してはならない

それはスマートポインタのようなものでなければならない

参照をカウントしてゼロになったときにデストラクタが発動するだけでも構わない

物語の中にもきっとスコープがあるのではないか

まりスコープから外れるとスタックなどに確保された変数領域が開放されるように、

物語のある地点のスコープに含まれもの、近くてどうでもいいもの記憶からも消えていく

しかし、グローバルではないが、どれだけ広範囲なのか分からない伏線のようなものがあり、

伏線ローカルスコープを超えるわけで、

物語が如何に進行しようとも、そのポインタだけはキープしている

ときどき登場人物が思い出したかのように伏線を語るとき、参照カウントが追加される

そうやってカウントが増えたり減ったりして、

最後大団円auto release poolの中に登録された伏線がドバーッと開放されていく

から伏線にはポインタのように誰が所有しているとか責任を取るべきみたいな概念が当てはまるのかもしれない

伏線を回収しないまま終わる物語というのは、

つまるところ、メモリゴミを置いたままプロセスが終了するということであり、

それでも問題ないのはOSのように周囲が尻拭いしてくれるからである

作者はコアダンプを吐くべきだ

2021-12-10

anond:20211210173912

C#じゃないのかな

C++なら . じゃなくて -> では

anond:20211210171928

Factory f  = new GetsableFactory();
Getsable dandy = f.create("坂野 賢一");
dandy.gets(); // ゲッツ

C++だとポインタ返されるのかな?

スマートポインタとかないと怖いな…

GCあるならいいけど

2021-12-09

anond:20211209024805

まあだから集合論知ってる」なんて言う人はいないよね。というか数学科でも「集合論知ってる」なんて言い方する人ほぼいないんじゃないかと思うけど。

「一応勉強したことある」とか「多少はわかる」とかそのくらいの言い方になるよね普通別に集合論に限らんけど。C++分かるなんてストラウストラップジェフディーンくらいじゃないと言えなくねみたいな。

てか集合論なんてまじでわかんなくない?無限個の積集合がどうやばいのかとか、位相空間で第二可算公理を満たなかったらどうやばいのかとか、全くピンと来てないんだけど。

2021-11-27

みんなパソコンは便利に感じているものなの?

プログラマーに尋ねると、パソコン活用できて便利になっているという答えが返ってくる。

Python最高!エクセルだせぇという感じだ。


ゲーマーYouTuberパソコンで稼ぐ手段なので便利と返ってくる。


自分プログラミングなんて趣味VisualStudioやJupyterLab、Matlabを触るくらいだ。

Python、Julia、VBA、M言語C++C#とか素人なりに書くが、どうも便利になっているように思えない。

CUIログの処理、スクレイピングとかはいいが、人に見せるためのグラフは毎回細かい調整が必要だし、

グラフや図の説明も毎回書いていて、大変なままだ。

GUIエクセルくらいマウス操作できるようになればいいのに、GUIフレームワークだと操作がひっかかる。

UI議論されているわりに全然良いのがない。


ゲームはしない。

PhotoshopIllustratorも一通り操作はできるようになったが、色々と不便だなと思うことが多い。

動画編集だとDaVinci Resolveでカットなどは便利だなと思ったけれど、Fusionだと複雑過ぎるのか、ネットで調べてもなかなか出てこないし、

これ出来ないかなと思うことが出来ない。

図を作ってアニメーションつけて説明しようとすると、途端に難しくなる。


AnsysやCOMSOLなどがあれば流体シミュレーションなどやれるのだろうけど、

そういったソフトはなかなかない。

どうもパソコンWeb最適化されすぎてる気がしてならない。

2021-11-09

GitHubのissuesで作者が言ってるように、特定バージョンVisual Studioで実行できることは確認できた

あー、疲れた

物理的に頑張ってるのは主にマシンだけど

ただ、これがMS側のバグという主張はまだちょっとよくわからんというか、

こんなんで動かなくなるのはどっちが悪いんだか…

謎が謎を呼び、Windowsネイティブの開発をしたくなくなる

Electronみたいなのか、逆にC++書いた方が早いんじゃないか

いっそ.NETやめてWin32書いた方が早いんじゃないか

そもそもMSMFCもクソだったし…

みたいな絶望しかない

みんなWebに逃げてるだけなのかもしれないなぁ…

2021-11-05

anond:20211105082712

というか、BlenderPythonの塊なんではないかと思うんだけど

C++Pythonでなかったかな…

やろうと思えば、BlenderGUIを使わないでPython操作できたはず

(近年のWebブラウザJavaScriptみたいな立ち位置でもあるよなぁ

最近Blenderが無敵ツールになりつつある気がするんだけど、

CG関係論文実証とかBlenderでやってるからという気もするし、

(そういう意味最近ゲーム以外の用途で使うUnityがスゴいなぁと思ったり…

あと、Pythonのglueとしての機能がうまくいったパターンにも思える

ただ、Pythonがあらゆる問題に対して最適ということは当然ないわけで、

Juliaとか、Nimとか、色々思い当たることもあるんだけど…

Androidアプリ開発しんどいんだよ

iPhone言語Swift やら Objective-C で、C++ だったらどれだけ良かったかとは思うが、それでも Android の開発よりはラクいのよ。理由は、多様性が無いから。

2021-10-28

Pythonなんか何の役に立つんだよ

という増田を昨日読んだ今日、午前はPythonすげー便利だった

https://naglly.com/archives/2009/05/xkcd---a-webcomic---python.php

んだけど、いくつか候補を試してたら、

Windowsだとpip installでC++コンパイルがなんかエラーが出て無理っぽいのがあった

Python関係なくWindowsはいつもこれである

WSLでもいいけど、グラフィカルなものなのでWindowsネイティブで動いてほしい

結局ソース読むんだろうか…

pip installとかPythonじゃなくてもなんでもそうだけど、

パッケージマネージャインストールトラブルと途端につらくなるよなぁ

特にWindowsバイナリ鬼門というか…

anond:20211028085714

VBAWebサーバって実現できるのかな?

と思ってちょっとググってみたんだけど、実現できなそうなんだよなぁ

Webクライアントは実現できる

からVBAスクレイピングはできそうだけど、サーバーは無理みたい

Excelファイルの内容を社内のどこからでもExcel立ち上げずにWebブラウザで見れると便利かなと思ったとき

ExcelファイルDBの代わりにするみたいなのはVBAでは無理に思えたんだけど、どうなんだろ…

あと、Pythonの強みは何でもglueとしてくっつけるところにあるわけで、

対象ExcelだけならPythonである必要はない、VBAでもRubyでもExcel操作はできる

でも、機械学習人工知能系のみならず、PythonExcelと膨大な何かを組み合わせることができるわけで、

それはVBAでは不可能なことだと思うんだよなぁ

でも、井の中の蛙大海を知らず、と言うけど、別に井の中で済むなら問題ないというか、

それどころか大海を知ってしまうと、自分の身の丈の小ささにショックを受けたり、

逆に刺激を受けすぎて、身の丈を越える目標を立ててしまったりもするわけで、

まあ、だから元増田VBAだけ書いていればいいと思うんだ

自分はそこに収まらない何かがやりたいので、PythonだろうがC++だろうがGoだろうが書くんだろうけど

2021-10-27

anond:20211027152420

ぶっちゃけ個人レベルで何でもかんでも1からコード書いて、便利!情報技術勝利!、とか言ってるのはプログラミングのものが好きな奴らのポジショントークしかないよ。そうじゃなくてマジでコスパ含めて個人で便利にできるなら似たような機能の商用ソフトだのノーコードツールだのがこれほど乱立してない。

Excelの記録機能で雛形を作ってVBAマクロを微調整するのだって立派なプログラミングだし、それで用が済むのならそれでいいんだよ。エクセルwwwwVBAwwww情弱wwwwみたいなこと言ってるのもプログラミングのものが好きな連中の中の一部勘違いした野郎がイキってるだけで何か深い思考があって言ってるわけではない。

Pythonだって機械学習系のフレームワークpythonロックインされちゃったか流行ってるだけで言語としては別に新しくもないC++と似たような時期からある古いクソ言語だし、最新のpythonプログラミングキラキラエンジニアみたいなこと言ってる奴らは全員勘違い野郎だと思って間違いない。

2021-10-23

anond:20211023021805

まぁ、悪く言うなって。Objective-CC++ よりも動的だったけど、学習コストが高すぎて嫌いだったけどさ。まぁ、クソだったがね...

anond:20211023015915

社内では PythonJavaC++ を使う

社外には KotlinGoDart を使わせる

という商売なのでは

まり、世の中はPythonJavaC++問題なく回るんだけど、

C#だの.NETだのSwiftだの新しい言語を作らないと囲い込みできないし、

新しもの言語がすきなエンジニア()ウケるので、

わざと無駄言語を作っているのかもしれない

anond:20210922222203

なんか、最後は納得できないのよな。Google言語ポートフォリオ多いのは、なんなんだろうな。KotlinGoDart新規に生み出し、PythonJavaC++要求したりとね。そのわりに Ruby を嫌う感じがわからん。どうせやるなら LLVMGNUサポートに徹するべきでは?

2021-10-05

某100日後の47歳案件

先日から巷で話題の #100日後に退職する47歳 の漫画

特にエンジニア界隈で賛否両論喧しくやられているようだけども、おそらく話がだいぶ長く進んだこともあって途中から読んだり前の方の話を忘れたりで議論の流れがおかしくなった批判コメントがいくつも流れてくるので、ちょっと整理したいと思う。

100日後に◯◯する」フォーマットによる叙述トリック的錯誤効果

まず最初に、例のワニ漫画きっかけに広くネット認知された「100日後」フォーマット。本漫画もそのフォーマット踏襲し、1日ごとに新作が投下される流れになっている。

この流れに沿っていくと、読者はその「100日後」に何かが起きることを想定した上で物語を消化していくことになるが、その「100日後」が設定されていることを「物語の中の世界」は全く知らない。それどころかその残り日数を無視たかのように呑気な展開を見せることすらあり、読者はそのコントラストも込みで翻弄させられるわけだが、当然この47歳さんの案件でも同じことが起きている。

この増田を書いている2021/10/05時点で残り18日。いわゆる退職意志を通知する期限が1ヶ月前だの2週間前だの、その点を以って47歳さんの動きの鈍さをどうこう言うコメントがあるようでそうした世間一般における転職活動上の慣習と比較して述べる見解にはある程度同感はできるものの、最初に強く胸に留めておかなければならないことが一つある。「100日後」の期限は、読者にしか見えてないのだ。

47歳さんは転職活動をしているわけではない

そしてさらに言えば、47歳さんは決して転職活動をしているわけではない。

何度か自身から言及しているように、彼は決して現職を辞める意志は持っていない。

https://twitter.com/tome_ura/status/1440876591718940673?s=20

https://twitter.com/tome_ura/status/1444499320145731585?s=20

辞める意志を持っていない癖に短期間にこんだけ休みまくってるというのは、はっきり言って理解に苦しむ。いやいいのよ、休んでも。ただ、彼は転職活動ごっこを通じて他社から内定をもらい、その内定を現職経営陣にちらつかせることであわよくば賞与0円の評価を覆させたいという狙いをもって現状を展開させているのである。その前提条件がありながら、わざわざ現職経営陣に対してさら自己評価を貶めかねない行動を取ることにどれだけの合理的理由がある?というのは、当然あがってくる疑問だろう。何しろ、休暇をとってまで進めなければならないほど急ぐ話では本来ないのだから。「100日後」のトリックについ騙されてしまうが、(L社の都合さえ目を瞑れば)可能なペースでゆっくりやればいいのだ。

またごっことはいえ転職活動を始めるにあたって、普通のケースであれば「何のために転職するのか」とか「転職先で何を求めるのか」というような、エージェントとの面談でよく行われるような自己確認プロセスを全く踏んでいない。ほとんど衝動的に転職活動ごっこなだれ込み、atcoderに没頭している。

https://twitter.com/tome_ura/status/1441237149269958659?s=20

正味の話、40代からのしかも(マネジメント方面ではない)エンジニア志望の転職活動となると本当の本当に厳しく応募者を評価してくるので、若手の転職活動ですら生半可な応募は簡単に落とされるのにさらにこの年代転職活動は鉄骨渡りかってくらいに肝を磨り減らす状況になる。それが何となくフワッと始まってしまったわけで、そりゃ見ている方は黙っていられなくなるってもんでしょう、という感想もある(その厳しさゆえ、経験者ほど語りたくなる心理をくすぐるという話も)。

そう。何もかもがフワッとしすぎなんよ。実際、あんだけご執心のatcoderというかコーディングテストも、それを持ち出したL社がどんな志望度合いかつ適性マッチングで、彼がどこまで本気出さないといけないか分かんないし。ここを「100日後」フォーマットの都合で説明するための分量は割けないとかって言うのは簡単だけど、流石に読者に丸投げしすぎだと思う。

賞与0円提示の持つ意味

でこの時点で会社側の47歳さんへの評価というのを振り返っておかないといけないが、ぶっちゃけ「いてもいなくてもいい」レベルになってると思われる。

もちろんその評価一時的な気の迷いとか、社長お戯れをみたいな話もあることはあるが、そのくらいの意味を持つメッセージを47歳さんに与えてしまたことになる。

https://twitter.com/tome_ura/status/1440149422537543680?s=20

なぜかって言えば、賞与が0円になるということは、当人転職をもし考えているなら「賞与支給時期まで待たずに今すぐ出ていっていい」ということになるからだ。まさしくIさんがそうしたように。

https://twitter.com/tome_ura/status/1437984013939929088?s=20

通常退職を考える場合、いつ退職するのが当人にとってベストかという考え方でスケジュールを設定することになる。多くの場合賞与支給される時期まで待ち、しかるのち退職日となるよう調整を図る。それより前に退職してしまったら賞与が貰えないからだ、と言ってしまえば当然のように聞こえるが、逆に言えばそれまでは辞められない。早く新環境に移ってバリバリやりたいぜなんてケースでも、6月末なり12月末なりまで待たないと動けないのはかなわん、ということだってあるわけで。しか賞与0円ということはそういったしがらみがなく、もう当人の好きなタイミングで辞めてしまっていいわけである金銭的には痛さしかないが、転職活動アクティブに行いたいと思えばこれ以上ないメリットとなる。しか採用側も「即戦力が欲しい」とすぐにでも動ける人材こそ大歓迎と募集を掛けるケースもあることを考えると、実は結構有利なカードを47歳さんは持っている。

ただ、どうやら当人はそこを十分に理解しているとは思えない状況なのが実にもどかしい。まあ転職に関する経験値がある程度ないとこの辺は発想できないところではあると思うけど、ただその辺をケアしてくれるのがエージェントなんだよな本来なら。

47歳でコーディングテストとかおかしくね?←おかしくないよ

ちなみに採用活動においてコーディングテストを課すケースが増えているのはその通り。分野や当人志向性にもよるが、40代50代でも必要判断されたらコーディングテストが行われるのは何ら不思議なことはないと思う。特に30-40代くらいからはテックリード系の募集が増えてくるのでそうしたポストを狙う際には大体必要になると思っていて間違いない。マネジメント系だと流石に減る。けど最終的には場合によりけり。

ただ、そうした募集形態WEB系に多く、それらで需要の高いPHPPythonJavaScriptといった言語に比べて47歳さんの選択したC++はあまりお呼びでないケースが多い。ゲーム系なら多少はあるけど最近C#の方が優位だし、現職で彼が担当しているようなサーバー側をC++でやるってのも(ないことはないけど)かなり限られてくるので、その点でもどうなんだろうね?という疑問符はつく(物語必要上敢えて入れてるフェイクの可能性もあるけども)。まあやるならMMO系とかかな、かなり会社限られちゃうけど。他はML仮想通貨含む金融系、決済サービス、あとIoTモノもいけるか?どのみち選り取り見取りというわけにはいかないのでかなり長い期間腰据えて良いマッチングを探す必要が出てくると思う。

それにコーディングテストがあるかどうかは過去実績等で事前に知ることのできるものだし、応募する意志があるならその応募前の時点から準備をするようエージェントが促すことだってできたはず。準備に時間必要と感じればその準備を先に47歳さんにやらせておいて、OKとなってから応募するのでも全然遅くないし、そういうふうに採用企業側に応募スケジュールを待ってもらえるよう、エージェント交渉を頼むことだって十分できる。そう振り返ると、さっきも気になったけどこのエージェント結構大概な輩な気がする。

あんだけ休んで大丈夫なの?←マジやばくね

賞与0円提示を受けるまでの物語前半から中盤にかけて休日も含めて連日連夜出勤しどおしだったわけで、おそらく有給代休も溜まりまくりなはずだしその点での心配はないだろう、会社制度に従って休む限りは思う通りにやればいいんじゃないかな。

ただ最初に触れたように47歳さんは決して転職活動をしているわけではなく、辞める気は現時点ですら全くない。それを考えた時、すでに賞与なしというほぼ最低級の評価を食らってしまっている状況でしかも他社の内定提示を以ってあわよくば会社側にその評価を覆させようとしている戦略と、いか就業規則上認められた範囲の休暇行為とはいえどこまでマッチしているのよっていう疑問は拭えんのですよ。

大事ことなので繰り返すけど、「休んでいいかどうか」で言えばどうぞどうぞ存分に、しっかり休んでリフレッシュしよ?制度有効に使えば宜しい。ただ47歳さんの今企んでることからすると完全にマイナス方向にすっ飛んじゃってる。ここで認識のズレたコメントレスバが何件か見えた。この辺の把握のしにくさは前後の流れを続けて追いにくい投稿形式故の泣きどころか。

しかし流石に今後もずっとこのペースの勤務状況が続くとは思えないけど、こんだけ会社側に心象悪くしてたら次回賞与0円提示だよ普通に。

ブラック勤務疲れ」による思考力の低下←これいつまで言ってればいいの?

これは本当に難しい。

かに物語前半のように来る日も来る日も目の前のことだけに忙殺されて一息つく暇もないような状況に置かれたままでいると、人間誰しもまともな判断がつかなくなる。それによって普通なら苦もなくできる常識的選択すらもできなくなって、どんどんドツボにハマる。これが怖いかブラック企業みたいな環境には(できることなら)近づくべきではないのだ。

しかし、47歳さんの場合その理屈をどこまで通していいのか?という疑問もある。

明確な基準があるわけではない。しかし、物語前半で悩まされてきたデスマが終わり、例の0円提示を受ける前後くらいからは勤務状況にも余裕が出てきてそれまで黙殺してきた転職エージェントアプローチにも連絡をとってみようかと思えるほどには余裕が出てきたところだった。今後の身の振り方を時間かけて考えてみるのかと思いきやいきなりそのエージェントの言われるがままに求人応募をし、さらに応募先企業の求めるがままにコーディングテストに入ってしまった。それに47歳さんには家族もいる。20代やそこらのまだ身軽な立場とは訳が違うのだ。ごっこではない本当の転職活動を考えたなら、真っ先に相談しなければいけない相手がいるのに、である

そりゃないぜおい、と総ツッコミ状態になるのも頷けるというものである

ツッコミ役の不在

そう。この物語を読む上で大事な要素がもう一つ。ツッコミ役がいないのだ。

出てくる人間皆どこか呑気であっけらかんとしていて、ブラック企業然とした勤務体制の割にどこか抜けている。それがある意味ブラック企業構成するのは必ずしも悪意や力による強制とは限らないリアリティを帯びていたりして読む者を惹きつけるのだと思うが、物語上の要請としてはやはりツッコミ役がいるといないとでは、読者心理の安定感が違ってくる。

ツッコミ役が居らず終始ボケ倒すだけの物語進行は正直辛い。特に主人公が必ずしもヒーロー的ではなく、様々な出来事に戸惑い振り回されミスを冒したりしながら進めていくような場合、「そうはならんやろ」と物語中で言ってくれる存在がどこかにいないとなかなか人は安心できない。ツッコミ役とは、物語世界と読者世界リンクしてくれるありがたい存在なのだ

ただ本案件においては、このツッコミ役の不在が逆にそれらの読者のフラストレーション活用してネットのバズを呼び込み、言葉は悪いが炎上マーケティング気味に成功した側面もあると思う。なので功罪両面から見ていく必要があるとは思うが、物語の消化、進行という意味では間違いなくデメリットとして記憶しておくより他はない。

周囲の視点の不在←ここ一番重要

さらに踏み込んでしまうと、この47歳さん、「自分が周りからどう見えているのか?」という視点全くない。驚くほどに。

通常40代も後半となれば、どれだけ拙くてもいいからチームや会社からどのように自分が見られているかを把握し(ようとし)、その上でどのようにプレゼンスを高めていくかを戦略的に考えて行くことが求められる年代だし、それが会社から給与賞与として反映される仕組みであるとかの理解として備わってることを期待されるし、転職採用側もそういった視点を強く求めて応募者を見極めようとすることだろう。

しかしこの47歳さん、(いくらブラック勤務疲れで思考力が弱まっていたとはいえ)ただただ賞与0円提示をひっくり返すためだけに転職ごっこをはじめ、その代償に短期間に有休消化を繰り返し、現職も辞める気はないとくれば、側で見ている方はただただ疑問符ばかりが並ぶしかないわけである。そんな他社から内定があったからって簡単会社評価が変わるか?というのも疑問だし、万一それで評価を変えたところで、そんな易々と評価が二転三転する会社を信頼して居続けることを良しとするか?という疑問だってある。

そもそも他社の内定を糧に現職に賞与アップを迫るという構想自体が、47歳さんの中での完全なひとりよがりである。何かしら彼がそう発想するに妥当性を与えるようなエピソードがあったわけでもなく、経営側の視点も他社の評価atcoderの成績がどうこう影響しそうな要素は微塵もない。せめてそこを何らか裏付けるような話の流れでもあればまた印象は違っただろうが、他者から視点評価を全く交えず完全に47歳さんの思い込みだけで始めてしまったギャンブルを、そう簡単肯定的に受け止めることなどできないわけでして。ええ。

元々の話がその「自分評価を上げるため」に始まったものだったはずが、その「上げる」人が誰であってその人は何をすれば「上げて」くれるのか、この戦略判断からして怪しいぞとなってくれば、読者も黙っていられなくなるのは必然。どう見てもこの展開で47歳さんが賞与もらえる未来線描けないもの

それも含めて作者の狙い?バズ呼び大当たり?うーん、どうなんすかね。

まとめ「じゃあどうすりゃよかったってのよ?」

わかんない。

ただ言えるのは、縷々この記事で述べた通り、狙ってることとやってることがチグハグすぎてどうしようもないなというのが正直なところ。元々は転職する気がないのだからごっこ遊びなんぞには目もくれず全く別の戦略必要だったかなというのもまあまあある。ただ、会社の体質として問題があるのは確かでその点は転職は不可避なんじゃないかと思える一方、その現職になんだかんだでよく適応してるのも確かなわけでどうしたらよかったかと言われると正直わからん。というか47歳さん自身どうすべきか以前にどうしたいかのところでわけわかんなくなってないかい?知らんけど。

一方で今の状況じゃ転職活動としては踏み込みが甘いし、冒頭に述べたように「100日後」なんてリミットは彼には本来ないわけだから転職に向けた自己分析とatcoder練習とを諸々仕切り直しつつ毎週の週末に少しずつ進めていけばいいのだ。そしてしかるのちスケジュールをぐにゃっと変えて残り-30日か-60日ぐらいのタイミング転職する47歳さんあたりがまあまああり得る妥当な展開かな。

L社のテスト?本気なら待ってもらうしかないっすね。他の候補者がどういう状況か次第だけど、本気で交渉すれば結構融通きかせてくれますよこの手の締切は。待ってもらえないなら巡り合わせが悪うございましたってことで。

2021-09-25

オブジェクト指向はすでに粒度時代にあっていない」を読んで

記事

@kis (id:nowokay) さんの以下の記事についてです。

https://nowokay.hatenablog.com/entry/2021/09/25/042831

ブコメにもあるようにちょっと内容が雑というかわかりにくいせいで賛否両論になってしまっていて、もしかしたら近いうちにアンサー記事が出るかもしれませんが、自分自身理解を助けるためにも言わんとしていることを推測しつつ、自分認識もまとめておこうと思い書くことにしました。明らかに誤読してそうな箇所があれば、指摘してください。

前提

まずは前提を書いておかないと論点がぼやけると思うのでいちおう。

自分バックグラウンドは以下:

その他の前提:


本文およびブコメを読んで思ったこ

2000年代に入って関数型プログラミングが脚光を浴び始めたのは、コンピュータ資源が潤沢になりパフォーマンスをそれほど気にしなくってよくなったことが大きな理由ではないか、という認識があります

関数型プログラミング言語の内部実装を読んだことがないので推測ですが、データを不変にするということはその都度メモリ領域を新たに割り当てることになり、そのオーバーヘッドプログラムパフォーマンスに影響を与えるので、パフォーマンス要件がをシビア場合、どうしてもメモリ割り当てや計算効率を考えるとミュータブルにせざるをえないと思います。が、ウェブアプリケーションに限っていえば、データベースアクセスネットワークアクセスレイテンシが大きいので、そうした相対的に細かいオーバーヘッド無視しても(大抵の場合は)問題にならなくなった、というのが「時代」の流れなんだという認識です。

いっぽうで別の観点もあって、REST API や FaaS が一般化して、関数単位で処理を分割し、アプリケーション外部に配置することが当たり前になってきた現状があり、マイクロサービスのようにアプリケーション自体モジュールの一単位として考えると、アプリケーション内部のモジュール同士でも関数ベースでやりとりする形になっても不自然ではないと考えられます

記事にもありますが、RPC派生実装?)として生まれJava の CORBA や MicrosoftDCOM みたいな振る舞い付きのオブジェクトコンポーネント)を共有しようという世界観は廃れ、REST API のような単一の振る舞い(エンドポイント)とそれにひもづく JSON のようなデータ構造のみを受け渡すやり方が一般的になったアプリケーション通信の潮流と、計算資源が潤沢になって再度脚光を浴びた関数型プログラミングが、レイヤーの違いを飛び越えてひとつになろうとしているのではないか、と。

まり、元記事に書かれている「時代に合ってない」というのは、「データ構造と振る舞いが一体となったオブジェクト」のような「なにか」は、そうした背景があるために、どこにも存在する必要がなくなってきているのではないか、と解釈しました。

なので、以下のコメントちょっと論点がずれてると思いました。

はあ?「再利用する方法としてはWeb APIが主流」って、その中身をオブジェクト指向設計することは、全く矛盾しません。 部品化の単位は、慣習や柵などで大きく変わりますオブジェクト指向とはほぼ無関係です。

https://b.hatena.ne.jp/entry/4708813645995359202/comment/suikyojin

なんでサービスとして外とやり取りする話とサービスの内部設計の話をごっちゃにしてんだ。なんか理解度が怪しくない

https://b.hatena.ne.jp/entry/4708813645995359202/comment/ssssschang

しかに、アプリケーション単位アプリケーション内部のモジュール単位とでその表現形式を合わせる必要はないんですが、元記事の言わんとしていることはこの一文に端的に表れていると思います

ソフトウェア記述をまとめるという視点では主にステートレス関数を分類できれば充分で、データと振る舞いをまとめたオブジェクトというのは大きすぎる、システムを分割して管理やすくするという視点ではオブジェクトというのはライフサイクルリソース管理視点が足りず小さすぎる、ということで、オブジェクト指向粒度でのソフトウェア管理は出番がなくなっているのではないか、と思います

個人的にわからなかったのは以下の部分です。

オブジェクト指向でなぜつくるのか」という本がありますが、「え、いまどきオブジェクト指向でつくらなくない?」っていつも思います。内容的には、もうほとんどはオブジェクト指向関係ないソフトウェア工学の紹介になっていますね。

当該書籍は読んだので後半はまぁわかるんですが、前半は「え、いまでもオブジェクト指向でつくるのが主流じゃないの?」って思ってしまますオブジェクト指向定義が「データ構造と振る舞いが一体となったオブジェクトの集まりとしてソフトウェア組織化すること」なのであれば)。

おわりに

Joe Armstrong が "Why OO Sucks" を書いたのが2000年とのことなのですが、そろそろこうした議論収束に向かってほしいと個人的には思います(とっくに収束していると感じている方もいらっしゃるでしょうけど)。

https://gist.github.com/posaunehm/4087971

2021-09-04

デジタル監が炙り出した日本人権威専門用語への盲信

何かと話題デジタル監の石倉氏。

デジタル自体菅政権の最大の施策の一つであり、また担当大臣平井大臣が癒着パワハラネット工作などの疑義が前から掛けられてた事もあって関心は高かった。その中で、事務方トップであるデジタル監」の人事も少し話題から紛糾しており、カリブ海ロリータ島をセレブ提供していて最終的に消されたエプスタインとの金銭関係があった人物が一時候補になったが、流石に身辺調査したらやばくねということで見送られて、結果的に72歳の石倉氏が就任する運びになった。

しかし、就任会見(?)のときに、彼女発言の一部が報道されて、デジタル庁のトップとしての適正がいきなり疑問視された。

Twitterなどでは主に石倉氏の経歴を理由に「彼女は優秀に違いない!!」バイアスが掛かった擁護が繰り広げられた翌日、彼女インターネット上の基本的著作権理解しておらず、ガビガビの画像ブログ掲載するほどWebデザインにも無頓着ということが明るみに出てしまい、「スーパー72歳」とか「デジタルに超詳しい百戦錬磨の敏腕素人」と祭り上げていた人達は一夜にして梯子を外されてしまった。

https://twitter.com/KAZE/status/1433268216235630599

https://twitter.com/mesotabi/status/1433399709566062594

https://twitter.com/Benzman_TAKE2/status/1433308767442006018


5ちゃんねる、ヤフコメはてななど、右翼左翼系のコミュニティーでは、一晩にして否定的な声が多数を占めてしまい、ここから挽回が期待されている。中には、「警視総監万引きしたようなもんだ」という痛烈な皮肉まで展開されていて厳しい船出である。その中でもTwitterだけは、著作権侵害を告発した被害者であるPIXTA社がなぜか糾弾されるという被害者の二重レイプまで起きており、政府が力をいれているインターネット対策の中心地はここなのではないかとも勘ぐらされたのである

日本人はとにかく学歴権威に弱い。ショーンKとか齋藤ウィリアム浩幸とか竹花貴騎とかそうだけど、ちょっと豪華な学歴と経歴があれば、真偽はともかく「この人はすごいんだろうな」バイアスがかかる。このデジタル監の石倉女史も「経歴がものすごいんだから超優秀に決まってる!」という主張が相次いだ。一部では「プロ社外取締役」「渡り鳥」ではないかという意見もあったし、少なくともITデジタルに関する業務ほとんど経験ないのは明白だったけど、とにかくすごい大学出てすごい会社社外取締役経験してるんだから、お前等は何も言うな的な論調が高まっていた。

しかし、「誰が言ったか」ではなくて「何を言ったか」が問題なのである。たとえ華やかな経歴があっても72歳のお婆ちゃんだ。普通ならもう年金生活している段階の高齢者を引っ張り出してくるなら、相応のデジタルに対する知識や造詣、情熱必要なのではないか。もちろん、彼女は実質前前任の桜田義孝サイバーセキュリティ担当大臣よりは数千倍マシであろうが、それでもデジタル後進国日本ITリテラシーを高める急務が求められているときに、この人が本当に適任なのだろうか。同じマッキンゼー云々なら、南場智子氏の方が全然適職ではないのだろうか。経団連兼任してるからしかたかもしれないが。普通にTwitterブログやってるお婆ちゃん事務方トップになれるなら、数百万人レベル候補者が出てくるだろう。

そして、石倉氏に対する反応については、もう一つ大きな問題が有り、彼女が「ワードプレス」とか「Python」とかい言葉を出しただけで、超敏腕のスーパー天才ITエンジニアではないか、という受け止め方がされていること。

https://twitter.com/youyakuya/status/1433449570134990853

もちろん非ITエンジニアにとっては「ワードプレス? Python? なんかよくわからんけどとにかく凄いんだろ!!」みたいな反応になってしまうことはある程度は仕方ないと思うのだが、そもそも彼女は「Python勉強していいたけど難しくて挫折した」のである。これはむしろ氏のデジタル適正の完全否定他ならないと思うのであるアセンブラ言語C++ならまだわかるよ。人には向き不向きあるからね。でもPythonができないのって普通に才能ないと思うよ。数ある言語の中でも平易なもの。だからこそ世界の主要言語に躍り出た。ワードプレスなんてただのブログ作成ツールだし、そのご自慢のブログでも早速やらかししまったんだけど、そこでも「本人はワードプレスには一切触れてなくて、部下やスタッフ勝手にやった」みたいな擁護までされて、WPバリバリに使いこなすスーパー72歳という設定はどこにいったの感がある。

「72歳なんだからプログラミングできないのは仕方ないだろ!」という声もある。しか日本には石倉さんより15歳ぐらい年上なのに、Pythonより遥かに難解なObjective-CiOSアプリを開発している女性がいるのだ。xcode使いこなすのはWPの数千倍難しいぞ。高齢者に対するデジタルへの抵抗感をなくすのが目的なら、彼女のほうがデジタル監に相応しいと思う。

https://style.nikkei.com/article/DGXMZO37707280T11C18A1000000/

要は「石倉さん? よく知らないけどwikipedia見たら経歴すごいし、PythonとかWordpressとか触ってるようだから、凄い人なんだ!!!」という思い込み脊髄反射がされた一件である。我々もJavaPHPObjective-Cしか書けない底辺エンジニアであるのだが、恐らく世間的には増田さんって頭いいんですね~デジタル得意なんですね~みたいな受け止め方がされるのかもしれない。日本人権威に弱く、日本人は「よく分からないもの」は「畏怖」を覚えてしまう。

しかし、石倉氏はデジタル監に完全に不適任かというと定かではない。というのも、こういうポジションは実務はほとんどなくて、ただのお飾りポジション、それこそ彼女歴任してきた「名誉教授」とか「社外取締役」と同じなのではないかも思えるのである。実務がないのであれば弊害もないだろう。実際、Twitterウヨ勢力はこぞって彼女を熱烈支持することに決めた。それこそ著作権侵害であってもさっさと謝罪たからむしろ素晴らしいというアクロバット擁護まで。

弱きをくじき強きに媚びる反知性主義ネトウヨが牛耳る今のIT後進国日本象徴する人事であることは間違いない。

2021-08-27

anond:20210827181127

RustもC++もわかりません。

CとGoでしのいでいます

https://speakerdeck.com/faithandbrave/opunhua-gajin-muc-plus-plus-falsexian-zhuang-tozhan-wang

このC++オープン化、ライブラリ用途についてのスライドに対してのコメントとして「Rustでよくね?」って言ったら、関係ないこと言うな!って怒られるのね。スライド内の用途について語るところで他言語に対して言及してるんだから、そこに関連してコメントでRustについて言っても何も変なところは無いよね。というか、そんなツイートするくらいなら、C++とRustがどう違うかを周知したほうが有益じゃないか。というか、それは何なの?

2021-07-26

anond:20210723234128

ブコメに訳はおかしくないって人が多いが

とある C++ 教本で、「new operator」が「新しい演算子」って訳されてたんだ

これは誤りで

オブジェクトを生成する「new」という演算子があるんだ

× 新しい演算子オブジェクトを生成しま

〇 new 演算子オブジェクトを生成しま

翻訳する人がその演算子を知らなければ間違った訳になるが

文章単体では評価できない

結構このレベル誤植はありふれてて

必ず原典を当たるという人も多い

2021-07-10

ゲーム開発者になりたい学生さん

ゲーム業界プログラマーとしてやっている身から考えを書いてみる。

「私のフォロワーの方にはクリエイターゲーム関係の方がたくさんいらっしゃると思います。皆様の意見を聞かせていただきたいです。」

https://twitter.com/gamemakerdiary/status/1413185724849954817

最初に考えるべきは、ゲーム作りの何をやりたいのか、だ。

ゲーム会社経理や人事でも、好きなゲームに関わっているということで満足する人もいる。

小規模なゲームをひとりで全部作りたいのか、中規模以上のゲームのどこかを担当したいのかくらいは考えておくべき。

次は専門職シナリオグラフィック作曲といった専門の教育を受けてないと手も足も出ない分野。

これも解像度を上げると、コンセプトアートキャラデザインムービーモデリングライティングUIデザイン、録音、効果音などなど無数に分類される。

でもまあ、プログラマーひとつ花形なので憧れる人も多い。

ゲーム会社特にコンシューマゲームプログラマーとしてやっていくなら、学生時代に身につけている言語環境よりも、「大規模なものや複雑なものを怖れず学ぶ」資質大事だと個人的には思っている。

ゲーム開発は、ゲームエンジンやフレームワークライブラリAPIを多用する。それもネット検索してもまったく情報がない独自のものだったりする。

そもそもゲーム機はOS自体普通と違うし。ビルド使用するツールチェーンもかなり複雑になっていることが多い。

簡単な例でいうと、Visual Studioよりもテキストエディタの方がシンプルで使いやすいと思うタイプは要注意だ。

複雑でも多くの人に支持されているツールは何か良いことがあるはず、と思ってVisual Studioを使いこなす気持ちを持とう。

学生時代作品ProcessingなどではなくC++で書くべきとか言われるのもこの辺に通ずる。

あとプログラミングに自信がある人で、既存ライブラリは複雑で使いにくいからとオレオレライブラリを作ってしまう人も要注意。

実は俺もそういうタイプなので苦労した。

ゲーム開発は複雑なものをそのまま使わなくてはならない日がいつか必ず来る。

既存の複雑なものを使う能力と言うのは、つまり大量の(英語を含む)ドキュメントを読む能力、大量のソースコードを読む能力でもある。

大量のコードを書ける能力はもちろん歓迎される。

シンプルで洗練されたコードも素晴らしいが、洗練されたコードをめちゃくちゃ時間かけて書く人よりも

多少いまいちでも手が止まらず書き続けられる能力がある人の方がまわりには多い。

そういう人は、いまいちコードに何度も手を加えて最終的にはまともなコードにしてしまったりする。

ゲーム全般ゲーム開発に関する知識量は、プログラマーとしても最大の武器だ。

有名なタイトルがどういう特徴を持ったゲームなのか広く知るのには膨大な時間がかかる。ゲーム好きでそのあたりに詳しいだけでも強い。

Unityなどのゲームエンジンに触ったことがある、というのもスキルというより知識武器という意味合いが強い。

入門書レベルではなく、UniRxとかのプログラムの書き方の根本からくつがえるようなライブラリ経験とか、Unreal Engineソースコードをいじったことがあるとかレベルなら超強い。

大学ゲームサークルインディゲーム開発のグループ経験がある人はここが強いように思う。グローバルゲームジャム参加経験者とかも。

それから、ここが一番言いたかった点なのだが、前述の専門職とまたがる知識のあるプログラマーはめちゃくちゃ重宝される。

グラフィックならシェーダーがめちゃくちゃ書けるとか、3DデータやIKを扱った経験があるとか、3Dベクトル行列演算数学が得意だとか。MayaBlenderを使った経験があるだけでも強い。

サウンドならDAWや波形編集ソフト普段から触っているとか、信号処理に詳しい人。

まりデザイナーモデラー音楽家気持ちがわかって、その人たちと専門用語で話ができるプログラマーはどこでも食っていける。

あと最近AIに強い学生ゲーム会社積極的採用している。

ひとつの専門知識プログラミング能力を身につけるのはわりとおすすめ戦略だ。ゲーム開発の全部に詳しい必要は必ずしもない。

CEDECなどのカンファレンスに参加して、どういう知識体系があるのか知って、自分の強みを考えよう。

ゲーム開発用の自社ツール制作や、プロモーションWebサイト制作など、ゲーム本体以外のプログラミングも多いので、

ゲーム会社プログラマーならこうあるべきという正解はひとつではない。自分特性に合った道をめざしていこう。

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