「ライブラリ」を含む日記 RSS

はてなキーワード: ライブラリとは

2024-08-18

なんか「ITがつまらなくなった」叩かれすぎてムカついたので書いてみる

個人的には、ゲームエンジンを書く仕事がなくなった

これはデカいと思うんだよな

ゲームエンジンって職人芸的なところがあった

Unityとか、Unrealとか、物理エンジンBox2DとかBulletとか、当然昔はなかったので、みんな自前で書いてたはず

例えば、スーパーマリオ物理挙動とか衝突判定は当たり前だけど自前で書いてたはず

でも、今はブロック崩しさえUnityとかUnrealに含まれてる物理エンジンで剛体力学使って書けちゃう

なんかそういうの無駄計算力だよなと思うけど、まあ書けちゃう、動いちゃう

しかチュートリアルかなんかにもあったはず

昔はゲーム作るときって、リードプログラマーが1人いて、他も数人で、少人数で職人芸的に作ってたわけだよ

全て自前でやらなければいけないから、簡易的なものを作るにしても、一応大学でやった物理を再度勉強したりするわけだ

剛体力学とか、流体力学とか、材料力学とか、そのための数学とか勉強し直したりした

あと、ゲーム業界バブル?だった頃は、海外なんかでは物理とか数学博士号取ったような奴までゲーム産業に入って来た

彼らはゲーム業界に進まなければ、銀行とか保険会社証券会社とかもある、もっと高給な仕事がいっぱいあるはずなのに、薄給ゲーム産業に飛び込んできた

彼らが高度な知識で色々な試みをしてくれたおかげで、今のゲーム産業があると言っても過言ではないと思う

だって日本ゲームってどれも枯れた技術の水平思考ばっかりなんだもん

よく言えば、アイディア勝負

悪く言えば、保守的、必ず作り上げるという意思から石橋を叩きすぎたようなものを作る

今の日本産業全般まったく同じだよね

例えば、初代のバイオハザードだったかカメラ固定だったじゃん

今どきアローン・イン・ザダークかよwって思ったよなw

あの頃、自分PCDOSとかで普通にFPSやってたから、あくま技術的にだけど、アホじゃないかと思ったんだよな

でも、周囲のプログラムとかIT業界関係のない知人とかは喜んで遊んでる

個人的には、凄い冷ややかに眺めてた

なに周回遅れやってんだ、日本ゲームは、って正直思ってた

日本バイオが固定視点なのに対して、海外勢はFPSとか三人称視点ちゃんと作ってたよな

日本FPSっぽいの初代PSちゃんとやってたの、攻殻機動隊だと思うんだよね

今に至るまで、最も原作意味をくみ取ってたアニメだったし、石野卓球なりの曲も良かった

時は流れて、今の日本ゲームもみんなUnityとかUnrealになった

Godot選択する人もいるかもしれないけど、あれ、良さそうだと思ったけど、情報なすぎるよね

ソースは公開されてるんだからソースを読め的な感じもしたし、今どき?

独自スクリプト勉強するのもなんだな、と思って、ちょっと使う以上に使う気になれなかったんだよな

調べてもらわなくても、まあ、分かるだろうけど、UnityとかUnreal開発者日本人とかもいる、はかなり著名なゲームを開発した人も含まれてるよね

彼らは、当たり前だけどUnityとかUnrealがない時代は、当然自分たちで全てを書いてきた人たちだ

リードプログラマーが一人といったけど、かなりの分量をリードが書くはず

ほとんど一人開発と言ってもいい

あと、そういうリードプログラマー職人みたいなものなので、自分で書いた数学ライブラリとか、物理エンジンとか、持ち歩いて会社転々としてる人もいたはず

厳密には権利問題もあるかもしれないけど、そういう優れた人材は引っ張りだこなので、会社転々として、

その場その場で、自分で1行目から書いた、自分しか持ってない自前のvecmathライブラリとか、物理とか、ノウハウ財産として持って移動しまくってた

で、そうやって業界サバイバルしてきた人たちのトップランナーが、今はUnityとかUnrealで開発とか営業とかやってる

多分だけど、もうコアな部分を書くことなんてなくなっているだろう

UnityUnreal以前は、行く場所行く場所で、ゲームエンジンレベルからゼロから書いていた

でも、UnityUnrealはそれを当たり前だけど共通化するわけで、そしたら一度書けば、それはずっと使われるコードになる、当たり前のこと言ってるけど

で、困っちゃうのは、そんなトップランナーになれなかったゲーム開発者

ゲームエンジンを開発するための、数学物理コードに関する能力特にCやC++が多いだろうけど、そういう能力はある

自分は凡人以下だろうけど、かなり凄い人もいるんだろうけど、そういう人も含めて、ゲームエンジンレベルから作る職人芸は無意味、無価値になった

もちろん、まったく無駄にはならない

結局、UnityUnrealを使うときに、単に使うだけでも中の挙動勉強しなければいけない

