タグ

開発と江添亮に関するmohnoのブックマーク (24)

  • https://twitter.com/EzoeRyou/status/1592331979122692098

    https://twitter.com/EzoeRyou/status/1592331979122692098
    mohno
    mohno 2022/11/15
    「Twitterアプリは1000以上のRPCしてるからクソ遅い」←これ、Elon Muskが自分で分析したという気もしないから、コードレビューを任されたテスラの社員が報告したってことなのかなあ。
  • https://twitter.com/EzoeRyou/status/1571442213883899905

    https://twitter.com/EzoeRyou/status/1571442213883899905
    mohno
    mohno 2022/09/19
    「粋がったふりして増田にデマを書くと有用な情報が集まってくる」みたいな話を読んだ記憶。/(Reddit知らんけど)コメントが付いた投稿が目立つようになってる可能性はあるかもしれない。
  • Erlangについて思うところ

    職場の今までいた部署が潰れてしまったので、新しい部署で仕事のためにErlangを学んでいる。基礎的な文法については学び終わったので、現時点でのErlangについての雑感を書いておこうと思う。 Erlangは多数派のプログラミング言語とはだいぶ違う文法を持っている。終端記号がドットであることもそうだが、比較演算子もだいぶ違っている。多くの言語が!=を使うなか、Erlangは/=を使っている。Less than or equal toが=<であるのも多数派とは異なっている。ただし、Greater than or equal toは>=だ。一貫性がない。 終端文字はドットだが、関数の中には一つの式しか書くことができない。式はカンマで区切ることができるので、以下のようになる。 func() -> expr1 , % カンマ expr2 , % カンマ expr3 . % ドット このような文法はリ

    mohno
    mohno 2020/01/19
    「職場の今までいた部署が潰れてしまった」「新しい部署で仕事のためにErlangを学んでいる」←C++が“仕事”じゃなくなったということなのか。
  • P++: 静的型付けをめざすPHP

    PHP: pplusplus:faq PHP 8から、PHPは「PHP」と「P++」という2つの言語を提供するようになる。P++はPHPとの下位互換性を削りながら除々にPHPを静的型付け言語にする試みだ。 PHP開発者の中には2つの流派がある。PHPの源流であり現在の形である動的型付け言語としてのPHPを良しとする流派と、PHPをより強い静的型付け言語へと発展させたい流派だ。良い悪いの問題ではない。どちらの流派も正当な理由がある。しかし、ゆるふわな動的型付け言語とガチガチの静的片付け言語は同じ一つの言語として同居できない。 そこで、コードネームP++として、PHPを静的型付け言語に発展させる新しい言語の開発が提案された。P++はforkではなく、PHPと同じコードベースを共有する。PHP 8のバイナリはPHPとP++を同時に実装する。言語の切り替えは何らかの宣言によって指定する。 P++は

    mohno
    mohno 2019/08/13
    「P++はforkではなく、PHPと同じコードベースを共有する。PHP 8のバイナリはPHPとP++を同時に実装する。言語の切り替えは何らかの宣言によって指定する」「過去の失敗に学んだのだろう」
  • 兵庫県警は魔法と科学の区別がつかない:JavaScriptプログラムによる補導が間違っている件について

    不正プログラム書き込み疑い補導|NHK 兵庫県のニュース クリックすると同じ画面が表示され、消えなくなる不正なプログラムのアドレスをインターネットの掲示板に書き込んだとして、13歳の女子中学生が兵庫県警に補導されました。 兵庫県警は魔法と科学の区別がついていない。そのようなJavaScriptプログラムには何の問題もなく、問題はそれを閲覧したユーザー側のブラウザーにある。 「クリックすると同じ画面が表示され、消えなくなる不正なプログラム」というのがどのように実装されていたかは知らないが、最も簡単で原始的なものは、アラートを繰り返し表示し続けるプログラムだ。 while (true) alert("Hello") ; このプログラムを実行すると、アラートが繰り返し表示され続ける。ところで、このプログラムを実行しているのは閲覧者のコンピューターとブラウザーだ。このプログラムを提供したものの責任

    mohno
    mohno 2019/03/06
    “サンドボックス”と言いたいのかもしれないが、ブラウザがどう解釈するかをわかって“悪意”を仕込むんだから、これは無理筋。スマホのアプリなら悪意は存在しえない、とまでは言えないでしょ。
  • 本の虫: GCCのgit移行が難航中

    GCCはgitへの移行を計画しているが、GCCの既存のsubversionレポジトリをgitレポジトリに変換する作業が難航している。 GCCの移行作業を検証しているのは他ならぬEric S. Raymond(ESR)だ。 ESRお手製の変換ツール、reposurgeonはsubversionからgitへの変換ができる。 Resource page for reposurgeon 3.44 しかしGCCは30年もの歴史を持ち、そのsubversionレポジトリも複雑だ。 ESRはGCCのためにreposurgeonのバグを潰し、勢い変換しようと試みたが、意外な障害に出くわした。メモリ不足だ。 GCC's Conversion To Git Is Being Held Up By RAM, a.k.a. Crazy DDR4 Prices - Phoronix ESRの所有する64GBのメモリ

    mohno
    mohno 2018/07/31
    何が大変なのかと思ったら履歴ごと移行しようとしてるのか→「ESRお手製の変換ツール、reposurgeonはsubversionからgitへの変換ができる」「今のソースツリーの状態をそのままgitにしていちからはじめるほうがマシかもしれん」
  • C++完全理解ガイド Rev1.4.01 - Qiita

    はじめに C++を完全理解したので完全理解ガイドを書く。 最初に言っておくがタイトルは詐欺で、実際はポエムである。 僕は仕事C++を書いたことはないのでなんか変なことを言っているかも知れない。 ところで無職になったので、普通にC++で職がほしい。 2018年6月から受託で仕事をもらい、毎日C++17を書いています。 2018年9月から雇用され、毎日C++17を書いています。 かなり雑に書いているはずなので、コメント等でどんどんマサカリを投げてほしい。 僕は何者か 工学部を卒業して4年ほど高校の理科教師をやっていたが、現在無職になった人。 工学部を卒業して4年ほど高校の理科教師をやっていた。 最初は良かったのですが、授業に慣れ、このまま自分の成長が止まってしまうのかとなぁと思い、辞めて無職に。 一ヶ月無職を楽しんだあと、某から受託でC++を書く仕事をもらい、C++17を書いている。 主にツ

    C++完全理解ガイド Rev1.4.01 - Qiita
    mohno
    mohno 2018/03/28
    「C++はその進化とともに玄人に優しくなりすぎた」(Bjarne Stroustrup) あと Visual C++ はちょっとずつ実装進んでるけど、破壊的変更があるからC++17オプションが必要なんだな。まだ見ぬ江添本の評価は読んでから:-)
  • 60%の人間はプログラミングの素質がない

    Coding Horror: Please Don't Learn to Code Please Understand Learning to Code Coding Horrorで有名なJeff Atwordが、ある州知事が今年の目標としてプログラミングを習得することを挙げていることに対し、そもそも税金を払う我々市民は、政治家にはプログラミング習得以上に重要な、政治家にしかできない問題の解決を望む、よってプログラミングを学ぶのをやめてくれという記事を書いた。これに対して、反論が多数上がっているが、Jeffも読んでいるある論文をあげて、この議論の参加するためには、必ずこの論文を知っておくべきであると書いた人がいる。この論文は有名で、非常に興味深いので、全プログラマーが読むべきである。 ふたこぶラクダという名前で知られている有名な論文がある。この論文では、60%の人間にプログラミングの素質が

    mohno
    mohno 2018/01/25
    元ネタはこれか。判断基準は面白い。「素質のある人間は、40%ぐらい」は意外に高い気もするけど、色んなレベルの人が普通に新人研修に放り込まれてくるからなあ。あと、絵の素質、音楽の素質はどうなのか、とか。
  • 国際標準規格の紹介 〜ISO国際標準規格プログラミング言語C++について〜

    はじめに こんにちは、C++標準会員の江添です。 今日は普段から表に出ている、閉鎖的なゲーム開発では使われていない開発環境についての紹介をします。 今回紹介するのは、ISO国際標準規格プログラミング言語の「C++」です。 なんと表の世界では、国際標準のプログラミング言語は、コンパイラーベンダーやC++利用企業と行ったC++に利害関係を持つ多数の代表が国際標準規格を制定しているのです。当たり前でしょ? C++は以下のような特徴を持っています。 エラーに気づきやすい静的型付け言語 C++経験者が理解しやすい言語仕様 OSに依存しない移植性の高いC++実装 実行環境に依存しないC++規格準拠の挙動の定義 C/C++の関数・クラスに最初からバインドされている 今でもクローズな実装の詳細のわからないプログラミング言語がたくさんあり、それらを使うデメリットは数多くあります。 国際規格の言語を使うのは様

    mohno
    mohno 2017/11/11
    あー、あれ、あとでツッコもうと思ってたら、タイムリーな記事が……と思ったら、そこが元ネタで書かれたものだったかw
  • 江添亮の詳説C++17

    はじめに 書は2017年に規格制定されたプログラミング言語C++の国際規格、ISO/IEC 14882:2017の新機能をほぼすべて解説している。 新しいC++17は不具合を修正し、プログラマーの日々のコーディングを楽にする新機能がいくつも追加された。その結果、C++の特徴であるパフォーマンスや静的型付けは損なうことなく、近年の動的な型の弱い言語に匹敵するほどの柔軟な記述を可能にしている。 人によっては、新機能を学ぶのは労多くして益少なしと考えるかもしれぬが、C++の新機能は現実の問題を解決するための便利な道具として追加されるもので、仮に機能を使わないとしても問題はなくならないため、便利な道具なく問題に対処しなければならぬ。また、C++の機能は一般的なプログラマーにとって自然だと感じるように設計されているため、利用は難しくない。もしC++が難しいと感じるのであれば、それはC++が解決すべ

    mohno
    mohno 2017/10/14
    江添さんのこういうところはホント凄いと思う。/もっとも、C++ でこういう拡張が望まれている現場ってどれくらいあるんだろうという気もしてる。
  • C++の未定義の挙動で呼ばれないはずの関数が呼ばれる場合

    Krister Walfridsson’s blog: Why undefined behavior may call a never-called function 以下のようなコードをClangでコンパイルすると、 #include <cstdlib> typedef int (*Function)(); static Function Do; static int EraseAll() { return system("rm -rf /"); } void NeverCalled() { Do = EraseAll; } int main() { return Do(); } Clangは以下のような最適化されたコードを吐く。 main: movl $.L.str, %edi jmp system .L.str: .asciz "rm -rf /" これは以下のようなコードと同じだ。

    mohno
    mohno 2017/09/26
    「未定義の挙動はありえないのでその場合は除外してよい」←ビックリだけど、そもそも元のコードが間違っているわけで、特に深刻な問題というわけではないな。
  • Bjarne Stroustrupのプログラミング入門書の査読の感想

    C++の設計者ストラウストラップによるプログラミング入門書の最新版日語訳が、9月に @asciidwango から出版されます。 https://t.co/ssT9ubfXtT — アスキードワンゴ編集部 (@asciidwango) August 5, 2016 アスキードワンゴ編集部からBjarne StroustrupのProgramming -- Principles and Practice Using C++というの第二版の邦訳が出版される。初版は翔泳社が出していたが、C++14に対応した改訂版の第二版の版権が空いていたので、アスキードワンゴから出すための作業をしていた。私は邦訳の査読をした。 今年になってから半年は、ずっとこのの査読をしていた。このためにC++標準化委員会の最新の文書を把握する作業が数ヶ月ほど滞った。そして、この仕事は、私がドワンゴに入社して以来、最悪の

    Bjarne Stroustrupのプログラミング入門書の査読の感想
    mohno
    mohno 2016/10/11
    「結論から言うと、この本は極めて悪く書かれている。およそ悪書の見本のような本だ。悪文の集大成といってもよい。プログラミング言語入門用としても悪い」←そもそもC++言語自身が入門向きではないんだよなあ。
  • トップ

    ENGINEER エンジニア ハンダ吸取器 SS-02 半田吸い取り器は基は電動式のものを使うのだが、電動式のものはスイッチ入れてから使えるようになるまで、数分かかる。かといってずっと待機させておくとなると場所もとるしコテ先も焼けるしでわずらわしい。手動式のものは力が弱いのが難点なのだが、これを試しに買ってみたらかなり強い。片面基盤ならこれで十分。 IKococater 安定化電源 直流安定化電源 0-30V 0-10A デジタル回路の制作が主になって、安定化電源のお世話になることも減ったのでずっと持っていなかったのだが、久しぶりに必要になったので購入。子供の頃はまだスイッチング電源がなくて、10Aも取れるものは巨大で高価だったものだが、今はこんなにコンパクト、安価になった。この手の廉価なものは調整ツマミが可変抵抗で経年変化でガリって使い物にならなくなるのだが、驚いたことにロータリーエン

    mohno
    mohno 2016/10/11
    監修の江添亮氏がさんざん愚痴ってたやつだな→https://cpplover.blogspot.jp/2016/08/bjarne-stroustrup.html 「これは標準のヘッダ」「何と標準関数」←そんなワケがない。モウロクしたStroustrup氏が教材にでも使っているのかな。
  • 作業が早いプログラマーと遅いプログラマーの差の比は4:1

    An empirical study of working speed differences between software engineers for various kinds of task プログラマーの作業速度には差がある。作業速度が早いことだけをもって優秀なプログラマーとは限らない。そのソフトウェアの保守性が悪いかもしれないからだ。しかし、やはり作業速度の早いプログラマーは優秀と見られがちだ。特に、転職界隈では、優秀なプログラマーは、その作業速度の速さを形容して、「ニンジャ」とか「10倍プログラマー」などというタイトルで喧伝されている。さて実際には、プログラマーの作業速度は、全体としてどの程度違うのか。 プログラマーの作業速度が早いものと遅いものの比は、従来、28:1であると言われてきた。この数字には根拠となる研究がある。1967年にGrantとSackmanが公開した論文

    mohno
    mohno 2016/07/18
    「こういう短期間の実験では、乱数が相当に左右するのではないだろうか」←調査対象の集団や開発テーマが大きく左右しそうな上に、個人の力をどの程度か定量的に判断できなければ平均値を求めて何の意味があるのか。
  • メンバー関数へのポインターを返すメンバー関数へのポインターを返すメンバー関数

    class Foo;が存在したとして(1)Fooのメンバ関数ポインタ(2)を戻すメンバ関数のポインタが欲しいと思った(なお(1)で戻すメンバ関数もFooのメンバ関数ポインタを戻す)のだが、どうあがいても記述出来ないものだったりするのだろうか? ようするに、以下のようなことがしたいわけだ。 class Foo { public : // メンバー関数a void a() { } // メンバー関数aへのポインターを返すメンバー関数b ??? b() { return &Foo::a ; } // メンバー関数aへのポインターを返すメンバー関数bへのポインターを返すメンバー関数c ??? c() { return &Foo::b ; } } ここで、???の部分に戻り値の型を記述しなければならない。 もちろんこれは記述できる。ただしその記述は、C++の規格のバージョンにより難易度が異なる。 C

    mohno
    mohno 2015/03/25
    別にC++03だとしても「どうあがいても記述出来ないもの」と考えたりはしないと思う。仮想継承とか多重継承しててもこういう型を処理できるようにする実装は大変だな、とは思うけどね。
  • N1875: C言語にクラスを追加する提案

    ask.fmで、面白い質問が来た。なんと、C言語にクラスを追加する提案論文が、先月末に公開されているというのだ。 N1876: Adding classes to C C言語の標準規格は追っていないのだが、なかなか興味深い。 この提案は、C言語にC++風のクラス機能を追加する提案だ。ただし、C++のクラスをそのまま持ってくるのではなく、だいぶ保守的な採用の仕方をしている。 この論文で提案されているクラス機能は、C++の文法によく似ている。クラスstructかclassキーワードで宣言する。アクセス指定子もあり、structはデフォルトでpublic、classはデフォルトでprivateなのも、C++と同じだ。 派生はあるが、多重派生は認められていない。 virtual関数やRTTIはない。 また、C++にある、自動的に呼ばれるコンストラクター、デストラクターは存在しない。 かわりに、イニ

    mohno
    mohno 2014/10/02
    「C言語にクラスを追加する提案論文」「virtual関数やRTTIはない」←隠れた仮想テーブルなんて使わないって感じかな。OOP言語としては落第だが、これはこれでいかにもC言語らしくて、微笑ましい。
  • 任天堂の使っている自由ソフトウェア

    任天堂ホームページ:任天堂製品に関連するオープンソースソフトウェアのソースコード配布ページ 任天堂がひっそりと、自社製品で使っている自由ソフトウェアを公開している。 残念ながら、彼らはオープンソースという誤った用語を使っている。オープンソースというのは誤った運動であり、誤解を招きやすい用語だ。自由ソフトウェアという用語を使うべきである。 WiiU3DSのファイルは相当に大きいので落として確かめていないが、Hacker Newsによれば、改変版Webkitとか、MSVCでコンパイルできるようにしたBluetoothライブラリとかだ。バーチャルコンソールにはMozillaのnanojitが使われているらしい。 WiiUのバーチャルコンソールがサイズも小さいので実際に落として確認してみたところ、nanojitが入っていた。 気になるのは、マリオカート8に使われている、BluetoothのSBC

    mohno
    mohno 2014/08/03
    相変わらず関連性のないものを結び付けようとして現実離れしてるなあ。まったく経験したことのないハードを社員として学ばせてくれることに何の問題が?
  • Ryou Ezoe | ask.fm/EzoeRyou

    Free as in Freedom. C++, HTML5, CSS, JavaScript, Ubuntu GNU/Linux, Vim, Dwango, GitHub: https://t.co/nJZPViZu0c

    Ryou Ezoe | ask.fm/EzoeRyou
    mohno
    mohno 2014/06/06
    「苦手なことなんですか/タバコ」「彼女はいますか?/いない」「英語を話すことはできない」「ドワンゴの「これはイマイチだな」/EXCEL方眼紙」「プログラミング歴/15年」「勤務時間外」「メタプログラミング/賛成派」
  • Jenkinsの開発者、間違えて一ヶ月前のローカルレポジトリをgit push --forceしてしまう

    Jenkinsの開発者、間違えて一ヶ月前のローカルレポジトリをgit push --forceしてしまう Jenkin developers accidentally do "git push --force" to over 150 repos on github | Hacker News Jenkinsの開発者、Luca Milanesioによって、Jenkinsの多くのgitレポジトリに対してpushが行われた。不思議なことに、pushをしたというのに変更点はほとんどみられない。一体ルカは何をやったのだ。 Dominik Bartholdi やあみんな、とくにルカ。 昨日、GitHub上のJenkinsの多くのレポジトリ(50以上)に、なにか変なことが起こった。 どうやら、Luca Mmilanesioが、何の変更もないのに、たくさんのたくさんのレポジトリにpushしたらしいのだ。

    mohno
    mohno 2013/11/12
    戻せないアップデートなんてできるんだ。
  • C++参考書の販売:C++11の文法と機能

    完成したC++11参考書:C++11の文法と機能の販売をGumroad.comで開始した。 Gumroadで購入:C++11参考書:C++11の文法と機能 直接のGumroadへのURLは:https://gum.co/IwMm 内容はC++11のコア言語の文法と機能を、規格に忠実に解説した自由な参考書だ。すでにGitHubで公開しているものと同一の内容だ。 GitHub: EzoeRyou/cpp-book GitHubからzipでダウンロード GitHub Pagesでの閲覧:C++11の文法と機能 の虫: C++11参考書の公開:C++11の文法と機能 価格は、最低5000円以上の任意の額で購入できる。値段に関しては色々とあるだろうと思うが、筆者は、これでも安すぎると思っている。電子書籍に対価を支払う文化を根付かせなければならない。あまりに安すぎると意味がない。あまりに高すぎると払

    mohno
    mohno 2013/11/10
    金とるのかよ、と思ったけど、ちゃんとフリーで公開はされているんだ。/とりあえず xhtml を PDF に変換してみた→ http://www.mohno.com/cpp11syntax/