「数値計算」を含む日記 RSS

はてなキーワード: 数値計算とは

2020-01-30

プログラミング界隈との距離が辛い

本職じゃないかVisualStudio稟議下りない。

Pythonも色んな制限がある。

プログラミング界隈だと、待っていれば良い開発ツールが出てきて効率が上がるのだろうけど、

マイナーなもんだから自分で作るしかない。でもVisualStudio稟議下りない。


Windowsしか選択肢がないが、個人勉強しても、仕事でつかえない。辛い。

数値計算はいいけど、グラフプロットするとか、3D表示するとか、大規模になるとお手上げ状態になる。

2020-01-10

ソフト業界以外の人に聞きたいんだけど、ソフト業界トレンド乖離感じない?

ソフト業界人間じゃないのだけど、なんとか業務改善したいと思い、なんちゃってプログラミングはしてる。

Qiitaブログなども見てるのだけど、なかなか自分業界に合わない。

数値計算用のプログラミングやってる人なんて増えてないし、ビジュアライズするソフトもそんなに良くなってない。


Windowsしか選択肢がなかった頃は、Windowsプログラミングやってる人が多くてMSDNのよくわからない表現も、親切な人が解説してくれていた。

今じゃ誰がやってるんだって感じだし、書籍も出てこない。

C++FPGA触るプログラム書いてインタフェースPythonなんてのは少数派なのはわかるのだけど。ドライバー周りはブラックボックス増えたように感じる。


CERNROOT使ってグラフ描いているのも少数派に感じる。

使いにくいのだけど、ソフト業界では話題にならないから、もう改善はされないんだろうなと思ってる。

自分で直せと言われるだろうが、自分の抱えている問題を解くためだけのプログラムを組んできたので、そんなスキルはない。


機械学習流行って、PandasやJuliaで計算する所まではよかったが、ビジュアライズ自分と合わなかった。

ヴァイオリンプロット数字が記入されていないヒートマップなどを見ると、派手で多くの人にウケそうだけど、

議論しようとすると数値で議論できなくて誤魔化されている感じがする。

ビッグデータ必要だと言いつつ、グラフを描く段階になって、そんな大きなデータプロットできないとなって、突き放された感じがしてしまう。


Webサーバー登録している多くのユーザーの特徴を整理するには良いのだろうけど、

物理現象相手にすると途端に使いにくい。

時系列データの型と言われて、as/fs/ps対応してなかったりする。

SI単位系くらい単位換算そろそろしてくれてもいいと思う。

2020-01-05

Pythonのせいでやる気がでない

機械学習深層学習がもてはやされて結構立つが第三次AIブームは今のところ下火になる様子はない。

機械学習プログラミングしようとしたり学ぼうとするとほぼPython一択しかない。numpyとかの数値計算ライブラリが整ってた背景から機械学習系のフレームワークの多くはPythonである入門書学習書も当然Python

それより前、なのかは知らないがPythonは「プログラミング入門者に最適」というブランディングも定着している。

私はPythonが好きになれない。嫌いとまで言うと言い過ぎだが、好んでつかいたいとは思わない。インデントベースシンタックス記述しなければいけないというのがもうまず第一にそして最も合わない。

まあ細かい理由についてはどうでもいいんだが。( zen of python )はわりと好きだ。

話が逸れたが、なんであん堅苦しい貧弱な言語でやらないといけないのかと思うと機械学習食指が動かない。それで仕事で困るということもないのではあるが。はやっているので勉強してみようかな、という私のミーハー心をいつも瞬時に打ち砕く。

2019-11-18

ネットに載りにくいジャンル検索する方法が知りたい

研究数値計算をするところまではネット書籍があるからのだが、可視化するところで躓く。

小規模のデータであれば検索ですぐ出てくるが、ちょっとデータが多くなってくると待ち時間が多くなってしまう。


Python,Julia,C++などで探すが、案外ない。


あと研究用品についても見つけにくい。

書籍に載るような装置カテゴリー名がついていれば探しやすいが、頭の中に漠然と○○の機能を持っているものとなると、引っかからない。

2019-11-04

Juliaで線形計画問題

最近新しい言語習得する気力もなく、Python本とかも読むけど、「ライブラリパッケージを駆使すれば、なんとかなるけどpython自体は可読性のために速さを犠牲にしてる」っていう記述が気になり、Jupiterインストールにさえ着手できない。ヘタレ

