2008年9月24日水曜日
Solaris の audiohd ドライバが大幅に改良
audiohd ドライバといば、先日紹介したPhenomマシンに搭載されているオンボードサウンドチップのIDT 92HD206について、これを使えるようにするパッチを寄贈したのですが、今回の改良では Codec Parser が実装され、大部分の Intel HD Audio 準拠チップがサポートされることになります。最近のマザーボードやEeePCなどでIntel HD Audio準拠チップが載っているものをよく見かけますので、恩恵を受けるひとは多そうです。ぶっちゃけ私が書いたパッチなどもう用済みです!
ということで、心当たりのある人はいますぐ onnv99 以降へアップデートしましょう! SXCE待ちな人も SXCE99 まであと少しの辛抱ですね。
2008年9月9日火曜日
Google Chrome を試用してみた
この記事によると、Labor Day の 9月1日にあわせてリリースしたといういきさつがあり、あくまでニュースが少ない日を狙って目立つタイミングにあわせたという記述がありますが、だとしても「なぜ目立つ必要があるのか」という疑問が残ります。
スピードにこだわったブラウザだというコンセプトや報道はMozilla関係者としてはやはり面白いものではなく、このような反論が記事となることとなりました。今現在GoogleとMozillaは良好な関係を築いているとされていますが、Googleとしては今の現状に満足などしていないというのが本音なのだろうと思います。私の妄想ですが、これはMozillaを完全にGoogleの手中に収めるための戦略なのではないかと考えています。
Googleに雇用されているMozilla開発者は現状ではおそらく20%ルールの範疇でMozillaの開発を行っているのだと思います。これらの開発者の本業をGoogle Chrome に振り向けると各技術者としては「20%ルールの活動が認められて80%の本業になった」ということになると思いますが、その技術者が残りの20%で引き続きMozillaの開発を行うかというと疑問に思わざるを得ません。ブラウザとは関係のない活動に20%の部分を割き、結果的にMozillaの開発から撤退することになるかと考えられます。
また、先ほどの記事では「MozillaにおけるGoogleとの検索契約が2011年11月まで3年間延長されたことが明らかにされた。これによってMozillaは安定した財政基盤を得ることができている。」と書いてありますが、裏を返せば財政基盤の安定性と引き換えにGoogle依存体質がMozillaにあるということですし、2011年11月というタイミングにしても、2年強かけてブラウザのシェアを奪い、Mozillaとの関係を打ち捨てるかもしくは完全に手中に入れるプランを立てているのかもしれません。
この妄想がどこまで的を射ているのかは全くわかりませんが、単に目立つためだけにこのよなことをする必要は今のGoogleにはあまりないわけですから、少なくとも何か他の意図があると見るべきなのではないでしょうか。
Google Chrome には「シークレットモード」というのがあり、閲覧履歴や検索履歴を記録しないモードがありますが、その説明文では画像に掲げましたが「見張りの秘密諜報員」「背後にいる人」に注意せよとあります。まあGoogle流のジョークなのでしょうけれども、この「見張りの秘密諜報員」「背後にいる人」というのは案外Google自身なのかもしれません。ブラウザの選択が大統領候補の選択なみに政治的経済的な意味を持つ時代が再び訪れようとしているのかもしれません。
そもそも最近のFirefox周辺では便利(?)ツールバーや拡張機能の話題が多く語られることが多いのではないかと思います。かつてFirefoxが始めてリリースされたときはセキュリティとスピードを売りにしていましたが、セキュリティついてはいくつかの脆弱性が見つかったりする経緯でメリットして語られなくなり、スピードについては拡張機能やツールバー、プラグインで相殺している状況に思います。Google Chrome も悪くはないのですが、これに拘らずブラウザ環境の再点検とスリムアップを行う必要があるのではないでしょうか。
2008年8月26日火曜日
カブロボ方面で不穏な動き
この辺の情報については第1回最優秀賞受賞者の「わらしべロジック」開発者さんが情報を追っているのですが、大会を運営していたトレードサイエンス株式会社がこの7月にマネックスビーンズホールディングス株式会社の100%子会社となったという発表を皮切りに、詳細は明らかにされていないものの「機関投資家向けの助言サービス」開始の発表と、有料サービスを含むカブロボ参加者向けの新サービスを久しぶりの参加者向けのメルマガ配信で発表(しかしWebサイトではまだ発表されず)とにわかに不穏な動きを見せています。
一体何が起こったのかということで、子会社化のプレスリリースを読み直してみると、
ということで、トレードサイエンス株式会社の2008年3月期の決算が大赤字となっており、この状況が100%子会社化の契機になったのではないかを勘ぐらざるを得ない状況となっています。
カブロボの大会システムは現状では大会側でコストを負担して運用されており参加者はコストを負担する必要がないのですが、今回のメルマガで「カブロボプレミアム会員サービス」なるものを有料で提供予定という方針が打ち出されている状況を考えあわせると、一般の投資家に対してはシステムトレード的なことを行うための基盤を、機関投資家に対しては大会と通じて得られた集合知を提供というのがこれからの狙いなのかもしれません。
100%子会社化は仕方がないにせよ、突如として「機関投資家向けの助言サービス」開始を発表したものの、概要すら明かされないというのはいかがなものでしょうか。カブロボの大会を育てたのは言うまでもなくのべ18,000人を超える参加者であり、程度はともかくとしてそういった参加者が残した成果としての集合知をタダ乗りしているかのように見えてしまうのは非常に感触悪く感じます。
第1回の表彰式から現在までカブロボがどのような歩みをしてきたのか、実運用フェーズの運営側でのレポートも含めて広く公表すべき時期に来ているのではないでしょうか。第2回の表彰式についても、当初は2007年年末開催予定だったものが2008年春開催予定に延期され、気がついたらもう2008年秋という状況になっているわけで、そういったところも参加者を軽視しているように見えてしまう要素なのではないでしょうか。
2008年8月7日木曜日
にゃんこダラ見広告設置
これは、Google AdSense の「動画ユニット」で、ごらんのとおりYouTubeの動画プレーヤに広告が組み合わされたものです。このユニットは今年の5月に利用可能になり、8月になって色々な様式が追加されましたが、結局のところ一番オーソドックスなものを使っています。
表示される動画はコンテンツに応じたものやチャネル・キーワードを指定することができるのですが、当然のことながら日本語音声でないものが大部分なため、コンテンツマッチに期待してもあまり意味がないので、最初から期待せずに、にゃんこ動画に特化することにいたしました。
たまに、にゃんこじゃないものが混じるようですが、「にゃんこダラ見」そして「にゃんことはあまり関係ないシュールな広告」をお楽しみください。
2008年8月1日金曜日
Google Code Jam 2008 またもルール変更
このスレッドでその経緯が書かれていますが、事の元凶は、一番権威があるものと思われるTerms and ConditionsにはSmallの時間のみが考慮されるルールが記述されているのにもかかわらずシステムも参加者も運営サイドもみな、全ての時間が考慮されるルールでシステムが作られ、予選・ラウンド1Aまで開催されたことのようです。
このことが発覚したのがラウンド1A終了後で、1Bと1Cについては急遽システムを変更しSmallルールでコンテストが開催されました。1Aと1B,1Cでは違うルールでコンテストが行われるという事態が結果的に発生し、ラウンド1のサブラウンドが全て終わった段階でこのルール変更について議論になりました。議論の行方はともかくとして当落ボーダーラインよりちょっと下だった私も運営にメールを出してオフィシャルの発表待ちでしたが、公式見解によると
- ラウンド1Aについては両方のルールを適用して通過者を決める救済措置をとる
- ラウンド2以降については全ての時間を考慮するルールを採用する
- ラウンド1B,1Cについてはシステムも参加者の呼びかけも行っていたのでSmallルールの結果をそのまま採用する
- 予選ラウンドの結果についてはTerms and Conditionsと矛盾しているが、遡及措置は行わない
前のエントリでは「敗退」と書きましたがこの混乱の影響でどうなるか分からない状況がつづいておりましたが、これで公式に敗退が確定いたしました。コンテストで使われた問題については非常によくできているのですが、コンテスト運営の杜撰さに抗議する意味を含めて、日本語(?)訳の公開は撤回し、解説をこのブログで取り上げるのはやめることにしました。仮にがんばって決勝まで勝ち抜いたあげく「ルールが変わって賞金はナシになりました」とか言われたら嫌すぎますからね。
個人的な意見では、こうなった以上いさぎよくノーコンテストにして最初からやり直すべきだと思います。今回の処置でコンテストの維持は可能ですが、考えてみると、とりあえず辻褄あわせて目先の利益を優先させるという思考がサブプライム問題の究極の原因だったわけで、場面によってはいさぎよい対応を行うのも必要なのではないでしょうか。
2008年7月27日日曜日
Google Code Jam 2008 Round 1にて敗退
予選に比べて問題の難易度が上がり、Round 1A を観戦している段階で危機感を感じていたのですが、英語力やプログラムをすばやく書く訓練が足りなかったのが敗因だと思います。もちろんアルゴリズムそのものについての定跡研究が足りていないというのが一番なのかもしれません。仮に次回も参加するとして、どういったトレーニングを積めばいいのかというのがすぐには思いつかず、せいぜい過去問・練習問題を数多くこなすということやTopCoderなどの他のコンテストに参加するというくらいなのかもしれません。とはいってもTopCoderは使える言語やコンテストのシステム的にちょっと肌に合わないので参戦するのに躊躇しているところです。
今回の獲得ポイントとしては、Round 1B で 5点、 Round 1C で 15点と共に Problem A しか歯が立たなかったという状況で、 Round 1C についてはもう5分早く書ければギリギリ通過という結果でした。振り返ってみると、時間が2時間になる本選ではアルゴリズムとスピードと英語力が求められるという点で非常に過酷な戦いだったのかもしれません。評価点としては予選の問題をたくさん時間をかけてなんとか全部答えられたというところでしょうか。
コンテスト全般を通じて楽しめた要素はそれなりにあったのですが、プログラミングという「種目」そのものが本質的に自分と孤独に戦うという要素が多く結構なストレスを感じる一方、カタルシス的な要素が比較的少なく、それを理解できる人間も限られるということで、一般向けにアピールするにはなかなか難しい分野なのかもしれないというのが率直な感想でした。勝ち残った皆さんの健闘を祈ります。
追記:
Round 1 でペナルティタイムの計算方法が変更があり Small の時間のみが考慮されるルールに変更されましたが、スコアボードを見るとどうやら影響を受けていたようでSmallの問題を一刻でも早く回答するのがより重要な要素になっていたようでした。仮に今回ギリギリ通過しても、間違いなく次で落とされるでしょうし、くやしかったらもう1問解けということになるのですが、ここにきてルールが変更されるというのはいかがなものでしょうか。
確かに予選ラウンドではペナルティタイムは通過の要件とは関係がなかったのですが評価基準の一貫性を崩してしまったことについては関係者の熟考を求めたいところです。また、Round 1C の Problem A ではコンテスト中に問題文が修正される事態が生じたり、こちらで議論されているところを見ると、ローカルサイト出場者が18歳以上であることを確認する手段を現段階で用意していなかったりと、結構杜撰な部分が出てきているようにも見受けられます。前回とは違うシステムを使っての初めてのコンテストだということもあるのでしょうけれども、しっかり運営してほしいところです。
2008年7月25日金曜日
Google Code Jam 2008 QR Problem A
ラウンド1 は3つのサブラウンドに別れ、参加者は3つのサブラウンドのうち2つまでに参加し、それぞれのラウンドで上位840人、合計で2520人が次のステージに進むことができます。このラウンドからコンテストの時間が2時間になるのでなんとか勝ち抜けるように頑張りたいと思います。
さて、そんなこんなで突破した予選や練習問題・ベータ問題について、復習も兼ねて解説を試みたいと思います。今日は予選のA問題 "Saving the Universe" です。
予選で提出したコードは下の通りです。
#! /opt/local/bin/python
# -*- coding: utf8 -*-
def do_calc(num_engine, query):
change = 0
flags = [0] * num_engine
for q in query:
flags[q] = 1
if flags.count(0) == 0:
flags = [0] * num_engine
flags[q] = 1
change += 1
return change
def main():
for c in range(input()):
dic_engine = {}
query = []
num_engine = input()
for i in range(num_engine):
tmp_str= raw_input()
dic_engine[tmp_str] = i
num_query = input()
for i in range(num_query):
str_query = raw_input()
query.append(dic_engine[str_query])
change = do_calc(num_engine,query)
print 'Case #%d: %d' % ( c+1, change )
if __name__ == '__main__':
main()
予選が終わって IRC #gcj や google-codejam ではDPだDPなんて話になっていましたが、検索エンジンごとにフラグを作り、全てのフラグが立った瞬間が検索エンジンの切り替え時とみなして数えあげるというアルゴリズムです。フラグ立ては美少女ゲーマーの人が得意ですね(謎)
予選では、検索エンジンを切り替えた時の flags[q] = 1 の部分を忘れてSmall Input を処理して、1 wrong try を出してしまいました。また、パースするときについでに検索エンジンやクエリーを数字に置き換えていったのですが、この程度のものではそこまでしなくても問題が出なかったかもしれません。数字に置き換えたことで見通しのよいコードになったので、それなりの意義はあったと思います。
人数的には正解者が一番多いのがこの問題だったわけですが、このようなコードを24時間内に提出し、Small / Large の両データセットを処理すればいいわけですから、予選を通過することそのものはそんなに難しくはなかったのかもしれません。
2008年7月18日金曜日
Google Code Jam 2008 参戦
ただ、やはりまだまだ問題を解くスピードが遅いという課題があるのも痛感いたしました。英語の問題文を迅速に読み題意を理解することが次のラウンドまでの課題でしょうか。上位陣は小一時間程度でノーミスで解いているわけで、少しでも近づけるように努力せねばなりません。
2008年6月9日月曜日
perlのopen文についての反応
原因としては記事を掲載するITProが内容についてのレビューを怠ったということがあげられますが、そもそもperlというのは「見た目はともかく目の前の仕事を効率的にこなすこと」を目標とした実務的なスクリプト言語と私は理解しています。そのような実務的な環境で「こう書いてはいけない」と主張するのはよっぽどの理由があり、それを広く知らせる必要があると思うのです。ましてや今回問題になっている open の件については古い記法がそれこそ perl 4 の時から様々な解説書や雑誌記事で取り上げられているわけで、それを覆せるだけのアピールがあったのかということも問題の一つなのではないでしょうか。
正直イマドキのmodernなperl書法なんて、どこを調べたらいいか皆目検討もつかないと思うのですが、先ほどあげたにとよんさんの解説ページではperl-user.jpが挙げられています。
うんうん、参考になるなと思ってよく見たら、立ち上がったのが今年の5月20日ではありませんか!こんな状況では重鎮と呼ばれる人がいくら怒っても状況が改善するわけがありません。せいぜい「perlにもカルトなやつらがいてとっつきづらい」といわれるのがオチです。今回の件についてはお互い自省してより建設的な方向に持っていく必要があるのではないでしょうか。
perlということで思いだしましたが、sledge が公式にApache2に対応する日は来るのでしょうか? 個人的には失われたテクノロジ扱いでも構わないのですが、sledgeで飯を食ってる人はいろんな意味でマズいと思うんです。
余談ですが、オープンソースの世界って結構絶滅危惧種や絶滅種が案外多いんですよ。「開発者がいなくなってもソースは残る」とか言われていた時期もありましたが、人気がなくなり開発者がいなくなったオープンソースソフトウェアほどみじめなものはないですよ。多分sledgeは絶滅危惧種だし、perlじゃないけどpenguinofficeとかはオープンソースなのに入手するのさえ困難だという状況ですし。
2008年6月5日木曜日
学校裏サイト
この「学校裏サイト」というもの、不登校の原因や一部では自殺の引き金にもなるとする報道がされていますが、具体的にどういったものであるのか私には実感が持てないものでした。「裏サイト」というくらいなのでよっぽどアングラなものかと思って、先の「学校裏サイトチェッカー」にリンクされているサイトをチェックしたら、したらばあたりを借りてたり、携帯の掲示板だったりと全然「裏サイト」なものではなくあえていえば「ゴミサイト」でしかない印象でした。
文部科学省によると「青少年が利用する学校非公式サイトに関する調査報告書」がまとめられていて、要は学校非公認なものはすべて「学校裏サイト」という位置づけになっているようです。学校の名前を冠した掲示板を借りればすぐに「学校裏サイト」のオーナーになれるという寸法です。
ばかばかしいと言ってしまえばそれまでなのですが、実際に影響が出ていることもまた事実です。世の中の流れとしては規制やフィルタで生徒児童を守ろうということのようですが、今の生徒児童もいずれは卒業し保護から外れる日がくるわけですから、いづれはそういった暗部に対しても自力でなんとかしなければなりません。ではどうすればいいのかということでちょっと考えてみました。
- 「学校裏サイト」という表現を「学校非公認ゴミサイト」みたいな表記にする
- 「学校裏サイト」での誹謗中傷に対して毅然と対抗言論を張れるスキルを教える
つまるところネットいじめに対してはネットで対抗するのが一番かと思います。言葉がもつ力を信じ、情報武装する。これが一番だと思います。子供たちからケータイを取り上げるという話もありますが、ケータイがない状況でいかに情報武装するのかという練習課題になるのでそれはそれで有用なのではないかと思います。
2008年5月1日木曜日
Solaris Tips on A780GM-A
皆様おひさしぶりです。正直マザーボード特定して Tip もないような気もしますが、ECS A780GM-A で Solaris10 を動かすためのちょっとした Tips を紹介したいと思います。
このマザーボードのオンボードデバイスでSolarisから上手く扱えないものは、オンボードグラフィックのRADEON HD 3200、オンボードサウンドのIDT 92HD206、オンボードGbEのAtheros L1、オンボードHDMI出力といったところなのではないかと思います。この手の作業の常道としてはすでに動作確認がとれているカードなどを接続してしのぎ、その間に新しいデバイスを何とかすることなのですが、おかげさまで現在の手元の環境ではRADEON HD 3200 と IDT 92HD206 が動作しています。
RADEON HD 3200
RADEON 3200 HD は AMD 780G チップセットのグラフィック統合型チップセットなのですが、現在のSXCE(b87)ではこのデバイスを認識しない状況です。とはいっても最新のxf86-video-atiドライバではアクセラレーションが効かない状況ではありますが、動作させることができます。現状では開発環境を整えた上で、gitで最新のソースを取得しコンパイルする必要があります。
また、xf86-video-radeonhd ドライバでは最新の v1.2.1 でも、もう少しのところで動作していないようです。
IDT 92HD206
IDT 92HD206 は ECS A780GM-A のオンボードサウンドデバイスで、Intel HD Audio ( Azalia ) 準拠の codec デバイスです。 Intel HD Audio そのものについては最新の onnvでサポートされているのですが、この 92HD206 チップについては unsupported HD codec と怒られてattachされない状況です。
audiohd ドライバについてはすでに基本的な機能が実装されているので、データシートを参考にこのデバイスを使えるようにデバイス依存部分を書き足し、とりあえず音が鳴る状況までもっていきました。
具体的なコードについてはこちらで公開すると共に、機能拡張リクエスト(RFE)としてOpenSolarisコミュニティにコミットしてみましたので、将来的に92HD206がサポートされる日がくるのではないかと思います。
2008年3月28日金曜日
ついカッとなってPhenomマシン組んでみた
今回はK6II-400Mhzのマシンをリプレース(交換)してみました。新CPUはPhenom9600BEということで、実際のCPU周波数では5.75倍、4コア搭載で 5.75倍のさらに4倍で当社比23倍という訳の分からない状況になっています。
マザーボードは今旬らしいAMD 780Gチップセット搭載のECS製A780GM-A、メモリ2GB、HDDはストックしているものを流用しました。OSは64bitマルチコアCPUのメリットを最大限に活用するために Solaris Express Developer Edition、オンボードのサウンド・ネットワークデバイスは使えるドライバがないことを想定して、先代マシンから移植、VGAは内蔵のものでがんばるという方針です。
OSインストールの前にKNOPPIXを起動して本当にペンギンが4体並ぶのを見たところで、SXDE(b84)インストール、予想通りオンボードのデバイスが微妙に使えてない状況ですがインストールが完了しました。psrinfo コマンドで確認すると
% psrinfo -v -p
The physical processor has 4 virtual processors (0-3)
x86 (AuthenticAMD 100F22 family 16 model 2 step 2 clock 2300 MHz)
AMD Phenom(tm) 9600 Quad-Core Processor
という具合に認識されています。prstat コマンドでみても STATUS の欄に cpu0 ~ cpu3 がそれぞれ割当られている様子が確認できました。
一昔前であればこんな計算機なんてどんなに安くても100万単位のシステム価格ですから、いかにPhenom+780Gの組み合わせが安いのかが分かります。世間では Errataがどうのとか、Hybrid Graphics がとうのとかベンチマークがどうのとか言われていますが、amd64アーキテクチャで一日の長がある Solaris が最適なのではないでしょうか。
次回(?)はそんなPhenomマシンのマザーボード内蔵デバイスを何とかするネタを書いてみたいと思います。
2008年2月17日日曜日
ASUS Eee PC 投入
このEeePCですが、先行発売されている海外版製品とは異なりWindows XP Homeが搭載されることになったり、かなり早い段階でAmazonで予約が開始されたものの、販売価格が事前に報道されていたものより8,000円高い価格が設定されていたことがあったりと、流通・販売で今なお混乱が続いている製品です。この辺の事情についてはITProの記事が詳しいのですが、私も入手するまで本当に苦労しました。
私の場合は、1/18にAmazonに予約を入れたものの発売日に商品の確保を受けられず、発売当初に商品を入手できない、いわいるkonozama状態に陥りました。さらに1/25に気まぐれで支払い方法を変更しAmazon的には列の最後尾に並ぶこととなり、konozamaはさらに泥沼状態になりました(恥ずかしながらこの仕様はずいぶん後に知りました)。
しかたがないので、ダメ元で車を走らせて実店舗めぐりをしたのですが、はじめに行った某正規取扱い店では値段がついて在庫があり今すぐでも売ってくれそうな勢いのPOPがあるものの、実際には展示品1台のみで在庫はない予約受付状態という不当表示状態でした。値段は保証しても在庫は保証しないのがこの店のポリシーかと落胆し、PC工房さんに回ったら1台展示品があるものの、ショップについたとたんに目の前で売れてしまいました。不当表示の某店の対応とは打って変わって現品であることを十分に説明したうえで販売する様子が本当にうらやましかったです。
その後日々は流れて2月に入ったもののAmazonのほうは商品が確保される様子もなく、どうなっているのかとサポートに連絡したら、注文内容の変更が最後尾に並ぶことを意味するというkonozama仕様を知らされました。ここにきて時節的に春節ということもあり想像以上の事態の深刻さを悟ったのですが、現品販売がない限りAmazonで待つより他手が打てない状況に陥っていました。
ですが事態は急変し、PC工房さんの通販で2/8に即納で少量入荷との表記を見てすぐさま注文、注文が確定した段階でAmazonはキャンセルし、なんとか商品の確保ができたのでした。PC工房さんは週末にもかかわらず最速で発送事務を行ってくださり、連休中に手元に届く結果となりました。「即納」という謳い文句に即した仕事だったと思います。
このPCを買うまでの間でここまで苦労しているわけですが、今回の騒動についてはASUSの品薄という状況が大きな要因ではあるのですが、それ以上に流通・販売業者のマズさが輪をかけて事態を悪化させているように思います。特にAmazonに卸している代理店についてはITProの記事の2ページ目に書かれているように意図的に値段を流してみるようなことをしてみたり、某正規取扱い店のように在庫が潤沢にあるように見せかけて実は予約のみという不当表示が横行していたりと不快な思いをすることが多かったように思います。またこれからEeePCを買おうとした場合、予約を入れて無限待ち状態という極端な品薄状態が続いているとのことです。ASUSの品薄解消はもちろんのこと、プレスリリースを出すような正規取扱店や大手通販に卸している代理店がエンドユーザを軽視した行動をとっているということはこの製品の大きな足かせになるのではないでしょうか。今回の件については真にエンドユーザの立場に立つビジネスを行っているのはどこなのかということを痛感させられました。
2008年1月22日火曜日
SolarisでMicropolis(OSS版初代SimCity)
ソース公開はOLPCで動かすために働きかけがあったようですが、Python と C++ で移植が進められているOLPC版に加えて、Tcl/Tk版も公開されました。ちなみに"SimCity"を名乗れるのは、本家Electronic Artsの品質チェックを受けたものに限られ、今回ソースが公開されたのものには"Micropolis"と名前が付けられています。
せっかく公開された、この "Micropolis" ですがやはり Solaris でも動かしたいというのが人情。悪戦苦闘しながらコンパイルして、なんとか遊べる状況になりました。
とりあえずコンパイルできることを目標に作業し、なんとかSunStudioコンパイラを使ってamd64バイナリを作ることができたのですが、関数のプロトタイプ宣言があったりなかったり、下の画像のように unsigned なのか signed なのかよくわからない(笑)表記があったりして、コンパイラが大量にWarningを吐き出す状況で苦労させられました。
しかしながら、できたものをちょっと動かしてみるとやはりそれはSimCityそのもので、昔PC-9801で猿のように遊んだ記憶がよみがえりました。
まだ手元で作業しているものは、怪しさてんこ盛りの状況なので公開できないのですが、コンパイルするためのコツとしては
- Michael Gernoth(MacOS X 用パッチ作成者)さんのgitレポジトリから最新のスナップショットをとってくる
- コンパイラが出すWarningはとりあえず気にしないけど、念のため最適化は控えめに
2008年1月21日月曜日
最近のホビー層向けライトPC雑誌
買ってみたのは「帰ってきた悪用厳禁」「ぶっこぬき」でおなじみ(?)の「ネトラン」、そして「PCJapan」の2誌です。
この辺の雑誌は一時期WinnyやShareなどの紹介記事が集中して掲載されていたり、その周辺のノウハウを大量に掲載し、所謂「ネトラン厨」を多く排出するなど、おさわがせな要素が多い雑誌として認知されています。
「ネトラン」については、旧「ネットランナー」から一旦休刊状態を得て復活しているのですが、復活号から「超入門」と題して圧縮解凍、Firefox、デジタルカメラ、PC拡張、PHPとページ数はさほど多くないものの、読者にそれなりのノウハウを身につけさせることを意図した連載が展開しています。正直「ネトラン」でPHPの記事を掲載するのはかなり気持ち悪い部分があるのですが、ある程度まじめな要素も取り入れていこうという試みなのかもしれません。
一方、「PCJapan」のほうは「完全保存版 図解!ネットワークの仕組み」と銘打って、100ページ弱の付録をつけ、連載として過去に掲載されたネットワーク解説記事をまとめています。
付録冊子の目次をみてみると24回分ということで、まる2年にわたって連載されたものをまとめたようで、解説はあくまで平易な言葉づかいで、イラストを含めてわかりやすさを全面に出した記事で、この冊子に関しては非常に好感が持てる内容に思えました。
このようなライトなPC雑誌はどうしても読者の欲望を一手に受け止める必要があるので、それこそ「ぶっこぬき」だとか「動画共有サイト完全攻略」とかいう記事が全面に出ているのですが、実はそれだけではなく、ある程度まじめに読者を育てる試みも行っている部分があるということを認識しました。
昨今PC雑誌はどの雑誌も不振でここ数年は老舗の雑誌ですらも休刊が相次ぐ状態で、確かな知識やスキルを身につけたい人が読むエントリー的な雑誌が皆無になってきているように思います。
私あたりの年代の人間はそれこそ「ベーマガ」こと「マイコンBASIC Magazine」がそのあたりの役割を担っていて、「ベーマガ」のおかげで、とりあえずはBASICはなんとか扱えるようになったという人も多いのではないかと思います。確かに私たちの時代には動画共有サイトもWinnyもなかったわけではありますが、ゲームソフトやアーケードゲームの話題でみんな盛り上がってたような時期でもありました。
確かに暴走ぎみになっている部分も否めないライトPC雑誌ですが、そこそこ見られる部分もあるのではないかと感じた次第です。ちなみに「PCJapan」の付録は本当によく書けているので、ネットワークについて勉強しているひとは買って損はないと思います。
'08センター試験「情報関係基礎」は良問
報道されているところによると英語のリスニングやトラブル等で再試験の対象となった受験生が過去最高になったということでしたが、再試験云々は別にして受験生の皆さんは最後まであきらめずがんばっていただきたいと思います。
そのセンター試験ですが、数年前から数学の問題に情報関連の問題が出ることでその筋の方面には知られているのですが、今回の試験の「情報関係基礎」の問題は非常に良い問題が出されました。(試験問題は毎日.JPさん他で閲覧・ダウンロードできます)
中でも光ったのは第2問の状態遷移についての問題、そして第3問のソートアルゴリズムについての問題です。BASICの問題が出る「数学2・B」の問題では実際のプログラミングに即した問題なのに対して、こちらはアルゴリズムや論理的な思考能力に力点を置き、特定のプログラミング言語に依存しない形式となっています。特に第3問の問題などは一番最後に「任意の言語で具体的に実装せよ」と付け加えると、そのままプログラマの就職試験として使えそうな内容です。
といってもそんな試験を課してもFizz-Buzzのコードが書けないプログラマが大勢いるらしいので就職試験問題として成立するかははなはだ疑問なのですが...