から、より深く知ることができる能力はあるんだと思う

でもね…

もう、ゲーム開発がコードガリガリ書く仕事というより、コンテンツを作る作業にほぼなっちゃってないか

3DCGモデリングシェーダー、ゲーム本体も含めて、箱と箱を線で繋ぐような作業ゲームができるようになってる、とっくになってる

そうすると、もうC、C++ガリガリゼロから書いていた人とか、

それこそ、PS2の開発はよく知らんが、悪評が高い、あれはOSレベルから書かされたりしていたように聞いてるし、

そういう人たちもゲーム開発の現場でそういった知識が活かされることはもうない

逆に、北欧生活保護もらったりしてただろうNotchのマインクラフトとかの方が成功しちゃったりしてるよね

あれはゲームエンジン?と言っていいのか分からんけど、あの独特のボクセル世界ゼロからJavaで書いたもの

彼は時間制限ゲームを開発するイベントに数多く参加していて、いつもJavaでサクッとゲームを作っていた

でも、彼は日本だったら成功しなかったように思う

だってプロゲームプログラマーっぽくはない、Javaしか書いてないとか、それこそJavaの方が生産性が高いみたいに言ったら、日本ゲーム業界だったら鼻で笑われてただろう

彼はマインクラフトの前に、ゲーム会社所属していたし、そこで開発していたのは、世界をすべて緻密に構築するようなゲームだったらしいけど、

自分の予想だけど、そんなの全地球シミュレーターの簡易版みたいなもので、無謀な試みというか、かなり複雑な仕組みになっていたはずだ、自分が聞いてたら、実現できるかさえ怪しい、と思っただろう

彼は途中で会社を辞めて、マインクラフトを作り始めている

彼は世界を緻密なボクセルポリゴンではなくて、大きなボクセルで実現することにした、まずそこが出発点であることは間違いないだろう

そこからセルオートマトンで川とか水を実現できるんじゃないかみたいに発想が膨らむよね、プログラマーなら

話をまとめると、ITがつまらなくなった話はゲーム開発にも置き換えることができる気がしている

昔のゲーム開発に少しでも携わっていた自分のような人たちは、今の時代では老害だということは重々承知しているし、

多分、今、ゲーム開発に興味がある子供とかがゲームに望んでいること、ゲーム開発でやりたいと思っていること、と自分たちの世代ゲーム開発者がやりたいと思ってたこと、やってきたことは、もう全然乖離してるんだと思う

考えてることが乖離してるんだから、話が通じないのはおかしくない

違う世界を生きてる人、偏差値がいくつ違えば会話が成立しないなんて話もあるように、今の子供たちと会話が成立しないのはおかしくない

そして、当たり前だが、現状を正しく認識しているのは、今の子供の方の可能性が高い

ゲーム開発は職人芸だった

基本的にはCやC++で膨大なコード短期間に書くことが要求される仕事だった

それが今の子供たち、というか、今の時代環境に慣れた人たちにできる仕事とは到底思えない

そういうトッププレイヤーは、今はAIなり何か、最先端のものをそういった企業のコアの部署で、コアなものを開発しているはずだ

でも、そうなれなかった人たちはどうなる?

そういう仕事はなくなってしまったんだぞ?

高度な彫り物とかするような職人が、NC工作機器とかで彫り物をするようになったら、職人必要なくならないか

伝統工芸だの、人間国宝だの、そうやって手で作ったものの方が温かみがあるみたいなオカルトに守られて生きられる人間がどれだけいるだろうか?

その、人間国宝レベルの人たちがUnityUnrealのような企業に吸収されていく

あとは過去に開発したゲームネームバリューを活かして講師職になるとか、そういう感じだろう

そうなれた人間がどれだけいるだろうか?

優れたリードプログラマーに触発され、職人になるべく数学物理プログラミングの知識習得を重ね、朝から晩までひたすらコードを書いていたのに、

一発の銃弾で、そういった職人はすべて無意味になった

今の生成AIは大したことないと自分も思うが、驚き屋wwwとか馬鹿にしてる奴らは、いつかうっかりAIに職を失われないか、よく普段から考えた方がいい

あと、AIに職を奪われたくないから、プログラミング頑張る、みたいな奴は、俺的には間違った頑張り方だと思うw

そのプログラミング自体がなくなるかもしれない、って言ってるんだって

技術習得とか、自分技術マウンティングし合ったりする暇があるなら、別業種のことでも勉強した方がいい

そういえば、優れたアニメーターだった人が、作画として年齢的に限界にあるし、親族にもアニメーター辞めるように言われてたらしいけど、

ある日バイク事故にあって、アニメーターを続けられなくなって、その人は年齢的にギリギリで清掃車運転する仕事についてたはず

立派な公務員になれて、空いた時間で絵を描いては、市役所などで販売してたはずだ

何が人生として幸運かなんて分からないけど、必ずしもアニメーターが庵野とか宮崎駿を目指すのが幸せなのだろうか?

