タグ

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

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

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

  • ドワンゴの女子マネという過酷な訓練

    ドワンゴ現在、ドワンゴでは「女子マネ弁当」という企画が復活している。 過去の女子マネ弁当の様子については、すでに社外にも相当の情報が出回っているので、例えば以下のような情報を参考にしてもらいたい。 【第1回】ドワンゴ大改革の鍵は、インフラと女子マネージャー。|川上量生の胸のうち|川上量生|cakes(ケイクス) ドワンゴ「助けて! エンジニアが朝出社しないの!」→ 女子マネージャーが弁当を手渡してくれる「女子マネ弁当」システム導入で生活習慣改善へ - ねとらぼ 今回は、その女子マネ弁当の実情に迫る、社内からのレポートをお届けする。 女子マネ弁当の概要とは以下の通りである。 3月17日から、4月25日までの一ヶ月間、午前10時30分までに出社すると、以下の特典がある 午前10時30分から、エンジ色のジャージを来た女子マネ人員(なぜか若い女性のみで構成されている男女比率の偏った集団)が、エンジ

  • アマゾンの欲しい物リストで送られてきたものと、付随した変なもの

    先日、アマゾンで江添のほしい物リストを公開した。以前から、アマゾンのウィッシュリストは公開してみたかったのだが、一人暮らしの身では、なにか面白いものが送られてきても、反応に困るという問題があった。今住んでいるシェアハウスならば、大抵のものは処理できる。必要な人間がいるだろうし、あるいはいい笑いの種になる。以前、実際にかの悪名高い天竜川の洗い砂が送られてきたこともあったらしいが、それも土地を持っている住人の庭にまくという方法で、問題なく処分した。 そういうわけで、様々なジャンルからほしい物、面白いが金を出して買う程でもないものをぶち込んだお気に入りリストを公開した。 まず送られてきたのは、 ガベージコレクションのアルゴリズムと実装だ。そして、私はリストに追加していなかったが、注文に付け加える形で送られてきたのが、ECMA-262 Edition 5.1を読むだ。GCは前から欲しかっただ。

  • ドワンゴに入社した

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

  • 東京は住みにくい

    さて、東京に引っ越して数週間たった。結論から言うと、東京は住みにくい。 東京に来てまず気がついたのは、メシのまずさだ。どの飯屋に入っても、京都より数百円高い上に、クソまずい。私は未だに、東京でまともなメシ屋を発見したことがない。それは、何万円も払うような店ならば、少しは違うのかも知れないが、私はそんなごちそうをべたいのではない。普通のメシを普通の値段でべたいのだ。東京の飯屋は、800円や1000円も取る割に、どうやったらこんなにまずく作れるのだと疑問に思うほどまずいメシしか出てこない。 色々と考えた挙句、結局、東京には出汁という文化がないのではないかという結論に達した。東京には油か醤油の薄め液しかないのだ。 とくに、うどんとそばが最悪だ。そばはまだともかく、うどんはつゆの良し悪しで味が大きく左右されるというのに、東京の飯屋のめんつゆは、醤油の薄め液のようなものしか出てこない。パスタにケ

  • ステレオタイプなLinuxカーネル開発者

    この記事はおふざけで書いた。 30人のLinuxカーネル開発者から、PC環境がステレオタイプというか、古典的というか、典型的というか、硬派なカーネル開発者像に合致するような人物を探してみた。主に、「ソフトウェア開発に愛用している生産性向上ツールを教えてください」という質問を参考にして考察した。もちろん、完全に主観的な見た目の評価である。技術力の評価ではない。 硬派の考察としては、主にGUIのソフトウェアも存在するような場合でもCLIのソフトウェアを使っていることや、そのほかの利用しているPC環境の一般人から考えての奇抜さを考慮した。ただし、カーネル開発ならば当然使うようなツールは除外した。 30人のLinuxカーネル開発者:Linus Torvalds Linux Torvaldsは、もちろんLinuxカーネルの元を最初に書いた人そのものなのだが、どうもインパクトに欠ける。いや、技術上は

  • Fedora 19のデフォルトのDBパッケージをMySQLからMariaDBに切り替える提案

    [Phoronix] Fedora Looks To Replace MySQL With MariaDB Proposed F19 Feature: Replace MySQL with MariaDB FedoraのML上で、デフォルトのDBのパッケージを、MySQLからMariaDBに切り替える提案がなされている。理由はもちろん、最近、OracleによってMySQLの開発が閉鎖的になっていることの懸念からだ。 そのML上での発表に曰く、 2012-12-05のFESCoで決定されたように、機能提案はdevel-announceで発表して、コミュニティによるレビューの通過を必要とする。FESCoは発表より最低でも一週間を経過した後に投票する。 = Features/ReplaceMySQLwithMariaDB = https://fedoraproject.org/wiki/Feat

  • 邪悪なクリエイティブ・コモンズで起こるべくしておきた事件

    Internet Brands Sues People For Forking Under CC BY-SA - Slashdot CC-BY-SAでライセンスされているWikitravelのコミュニティが、forkしてWikimediaに移行することを決定した。すると、Wikitravelは訴訟を持ちだした。 CC-BY-SAはforkできるライセンスである。唯一の条件は、同じライセンスのもとで公開することだけだ。WikitravelはCC-BY-SAが何なのかわかっていないようだ。 これは、起こるべくしておきた事件である。というのも、クリエイティブ・コモンズは邪悪だからだ。クリエイティブ・コモンズというライセンスはなく、CC-BYとかCC-BY-SAとか、ひどいのになると、CC-BY-NCとかCC-BY-NDなどがある。これらのライセンスは、お互いに非互換であるにも関わらず、同じクリエ

  • RMSの自由ソフトウェアの目覚め

    RMSの時代のMITでは、自由な文化があった。ソフトウェアは自由に使え、ソースコードも公開されているのが当然だった。そのため、ソフトウェアにバグを見つけた場合、自分で直すことが可能だったし、改造することもできた。 MITには古いプリンターがあった。印刷は遅いし、まっすぐ印刷できずに歪むし、印刷も不鮮明で、しかもよく用紙が詰まった。MITにいる人間は工学技師ではなく、プログラマーだったので、プリンターを修正することは出来なかった。しかし、ソフトウェアは修正できた。そのため紙詰まりを検出すると、今印刷を行なっている人間の画面上に警告を表示させることができた。警告を受けた人間は、すぐさまプリンターのところに行って紙詰まりを解消した。 ある日、ゼロックスの新しいレーザープリンターがやってきた。このプリンターは、印刷が早いし、まっすぐ印刷できるし、印刷も鮮明だった。しかし、やはりときどき、紙詰まりは

    RMSの自由ソフトウェアの目覚め
  • 本の虫: プリンスオブペルシャのソースコードを救ったギーク達

    The Geeks Who Saved Prince of Persia's Source Code From Digital Death | Game|Life | Wired.com プリンスオブペルシャのオリジナルのソースコードが発掘され、GitHubで公開されたことは記憶に新しい。しかし、その裏話はしっているだろうか。昔の電磁的記録のサルベージがいかに難しい作業であるか、認識しているだろうか。wired.comですばらしい記事がでたので、翻訳する。 WiredのGus Mastrapaはロサンゼルスで、ゲーム史に残る重要な財産を発掘する作業に立ち会った。 Jordan Mechnerは何でも保存してきた。 彼は、兄弟が近所で飛び跳ねる様を撮影した1985年に撮影したビデオテープを保存している。この動画から、彼はApple IIのPrince of Persiaのアニメーションを作成

  • Eolasの悪夢、再び

    Patent Troll Claims Ownership of Interactive Web – And Might Win | Threat Level | Wired.com Eolasと聞いただけで身震いする者は、有能な技術者である。わからないものは、未熟者である。Eolasは「HTML内に自動的に外部アプリを起動させてやり取りをさせ埋め込みオブジェクトを表示するための手法」というあまりにも明白過ぎる特許を取って、一時期Webを混乱に陥れた特許ゴロである。わかりやすく言うと、Flashを埋め込むHTMLコード、embedやobject要素がこの特許に抵触する。 Eolasはマイクロソフトを相手取って特許侵害の訴訟を起こした。この訴訟には、WWWの父であるW3Cの長であるTim Berners-Lee人をはじめ、様々な企業、団体がマイクロソフトを援護したにもかかわらず、結局、特許

  • chrome extensionのXMLHttpRequestが改良された

    Chromium Blog: Chrome Extensions: Now with more powerful scripts and improved proxy management. なんと、content scriptからクロスドメインなXMLHttpRequestができるようになった。これで、いちいちマヌケにもbackground pageを介してメッセージのやり取りをする必要はない。パフォーマンスも向上する。 この仕様は常々疑問だったのだ。background pageといえども、manifesto.jsonに指定したpermissionを無視したXMLHttpRequestはできない。それならば、content script内で、permissionを考慮したクロスドメインなXMLHttpRequestができてもしかるべきだ。何しろ、こちとらはエクステンションなのだ。 さっ

  • 本の虫: oldnewthing: WIN32_LEAN_AND_MEANの由来

    The Old New Thing : Where did WIN32_LEAN_AND_MEAN come from? asdfはWIN32_LEAN_AND_MEANの由来が疑問であるようだ。 WIN32_LEAN_AND_MEANシンボルは、Windows 95時代に、windows.hをincludeした際、多くのヘッダファイルを省略する目的で導入された。windows.hを覗けば、どのファイルが省略されるのかが分かる。 このシンボルは16-bit Windowsから32-bit Windowsへの移行の一環として、追加されたものである。16bitwindows.hは、多くのヘッダファイルをincludeしておらず、WIN32_LEAN_AND_MEANを定義することによって、16bit Windowsの、Windows プログラムを書くに当たって最小限のヘッダという思想を、取り

  • プログラミング認可制の日は近い

    高木浩光@自宅の日記 - ウイルス罪法案、バグ放置が提供罪に該当する事態は「ある」と法務省見解 政府は、バグ放置が罪せらるとの見解を発表した。また一歩、日が後退した瞬間である。 そもそも、放置とは何を言うのか。大部分のソフトウェアのバグフィクス、特にセキュリティに関するバグというのは、バグ発見者の善意によってなりたっている。バグを発見したものが、ソフトウェアに対して責任をもつ会社または個人に、秘密のうちに連絡をとり、バグの内容を伝える。責任者は、秘密裏のうちにバグを直し、アップデートパッチを公開する。バグの具体的な内容が公開されるのは、パッチ公開後である。この過程を経ずしていきなりバグが公になることを、ゼロデイという。ゼロデイは、マルウェアが未知のバグを利用していたり、またバグ発見者が、何らかの理由によって(たいていは、無責任な責任者にあきれて)、いきなり公開したりすることで起こる。 バ

  • 本の虫: 多くのプログラマは言語を表面的な理解だけで使っている

    一般のプログラマの多くは、プログラミング言語というものを、ごく浅い表面的な理解だけで使っている。これは、いわゆる「入門書」によるところが大きい。入門書は、言語をできるだけパターンで教えようとする。かくかくしかじかの場合には、とらとらうまうまのように書いておけばいい、などといった具合だ。 たとえば、配列の全要素や、aggregateの全メンバーをゼロで初期化したいとする。多くのC++プログラマは、以下のように書く事であろう。 int a[100] = {0} ; このコードは、正しく動く。配列aの要素は、すべてゼロで初期化される。しかし、C++という言語を考えた場合、{0}と書く必要はない。空の{}で十分なのである。 int a[100] = {} ; では何故、多くのC++プログラマは{0}と書くのか。それは、多くの参考書が、そのように書いているからに過ぎない。大多数のC++プログラマは、

  • これはすごい歴史の話

    odokemono comments on Anyone know why /var and /etc weren't named something like /etc and /cfg? このodokemonoという人のコメントが面白かった。特に二つの話が面白かったので、翻訳してみる。 これから話す話は、知識というよりも経験というべきだろう。私は、エンジニアではないし、特別にそういった訓練を受けていたわけでもない。私はベテランのシステム管理者だ。私はいくつかの記事を書き、またシステム管理者の教育もしている。私は80年代前半から、ほとんどUnix一でやってきた。 Unixのすばらしいところは、25年前に書いた私のコードが、いまだに修正なしでコンパイルでき、しかも動くということだ。 それでは、「すばらしい話」のいくつかをしようと思う。 私は昔、顧客である大手の弁護士事務所の元に出向き、週

  • 我々はプログラミング雑誌を創刊す

    かつては、実に多くのプログラミング雑誌があったものだ。思い返せば懐かしい。雑誌に載っていたバイナリコードを、必死に打ち込んだ日を覚えているだろうか? カセットテープの音で、どのマイコンのデータかをあてる遊びをしたことはあるだろうか。かつては、NHKでさえ、記録テープを放送して、各家庭で録音させることで、マイコン向けのデータをブロードキャストしていたのである。 思えば、時代は変わった。我々のコンピューター技術は進化し、実に便利になった。誰か能く、リアルタイム3Dレンダリングを予想しただろうか。誰か能く、HD動画の、リアルタイムデコードを予想しただろうか。はた、今日のWebの興隆は如何。 コンピューターは進化し、便利になった。しかし、コンピューターをプログラムするのは、依然として、我ら人間である。プログラマである。プログラマが技術を習得すべきソースとなるのものは何ぞや。「ネットで誰かが書いてく

  • 1