タグ

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

  • アンチウイルスソフトウェアの脆弱性

    Breaking av software 市場に出回っているアンチウイルスソフトウェアの脆弱性についての研究発表のスライド資料が公開されている。 アンチウイルスソフトウェアは、セキュリティ向上のために重要だという意見があるが、このスライド著者は疑問を投げかけている。そもそも、ソフトウェアの追加は、攻撃できる箇所が増えるということだ。アンチウイルスソフトウェアは果たしてセキュアに作られているのか。 特に、多くのアンチウイルスソフトウェアは、カーネルドライバーを使ったりしている。もし脆弱性があればとんでもないことだ。 アンチウイルスソフトウェアの攻撃手段としては、細工されたファイルフォーマットをスキャンさせる事が大半だ。アンチウイルスソフトウェアは、様々なフォーマットのファイルをパースする必要がある。もし、そのパーサーにバッファーオーバーフローなどの不具合があれば任意のコードを実行させることが

    mukaken
    mukaken 2015/01/13
  • Pingプログラムの話

    The Story of the PING Program そうだ。UNIXのpingを書いたのは俺さ。pingというものは誰でも知ってるだろうが、これはある夜、俺が千行程度で書いたハックだ。 名前の由来はソナーの音だ。俺は大学でソナーとレーダーシステムの設計をさんざんやっていたので、サイバースペース的なものとは親和性が高かった。新しい分野に既存の概念を適用したというわけだ。pingはIP/ICMP ECHO_REQUESTとECHO_REPLYパケットを使って時間を測り、ターゲットマシンへの「距離」を計測する。 4.2a BSD UNIX用のPINGを書いた着想は、1983年の7月に、ノルウェイでのDARPA会議で、Dave MIlls博士からきいた話が元だ。博士はFizzball LSI-11システムで、ICMP Echoパケットの時間を計測して、経路遅延を計測したと話していた。 19

    mukaken
    mukaken 2014/10/12
  • PHPの次のバージョンはPHP 7かもしれない

    PHP: rfc:php6 PHPの次のバージョンは、PHP 6ではなく、PHP 7となる可能性があるとのこと。 敬意を説明すると、PHP 6は、次のPHPのメジャーリリースとして、2005年から盛んに開発されていたが、2010年にUnicode実装の難しさから頓挫した。言語でUnicodeを直接サポートする以外のPHP 6向けの機能は、大方PHP 5.3か5.4に取り込まれた。 この経緯のため、既存の多くのドキュメントや参考書などが、すでにPHP 5.xに存在する機能をPHP 6にやってくる新機能として紹介している。このままPHP 6を出すと、すでにPHP 6であると喧伝されているものとはことなるので、利用者が混乱するのではないか。 そういう理由で、PHPではバージョン番号6をスキップして7に行く議論があるそうだ。 ドワンゴ広告 この記事はドワンゴ勤務中に書かれた。 そういえば、今日はあ

    mukaken
    mukaken 2014/07/25
  • プログラミングを学ぶ方法がわからない

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

    mukaken
    mukaken 2014/05/22
  • Matthew Garrett、開発者にMacユーザーが多いことについて語る

    mjg59 | The desktop and the developer Matthew GarrettがGNU/Linux上で動くソフトウェアの開発者であっても、不自由なOSであるMacユーザーが多いことについて記事を書いている。 Matthew Garrettは、今や開発者の作業環境は、ターミナルとWebブラウザーなので、作業環境という点で、GNU/LinuxがプロプライエタリなMacに対して十分な利点を提供できていないとしている。 開発には、単にコードを書く以外の作業も多い。Webブラウザーで複数のWebサービス間を行き来して情報をコピペしたりするのは、極めて非効率的であるし、開発者の好む作業ではない。とはいえ、開発者がやらなければならない作業であることには変わりない。 このため、デスクトップ環境に、一般的な開発ワークフローを支援する組み込み機能を増やすなどして、GNU/Linux

    mukaken
    mukaken 2014/05/21
  • KADOKAWA・DWANGOについて

    朝起きると、今朝の02:00に日経が興味深い記事を公開していたことに気がついた。 角川・ドワンゴ経営統合 アニメなど「ニコ動」で海外へ  :日経済新聞 はて、どうせ日経のことだろうし、また飛ばし記事だろうかと読み飛ばして、10:45にドワンゴに出社した。ちなみに、この時間は、ドワンゴのエンジニア基準では、まだ出社している人もまばらな時間帯である。筆者はドワンゴ社員にしては珍しく、早寝早起きなのだ。 さて、ドワンゴ社内では、日経の報道する、角川との経営統合について知っている人間はいなかった。 さて、出社して、勤務時間中に、勝手にBoost.勉強会 #14 札幌で使うスライド資料を書いて公開してから、弁当を使った。今日の弁当は、五分づきご飯、グラタン、コンソメスープだ。グラタンは、昨日の夕の残りである。筆者はしっかりとした弁当用の容器を持っているので、コンソメスープも温かいまま運搬可能なの

    mukaken
    mukaken 2014/05/14
    荒木社長「あー、やっぱり気になる。KADOKAWA・DOWANGO」 一同「あー・・・」
  • ドワンゴに入社した

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

    mukaken
    mukaken 2014/02/13
  • ClangがC++14の機能完全に到達! 繰り返す! C++14の機能完全に到達!

    [llvm-project] Revision 194194 Clang - C++98, C++11, and C++14 Status とうとう、ClangがC++14の機能を完全に実装し終えたそうだ。もちろん、まだ既知、あるいは未知のバグがあるだろうが、とにかくC++14の機能的には完全にそろった。 これは素晴らしい。 ちなみに、Hacker Newsでは、このSVNコミットのリヴィジョン番号が、194194であることに着目して、狙ったのかと言われている。 それに対して、100100から194194までの数字には、194個もの同じ3数字二つの組み合わせがあり、別に特別な数字ではない、また、123321のような、他の意味で興味深い数字まで含めると、実に多くの「面白い」数字があると反論されている。 また、Interesting number paradox(興味深い数字のパラドックス)を

    mukaken
    mukaken 2013/11/07
  • うっかりチューリング完全になっちゃったもの

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

    mukaken
    mukaken 2013/10/21
  • ふたこぶラクダのテストを採用試験に使う方法

    の虫: 60%の人間はプログラミングの素質がないという記事に対して、こんなTweetが目についた。 cpplover.blogspot.jp/2012/05/60.htmlこれうまく採用試験に出来ないかなぁ。 — どぅみ (@yoshidumi) May 18, 2012 なかなか面白そうだ。この問題をプログラマーの採用試験に適用するには、Javaのような有名な言語ではだめだ。なぜならば、このようなよくある文法は、すでに知られているからだ。 究極的に、この問題とは、「未知の言語に対して規則を生成して一貫して適用できるか」どうかをみるものである。そのため、すでに言語を知っているものにはうまく働かない。 そのため、絶対に知られていない言語を使うべきである。マイナーなプログラミング言語というだけではこの用の役には立たない。そこで、独自の言語を定義する必要がある。そして、言語の定義を知らせずに、

    mukaken
    mukaken 2012/05/19
  • 60%の人間はプログラミングの素質がない

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

    mukaken
    mukaken 2012/05/17
  • 1