どこかで自分仕事を辞めて、それを趣味にして、安定した仕事に就いた方が、心の平安が得られるのではないだろうか?

名誉を優先して、心労で死ぬみたいな人生が良い人生なのか?

というか、富野アニメなんか、やたら名誉を優先して失敗する人が出てくるよね

長い人生生きてきた老害には、ああいうのなんかよくわかるんだよね…😟

追記:驚き屋とバカにしがちな人も注意した方がいい

みんなが驚き屋って読んでる人たちは、基本的Pythonとかも書けないし、計算機科学とか数値計算知識とか曖昧というか、まったくないような輩がいるし、

元の文章であるITがつまらなくなった」だったか文章にもあったように、ビジネスアイディアだけある胡散臭い素人乱入してきた感があるわけだけど、

でも、老害って若い世代とか新しいものを疑ったり反発しがちなんだよな、自分も含めて

から、たしかに驚き屋の連中のかなりは胡散臭い詐欺師みたいな、出まかせで大金持ちになったスティーブジョブズの極小コピーみたいな連中ばかりではあるけど、

でも、生成AIとか、これから汎用AIとかもどうなるのか分からんけど、どんどん素人に有利になってくと思うんだよな

だってUnityとかUnrealで作ってる世代ガリガリC++書くのなんて馬鹿げてると思ってるだろうし、

プログラミン技術もっと怪しいのはWebアプリ界隈も同じだと思うんだよな

RailsPHPで書いてる連中と、C++で書いてる連中の世界は、見えてる世界がかなり違うんだよ

そもそも、そういう輩はLinuxとかWindows上で書いてるわけで、いわゆる家庭用ゲーム機とかでコードいたことないだろ?

でも、Xbox発売時にビルゲイツが言ったように、(なんかSEGAだかソニーだか知らんけど)所詮ゲーム機なんて機能制限されたパソコンだよね、

nVIDIAとかGPUカードどんどん作るんだし、パソコンの方が最先端グラフィックス体験できるよね、

みたいに言いつつ、Xbox発売したわけだけど、自分もそう思ったけど、あの預言は的中したよね

もう、Steamパソコンで十分だろ

情弱信者だけ任天堂Switchとか使ってるんであって、ビルゲイツが言ったように、ゲーム機の中身は機能制限されたパソコンだよ

昔、TRONというプロジェクトがあって、あれを孫正義がクソミソに言ったという話があったと思うんだけど、

日本だけで閉じたプロジェクトを出発させても、アメリカ豊富資金で、カネと資源という暴力で作られるオープン世界絶対負ける、ようなことを言ってて、

当然、そのあとIntelなりWindows日本は負けるし、半導体としては台湾90年代で既に負け始めてたわけで、

家庭用ゲーム機も同じで、家庭用ゲーム機の新しいバージョンが出るまでのスパン機能は固定されるから安定して確実に動作するゲーム販売できるとか、

色々利点はあるんだろうけど、でも、その間に日進月歩で、それこそnVIDIAみたいな企業がどんどん進んでいくわけで、

グラフィクスシンセサイザーwとか名前はカッコいいけどさ、名前に準じてたら、今頃ソニーNVIDIAに勝ってない?違うでしょ?

話を戻すと、どんどん素人が参入してきて、その素人が頓珍漢なことを言ってるのが不愉快だ、許せない、驚き屋氏ね、みたいな気持ちは分かるけど、

素人が参入できるようになった、というのは、世の中の流れが変わったわけで、そういう若い世代をただバカにするというのは、老害しぐさだよね

気持ちは分かるけど、ドラえもんのように生暖かく見守るとともに、老害も新しい技術とか、素人が驚いていることをちゃん咀嚼して、吸収していく必要があるんじゃないの?

だって老害なんだからさ、経験だけは豊富にあるんだからさ?

ちゃん大学大学院で計算機科学、情報科学をやってきったわけだし、あやふや知識でイキってる若者に対して老人が取るべき態度ってそういうもんじゃないの?

例えば、子供が初めて何かを見て驚く、それを大人が見て、そんなのはありふれてる、驚き屋wwwと思うだろうか?

子供素人から初めて体験したわけで、なぜ子供がそれを見て驚いたのか?とか、子供目線ちゃんと考えられる人は、教える人に向いてる人だと思う

他人に教えることがうまい人は、自分経験能力も整理することがうまい

深く理解しているからこそ、他人に教えられるんだよな

から、驚き屋という子供素人が何に驚いたのか?という目線を持つの大事だと思うんだよな

顧客だって素人なんだし、Webとか特に

素人がいちいち驚いてるのを見てバカにする、って姿勢は、老害以前に人として自分は嫌いなんだよな

2024-08-10

日本って製造業諦めた時点で駄目だったんでは

米国を参考に、製造業からソフトサービス産業移行を目指してきたけど、駄目だったのではないだろうか。