( ^ω^)・・・

これじゃイケないってことで、Juliaをやろうかと思い立ったが吉日。Juliaはサーバープレインストールしてあるらしい。ロケットニュースをなんとなく読むよりはマシだろうってことで、〇iitaで関連記事適当検索して放心状態の時読むことを習慣化することにした。

( ^ω^)・・・

線形計画法のを読みました。なんか知らないけど「線形計画パッケージ実行させたところ、Julia速くない」って書いてあった。著者の無理解が原因で遅いと信じたい!!「線形計画法パッケージは、新しいバージョンのJuliaに対応してない」って書いていた。実際に線形計画法いじるわけじゃないけど、こういうのって萎える原因。最低限やりたいことは微分方程式数値計算なので、別に線形計画法パッケージが遅かろうが更新ストップしてようがどうでもいいけど( ^ω^)・・・

2019-05-16

anond:20190516131910

pythonrubyjavascript

rubypythonは、perlを使いやすくしたもの、という点で似てる

unixコマンドと組み合わせやすいのはruby

数値計算に強いのがpython

javascriptweb系に応用が効く

2018-12-28

anond:20181227014045

勝手ジョークぶちあげて揚げ足取られたら話の筋道をそらすのは如何な論法かと思うけどね、ジョークならジョークで完結させろよと言いたいが、「それはジョークだじゃあ話を元に戻そう」、これでいいのでは?それとも子供に対してCPUのことを計算してくれる装置ですよと語りかけるが如く丁寧懇切に連立方程式の解き方からBLAS存在まで説明しろとおっしゃるのかな?

それは筋が通らない話だと思うし議論する気があるなら最低限・・そうだな大学がならう数値計算とか並列計算機の授業のレジュメさらっと目を通すぐらいはしたらどうでしょうか?

https://www.cspp.cc.u-tokyo.ac.jp/hanawa/class/sp20180925.pdf

並列計算機の話としてはココらへんが大変おすすめ

うーむHPCに対するアプローチは二通りあって情報工学的に計算科学の一環(つまりスパコンを作る側)として見るか、1科学者としてのシミュレーションを行う場、仮想実験場(スパコンを使う側)としてる見る場合の2つのアプローチがあると思うのだけど・・・PEZY-SCを搭載したシステムに関しては前者、計算科学の成果としてみるべきシステムだと思うのよ、これの成果としては「非GPUで超メニーコアシステムを実現すると共に高効率システムを構築することに成功した」って言う一つの事実に集約されると思う。

でここで高効率システム基準はなんなのかとというと「HPL」と言うベンチマークですわな、HPL=LINPACKと言う認識で話を進行させるけど、HPL本来連立方程式の求解を行う速度を競うベンチマークであって、これを皆が手放しで賞賛してるのはおかしいと言う批判存在する。

これは一理あってすべての科学技術計算の性能向上に寄与する指標とは言いがたいからだ。

じゃあなんでこれが推されている居るかというと理由は何個かあるけど連立方程式の解を求める必要のある技術計算はとても多いから、昔からやっててデーターが揃ってるから

ここまででHPL重要視されている理由がご理解いただけると幸いなんだけど・・じゃあ具体的に連立方程式使用する場面を示せよと言われると腐るほどあってどれを示せばいいのかわあらんのですが・・

これがなんか1番わかりやすい事例だったかな?

http://www.cs.kyoto-u.ac.jp/wp-content/uploads/2012/07/05hori.pdf

HPCを利用した構造都市地震応答シミュレーション

まああんまり人様の研究をあれこれ紹介して間違った説明しても申し訳ないので中身には触れないでおくけど実際に連立方程式は最もシェア率が高い問題であると言う認識は持ってくれると

話が早い

まあここまでがHPLがそこそこ信頼されている理由です。

 まあさっきのXeonでいいじゃんって話も一理あって性能が低くてもx86_64時代コードそのまま使いまわせるし、さっきあげたユーザーから見た時楽ちんであるのは事実だ。

なによりintel C++/Fortranコンパイラと言うクソ便利なものがあってライセンス料払うとある程度勝手高速化してくれたりするし使いまわせるコードも多い

まあPEZY-SCよりXeonのほうが計算機を研究してるわけじゃない物理学者とかの各種研究エンジニアからすれば魅力的な点が多いのは事実だと思う

