カテゴリー
fun

一番セキュアなプログラムは、書かないことだ

書かなければバグも出ない、は真理で、コードの量で生産性を測ることが間違ってることの何よりの証拠ですね。GitHub で公開されて大人気となっている nocodeは、そんな最高の手段を表現したソフトウェアです。

当初公開されたファイルは、以下の3つ

  • README.md
  • LICENSE (Apacheライセンス)
  • CONTRIBUTING.md (コードを含まない限り、あらゆる変更を歓迎)

ソースコードはありませんね。

その後、README にあった使い方

echo "" > /dev/null

は「Windows対応」で削除されたようです。また、Docker 対応で

"FROM scratch"

だけの Dockerfile が追加されましたが、「Docker の脆弱性の可能性を考えるとこれは追加すべきではない」という意見も出ています。

Issues がすごい

Issues に、現時点で300を超える要望が上がっています。プロジェクトへの期待の多さを感じますね。

一番人気はこれ。タイトルは「」。コメントも「」が多いです。議論が空白なことがセキュリティにつながるかわかりませんが。

他にも、「#2 PCの電源を入れないといけない (Kindle や ニンテンドーSwitch など既に多彩なプラットフォームに対応しているのでは)」「#137 MITライセンスにするべきでは? (から各種ライセンスの提案)」「#179 nocode はテストするのが非常に困難では」「#195 何もしてないのに動きません! (他にも、Ubuntuで動かない、Commodore64で動かない、IEで動かないなどのissuesも)」「#8 .gitignore でコードが混入しないようにすべき (指定は **/**)」「#80 ドキュメントが必要では? それも多言語で (トルコ語「」とブルガリア語「」が既に提案されています。日本語で書くなら「」といったあたりでしょうか)」といった多くの Issues が上がってきており、活発な議論が繰り広げられています。

via Hacker News

カテゴリー
技術

プログラミング言語TrumpScript

TrumpScript は、高名なドナルド・トランプ氏を基にした新たなプログラミング言語です。現在のプログラミング言語の中に、トランプ氏の豪華な金髪バーコードヘアにも気に入られるような言語が無いことから制作されました。

Donald Trump Sr. at #FITN in Nashua, NH

特徴

  • 浮動小数点数無しで整数のみ。アメリカに中途半端はありません
  • 数は100万以上に限ります。それ以下の数字は取るに足らないからです
  • import はできません。すべてのコードはアメリカで作った国産でなければなりません
  • True/False(真/偽)ではなくfact/lie(事実/嘘)を使います
  • 良く知られた、トランプ氏の好きな(2000個ちょっとの)英単語のみ。立候補者の名前は変数として使えます
  • ほとんどのエラーメッセージはトランプ語録から採用されました
  • プログラムは「アメリカは偉大だ(“America is great.”)」で終了しなければなりません
  • TrumpScriptはそのままではWindowsで動きません。なぜならトランプ氏はPCを信じるような男ではないからです(註: PC=パソコン、と、PC=政治的正しさ、をかけてます)
  • 大文字小文字は完全に無視します

文法

文法の方はというと、演算や条件文についてはおおむね普通のものが用意されていて、TSの記法を覚えればすぐ書けるでしょう。

  • is や are は代入。?で終われば比較になります
  • make America great で、America に great を代入できます
  • tell や say で出力できます
  • as long as でループします
  • 不要な単語は全部無視されるので、うまく使えばかなり自然な演説文と両立させられます

トランプ氏が失敗について語りたがらないのと同様に、プログラムは多くの場合静かに失敗します。デバッグをゲーム的に楽しんでください。

実行

テストファイルがいくつかあるので、まずはこれを試してみるのがいいかもしれません。

ヒラリー・クリントン氏とのディベートを再現したスクリプトを動かすと、こうなりました。

trumpscript-hilary

元ネタがわかりません。まだ直接対決はないと思うので、コメントか何かで応酬した時のものでしょうか。

テストスクリプトには手元ではエラーになるものも多いです。

また、エラーになるのが正しいものも。not_english.txt では、スペイン語で書かれたスクリプトに対して、

trumpscript-not-english

「ここは英語で喋る国だ(“This is a country where we speak English”)」という例外が発生してます。

他にも、「トランプはそんなことは聞きたくない(“Trump doesn’t want to hear it”)」など、少ないエラーの中にもトランプ氏のきらりと光る名言があるようです。

作者

ライス大学のハッカソンでコンピューター専攻の二人の学生サム・シャドウェルさん(Sam Shadwell)とクリス・ブラウンさん(Chris Brown)らによって作られたこの新言語、初日夜の酔っぱらってのブレインストームと翌日の20時間のプログラミングで完成したそうです。

ハッカソンの優勝は逃したということですが、GitHubで公開されたコードに対して多数のバグ報告や修正提案が送られていて、日々改良されているようです。

この言語によって、「トランプ氏がアメリカを再び偉大にするように、プログラミングを再び偉大にすることを願っている」ということです。

via The Verge

カテゴリー
fun

シリコンバレーでは女子中学生のダンスもコードの話になる

codecracker

パロアルトにある女子中高一貫校カスティエーハの8年生(中学2年生相当)がダンスの授業で発表したのは、ナットクラッカー(くるみ割り人形)ならぬコードクラッカー(コード割り人形)。

codecracker-1

クリスマスのプレゼントとしてプログラミングできるくるみ割り人形を貰ったクレア。しかしねずみの王に率いられたネズミたちにパソコンを奪われそうになります。

codebraker-bubble-sort

個人情報を盗んだねずみの王を、クレアがバブルソートを使って撃退しようとするシーン

Re/code のカーラ・スィッシャー氏が言うように「シリコンバレーでしかありそうにない」出し物でしょうね。

via Re/code