米国のように軍事力を背景に、米国外への法律が効力を持っていたり、ビジネス面での情報収集能力日本にない。

ソフトサービスが力を持ってきたといっても、それを支えているのは膨大なサーバーで、物量で勝負している。

他社企業が出してきたクラウドライブラリの使い方を覚えることで精一杯でリソースが取られてしまっているという現状もある。

標準に合わせるといっても、グーグルのように次から次へと標準に追加していった場合についていくのがやっとという戦略にも乗ってしまっている。

他の業界だとセールスマン宣伝だが、エンジニア宣伝片棒を担いでいる。


YouTubeUberアフィリエイトといった、金をばら撒けばそれなりに人が入ってくるわけだが、胴元が一番儲かるのは変わらない。

なにより家内制手工業に戻っていないだろうか

人手不足自動化は、スマホソフトで色々やっても物を移動できないので、機械進歩必要になってくる。


多くの人が既存ビジネスに対して、中間マージンけしからんネットソフト効率化出来るはずだと認識していると思うが、

結局中間マージンを取っていく企業が変わっただけだった。

個人利便性は高まっているが、少し広い目で見ると売上向上に貢献しておらず、負担けが増えていっている。


オープンという思想も長期的には駄目だったのだろう。

従業員給料が高くなっていくにしたがって、メンテナーも雇えなくなった。

そして何より作った物の価格を上げられてない。BtoBはあるが、最終的には何処かに価格転嫁しなければならず、それはソフトサービスではない。

YouTubeですら数千円でしかない。

ソフトエンジニアですら、ハードには数万円出しても、ソフトにそれだけのお金は払わない。

ゲームは単価高いが、ソフト部分というよりかは他の部分にお金を払っているだろう。


平和時代ならそれでも良かったが、きな臭くなってきた。

物量が勝敗を分けるというときに、物が作れなくなっている。

2024-08-03

スクールに通ってITエンジニアになれる条件

anond:20240802230412

この人は可哀想なことに「学校の言うことに従っておけば人生幸せになれる」という

いわゆる学歴社会宗教信者のものなので

恐らくこの先20年ぐらい同じような失敗を繰り返してしまうのだと思う

副業で食っていけるようなITエンジニア簡単教育できるとは思えないし

お世辞にもまともなスクールだとは思えないような業者もいるが

それでもITスクールの全てを否定するのはちょっと違うと思う

そもそもなんだが、スクール学校の言うことを全て丸暗記すれば大丈夫、というレベル教育小学生の早い段階で終わっていて

少なくとも中学から高校にかけては

自分で興味を持って自学自習しなければダメ

というレベル教育は進んで行く

本来高校入試大学入試学校教育範囲問題が出るのは

自分でどこまで興味を持って調べたか?」

を知るためであって、塾で丸暗記を教わるために出しているのではない

興味を持って調べたことというのは誰かに教えて貰ったこととは違って記憶への定着や新しい着想に繋がるので

大学には興味・好奇心を持った人が更なる高等教育を受け、新しい発見をするために進学する

プログラミングITに関する技術も同様で全てをスクールで教わるというのは非現実的不可能

例えばよく使われるプログラミング言語だけでもC,C++,Java,JavaScript,TypeScript,Rust,Python,PHP,Ruby,Perl,ShellScript ぐらいはあって

これらの言語仕様を覚えるだけでも大変だしよく使われるライブラリなどが組み合わされるととても現実的ではない

なのであくまでもスクール教育機関ではどれか1つの言語を選んでプログラミング概念思考法を教えているに過ぎないし

お金を貰えるレベルになるには少なくとも3年は自分プログラムを書いていないと到達できない

興味がないものを3年も続けられるわけがないので、スクール学校で「興味が無い」と思ったのならやめた方が良い

まりスクールに通ってITエンジニアになるにはスクール外で興味を持って学習することが必要なのだ

残念ながらこの法則小学校高学年から同様で、ちゃん学校外で勉強してきたような人は大人になってからスクールに通ったりはしない

ITスクールに通うのなら「ITスクール時間だけでどうにかなる」という幻想は捨てておいてほしい

2024-07-31

anond:20240731201557

IDviewは、一般的には特定の分野やコンテキスト依存するため、詳細が書かれていないと具体的に何を指しているのかはわかりにくいです。ただし、一般的に「IDview」という名前が使われる場合複数用途が考えられます

1. **セキュリティシステム**:個人認証アクセス管理を行うためのシステム。たとえば、生体認証スマートカードを利用してユーザーID確認し、アクセス制御するツールが考えられます

2. **データベース管理システム分析ツール**:特定データベースシステム内のユーザーIDやその他の識別子を視覚化し、管理分析するためのツール

3. **ソフトウェア開発におけるモジュール**:特定アプリケーションプラットフォーム内で、ユーザーIDやその他の認識情報を表示するための機能ライブラリ

具体的な情報もっとあれば、より正確な説明ができると思います。もし特定用途コンテキストについて知りたい場合は、もう少し詳細を教えてください。