からと言って計算科学としての計算機の純粋な性能向上を主とする研究・開発成果を邪険にしていいわけないしまた別の問題、確かに商業ベースで考えたとき

これらの問題をどうにかしないといけないのは事実だし改善して行かねばならないのはPEZYやエクサスケーラーの各位に残された課題であるのは間違いない。

だが少なくともまだこの世に銀の弾丸となりうる万能システム存在しない。

もしあるなら俺にくれ あといい加減なこと言ってたらゴメン、強いひとに殴ってもらうと筋トレになる

2018-12-27

anond:20181227213048

横だけど、こういうやつ。

数値計算の主要部分である10億×10次元クォーク演算子行列逆行列計算では、「京」に特化したコード開発を行った。ノード内の8コア並列に適した領域分割を行い、単精度前処理(ルッシャーのSAP前処理とSSOR前処理)を用いたBiCGStabソルバーで、16~4096ノード使用した計算で、25%以上の実行効率を達成した。

https://www.r-ccs.riken.jp/r-ccssite/wp-content/uploads/2016/06/imakore_5-1.pdf

これラズパイWi-Fiでつないだら解けんのか?

2018-12-26

anond:20181226234734

ゲームで使う物理エンジン数値計算を同列に語るなアホ

半精度と倍精度がどこで必要になるか想像もできないような頭のやつにはスパコン不要しか見えないだろうよ…

2018-11-26

木こり溶接工になりたい

当方卒30歳ニートです。

そろそろ就職しなければ飢え死にしてしまうので将来のことを考える今日この頃です。

できればはたらきたくないのですが、木こり溶接工ならなってもいいかなと最近思います理由は、物理学専攻の人がドクターコース中退して漁師になったという記事雑誌で見て、なんか満足してるようだったからです。

勉強は並にできます英語とか喋れますPythonで30行程度のプログラミングができます

手先は器用な方です。ピアノが弾けます。絵が描けます子供の頃から大切に育てられたので、その他一通りインドアです。

しかし体が弱いのです。視力べらぼうに悪いです。背の順で並べば前から2番目くらいの体格です。そのうえ鬱病の診断を受けたことがあり、よわよわです。

このような状況で、木こり溶接工になれるものでしょうか。

イメージですが、木こり溶接工も究極の封建制頭脳よりは肉体を礼賛し、効率よりは伝統を重視し、健康よりは煙草を愛するという感じではないでしょうか。

これが私を求めるとは思えず、また私も耐えられるとは思えないのです。

ちなみに私は大学では水産学科卒ですが弱物理学のようなよくわからない数値計算をしており、船に乗ったことはありません。

木こりと話したことは一度もありませんが、多分会えば私のことを宇宙人というあだ名で呼ぶでしょう。

少々叱られるのはもちろん分かっています。たぶん耐えられます。ただ、ヘルメットなしで直に親方に頭を叩かれたら死ぬかもしれません。

枝が降ってきて足に突き刺さってしまったら死ぬかもしれません。指と鋼管がくっ付いて死ぬかもしれません。アーク放電を見て失明するかもしれません。

そう考えると、働いて死ぬよりは働かないで死んだ方がいいなと思うのです。

2018-11-05

1970年代に書かれたFORTRANコード

たまに業務で目撃することがあるんだけど、あれ何でそのまま使ってるんだろうね

数値計算って勘定系とかと違ってミッションクリティカルなわけじゃないんだし手の打ちようがあったろうに

2018-10-24

anond:20181011010934

結構よくまとまっているとは思うんですけど、博士学生からか少し偏りがあるので、もし参考にする学生が居たときのために、少し補足させてください(ちなみに私は本職です)。

分野について

挙げられている分野は、いわゆる古典的CGの分野の一部で、そこに当てはまらないものも沢山あります。例えば、3Dプリンタに関する技術とか(fabrication)、建築関係VR/AR、HCI、HPC/ハードウェア、computational photography、アート数値計算言語処理(CUDAの元はSIGGRAPH論文ですよ)などです。実際のところ、かなり色々なトピックがあり、この分野の研究者でも全てを挙げられる人は居ないと思いますトピックが違うと同じCG研究者でも話が通じない事もあります。他分野の専門家と組んで研究している人も多いので、かなり懐が広い分野だと思います自分の興味のあるもの+CG、という研究をしている人が多数居ます

