ブックマーク / cpplover.blogspot.com (22)

  • プログラミングを学ぶ方法がわからない

    最近、プログラミングをどうやって学べばいいのかわからなくなってしまった。 筆者はドワンゴに雇われている。ドワンゴに入社して早4ヶ月になろうとしている。ドワンゴに雇われている名目は、C++の啓蒙である。C++の啓蒙にはC++教育も含まれる。したがって、筆者はそろそろC++教育をしなければならない。 筆者は、プログラミングを教育する最良の方法は、参考書を執筆することだと考えている。直接対面して教えるのは非効率的だ。文章を書いておけば、大勢が学べる。では、どのような参考書を執筆すればいいのか。すでにC++11のコア言語の参考書は書いた。 EzoeRyou/cpp-book C++14対応も、正式なC++14規格制定後に行わなければならない。そしてライブラリは、もし他にやる人がいないのであれば、やらなければならないだろう。 しかし、これらのは、C++をこれから学び始める人向けではない。C++

    vid
    vid 2014/05/22
    基礎的な部分は、確かに基礎的な操作方法は大学で情報学やるときに「必要になるから」教わったけど、基礎部分以外は全部自力で積み立てたなぁ。それが今の技術の土台になってるので、回り道じゃなかったし。
  • ゲームスペース柏木でドミニオンをした

    ゲームスペース柏木の毎週木曜日に行われている木ドミに参加して、ドミニオンをしてきた・・・と思う、たぶん。私の知るドミニオンとは、だいぶ趣が違ったのだが。 ゲームスペース柏木というのは、新宿区百人町1-24-7のタウンプラザ3Fにある、ゲーム用の部屋だ。極めてわかりにくい場所にある上、タウンプラザという建物自体がカオスだ。何やら小規模な店舗が多数入っている。 さて、新宿駅から明後日の方向に向かって進んだ挙句、途中でブックオフを発見してしまったので、やむを得ずして立ち寄った後、ようやく柏木に到着した。中では、4卓はドミニオン、1卓はアグリコラをしていた。 さて、ある卓でのプレイが終わったので、入れ替わりに入って、ドミニオンをした。 ドミニオンというのは、覚えやすいルールでありながら、選択の余地が大量にあって、大変面白いゲームである。筆者はまだ、数えるほどしか遊んでいないが、筆者の知るドミニオン

    vid
    vid 2014/05/02
  • 超会議3の超チューニング祭の感想

    さて、超チューニング祭が終わったので、感想を書こうと思う。すでに、参加者の中で、感想を書いている人もいる。 レポート - 超チューニング祭で努力賞(最速賞)をとるためにやったこと - Qiita ニコ動 超チューニング祭で最優秀賞もらいました 超チューニング祭に参加した - masarakki's blog JavaScript - 超チューニング祭に参加&表彰した - Qiita kmizu/slide_cho_tuning また、いつの間に行ったのか、優勝者に取材したところもあるらしい。 『ニコ超3』の超チューニング祭で、“創世神”戀塚昭彦氏を上回ったカップルが見せたバランス感覚 - エンジニアtype さて、筆者の視点からみた超チューニング祭はどうだったか。 そもそも、私がスタッフとして配置されるブースは、超時空ニコニコ研究所であるはずだった。しかし、超会議にさかのぼること三週間前、

    vid
    vid 2014/04/30
    真面目勢の本気がそれだけすごいってことか……
  • JavaScriptのコメントと改行

    今回の記事は、JavaScriptのコメントの文法についての、とてつもなく些細な内容になる。 まず、「改行」の定義について ECMAScript規格では、俗に改行と呼ばれているものは、正式には、行終端子(Line Terminator)と名づけている。行終端子は5個あり、これは4種類の文字からなる。なぜ4種類の文字で5個あるのか。ひとつは組み合わせなのだ。 行終端子を構成する4種類の文字は、\u000A(Line Feed), \u000D(Carriage Return), \u2028(Line separator), \u2029(Paragraph separator)である。 しかし、慣習的に、CRに続くLFを、ひとつの「改行」とみなすことが横行している。JavaScriptはこの慣習を追認する形で、CRLFの2文字をひとつの行終端子として認識する。 さて、題に入ろう。Java

    vid
    vid 2014/04/16
  • GCC 4.9リリース

    GCC, the GNU Compiler Collection - GNU Project - Free Software Foundation (FSF) GCC 4.9がリリースされた。少なくとも、公式Webサイトのトップページからは、リリースされたことになっている。ただし、なぜかリンクをたどると GCC 4.9 Release Series — Changes, New Features, and Fixes - GNU Project - Free Software Foundation (FSF) GCC 4.9がリリースされた。興味深い変更点を上げると。 大昔の、もはや保守もテストもされていないようなプラットフォームのサポートがobsolete扱いになった。もし、活発な活動が行われない場合、次のリリースでは取り除かれるそうだ。特に、Solaris 9が挙げられている。 Cla

    vid
    vid 2014/04/13
  • みずほ銀行の信じられない契約軽視姿勢

    仕事のため、みずほ銀行の個人の口座を作る必要があったのだが、その銀行口座を解説する手続きで、対応にあたった行員が、極めて信じられないほどに契約というものを軽視していた。 みずほ銀行に口座を開く手続きのために、書類に必要な事項を記載し、署名捺印となった。行員は捺印の二箇所を私に指示した。一箇所は単に捺印するだけであったが(法的にも、印鑑は署名の代わりに補助的に用いることができるだけの極東の奇妙な風習である)、もう一箇所には、「私は規約に同意しました」的な文面があった。 はて、これはなんだろう。 私「すみません、これはなんですか」 行員「そこに押してください」 私「いえ、この規約ですが、これはどこにあるのですか」 行員「それでしたら裏にあります」 なるほど、裏にかかれていた。その規約を確認すると、みずほ銀行は私の個人情報を、市場調査などの統計解析のために使うことができるし、ダイレクトメールを送

    vid
    vid 2014/03/19
  • ドワンゴに入社した

    そう。タイトル通りだ。筆者、江添亮はドワンゴに雇用された。一体、どのような経緯でドワンゴに入社するに至ったのか。また、どんな仕事をしているのか。それを説明するには、時系列を追って書いたほうがいいだろう。 2013年8月21日 ふとみると、以下のようなサブジェクトのメールが届いていた。 【ご相談】ドワンゴ主催の C++11, 14 に関する勉強会にスピーカーとしてご参加頂けないでしょうか C++11? C++14? なんと、日C++14などという単語を知っている企業があったのか。しかし・・・ドワンゴ? SPAMだろうか。いや、こんなにピンポイントなSPAMがあるわけがない。 それにしても解せないメールだ。ドワンゴといえば、もちろん、あの有名なニコニコ動画の企業だ。ニコニコ動画と言えばWebサイトだ。ニコニコ動画やその関連サービスの開発にC++を使っているのだろうか。いやまて、たしか子会社

    vid
    vid 2014/02/13
    そりゃ、標準化にまで精通してるウィザードなら余裕がある会社は確保しておきたい人材でしょう。雲の上のレベルだ//ドワンゴがこだわってる理由もなんとなく分かるなぁ。トップにバイナリアンが居ると更に(^^;;
  • うっかりチューリング完全になっちゃったもの

    Accidentally Turing-Complete ― Andreas Zwinkau 来なら、チューリング完全となるべきではなかったものがある。これは、そのようなうっかりチューリング完全になってしまったものの例である。 C++テンプレート 当初はチューリング完全を目指していなかったが、C++テンプレートはチューリング完全になってしまった。その証明は、この論文にある(PDF) x86 MMU x86のpage fault handlingは、単純なマシンの実装に使える。原理としては、page faultが1 wordをスタックに積み、それによりアンダーフローを起こして別のトラップを生成する。この仕組みは、「減算して0以下ならば分岐」処理を実現する。チューリングマシンを実装するには十分である。デモ動画、講演動画 マジック・ザ・ギャザリング マジック・ザ・ギャザリングはカードゲームであ

    vid
    vid 2013/10/21
  • ババア補完計画

    書はクッキー・クリッカーについて先に成し遂げられし預言書、クッキー・クリッカーについての続編である。読者は前編を読み、またクッキー・クリッカーを反物質変換装置を購入した時点まで進めることが強く推奨されている。今回は、並行してゲームを行うことは推奨しない。書は将来の備えと覚悟のために読んでもらいたい。読者はいずれ到達しなければならない未来なのだから。 クッキー・クリッカー の虫: クッキー・クリッカーについて 読者よ。クッキーの忠実なる臣にして生産者よ。汝はついに、クッキー生産の頂点、反物質変換装置を購入するに到れり。何ぞや。反物質変換装置はV.1.0.36における最終ビルディングにして、これより購入クッキー額高き、またCpS高きビルディングなし。されど、汝はさらなるクッキーを求めんと欲す。汝はさらなるクッキーを生産を望まんと欲す。その意思、まことに偉大なり。如何となれば、世にクッキー

    vid
    vid 2013/09/17
  • クッキー・クリッカーについて

    昨日、筆者はクッキー・クリッカーなるゲームを体験した。このゲームは、ゲーム質を非常によく抽象化している。ここではそのゲームについて述べるが、読者には実感のため、並行してゲームを行なってもらいたい。 このゲームのプログラムはHTML/CSS/JavaScriptと、その他のリソースで構成されていて、ストールマンの自由四原則に合致する自由ソフトウェアではないが、一応は、制限的ながら、forkや改変を許諾している。このプログラムを動作させるには、まともなブラウザーが必要である。 Cookie Clicker まずみると、左に素晴らしくうまそうなクッキー、中央によくわからない列、右によくわからない小物が並んでいる。操作方法がよくわからない。まず、左にこれみよがしに配置してある、うまそうなクッキーをクリックしてみよう。 +1 なんと、クッキーが一枚得られた。続けてどんどんクリックしていくと、数十

    vid
    vid 2013/09/17
    ユーモアとしては面白いが『そのゲーム作成者はクッキー・クリッカーによって明らかにされたゲームの本質を理解していない近眼者であり』煽り過ぎ。そこは(広義の遊戯としての)ゲームの本質とは違う。
  • 最悪のプログラミング言語、BANCStar

    Following is the email I received from Google for this article. This is so unhelpful to identify the cause. After carefully reviewing the article, I found one URL that was flagged to contain malware(probably usual old domain expired and purchased by other problem) so I removed that link. Please review and re-publish this article. I hope Google's flagging system tells me why it trigger the flagging

    最悪のプログラミング言語、BANCStar
    vid
    vid 2013/09/02
    せめてニーモニックを作れよと思う(^^;; 機械語を本当に直接書かされるとは(w
  • GCC 4.8でぶっ壊れるSPECのお粗末なコード

    の虫: GCC 4.8のリリースノートとC++関連の変更で、GCC 4.8は464.h264ref: SPEC CPU2006 Benchmarkを壊してしまう。これはSPECベンチマークの規格違反によるものであると書いた。では、具体的に何なのか。それを解説している記事を発見したのでかいつまんで紹介。 Embedded in Academia : GCC pre-4.8 Breaks Broken SPEC 2006 Benchmarks Regehr: GCC 4.8 Breaks Broken SPEC 2006 Benchmarks [LWN.net] どうやら、SPECベンチマークは以下のようなコードを含むそうだ。 int d[16]; int SATD (void) { int satd = 0, dd, k; for (dd=d[k=0]; k<16; dd=d[++k])

    vid
    vid 2013/03/26
  • KDE、あやうくレポジトリを失いかける

    Too Perfect A Mirror - Me, my blog, and my Johnson 追記:上記記事の全訳 の虫: KDEレポジトリ消失問題の記事の全訳:完璧過ぎるミラー 追記:この記事は上記のブログ記事にざっと目を通して素早く書いたものであり、詳細を欠く。上記の記事は全訳しているので、より正確で詳細な内容のために、目を通すべきである。 2013-3-22に、git.kde.orgをホストしている仮想マシンをセキュリティアップデートのために一旦落とした。アップデート後に復帰させてみると、ファイルシステムが壊れていたらしく、KDEの1500以上ものレポジトリが消えていた。 問題は、この問題が気づかれぬまま復帰したので、ミラーサーバーが誤りをそのままコピーしてしまったことだ。 ミラーは正しいバックアップではない。 とてつもなく幸運なことに、この問題が起こる一日前、ミラーサーバ

    vid
    vid 2013/03/26
  • ロボットが反乱を起こしたらどうなるのっと

    Robot Apocalypse ロボットの反乱がおきたらどうなるのか。人類はどれだけ持ちこたえることができるのか。 --Rob Lombino この質問に答えるために、僕の経歴について話しておこう。 僕はエキスパートではないにせよ、ロボット光学について多少の経験は持ち合わせている。大学を出てから最初の仕事は、NASAにおけるロボット研究だったし、大学での学位は、ロボットの移動に関するものだった。僕は十代をFIRST Robotis(高校生によるロボット競技会)や、BOTのプログラミングによる戦いRoboWar や、個人で水中移動ロボットの開発をしたりして過ごした。また、Robot Wars(イギリスのロボット競技TV番組)や、BattleBots(アメリカのロボット競技大会)や、RoboGames(アメリカのロボット競技大会)を多数観ていた。 この経験により言えることは、ロボット革命とい

    ロボットが反乱を起こしたらどうなるのっと
    vid
    vid 2012/08/22
  • Minecraftの作者が特許ゴロに訴えられる

    PDF注意 侵害したとされる特許は、 Patent US6857067 - System and method for preventing unauthorized access to electronic data - Google Patents 電磁的情報への非認可アクセスを拒否するためのシステムと手法。申請日、2001年2月26日。 大真面目に特許内容を読んでみたのだが、特許の内容がさっぱりわからない。なにやらライセンス文とその認証方法が、なにかスマートカードというものに同梱されていて、このスマートカードを通して認証されるような仕組みに思えるのだが。このスマートカードとやらにはプロセッサがあり、スマートカード内で認証を行うように読める。ドングルを利用したDRMだろうか。とにかくわからない。こんなものが新規性を有するとは思えない。 Minecraftは、Windows版ではドングル

    vid
    vid 2012/07/24
  • エディター戦争

    GNU/Linux環境に移行して数カ月たった。当初危惧していた、GNU/Linuxは難しいのではないかとか、使い物にならないのではないかという恐れは、全て杞憂に過ぎなかった。ただ、文化の違いというのはある。 たとえば、私が不自由なWindowsを使っていたときは、IDEを重視していた。IDEとは、エディタ兼ビルドシステム兼デバッガー兼バージョン管理システム等等。ところが、GNU/Linuxに移ってからというもの、どうもそういう考え方はしなくなった。エディタはエディタで、ビルドシステムはビルドシステムで、デバッガーはデバッガーで、バージョン管理システムはバージョン管理システムとして、別々に使うようのが自然であるように思われる。 特にエディタだ。最初は、geditを使っていた。というのも、馴染みやすいテキストエディタであるからだ。Ctrl+Cでコピー、Ctrl+Xでカット、Ctrl+Vでペース

    vid
    vid 2012/07/24
    emacs をタダの「エディター」としてみると、そりゃわけわからんよなぁ。モードやらなにやら、あれは「環境」として設定するものだからなぁ(^^;;
  • 人間はわいせつであるので表現してはならない

    ひろみつ砲が一発発射されただけで、もうこの対応だ。 【お知らせ】AppBank Network の成人向け広告の配信停止につきまして - AppBank しかし、これで終わりではない。むしろ始まりなのだ。このことによって自主規制の雰囲気が高まり、あらゆるものがわいせつ性を含む疑いをもって検証される。 胸ぐらが開きすぎている? わいせつだ。スカートが短すぎる? わいせつだ。女の顔面があらわに見える? わいせつだ。手が見える? わいせつだ。 何も私は絵空事を言っているのではない。わいせつ性の判断は、その文脈によって異なる。たとえば、基的に裸であるが、唇を切って穴を開け、陶器の皿を入れている民族では、その皿を取ることは、我々の言う裸と同様の印象を与えるらしい。インターネットは全世界に提供されているし、もしサービスを日国外にも広げたければ、あらゆる可能性を考えなければならない。 そのため、広告

    vid
    vid 2012/07/17
  • 日本国が危険な自主規制社会に突入しようとしている

    最近気になる声がある。「最近の広告にはわいせつ物が増えた。けしからん」という声である。この声は非常に危険である。 なぜ危険なのかというと、我が国では、刑法175条により、わいせつ物の頒布や陳列、頒布や陳列を目的とした所持は違法だからだ。 過去にも多数の芸術作品が、わいせつであるとして不当に撤去され、作者は罰せられている。実に、我が国は表現の自由を有せざる劣等国である。表現の自由が認められない世界では、思想の自由もなくなる。 したがって、我々はわいせつ性の判定に、もっと慎重になるべきである。なぜならば、一度わいせつ性が認められるや、その表現は違法になるからだ。表現を規制する法律を動かす便利な理由を自ら作り出しているのである。 さて、件の広告とやらは如何。幸い、あの有名な高木浩光氏が、スクリーンショット付きで実例を上げている。 togetter をスマホで見ると、常にこの手の広告。もうtoge

    vid
    vid 2012/07/17
    レイプレイ事件。意見に賛成とは行かないが、自主規制が「過ぎる」問題は常に念頭に置かないと、簡単に表現規制に行き着くからなぁ。
  • 60%の人間はプログラミングの素質がない

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

    vid
    vid 2012/05/18
    なんとなーく、地図を読めるかどうかとか思った。
  • FreeBSD 10はGCCからLLVM/Clangに移行する

    [Phoronix] FreeBSD 10 To Use Clang Compiler, Deprecate GCC FreeBSDのGCC離れが加速しているようだ。FreeBSD 10では、Clangがデフォルトのコンパイラーとなり、GCCはdeprecated扱いとなる。FreeBSDの思想からすれば、GNUのツールチェインからなるべく離れたいのは分かる。Clangのライセンスは、FreeBSDにとって非常に都合がいい。 すでにFreeBSDのカーネルは、Clangによって警告なしでコンパイルが通るそうだ。FreeBSDのパッケージも、「Clangでビルドできなければバグ」とみなして、問題の洗い出しを進めているそうだ。 LLVMとClangは、最近、目覚しい発展をしている。GCCがコードベースのモジュール化を検討するほど危機感を持つのも分かる。 その他のFreeBSDの動向については、

    vid
    vid 2012/05/15
    そこまで育ったのか>LLVM/Clang