2024-07-21

テキストエディタってなんやろな?

いやぁ〜、テキストエディタ世界めっちゃディープでんねん!聞いてくださいよ〜。

まず、テキストエディタ心臓部、バッファ管理システムについてや。これ、単なるテキスト保持やないんですわ。例えば、Emacsガベージコレクション機構マーク&スイープ方式採用してて、バッファ内のLispオブジェクト効率的管理してんねん。これがあるから、長時間編集作業でもメモリリークせーへんのや。

次に、レンダリングエンジン。これが曲者でんねん。Unicode標準のUAX #9に準拠した双方向アルゴリズム実装せなアカン。さらに、合字処理のためにOpenTypeのGSUB/GPOSテーブル解析も必要や。Harfbuzzライブラリ使うんやけど、カスタムシェーピングエンジン組み込んで、特殊文字体系にも対応せなアカンのや。

構文解析エンジンも侮れまへんで。LR(1)パーサーじゃ複雑な言語構文に対応でけへんから、GLR(Generalized LR)パーサー実装するんや。これで曖昧文法も扱えるようになるんですわ。Treesitterライブラリ使うと、インクメンタル構文解析ができて、巨大ファイルでもリアルタイムハイライティングできるんや。

差分アルゴリズムも奥が深いんですわ。Myers差分アルゴリズムだけやなくて、Histogram差分アルゴリズム実装せなアカン。大規模リファクタリング差分表示に効くねん。さらに、セマンティック差分アルゴリズムも組み込んで、構造的な変更も検出できるようにするんや。

非同期処理システムめっちゃ重要や。単なるPromiseやasync/awaitやのうて、Reactive Extensionsベースストリーム処理実装するんや。これで、複雑なイベントシーケンスも扱えるようになるんですわ。さらに、アクターモデルベースの並行処理システム組み込んで、マルチコア活用した並列処理も可能にするんや。

最新トレンドめっちゃアツいんですわ。例えば、Language Server Protocolの拡張や。単なる静的解析やのうて、シンボリックAI使うた意味解析まで可能にしてるんや。これで、コード意図理解して、より高度なリファクタリング提案ができるようになるんですわ。

WebAssembly統合進化してるんや。Single Instruction, Multiple Data (SIMD)命令セットサポートで、テキスト処理のパフォーマンスが爆上がりしてんねん。さらに、WebAssembly System Interface (WASI)採用で、ファイルシステムアクセス可能になってるんや。

AI支援機能も侮れまへんで。単なる補完やのうて、プログラム合成(Program Synthesis)技術導入してるんや。部分的仕様から完全なコードを生成できるようになってんねん。さらに、説明生成AI組み込んで、生成されたコードの詳細な解説までしてくれるんですわ。

リアルタイムコラボレーション進化してるんや。Conflict-free Replicated Data Type (CRDT)のカスタム実装で、ネットワーク遅延があっても一貫性保てるようになってんねん。さらに、意図ベースの競合解決アルゴリズム導入して、複雑な編集操作の衝突も自動解決できるようになってるんや。

拡張アーキテクチャもすごいんですわ。WebAssemblyベースプラグインシステム採用して、言語依存せんプラグイン開発可能になってんねん。さらに、サンドボックス化されたランタイム環境提供して、セキュアなプラグイン実行も実現してるんや。

性能評価も厳しくなってるんですわ。起動時間は、コールドスタートだけやのうて、ホットスタートも測定せなアカン。メモリ使用量も、物理メモリだけやなくて、仮想メモリ使用状況も追跡するんや。CPU使用率は、マイクロアーキテクチャレベル最適化まで求められるようになってんねん。レンダリング性能は、GPUアクセラレーション効率評価せなアカンのや。応答性は、入力レイテンシだけやのうて、知覚的な応答性(Perceived Responsiveness)も測定するんですわ。

いや〜、テキストエディタ世界マジでディープすぎて、もう頭おかしなるで〜!こんな感じで、テキストエディタの最深部まで潜ってみましたけど、いかがでしたかテキストエディタ、侮れまへんで〜。ホンマに。

2024-07-18

5時間分の会議

まえに6時間分の会議があった増田だよ。

今度は5時間分の会議議事録を任されたよ。

会議で会話したりするならまだしも、まじ黒子と化して議事録つくるのもいや。

しかし今回の会議の録画みながらの議事録さらなる地獄

今にも流れそうな言葉を拾う、リアルタイム議事録会議時間という制限も相まって、聞き漏らし書き漏らししないように精神を研ぎ澄まされてちょっとゲームぽさもある。また、会議に参加しているメンバーがいることで、さみしくない。

だがしかし、録音された会議から議事録を起こすとなると、その全てが失われる。

空虚な上に、自分完璧主義が顔を出して一言一句書き起こしたくなる。

議事録としては適切ではありません

そこで、以前有能増田アドバイスをもらったwhisperをローカルに構築した。