なお、西田先生日本では有名なのかもしれませんが、国際的に著名な研究者は各分野で違いますSIGGRAPH/SIGGRAPH AsiaなどのTechnical Paper Committteeの名前をチェックすれば、最近勢いがある若手や著名な人がだいたい分かると思います自分の興味のある分野の研究者海外に居れば、留学しましょう。

論文事情

これは訂正された点を含めると、だいたい合ってます。訂正にあるように、基本的には、大きな学会のProceedingの論文 = ジャーナル論文なので、その場合ジャーナル論文としてカウントする人が多いです。ジャンル別の会議理論的な研究が発表されるかどうかというと、そうでもないでしょう。どちらかといえば、研究としてのインパクトが小さいが発表したいとか、SIGGRAPH/SIGGRAPH Asiaに落ちたので、再投稿というケースが多いです。国内学会雑誌はアレなので、英語文章が書けないと死にます

IFと業績事情

CGではIFを気にする人はあまり居ません。研究者としてのアウトプットは、国際的にはSIGGRAPH/SIGGRAPH Asia/TOGを含めた、主要な学会での論文の本数が重要です。Pacific GraphicsおよびEurographicsは、それぞれの地域ではそれなりに評価されますが、国際的には評価されない場合があります。あと、勘違いされているケースが多いので強調しますが、SIGGRAPH/SIGGRAPH AsiaでカウントされるのはTechnical Papersだけです。その他のプログラムは、参加したいなら出してもいいけど、研究業績にはカウントされません。その他のプログラムばかりで発表していて、Technical Papersで論文が出て無いのに、SIGGRAPH活躍していると強調している研究室(国内外にあります)は注意しましょう。分野全体の業績評価実態と違います

学位取得難易度は、研究室および大学によって大きく違います上記の著名な国際会議に通すことを期待している研究室だと、アイデア重要な分(データモデルを少し変えて、少し性能が良くなったぐらいでは論文は通りません)、他の分野より要求される能力は高めです。ただ、懐が広い分野なので、自分の得意なことを生かして研究ができれば、研究に没頭できて楽しく過ごせると思います。実際、活躍している人はそういう人です。標準的アウトプットとしては、1年あたり、ジャーナルになる学会に1本ぐらいでしょう。博士課程が3年なら3本ですね。リジェクトされるので、その倍ぐらいはプロジェクトをこなす必要があります

実装力は超重要です。アイデアを形にして実験出来ない人は苦労します。言及元に書いてあるものの3倍は実装します。

各分野の所感

研究歴史が長いトピック既存研究に対して新規性を出すのが難しいので、その分論文を書くのは難しいという、ごく当たり前な状況です。書かれているように、レンダリングや流体は難しいと認識はされていますが、それは歴史比較的長く、劇的な性能向上が難しいからです。逆に最近出てきたトピックの中だと、新しい応用を見つけてそれを古典的方法で解く感じの研究が多いです(3Dプリンタ向けのデザイン最適化など)。そのようなトピックであれば、面白い応用さえ思いつけば、既存研究との比較をあまりしなくても通る論文が書けるでしょう。いずれにしても、如何にして新しいアイデア(新しい理論手法であったり、新しい応用であったり)を思いつくかが重要です。

各分野の所感については、言及元は一学生感想で、それが分野全体としての共通認識かというと、そうではないように思います一口CGと言っても研究分野が多岐にわたるので、それぞれの分野の専門家に話を聞くのがベストです。

研究室で育ててきたエンジンがあるかどうかは(そしてそれを弟子に使わせるかどうかは)研究者によります。進学する際には、その辺をチェックしましょう。ただ、現在活躍している人には、自分で書きたがる人が多いです。「レンダリスト」という言葉は聞いたことがありません。

査読とか

だいたい正しいと思います。応用的な研究と言うと、表面的な印象を受ける人がいるかもしれませんが、ただ何かを達成すればいいというよりは、実際の問題を解けて理論的にも面白いという研究を目指す人が多い分野です。査読ではその両面が評価されるので、査読者によってどちらに重きを置くかも違い、皆を納得させる成果を出すのはなかなか大変です。

最後

