タグ

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

  • 違法な職務質問をされたので東京都を訴えた裁判の控訴審は棄却、理由は突然に

    職務質問裁判の控訴は棄却された。判決文は以下から読むことができる。 https://github.com/EzoeRyou/calling-110-is-suspicious 2年前の7月3日、職務質問を受けた。 警察官に職務質問をされた話し この職務質問は明らかに違法であると感じたので、弁護士に相談の上、東京都に対して国賠訴訟を起こした。警察官というのは各都道府県の下に位置する行政組織なので、警察を訴えるというのは、その警察の所属する都道府県を訴えるということになる。 一審判決は請求棄却。理由としては、「最初の10分間は不審事由がないが、刃物などの危険物を入れることができるリュックを背負っていたから声をかけ10分間その場にとどめて話をするのは違法ではない。このとき110番通報を要請したことは不審事由にあたりその後の1時間20分の職務質問は不審事由が存在するために合法である」というわけのわ

    n2s
    n2s 2019/12/08
    あまり関係ないけど浸透いうなの人もJPNICを訴えて最高裁まで争って敗訴してましたな…
  • GCCのSVN trunkをビルドする方法

    GCC 7がC++17のコア言語機能を完全に実装したので、ようやく参考書のサンプルコードが検証できるようになった。 C++ Standards Support in GCC - GNU Project - Free Software Foundation (FSF) しかし、GCC 7はまだリリースされていない。少し試すだけならばwandboxが使えるが、格的に使うにはローカルにほしい。 [Wandbox]三へ( へ՞ਊ ՞)へ ハッハッ そこで、GCCを自前でビルドすることにした。ビルドは以下の手順に従う。 Installing GCC - GNU Project - Free Software Foundation (FSF) GCCのコンパイルに必要なソフトウェア Prerequisites for GCC - GNU Project - Free Software Foundat

    n2s
    n2s 2017/11/26
  • W3Cよさらば! 遂に協力の方途尽く W3C、邪悪なDRMを採択し 我がEFF堂々退場す

    World Wide Web Consortium abandons consensus, standardizes DRM with 58.4% support, EFF resigns / Boing Boing EFFはW3Cが可決したWebにおけるDRM標準規格の取り下げを訴えた。W3Cにおいて可決された規格の取り下げの訴えは初めてのことである。W3Cは会議の結果、メンバーのうちの過半数である58.5%の賛成をもって、過半数によるコンセンサスとしてDRM規格の取り下げを却下した。これはW3Cのメンバーに利用者の自由と権利をないがしろにした不自由陣営が多いためである。 これを受けてEFFは、W3CはもはやオープンなWeb規格を制定する場ではないと判断し、即日W3Cを脱退した。 An open letter to the W3C Director, CEO, team and memb

    n2s
    n2s 2017/09/19
    あの時と同じく、戦争を煽るのは貴方か。
  • Jacob Kaplan-MossのPyCon 2015における基調講演: プログラミングの才能という都市伝説

    Keynote - Jacob Kaplan-Moss - Pycon 2015 - YouTube The programming talent myth [LWN.net] PyCon 2015で、Djangoの貢献者であるJacob Kaplan-Mossが興味深い基調講演をしているので紹介する。LWM.netでほぼ全面書き起こしに近いまとめがあったので助かった。 自己紹介 Kaplan-MossはDjangoの貢献者であり、Herokuのセキュリテイ部門の部長である。PyCon参加者としては歴史が長く、その他のカンファレンスでもよく発表している。Pythonコミュニティは「自分にとってこの業界におけるとても重要なもの」であり、PyConの基調講演を行うということは、「自分のキャリア上の絶頂」である。 自分の最初のPyConの発表は2005年のことで、PythonAppleScri

    Jacob Kaplan-MossのPyCon 2015における基調講演: プログラミングの才能という都市伝説
  • 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

  • fork()は失敗するんだぜ、覚えときな

    fork() can fail: this is important あー、fork()のことね。プロセスがもっとプロセス作るためのやつな。いや、他にもプロセス作る方法はあるけどな。ま、面白い話がもうひとつあるから聞かせてやるよ。 forkは失敗するんだぜ。分かってるか? マジで分かってるか? マジだぜ。forkは失敗するもんだ。mallocと同じさ。失敗することもある。そんなに頻繁にってわけじゃないけどさ、でも失敗したら、無視できっこないぜ。ちっとは脳みそ働かせなきゃならん。 forkが0を返したら、そいつは子プロセスで、親なら正数を返すってことは、みんな知ってるよな。その値は子のpidだ。こいつを保存しといて、あとで使うってわけだ。 失敗を確認しない場合どうなるか知ってるか? そうだよ。お前多分、"-1"(forkのエラー通知)をpidとして扱ってるんだろ。 さて、問題の始まりだ。

    n2s
    n2s 2014/08/21
    ひゃあ、そういえばそうだ。
  • Chromeが起動時に三つのランダムなドメインに接続しようとする理由

    Chrome connects to three random domains at startup.” — Mike West Chromeを起動した際、http://aghepodlln/とかhttp://lkhjasdnpr/のようなランダムなドメインへの接続を試みる。何でこんなコトをしているのかという見当はずれの推測が、いくつか出回っている。事実としては、この挙動は必要なのだ。以下の説明で、この疑問を晴らす。 このような接続要求の目的は、現在使用しているネットワークが、存在しないホスト名への接続要求を検知して勝手にリダイレクトするかどうかを判定するものである。例えば、少なからぬISPが、http://text/のようなDNSルックアップの失敗に対し、http://your.helpful.isp/search?q=text(あなたの親切なISP)へリダイレクトしている。この「親切

  • Debianがeglibcからglibcに戻る

    Debianはしばらく、libcとして、glibcではなく、glibcと互換性を維持したforkであるeblicを使っていたが、このたび、glibcに戻る決定をしたそうだ。 glibcを使っていた理由はいろいろあるが、Debianにとって重要なパッチが、glibcでは開発体制の問題により受け入れられないという政治的な理由もあったそうだ。その問題が解決されたのと、eglibcがプロジェクトとして死んだので、戻るのだそうだ。 Debian is switching (back) to GLIBC | Aurelien's weblog 5年前、Debianと多くの派生ディストロは、標準であるGNU C Library (GLIBC)から、Embedded GLIBC (EGLIBC)に乗り換えた。Debianは、GLIBCに再び乗り換えることにする。EGLIBCの最後のリリースは2.19と、プ

    n2s
    n2s 2014/06/19
  • 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

    n2s
    n2s 2014/05/21
    もはや大富豪プログラマーとお呼びしたい江添さん
  • Multipath TCPについて

    Multipath TCPとは、複数の経路を扱うためのTCP拡張である。実は、以前、の虫: MultiPath TCPのLinuxカーネル実装という記事で、その実装デモを紹介している。 従来のTCPは、IPとの分離ができない。TCPヘッダーの中には、ひとつのIPアドレスとポートがある。経路ごとにIPアドレスが割り振られるので、経路を変えるには、別のTCPコネクションを貼り直さなければならない。 しかし、複数の通信経路を持つという環境は、もはや珍しいものでも何でもなくなっている。たとえば、多くのラップトップにはEthernetとWiFiの二つの経路があるし、スマートフォンにも、WiFiと3G/4Gという複数の経路がある。特にスマートフォンの場合、経路が使えるかどうかが頻繁に切り替わる。 過去に、TCPで複数のIPアドレスを扱う拡張はいくつも出されたが、いずれも、IPアドレスを隠すという点で

    n2s
    n2s 2014/04/16
  • ドワンゴに入社した

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

    n2s
    n2s 2014/02/14
    ただただ、すごい。
  • 本の虫: Bazaar-NG: 分散バージョン管理システムを7年ハックしてきて

    Bazaar-NG: 7 years of hacking on a distributed version control system Bazaarの開発者が、Bazaarが失敗した理由について、当時を振り返って書いている。なかなか面白い。 Bazaar-NG: 分散バージョン管理システムを7年ハックしてきて この7年間、筆者はBazaarプロジェクトに関わってきた。筆者はプロジェクトから距離を置き始めている今この時、筆者のこのプロジェクへの関わりや、何が良くて何が悪かったのかの意見などを、振り返ってみるべきだと思う。 この回顧録には多くの複雑な詳細が出てくるので、筆者の誤りもあるかも知れない。間違いを見つけたら知らせてくれ。 黎明期 < ddaa> dscmsには2種類ある。古臭いやつと、実験中なやつ。 2004年、筆者は、 SambaのコントリビューターであるMartin Pool

    n2s
    n2s 2014/01/08
  • Linus、CPUの信頼性について語る

    CPU reliability (Linus Torvalds) 2007年のLinusのメールだが、Hacker Newsで話題になっていたので。 From: Linus Torvalds <torvalds@linux-foundation.org> Newsgroups: fa.linux.kernel Subject: Re: [patch] CFS scheduler, -v8 Date: Fri, 11 May 2007 16:52:21 UTC Message-ID: <fa.oZhj8hj7kSDLnitsqrEJcRJN+RE@ifi.uio.no> On Thu, 10 May 2007, Pavel Machek wrote: そもそも、今のCPUは300年も稼働するようには設計されていない。50年以上稼働するハードウェアが設計された後で考えても遅くはない。 そうだな

    n2s
    n2s 2013/12/10
    CPU(のファン)はあまり壊れない。壊れやすいのはGPUと電源 / 余談ですが自分のPC、稼動して何ヶ月かすると異音がするんですがどのファンが原因なのかさっぱり・゚・(つД`)・゚・
  • 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したらしいのだ。

  • 6年前と今のコンピューターの性能比較

    「タダ飯の時代は終わった」(The free lunch is over.)とHerb Sutterは宣言した。 タダ飯というのは、コンピューターの性能向上にかかる期間があまりに短かった時代を表す言葉だ。一昔前は、コンピューターの性能が倍々に上がっていくので、今、コンピューターの性能が足りないために使えないソフトウェアでも、来年辺りには使えるようになっていたのだ。つまり、プログラマーは苦労せずしてタダ飯をかっらうことができるのだ。どうせ1年か2年待てば、パフォーマンスは問題にならなくなるのだ。今ソフトウェアを最適化する意味がない。 一昔前、我々はタダ飯を享受していた。集積回路の密度が9ヶ月、ないしは1年、そして1.5年で倍になり、回路を駆動させるクロック周波数も倍になっていくのだから、実質、1年ぐらいで、コンピューターの性能は倍になるのだ。すると、2年後には4倍に、3年後には8倍になって

    n2s
    n2s 2013/11/05
  • Shebangという謎な事実上業界標準について

    Shebangとは、UNIXのシェルスクリプトの業界標準で、シェルスクリプトの一行目のコメントの、#!を意味する。sheが短母音か長母音か分からなかったので、英語ネイティブにたずねたところ、人によって意見が違う。短母音の方が多数派のようなので、一応シバンが近いものになるだろう。日語版のWikipediaでも、シバンとしている。この機能には他にも多数の名前があるが、もっとも有名なのが、Shebangだそうだ。 その業界標準的な文法は、以下の通り(ただし、後述するように、この文字列の扱いについては違いがある) #! 文字列 [改行] 普通、実行権限のついたファイルは、標準のシェルで実行されるが、このShebangがある場合は、#!から改行までの間の文字列を、後述するバラバラな方法で解釈して、execで実行し、その際の引数には元のシェルスクリプトファイルへのパスが指定される。 問題は、このsh

    n2s
    n2s 2013/08/07
    あと、先頭32文字までしか解釈しない実装もあったな。
  • GNU/Linuxでお手軽に使えるCLIのファイル暗号化ツール

    ふと思い立って、GNU/Linuxでお手軽に使えるCLIのファイル暗号化ツールを探してみた。 評価すべき点は、自由ソフトウェアであることはもちろんとして、主要なディストロでパッケージ化されるほど有名であることと、ファイルの暗号化目的に簡単に使えることだ。「ファイルの暗号化」とは、十分に強い共通鍵暗号で暗号化、復号化することだ。 そして、今回重要視したのは、パスフレーズにUTF-8を使えることだ。パスワードという言い方はあまり好きではない。パスフレーズと呼ぶべきだ。パスフレーズとは、普通の文を使うものである。例えば、 イスタンブールは昔コンスタンティノープル 水平リーベー僕の船そー曲があるシップスクラークか 数種類の奇妙な文字で文章を書く、親愛なる日人の皆さん などだ。 これらのパスフレーズは人間にとっては作りやすく、覚えやすい。それでいて十分な情報量があり、総当りにも強いので、コンピュー

    n2s
    n2s 2013/07/25
    ネタタグ付けたものの、UTF-8なパスフレーズの受け入れには興味あり。文字列の正規化を忘れたら最悪二度とログインできなくなる可能性も云々
  • GNUのAutotoolsについて学んでいる。

    C++の参考書も書かなければならないのだが、今、GNUのAutotoolsについて学んでいる。そもそも、何故必要なのか(なぜ手でMakefileを書かないのか)というところから調べている。 GNU Autoconf, Automake and Libtool Autotools: a practitioner's guide to Autoconf, Automake and Libtool GNU coding standards - GNU Project - Free Software Foundation (FSF) 今のところの背景事情の理解としては、以下のようなものではないかと思う。 はじめに、makeがあった。makeをとりあえず使うのは簡単だが、すこし高度なことをしようとすると、とたんに難しくなる。そのため、既存のよく書かれたものがプロジェクトからプロジェクトへと流用されて

    n2s
    n2s 2013/07/22
  • ハードウェア乱数生成器は信頼できるか

    How secure is Linux's random number generator? | Hacker News Hacker Newsで話題になっていたので。 主に暗号用途には、予測不可能な乱数が必要となる。予測不可能というのは、実装と内部状態が知られていても、なお将来の乱数が予測できないということだ。 たとえば、擬似乱数としてよく使われる線形合同法(Linear congruential generator)は、以下のように書ける。 namespace lcg { thread_local unsigned int seed ; void srand( unsigned int seed ) { lcg::seed = seed ; } int rand( void ) { // glibcの使っている値を拝借 seed = (1103515245 * seed + 12345

    n2s
    n2s 2013/07/15
    結論が「信頼できない」じゃなくてちょっとほっとしたw
  • GCCの最適化オプション

    郷に入っては郷に従えというが、GNU/Linuxのプログラミング環境にはまだまだ慣れない。とりあえず今のC++執筆作業には、最新のClangでコンパイルできればそれで用が足りるので、Clangのビルドが楽なGNU/Linux環境は悪くない。欲を言えばlibc++もまともに動くようになってほしい。Ubuntu 12.10でlibsupc++を使ってlibc++をビルドしてみたところ、RTTI周りのABIに問題があるらしく、virtual関数呼び出しすらできなかった。 しかし、GNU/Linuxにおけるプログラミングはどうにも学ぶことが多すぎる。GNUのgdbの使い方もそろそろ覚えたいし、Autotoolsの使い方も覚えたいものだ。幸い、GNU/Linuxで一般的なテキストエディターであるVimは、特に何も学ばなくても使えるので楽だ。たかがテキスト編集作業に、多数のキーボードショートカットを

    n2s
    n2s 2013/07/08