pipでライブラリインストール中にブルースクリーンになったときはし絶望しかなかった。

再起動も乗り越えて、ちまちま構築。

とりあえず、1本の打ち合わせ動画解析までこぎつけた。が、とにかくCPUつかうはずなので、終わるまでスマホ時間つぶそ〜とおもったんだが、まあ、止まる。

1. numpyバージョン2.0対応できないエラー

すごく細かくメッセージ書いてあったが、最新版はとりあえず非対応らしい。一旦pipからnumpyアンインストールして、1.xの最新版インストール

2.あるはずのライブラリないんですけどエラー

みたら、Pythonさんのバージョンがあってない?からライブラリよめてなかったぽい?

3.12から3.9に仮想環境作り直して再インスコ

3.PF16がのってるCPUサポートしてないのでなんたらこうたらエラー

翻訳処理のパラメタにFP16=falesにして再実行

これがなんだかはわからん

もうエラー起こらないといいなーと思いながら今待ってます。まだかなー。

セットアップから始めたら普通に議事録つけたほうが早いな。ただ、こっちの方が楽しい

2024-07-13

Pythonは便利で何でもできるかのように吹聴されてる気がするけど、

pip install失敗して、Pythonバージョン変えてみたり、バインディングしてるC++ライブラリソースからビルドしてみたり、いちいちエラー読んでGitHub issuesとか眺めて考えたり、

全然便利じゃないよね…

と思ったけど、Pythonの他に充実して確実に動作するような理想的環境とか言語を思い付かないし、だったら多分C++書いた方が早そう…😟

2024-07-03

anond:20240703010518

マジレスすると、今の言語ってライブラリが超充実してるから

インストールしてそれを使うコードを書くだけだと、ノーコードよりも早い

ノーコードみたいな機能の少ないツールでなんとかするために頭悩ませるより

Dockerイメージもってきて、サクッとライブラリ使った方が早い

2024-06-28

anond:20240628132620

正解が「数学的」に決まるところ。たとえば「1■1=2 のときに ■を答えなさい」というときに競プロは■を答えるだろうし、それを早く答えて悦に入るだろう。

それもいいけど、いちど数学的に答えが決まっちゃう問題ライブラリにまとめられて、一般的コーダはなにも考えなくてもインポートして処理できちゃうわけ。上の例えだとふつーのプログラマなら「枯れたライブラリインポートして、正しく答えが出ると確信できるなら『答えは正しいとか考えなくても』それを使って対処する」ので、データの振る舞いとか気にしないで済む。たとえば SQL なんて、実行時計画という「アルゴリズムを常に指定するなら不要な」話題があるのだけど、データ量によって適切なアルゴリズムが変化するから仕方ないし、概ね RDB は賢いのでヒューマン考慮するのは問題がある場合だけなのだ。よって、競技プログラマが生産性を確実に上げるという根拠はない。

もちろん、アルゴリズム知識を身につけるのは大切だし、クヌース先生も書いてたけど分散処理アルゴリズムフロンテイアだろうよ。というか、暗号分野やセキュリティ領域や、条件が過酷場合宇宙線の影響下とか、メモリの少ないエッジコンピューティングとか)だと、アルゴリズム研究や追求は大切なのは今も同じだ。でも、競技プログラマが新規アルゴリズムを開発したり、セキュリティに向上したという話は聞いたことがないが、レッドコーダ諸君は自前で創造して使われた実績はあるのだろうか?

ついでに聞いてみたいのだが、競技プログラマたちは「マルチスレッドコードで早く書こうとしないのはなぜ?」「そもそも競技プログラミングで使うコードは便利なスニペッツがあるけどそれってチートでは?」「ときどき正規表現で解く問題があるけど、そのとき計算量は無視してない?」という矛盾を抱えているのてはないか?と思うのだが如何か。

究極的には競技プログラミングに必要知識というのは、産業用途要求される知識の一部でしかないのが問題なんだと思うよ。ほら、アレだよ、むかし話題になった「数学だけデキる人向けの東工入試をやったら、英語ができなくて卒業できなかった」という童話に近いんだよ。競技プログラムってインとアウトしか見てないブラックボックステストから、ここだけしか計算機科学の知識が無いというヤバ人材の育成しかなってないのだろうな。

それで、結語として「答えのある問題に特化した競技プログラマー」のヤバい理由として、列挙していくと

ということは、競技プログラマーは考えても良いのではないか

anond:20240628082805

プログラマ個人開発したオープンソースソフトウェア (ライブラリ) を会社自分採用するという形にすることによって会社権利を渡さなプロダクトを運用しているということはよくあること。

ウェブ企業商品コンテンツであって技術ではないので技術の部分はなるべくお互いに融通したほうが得だという価値観があり、オープンソースの利用も貢献も積極的なんだよ。

プライベートと言えばプライベートだけど、実態としては「会社を超えて提供できる価値」を聞きたいわけ。

2024-06-27