CGは、研究を頑張って学会等に論文を沢山出せれば就職先も引く手あまただし、研究成果は専門外の人(例えば家族とか)にも分かりやすいし、自分の興味のある事をコアにして研究できる懐の広さがあり、とても楽しい研究分野です。どの分野で研究しようか迷っている人はぜひ!

2018-10-18

anond:20181018122157

物性理論というか数値計算現場にいるんだけど、FORTRANコードの開発はみんなvimemacs使ってるのしか見ないんだが…

2018-10-16

anond:20181016005826

大学受験数学は暗記科目なので典型問題の解き方を覚えて対処するものです

そっち側なんてものはなくどこかで見たような問題を同じパターンで処理するだけです

あとは間違えずに最後まで間違えず計算(式変形・数値計算)していくそれだけの科目です

2018-09-30

Google仕事して云々、っての基本的情報オンリーじゃん。

物理(ぼかすが物性の数値計算)だとGoogleポジションなんてねえよ。

(って思ったけど量子コンピュータとかがあるか、でも物性のなかのごく一部の分野じゃんそれ)

2018-07-31

数値計算問題をいまどきの言語で教わりたい

横軸に言語を並べる。 Fortran, C, C++, Python, Go, Rust, Kotlin, あとなんか好きなもの並べる。

おっさんに対抗するためにFortranとCとPythonは必ず書いておく。

縦軸に数値計算関連のキーワードを並べる。

標準で扱える数値の精度、複素数, 多倍長演算, 特殊関数, 線形代数, 乱数, 高速フーリエ変換, 統計, その他いろいろ。

交差するところにライブラリ名前を書く。標準で持ってるなら標準装備とか○とか書いとく。

という作業を誰か俺の代わりにやってくれるか既にあるなら教えてください。

2018-03-30

就活序盤(なのか?)サンプル1

理学系1留マーチぐらいのサンプルをどうぞ

去年の夏ごろから意識をし始めて、夏は1デーのインターンに行ったりしていた(選考があったところは全落したので)

1留かつ単位も残ってるのもあってこんな状態じゃ就職厳しいだろうなと半分パニックになってたら

結局ES自己PRもまともに書けず、学校の方も留年は免れたけど4年にも3授業分単位が残ってるような状態になってた

3月に入ってからは、あらかじめ就活サイトの方で目星付けてた会社説明会に行ってたりしたんだけど

満員だったり、行ってみたい説明会バッティングしたり体調崩したりして結局週3ぐらいでしか動いてない

三週目あたりからテストセンター行ったり無理やりひねり出して添削も受けてないようなES出したりしてた

それでも筆記で受けた所はパスしてたし、本当に読んでいるのか怪しいようなESも通ったりする

(まだ大きい企業は受けてないからかもしれないけど てか多分そう)

そしてこの1,2週間は面接をいくつか受けてきた

とにかく緊張で何も言葉が出てこなかった 慣れれば大丈夫 なんて言うけど多分自分は何回やっても無理そう

そもそも友達もいないしバイト以外では声も出さないような人間から即興でなんか言えといわれても頭がフリーズしてなんにもでてこない

自分でも不十分なのがわかるESの粗を突かれるわけでもちろんしどろもどろの返答しかできない

付け焼刃テストセンターのついでに志望分野に関連する資格を取ったけど(インターンで知ってはいたけど)なんの意味もない

このまま秋、冬までずるずると就活する自分が割とリアルに浮かんだ

しか自分が死亡している業界が割とブラックなのもあって大企業にしがみつこうと思ったら6月までには決まってないと厳しいとも言われたのもあってパニックが炸裂している

ここまで文章を読んでもらった人にはわかって頂けると思うけど文章能力もなければキャパティコミュニケーション能力もない

大学指定校推薦で入った(めちゃくちゃ後悔してる 自分みたいに社交能力がない奴が入ると自力解決できなくなるし受験の禊をしてない分打たれ弱いなって自分でも思う やめた方がいい)

さんざん就活の為に動く時間はあった けどバイトだったり授業だったり既に不利な立場にあるってところで真剣に向き合うのが怖かった 言い訳しかできない

一昨日、まともな会話にすらなってなかった面接の後に会社最寄り駅の桜を無になってみてたら涙が止まらなかった

桜を見て泣いている就活生っぽい人がいたら花粉症がさく裂しているだけなので宗教の勧誘とかは辞めてください

