このたびEmacs上でWebKitを動作させる方法が開発された(Emacs WikiのWeb Kitページ)。スクリーンショットも公開されている。 WebKitのフル機能が利用可能で、JavaScriptも動作する。ただしEmacsとWebKitは別プロセスで動作し、プロセス間通信でやり取りを行うという形になっている。利用にはPyQt5やPythonXlib、PythonEPCなどが必要。Windows上で動作するかは不明。
ymitsu のタレこみによれば、31バイトでプログラムを書く「アセンブラ短歌」の解説書が発売されるそうだ(Mynavi Advanced Library特集ページ、 アセンブラ短歌)。 アセンブラ短歌とは、「五・七・五・七・七の三十一バイト(みそひとバイト)から成る 機械語コードでプログラムを書いてみるという近未来の文化的趣味」とのこと。近年、アセンブラ学習が見直されているが、遊び感覚でアセンブラを学習する方法として考え出されたものだという。31バイトの機械語コードが決められた位置で区切られるようにプログラミングし、韻を踏むために同じバイトパターンを決まった位置に埋め込むなどの技術を身に着けることで、バッファーオーバーランの脆弱性を攻撃するために送り込まれるシェルコードの解析や対策を考えるためにも役立つとのことだ。 書籍「31バイトでつくるアセンブラプログラミング ~アセンブラ短歌の世界
全国高等専門学校 第23回プログラミングコンテストが10月13日、14日にかけて行われたのだが、このコンテストの競技部門の結果が話題になっている。 競技部門のテーマは、「大きさの異なる3種類のサイコロの数を数える」というもの(募集要項PDF)で、画像処理によってサイコロの数を数えることが想定されていた。しかし、実際に優勝したチームは人力でサイコロの数を数えていた(「サイコロの数を手動でカウントするためのカウンターソフトウェア」を開発した)をことが判明、「プログラミング」の意義が問われる結果となった(市況かぶ全力2階建)。 Twitterなどではこの件について「微妙な出題をした運営が悪い」「正攻法(画像処理)でチャレンジしたチームも存在したのに残念」「むしろ人力で高い精度で数えられた優勝チームはすごい」など、賛否両論のようだ。
私は1970年代にZ80アセンブラーでプログラミングを始め、それからPascalを使い、1990年代の初めにはx86アセンブラーを使っていた。CやBASIC、Visual C++、Visual Basic、Smalltalkまで、いろいろと試したが、最近ではPerlに落ち着いた。控えめにみても、自分ではそこそこできるプログラマーだと思っているが、経済的な理由でプログラミングを収入源にする必要が出てきた。しかし、それにはPerlは少し古いようだ。そこで、私は自分の技術を現代的なものにして、雇い主から見て魅力的なプログラマーになりたいと思う。 私が見るところ、需要がありそうなのはiOSプログラミングとPythonで、Javaがそれに続くようだ。最近、スタンフォード大学のCS193PコースをiTunesUで学習しているが、これでは時間がかかってしまう。学習自体はそれほど困難ではないが、なるべく早
「プログラミングを学ぶのに適した脳のタイプ」というものがあり、「プログラミングは誰もができるものではない」といった格言があるそうだが、Ars Technica記事がこの格言の正当性をQ&Aで問いかけたところ、大半がその正当性を認めたとのこと(本家/.、Ars Technica記事)。 この記事で紹介されているRichard Bornat教授とRay Adams氏の論文によれば、学生らのプログラミング能力をグラフに表すと、「プログラミングのできる人」と「できない人」の2種類の人間があたかも存在するかの如く、2つの「釣り鐘状カーブ」に分かれるとのこと。しかもプログラミングの授業を開始する前に試験を行うことで、学生をこうした2つのグループにふるい分けることができるとしている。Ars TechnicaのQ&Aでは、格言の正当性はこうした研究論文によって証明されているとする意見に66票が集まった。
わたしがGCCをビルドしていたのは10年以上前なのでピント外れなことをいっているかも知れないけど、当時、GCCがコンパイルできる環境やCコンパイラは少なかった。つまり、特にポータビリティが高いわけではなかった。事実上、それなりに新しい、余力のあるUnixシステムじゃなければ、ポートにはかなりの作業が必要だった。それをする人がいなくなれば、対応システムからハズされるだけ。 それなりに新しいUnixシステムなら、GCCなり、それなりのC++が搭載されているだろうから、GCCがC++で書けていても、特に問題にならない。 以前のように、リアルタイムシステムのようなサードパーティのシステムが豊富にある状況じゃないし、独自のコンピュータのベンダーも減ったしね。Sony NEWSもOMRON LunaもDECもSGIもない。やっぱり、大きな問題はないね。つまらないけど、それが現実。
世の中には、23種類のプログラマがある。ソルジャー、マーシナリー、キーパー、ナイト、レンジャー、ドラグーン、サモナー、グラディエーター、ブラックスミス、サイエンティスト、エンチャンター、ウィザード、アルケミスト、セイント、ソーサラー、ウォーロック、ネクロマンサー、シャーマン、ハーミット、バーサーカー、エクソシスト、ソーマタージ、ノービスだ。
英文で最も多く使われるアルファベットが「e」だというのはよく知られていますが、最も多く使われる単語は「the」だそうです。プログラミング言語ではどうなのか、GitHubで公開されているソースコードを解析した結果が発表されました(The Most Frequent Word in Source Code on GitHub: PDF)。 調査ではソースコードからコメント行を除外し、アルファベットと数字のみが連続する部分を単語として検出しています。調査対象となった10種類のプログラミング言語全体で、ソースコードに最も多く登場する単語はなんと「0」で、次に「if」が続くという結果になっています。 「if」のように良く使われそうな予約語が1位というのなら解りやすいのですが、「0」が圧倒的多数で1位の座を獲得したことに素直に驚きました。マジックナンバーは使用厳禁と言いながらも、考えてみれば初期化等に
ストーリー by hylom 2012年07月13日 7時00分 キーボードの8、9のキーが酷使されていたらそいつはLisperだ 部門より プログラミング言語の文法的な特徴やスタイルは千差万別だが、Most Pressed Keys and Programming Syntaxesというブログ記事で、各言語ごとに頻繁に使われるキーが分析されている。 言語によって頻繁に使われるキーは異なるが、どの言語にも共通してよく使われているのは「E」。ただし、ある一言語だけは「E」よりも多く使われているキーがあった。その言語はLisp。Lispでは「(」「)」の入力に使う「8」「9」のキーがもっとも多く使われたキーだった。 また、シェルスクリプトやPerlでは「4」(「$」)のキーが多く使われているのに対し他の言語ではあまり使われない、C++ではなぜか「-」(「_」)が多く使われているなど、興味深い結
Microsoftは、MSDN MagazineのコラムにVisual Basic 6(VB6)のサポート期間を5年間延長する主旨の内容を掲載した。開発ツール自体はもうサポート対象外ではあるが、Windows 8でもVB6のランタイムが搭載され、引き続きVB6で開発されたアプリケーションは実行できる(MSDN Magazine編集後記、MSDN Magazineコラム、本家/.)。 VB6が最初に出荷されたのは1998年であり、すでに14年が経過している。MSDN MagazineのコラムニストDavid Platt氏は、代替となる「Visual Basic.NET」が登場して10年が経過しているが、それでもVB6がここまでサポートされるほどの長寿命となったのは、シンプルな構造だったからだと説明する。 VB6は複雑なものは作れないが、経験の少ないプログラマでもできるだけ短時間で開発を可能に
5 年ぶりに開催された IOCCC (International Obfuscated C Code Contest、国際分かりにくい C のコードコンテスト) 参加者によるソースコードが公開されている。 受賞者はすでに発表されているが、どのコードも開いた瞬間に吹き出すレベルの難解さである。
「プログラマのキャリアは基本的に40歳で終わる」という説がBloomberg記事で述べられている。これからソフトウェア開発の道に進もうと考えている人達に対して、プログラマの結末についてよく考えるよう警告するものだ(本家/.、Bloomberg記事)。 プログラマの多くは、35歳を過ぎると雇用され得る資質が低下し始めると認めており、大半の開発者は40歳までにそれまでの仕事を辞めてしまうのも統計的に証明されているのだそうだ。雇用主から見て、35歳を過ぎたエンジニアは資質が高すぎるか、資質が足りないとのこと。35歳過ぎのエンジニアが経験豊富で能力が高かったとしても、その分給料を多く支払う必要があるため、雇用主は卒業したての若いエンジニアを雇用する傾向があるという。また50歳を過ぎて働き続けるには管理職に昇格する必要があるが、枠が狭いため管理職に就くことのできる人の数は限られているという。 さらに
先日、マルウェア「Duqu」が未知の言語で開発されたかもしれないという /.J 記事 があったが、この「未知の言語」は実は C 言語だったことが判明した (Kespersky Lab の Igor SoumenKov 氏によるブログ記事より) 。 200 件以上のコメント、60 件以上のメールで「これは○○という言語ではないか」という声が寄せられたそうだが、アセンブラコードの癖などから、Visual C++ でコンパイルされたものだと分かったという。これに加えカスタムメイドのオブジェクト指向 C 言語フレームワークが使われているものと思われるそうだ。Simple Object Orientation for C (SOO) というものに似ているそうだが、SOO は Duqu がすでに出回ったあとにリリースされたために Duqu で使われている可能性はないとされている。 C++ ではなくこの
The Kernel の記事にて、現代の子供たちは学校でプログラミング必須として学ぶべしとの Andy Young 氏の論が展開されている。彼の主張は次のような内容だ。 「コンピュータとは、難題解決に必要な複雑なステップの自動化および反復を手助けしてくれるものだ。これは例えゲノムモデリングに取り組む生物学者だろうが、膨大な量のアーカイブからデータを探し出さねばならない事務職だろうが必要となってくるものだ。 ツールの使用は人を人たらしめるものであり、そしてコンピュータは人類の最も強力なツールである。コンピュータのおかげで効率向上を図ることができ、また無ければ達成できないことも多々ある。しかし大多数の人はこの目的実現の術を一部の人間に委ねて暮らしている。 プログラミングとはコンピュータに指示を与える行為である。アウトプットがワープロだろうとセントラルヒーティングシステムだろうと、はたまた航空機
コードのドキュメントがきちんと作成されていない? 問題はプログラマー達にあるのではなく、プロセスにあると Fatal Exception の Neil McAllister 氏は言う (ネタ元) 。 「コードのドキュメントをきちんとまとめる開発者は非常に少ない。ドキュメントを書かせること自体が難題と言ってもいいだろうが、しかし不可能ではない」とのことで、同氏はドキュメントを作成する習慣を確立するためにも「ムチよりもまず飴」方式を採用すべきとだと提案する。多くの人と同じく、プログラマーだって命令よりもインセンティブの方が動機づけとなる。簡単な賞賛も大いに功を奏するが、他の手段を模索するのも良いだろう。彼らが週末にサポート業務で待機担当だったり、またアップデート作業で深夜に作業している時はないだろうか? 追加のドキュメント業務に精を出した彼らにはそういった他業務の負担を軽くしたりするのも一案だ
「学生プログラマの日本一決定戦」を謳う、「CODE VS」なるイベントが 1 月 14 日に開催されていたそうだ。チームラボや pixiv、サイバーエージェント、KLab、スクウェア・エニックス、ドリコム、ミクシィ、リクルートといった企業が企画・協賛したイベントで、「マス目上のフィールドで敵から特定のマスを守るようにタワーを建てる」というゲームをクリアするプログラムを作成し、その成績を競うというもの。 TechCrunch の記事にて報告されているが、優勝したのは東京大学大学院情報理工学研究科システム情報学専攻の修士課程 1 年の吉里幸太さんとのこと。ちなみに優勝賞金は 10 万円だったそうです。
学生プログラマー日本一決定戦「CODE VS」の予選が行われている(マピオンニュースの記事)。 題材は「タワーディフェンス」ゲームがモデルになっており、タワーを配置して敵から拠点を防衛するというもの。コンテストでは指示を行うプログラムを開発してクリアした面数を競う。使用言語は特に指定されておらず、参加用のクライアントプログラムから呼び出して実行可能で、標準入出力を扱うことができればよいとのこと。ただし、クライアントプログラムはJava上で動作するため、Javaの使用可能なOS上で動作するプログラムを作成する必要がある。予選は1月6日まで。決勝戦に進出できるのは学生のみだが、予選には社会人でも参加可能だ。 予選はオンラインで行われるため、自由な時間に挑戦できる。頭の体操として取り組んでみるのも面白いかもしれない。
来る2012年1月13日より、日本で唯一のデモパーティであるTokyoDemoFest 2012がMOGRA 秋葉原にて開催される。 一日目は上映会と即興でのデモ作成イベント、二日目にはDJイベント、セミナー、コンペティションを行うとのこと。普段作品を見ているだけの方も足を運んでみてはいかがでしょうか。 ある年代以前からのPC愛好者には「メガデモ」がよく知られていると思うが、「デモ」というのは「PCで美しいCGや音声などをリアルタイム生成して表示する」というプログラムの総称で、「メガデモ」もこの1ジャンルに含まれるそうだ。作品のCompo(コンペティション)も行われるとのことで、Windows7/Core i7-2600/8GB RAM/GeForce GTX580といったスペックのマシンでのデモコンテストが行われるとのこと。
あのオブファスケが帰ってきたそうだ。どれだけ「わかりにくい」Cプログラムを作成できるかを競うコンテスト IOCCC (International Obfuscated C Code Contest)が5年ぶりに開催される (マイナビ)。自然体で普通にコード書くとオブファスケなみんな! それ行け、出番だ!
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く