機械学習er vs Web開発er vs 組み込み開発er 比較表【令和最新版

anond:20240626103929

業務機械学首(データマイニング)、Web業務システム)、組み込み産業インフラ設備)の経験があるので、分野ごとの相違点と発生しがちな軋轢を書いておく。

-機械学習Web開発組み込み開発発生する軋轢
コード寿命半年20年間40年間組み込み開発er産業系の組み込みは発売から40年後にアップデートするケースもあるので、ドキュメントは、開発担当者が全員退職して誰も残っていなくても理解できるように書いてください!」
コードアップデート頻度試行錯誤しつつ随時2週間に1回半年~5年に1回Web開発er組み込みはどうしてそんなに時間がかかるの?アジャイルを導入してください。ウォーターフォールは硬直的でデメリットばかりですよ」
アップデート提供方法-(コードは少人数の同僚だけで使用サーバ自動デプロイ技術者が現地訪問してアップデート組み込み開発erアジャイルから最初は若干のバグを残して発売し後日アップデートするって?グローバルで既にXXX台受注しているけど、誰が現地に行くの?費用負担する部署はどこ?」
開発者属性理系修士博士、少数精鋭専門学校修士、文理混在、大人電気系、機械系、情報系の修士博士機械学習er「数式で表現できない知識民芸品です。エンジニアを名乗っちゃダメでしょ」
関係部署マーケティング企画顧客ハード開発・工場組み込み開発er納期3カ月前なのにソフトが完成していないの?生産立ち上げを工場相談していない!?スケジュールをゴールから逆算できなかったの??今回は船便での輸送になるけど、それも計算に入れてあるよね?」
計算資源潤沢予算次第貧弱組み込み開発erデータマイニングやってたKさんOSSを使うらしいけど、サイズが5MBあるんだぜ。5MB全部必要なのか聞いたら一部機能しか使わないんだって。で、他チームとの容量調整は丸投げされたの。感覚破壊されるよな。」
3rdパーティライブラリOSSOSS買ってくる組み込み開発erOSS不具合があったらどうやって修正して顧客デリバーするつもりなんだろう?リスク移転の考えで、不具合補償契約込みで買えばいいのに」
通信プロトコルデータフォーマット生データ王様なので、生データに従う最新のものを取り込む実績重視Web開発erHTTP実装がないの?TCPを直接使う!?暗号化認証はS社の独自プロトコル?古いプロトコルを使い続けているから開発効率が低いんだよ」
電源OFFタイミング任意コントロール可能定期メンテナンスコントロール不可組み込み開発erファームウェアアップデート中に電源OFFしたらどうなるの?ファイル書き込み中の電源OFFは?状態遷移図って知ってる?」
性能出来高顧客要件常識予算に従うミリ秒マイクロ単位タイムスライス管理Web開発er「性能改善でXX関数10ミリ秒を1ミリ秒以下に短縮するために2週間も試行錯誤したって?プロ社員人件費は7万円/日だから70万円を消費したね?AWSEC2の性能を調整すれば2000円/月で解決だよ。損益分岐点は350カ月だけど顧客のこれまでのリプレース実績から判断してこのシステムはそこまで長期間使われない」
学会発表特許結構あるほぼなし年1件の特許出願ノルマ組み込み開発er学会発表特許出願もなく、何を開発したの?ドメイン知識ソフトウェアに翻訳してAWSポチポチやっただけなの?開発行為ではなく作業だね」

分野ごとに要求される製品特性が異なるから、異分野に移ると文化摩擦が起きるという話だと思う。製品特性の違いを理解し自らの行動に反映できるようになるには、ベテランでも数年かかるケースがある。開発期間10年のテーマ経験したことがあるが、そうした場合だとワンサイクルを経験するのに10年かかるので。経験から学ぶのが愚者歴史から学ぶのが賢者ともいうが…。

2024-06-26

google colaboratoryで作図するとき

そのうちmarkdown経由でMermaidが使えるようになるんだろうなあ、と思いつつplantUMLを使っていたわけだけど、案外なかなか対応してくれない。

notebookで作図するニーズは、それほど普遍的ではないのだろうか。

それとも、俺の知らない簡単な作図に使えるライブラリが何かあるのだろうか。

2024-06-25

anond:20240607100125

あのさぁ、君ANN実装したライブラリとか使ったことないでしょ、faissとかElasticsearchとか

君は「KNN」と勘違いしてるみたいだけど、sklearn起動してmodel.fit(X, y)みたいなことをするんじゃないんだよ、ANN

index.add(vectors)とかやってインデクシングした上で、index.search(vq, k)みたいにベクトル検索するのがANN

から確率」じゃなくて「距離」なんだよ、出力数値はね

レコメンデーションエンジンなら、コンテンツベクトルに変換して、インデクシングして、クエリベクトルでサーチするって話

コンテンツベクトル化する方法は様々あるので、NLP固有の話ではないし、単純な行列分解もベクトル化には使える

君ね、ANNKNNって大抵別文脈で使われる用語から今のままだと笑われるよ?

2024-06-21

anond:20240621000814

圧縮してテープに保存

読み出し命令が来たら、職員ライブラリに歩いて行ってテープを取り出してきて、装置にくべて、読み出す

そうするとデーセンにロードされて、次の読み出し命令の時には応じられるようになる

2024-06-11

anond:20240611152934

例えば君も当然知ってると思うがGoFなんかもscrapyに限らず特定ツールライブラリなんかは「知らない」と思うよ

からさ、それならなんで「フレームワーク何使ってる?」なんて質問をしてきたのかって話ね

あと、クローラ再利用性あるよ

なぜWARCファイルで保存しているかと言うと、その方法なら複数サイト統一的に書けるから

クローラからデータ抽出する部分は別途作ってあって、その部分だけ使い捨てになってる

言ってること分かる?

anond:20240611152415

ソフトウウェアエンジニアリング世界って広くて

例えば君も当然知ってると思うがGoFなんかもscrapyに限らず特定ツールライブラリなんかは「知らない」と思うよ

まずその広さを知るのがプロ第一

クローラ開発の文脈で今までのに手を入れるのではなくて一から全部作るのを「フルスクラッチ」と表現するのは英語的にはともかく間違ってはいないと僕は思う

ただ、クローラスクリプトとか普通使い捨てだよね

再利用できるように書かないし実際君もOOPとかよく知らんじゃん

anond:20240611130759

あー

通常APIを叩くというのはRESTなどのエンドポイントの事なんだよね

それもAPIではあるけど普通ライブラリっていうね

人のライブラリを使うのは普通の事だよ

それを使って自分API等を作るんだよね

2024-06-10

anond:20240610011301

根本知識だったり大元ライブラリ(tsとか)はほぼ変わらないから何とか食らいついてるけど、自分最近はrustだったりc++周りを勉強しているよ。一緒に頑張ろうね

フロントエンド開発に疲れた、離れたい

フロントエンド開発を始めて早4年、界隈の雰囲気も好きになれないしトレンドを追いかけるのも疲れたよ。

Twitterを開けば否応なしに口論しているツイートが流れてくる。

あるいはライブラリバージョンアップ新規ライブラリの公開ツイートであったり。

前者は圧倒的クソだし、後者後者で頻度が高すぎる。

社内でもフロントエンドといえば私、みたいな立ち位置になりつつあって

有難いことだけどその分情報キャッチアップから離れられない。

フロントエンド分野だったらなんでも分かるわけじゃないし、実装時間がかかることだって多々ある。

期待に対しての成果を出すのが辛くなってきて、そんな風に捉える自分も好きになれない。

バックエンド担当の同僚と話していても、大きな変革もそこまで無くなんだか羨ましく感じる。

結局自分コードを書くことに向いてないだけかもしれないけど。

始めた頃はちょっとしたコードが書けるだけで嬉しかったり、新しい情報が出ると一目散に駆け寄って自分で試したり出来たのに

いつからこうなったんだろう。

2024-06-07

小数点以下の計算不正確な罠がこの世には多い

JavaScriptでも小数点以下の計算不正確なのでライブラリを使うかJavaScript以外で計算する必要がある。

自分の使っている言語ツール小数点以下の計算不正であることよりも、そういう罠があることを知らずに使ってしまうことが恐ろしい。

2024-06-05

[]なぜ機能しているかからないものはそっとしておく

高速化のためといい、前任者がcythonで書いたランダムフォレストコードがあり、どういうわけかsklearnよりも数倍速い

社内ではリラキングモデル(LTR)のためにこのランダムフォレストを使っているらしい

というのも外部ライブラリに頼ると面倒なことになるという認識が開発当初にあり、開発に関係するライブラリは全て自前で書いていたようだ

しかし前任が去ったことでこの最適化最適化を凝らしたようなモジュール理解が誰もできない

しかしかと言って速度面ではsklearnには戻れない

こういうとき深呼吸し、「なんか知らんが動いてるからヨシ」と言って目を背けよう

大丈夫神様ちゃん評価してくださっている

近似最近傍法を教師あり学習とか言ってるアホ、頭大丈夫か?

まずはでかい口叩く前に以下のライブラリ(近似最近傍法を実装したもの)を試してね。これは教師なし学習だよね。

https://github.com/facebookresearch/faiss

 

初心者NPC俺様に口答えするのはやめてね👍

2024-05-30

一番好きなアルバムiPhoneで聞けなくなった

ダウンロードしていたが、ある日突然消えた

ライブラリに残っていない

ライブラリに追加し直そうとするとすぐ消える

ストリーミングはかろうじてできるが、毎日聞いているのにストリーミングなのは無駄すぎる

2024-05-29

anond:20240529155023

ライブラリ機能しろF1を出力することがわかってるなら、F1について事前知識があると考えるのが妥当である

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