今日web系のところで未経験可、入社から研修付の所を見たりして

ES作成物のリンクがあったので大学の授業で作ったC++簡単数値計算プログラミングを無理やりほぼやったことないjavascriptで書き直したりしてた 楽しい 大学情報系にすればよかった

現実逃避である 死ぬがよい

どうなるのか メンタルがすり減り引きこもりorニートになるのか

無理やり入った会社奨学金返済に追われながら口に糊するのか

わかり次第追記しま

2018-01-05

anond:20180105090153

一応旧課程の数学Bには「数値計算コンピュータ」と「統計コンピューター」というのがあったんだけどね(この課程の事は良く知らないしざっくり見る限りではプログラミング教育としては微妙そうだ)

からやっぱり数学の上に載せるのが王道なのかなとは思うけど、今でさえ数学パッツンパッツン行列を削る(代わりに複素数平面が入った)とは何ごとかっていう人居るしなあ。いっそ無機科学(今日本ではアルミ精錬はしてないわけだし)、有機科学を削るか生物あたりをスリム化するか⋯⋯とも思うんだけどそれはそれで批判が出そうだしな。

ちなみに私は古漢も無機有機もなんとなく好きだし得点源になりやすいので⋯⋯みたいな感情もある。

2017-11-21

専修大学ネットワーク情報学

アカハラっぽくも見えるけど誰かな?

http://reach.acc.senshu-u.ac.jp/Nornir/search.do?type=s1161

メモリ上では数値計算や条件分岐が出来るがハードディスクでは出来ない」ということを言っていたので

計算分岐が出来るのはレジスタ上では?メモリ計算後に計算したものを保存する先では?」と質問してみたら

全然違う,メモリは直接実行できる」と答えられました.

私が間違ってるのか?

この人の講義聞いてると私の常識とは全く異なったこと言うからわず質問してしまうんですが「君は間違ってる」と言われるだけで何がどう間違ってるのか説明してくれない

https://twitter.com/ncaq

2017-09-18

https://anond.hatelabo.jp/20170917224845

面白い意見だが数値計算して言ってるんですかね…… 賄えるわけ無いだろ……

2017-08-30

働き方改革時短勤務社員活用

働き方改革推進を掲げているとある会社のある部署が、日平均労働時間の昨年比1時間削減と、平均退社時間の40分前倒しを達成した。

しかし、昨年からいた社員の激務状態ほとんど改善されていない。皆朝は8時には出社していて、22時くらいまでは居残っている。

ではどうやって数値を改善たかというと、実は「時短勤務社員」を何人か入れていたことが分かった。

9時出社、15時退社、残業ゼロの人を何人か採用して、ほっといても数値が改善できるようにしたのだ。

時短勤務社員労働時間会社全体の数値計算に組み入れることで、平均労働時間と平均退社時間の大幅改善を実現。

時短勤務社員に与えられる仕事は、書類印刷などの雑用が中心。時短なのでそれしか与えられない。居ないよりは良いが、という程度。

妙齢女性が多いので、社外では会社幹部層以上の下半身の世話もしているとかしてないとか。

以上、働き方改革の裏事情でした。

2017-08-26

Javaはクソという刷り込み

情報系の学科ではJavaは古い、ダメ、クソ。と言われる。

数値計算ではpython

Web開発ではPHPRubyjavascript

OSドライバカーネルを作るような人はC++

ナウい人はKotolinだC#Swiftだでアプリ開発をする。

そんな感じで、Java賞賛される場面を聞いたことがない。

Webアプリでも不具合があるのはJavaアプレットのものばかり。

からJavaダサいという刷り込みをされてしまってる。

そんな僕が来年から入る会社ではJavaを使うことになるらしい…不安だ。

2017-01-22

ownership とシステムプログラミングその他に関する怪文書

この会話ログフィクションであり、実在人物地名団体とは一切関係ありません。

坂木

わろた

Rust vs. Go に対する @tanakh さんの発言まとめ

https://togetter.com/li/1072495

坂木

自分理解できないもの意味がないと思いこみたがるタイプの人だということがよく分かったので原文を読まずに済んだ。ありがたいまとめだ。

安原

NTPsec が,ownership を理解していない開発者たちの声が大きくなるようなコミュニティによって開発されているということが分かって大変有意義でした(こなみかん

宮森

今までCで開発してきたプロジェクトを移すなら極端な話ownershipを理解しなくても良いわけで、悪くないのではと思う。

宮森

……が、理解できないものに対して、理解を試みず~すべきだ~と設計しろ、っちゅう人が作るソフトとはちょっと関わりたくないと思う。

安原

いや,私は C で開発してきたプロジェクトであるならばなおさら ownership を理解していないといけないと思います. ownership に理解を示さなコミュニティが関わってきた一定規模以上の C によるプロジェクト……私の第一感は「こわ…近寄らんとこ…」です.

宮森

いや、Cで開発してきた人たちって、ownershipを自前でコントロールできると思っている(思い込んでいる)人たちですんで……こわちかは同意

安原

いや,私は C で開発してきた人たちの多くは,そもそも ownership の概念を獲得していないのではないか危惧しています.元々,私はもっと楽観的で,多くの C プログラマは ownership の概念を獲得していると思っていました.

宮森

あ、それはそうだと思います概念を獲得していない

リソース人間管理をすれば適切に管理できる、という思想の下に皆さん書いていらっしゃるので……。

安原

OpenSSL騒動の時,関数の途中で return したことによるリソース漏れ揶揄したことがありますOpenSSL のようなインターネットの基盤を支えるオープンソースプロジェクトにおいてさえ, ownership の概念を獲得していれば脊髄反射で気づくであろうバグが随所に見られたことには本当に絶望しました.

安原

ああ,はい人間を信頼しすぎているというのはいかにもありそうですね.

藤堂

C++er の方がその辺もっときちんとしているように見える

安原

しろ C++ によって ownership という概念が明確になり,その重要性が認知されるようになったのではないでしょうか? これについては,私は歴史的なことが分からないので真偽のほどは何とも言えませんが.

宮森

シニア開発者しかC++/Rustが受けないと思うの、まさにその点だと思っていて、人類を信頼したがために足どころか頭を吹き飛ばす経験を積んでいないからだろうなー、とか。

宮森

OSとかシステム系のプログラマの人々、基本的リソース人間が適切に管理するし管理できると考えている人が多い印象([検閲削除]社時経験)。言語側で安全を確保したい、的な話をしても相容れなかった記憶が。

坂木

[検閲削除] のコードには、間違って自分の足どころか頭を撃ち抜いてしまった偉大な先人たちの知恵が詰まっていて、開発していてとても勉強になります。なお [検閲削除] は頭がなくなっていることに気づかずゾンビとして生きている模様。

今井

自分が知っている C 「しか」書けない職業プログラマ基本的地雷だなぁ...。

今井

リソースどうこう以前に、そもそもちゃんと構造化されてるコードが書けるかも怪しい(個人の感想です。見識にバイアスがかかっている可能性があります)

安原

うーん,数値計算系のチームやコミュニティも ownership の概念の獲得,重要性の理解,その管理自動化することへの理解,これらを期待するのは難しいだろうなあ…….そもそも高度なリソース管理必要になる場面少ないし…….

坂木

コード品質が強く求められるプロジェクトとそうでもないプロジェクトがあるからなあ。クライアントサイドソフトウェアは割と品質が求められる気がする。

安原

OS 実装とかシステムプログラミングって,クライアントに直接接しないだけで,その上にクライアントサイドソフトウェアが載るわけで,コード品質が強く求められると思うのですがそれは…….まあ, API とかで切り離されているので,そこだけしっかりしていれば,という話はあるか.

宮森

そこはコードレビューテスト等でカバーっちゅう。まぁ確かにコードには実際assertが入りまくったりするわけですが。

坂木

品質が強く求められるからといって品質が高いわけではないのが問題ですね

今井

あとは、デモが作れればいい、的なのも同じかなぁ。

宮森

メモリ管理、freeせずに終了してOSに全て回収させれば管理しなくて良い。

宮森

メモリ管理コンパイル時に全て静的なサイズで確保すれば管理しなくて良い。(FORTRAN77並の感想)

安原

OSGC してくれる論, TPO をわきまえているならば普通にありですよね(TPO をわきまえているならば!).

今井

まー、 offline で動くバッチ、的なのはそこまでメモリ管理とか / パフォーマンスとかにもシビアにならなくていいし(最悪オーダーがほどほどならよい、的な)、そいう文化にいると、雰囲気にのまれる人が多い、というのはまぁわかる。

坂木

私は基本その文化で過ごしてきたので現在進行形でわりかし困ってますね……

今井

あれ、そうなんです? 私がかかわった人のなかでは、コード見ててもむしろカッチリしてるほうだと思ってたのですが...。

(つまり、ここから坂木さんのハードルめっちゃ高いという帰結が...)

宮森

いろいろ言っていますがワタクシ、そういう管理必要プログラムは全く書けなくなりましたので今書くと死にますプログラム顧客大事データが)

安原

しかし,システムプログラミング界隈に「人間リソースを適切に管理できる」という悪しき信仰がはびこっているの,何か構造的な原因があったりするのかなあ?

宮森

システム系、基本的に生のハードウェアが透けて見える言語を使う必要があって、そのために選択肢がCしかなくて、手段が限られているからこそ信仰が発生した、という認識

宮森

実際、Linuxカーネルとか、規模からすれば驚異的に少ない数のバグで動いているので、信仰心が生まれ気持ちも分かる。

宮森

他の言語OS書くっていうのも研究レベルではあるけど、実用になっているのは見たこと無いですねぇ……。

坂木

Linux カーネル、一体どうやったらあの規模のコードクオリティコントロール出来るのか本当に不思議

安原

Linux カーネルのアレは,属人性依拠しすぎていて全然スケールしないのでは…….

坂木

Linux カーネル属人性高そうではあるけどそれでも実際に十分スケールしているからなあ…… ヤバいレビュアーごろごろしているのかな

宮森

属人性依拠しさえすればできるので十分な数の開発者がいれば問題になりません(キリッ

安原

私も [検閲削除] のコミュニティを見てましたから,各々必要ドメインにおける圧倒的なタレント性を持った人たちが1ヶ所に集結して奇跡アンサンブルを奏でうる場合がありうるのは理解しているんですが,本当にただの奇跡しかないと思っています

宮森

つーても機械エンジニアリング町工場職人芸を必要であれば使うように、属人性を求めるのも一個の正しい戦略だと思うんですよね。

宮森

なおその対極がみずh(省略されました

安原

Linux カーネルにおけるスケール云々は, Linux カーネルコミュニティ自体におけるスケーラビティではなくて,(システムプログラミングコミュニティ全体(他のプロジェクト)へスケールするかどうかを言ったつもりでした.

坂木

まあ人外を集めるという手法一般にはスケールしないですからね……

宮森

C系がシステム系で優先されるの、ツールを変えるとツール独特の罠があるので、罠が全て分かっているツールを使う、っつうのもあるな。

安原

システム系、基本的に生のハードウェアが透けて見える言語を使う必要があって、そのために選択肢がCしかなくて、手段が限られているからこそ信仰が発生した、という認識

これが原因だとすると,やはり Rust だ……Rust しかない…….ツール周りとか,まだまだ未整備な部分たくさんあるけれど……そこをクリアすれば…….

坂木

Rust は 1.0 が出る直前くらいにちょっと触ってイテレータが作れなくて敗北したっきりだな。

坂木

イテレータっていうか Java でいう Scanner を作ろうとしたんだっけ。サードパーティライブラリも探してみたけどその頃は I/O 周りの API が unstable でビルドが軒並み壊れていたりしたな……

藤堂

1.0 以前のことは忘れましょう (本当に unstable)

安原

Rust,型でエラーを弾くだけではなくて質の低いプログラマまでも弾く印象.

坂木

一般に型の強い言語は質の低いプログラマを弾きますね(Haskell などを思い浮かべながら)

安原

「Rust 経験者」という条件でプログラマ募集して,それで入ってきた人材に C を書かせればよいのでは!(ピコーン!

藤堂

犯罪ですよそれは

安原

はい

藤堂

haskell 経験者を集めて php 書かせようとした会社がどこかにあったような (ヘイトけがたまる)

安原

まさにそれをイメージしていました.

宮森

どういう顛末になったか詳しく知りたいw

藤堂

うーん、それ以降の話は知らず

今井

Rust そして誰もいなくなった、にならないかが一番心配だったりする

安原

それな

宮森

もしかして、NTPsecの人がRustでミニサーバーを起こすのにすら苦労していたの、普段からバグありのコード生産しているからなのでは、という気がしてきた……。

(この辺で一同寝落ち

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん