タグ

programmingとProgrammingに関するtztのブックマーク (522)

  • まずは、mixiアプリを使ってみよう、作ってみよう

    まずは、mixiアプリを使ってみよう、作ってみよう:基礎から分かる、mixiアプリ作成入門(1)(1/3 ページ) mixiのアプリ?それって何? 「mixiアプリ」は、iGoogleのガジェットのように、SNS「mixi(ミクシィ)」上に組み込まれて実行される、Webアプリケーションです。主に、JavaScript+XML+HTMLCSSで作ります(やり方によっては、Flashなども使える)。 誰でも開発でき、人が開発したmixiアプリを自分のマイページなどに自由に組み込むことができます。また、Webアプリケーションのため課金方式は異なりますが、iPhoneアプリのようにmixiアプリを作って公開することで報酬を得ることもできます。 mixiアプリは、2009年6月現在、オープンβ環境のみで利用可能となっています。正式版は、8月公開予定です(参考:「mixiアプリ」8月に正式公開 販売

    まずは、mixiアプリを使ってみよう、作ってみよう
  • マンガで分かるLisp (その1)

    | Home | Next>

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • The Rise of "Worse is Better"

    $B%G%6%$%s$N!V0-$$J}$,$h$$!W86B' (B The Rise of "Worse is Better" rpg@lucid.com $BF|K\8lLu (B: daiti-m@is.aist-nara.ac.jp $B$K$h$k (B $B$b$N (B $B$r!"KRLn$,2~cb (B $B;d$d (B Common Lisp $B$H (B CLOS $B$N%G%6%$%J!MIT/Stanford $BJ} $B4J7i@- (B $B%G%6%$%s$OLL$K$*$$$FC1=c$G$J$1$l$P$J$i$J$$!# (B $B$3$N$H$-!"%$%s%?! $B@5Ev@- (B $B%G%6%$%s$O$9$Y$F$NE@$K$*$$$F@5$7$$$b$N$G$J$1$l$P$J$i$J$$!# (

  • API Design Matters - ACM Queue

    Should the authors of lousy APIs be held accountable for their crimes? Why changing APIs might become a criminal offense Why changing APIs might become a criminal offense - Should the authors of lousy APIs be held accountable for their crimes? Michi Henning, ZeroC After more than 25 years as a software engineer, I still find myself underestimating the time it will take to complete a particular pro

  • 反政府的 API - Backnumbers: Steps to Phantasien

    勤務先のコードを見ていたら DeregisterXxx() という名前のメソッドがあった. そんな英語ないだろ ... とぐぐってみると, LKML のアーカイブがヒット. 投稿者の不満は私と同じだ. カーネルのコードに deregister_xxx () という関数がいくつもあるよ, いいの? という主旨. そうだそうだとスレッドを読み進めた私はある驚くべき事実を知る. Rik van Riel の返信: > "deregister" を使うに至った事情は何かあるんですか? 然り. 我々は反米国のテロリスト集団である. 辞書に無い新たな単語を大量に発明して米国経済を破滅に追いやろう. 連中の辞書産業に追従を許さず, 綴りを学ぶ余力を奪い, 英国との語彙戦争の中で溢れる語彙に沈め彼等の息の根を止めるのだ. なんてこった! (若干誇張あり.) deregister にそんな意図があったとは

  • APIの設計について - Plan9日記

    Twitter経由で知った、「API Design Matters」というACMQの記事を流し読んでいた。書かれたのは2007年なのでちょっと古いが、この手の話題は時代を越えて残りそうだし、今読んでも損はないかな。 システムコールやライブラリ関数など、よく使われるAPIほど良いものじゃないといけない。良いAPIを設計するのは難しく、悪いAPIは量産されている。悪いAPIでもラッパーで対応できると言うかもしれない。でも、多くのプログラマがそれぞれラッパーを書くとすると、とんでもなく多くの時間と労力が無駄になって不幸だよ。じゃぁ、何に気をつけるべきかとか、そういう話が出てくる。 まず、やり玉に挙っているのがselectシステムコール、特に.NETのSocket.Selectメソッド(Win32 APIのselectのラッパー)でこれはたしかに酷い。poll/epollなどの改良も出ているんだし

    APIの設計について - Plan9日記
  • CUnit チュートリアル

    CUnit とは、C言語開発において単体テストを支援する 「テスティング・フレームワーク」です。 もちろん、きちんとした設計者であれば、 CUnit のような仕組みがあろうと無かろうと、 自分で作った分の設計者テストは言われなくても実施するでしょうし、 組織としてきちんとしていれば、すでに何らかの仕組みは構築しているでしょう。 ですが、もし今まで単体テストをチーム内の各設計者が バラバラに実施していたということであれば、 CUnit を試してみる価値はあります。 また、XP(eXtreme Programming) のようなスタイルを構築したいと思っているのであれば、 CUnit を必須、としてしまうのも一つの手です。 ここでは、Cygwin 環境に CUnit をインストールして使ってみます。 導入 テスト環境の概説 使ってみよう アサート・マクロ テスト・レジストリ テスト・スイート

  • 長文日記

  • C/C++ リファレンス

  • 100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog

    例の冷却ファンを修理してもらいに秋葉原に行ったのですが、最近の同人ゲームのクオリティはすごいなあと感心していたら、その二階はもっととんでもないことになってて、ひとつ大人になってしまったmikioです。今回は、Tokyo Cabinetのテンプレート直列化機能を駆使して、たった100行のCプログラムでWebチャットシステムを実装してみます。 古式ゆかしいWebチャットシステム 10年くらい前にCGIスクリプトでチャットシステムを作るのが流行していたのを覚えている方も多いと思います。チャットログは現在のようにデータベースサーバに転送して格納するのではなく、ローカルファイルシステム上のファイルにCSVやTSVなどのフォーマットで格納したり、同じくローカルのDBMファイルに格納するのが主流でした。2ちゃんねるの「datファイル」もそのようなデータファイルの一種と言えるでしょう。 その頃から、CGI

    100行のCプログラムでWebチャットを実装する方法 - mixi engineer blog
  • global

    標準では入っていないコマンドですが、globalと言うsource codeを見たりする時に、結構便利なツール類が存在します。これらはtag fileを作成し、これらをemacs等から読込むことによってタグジャンプを行ったり、変数や関数が相互参照可能なhtmlを作成してくれます。 gtagsコマンドは、カレントディレクトリ以下のソースを再帰的に走査して、ソース中のシンボルを集めます。そしてクロスリファレンスデータをタグファイル(GTAGS, GRTAGS, GSYMS, GPATH)に書き込みます。 gtagsコマンドのオプションは幾つかありますが、通常はファイルが存在する場所でを実行させるだけで、tag fileが作成されます。 # gtags サポートしている言語は、C, C++, yacc, java, PHP,およびアセンブラです。それそれの言語は、拡張子で識別されるようになってい

  • プログラマレベル:Geekなぺーじ

    レベル0 レベル0の人はプログラムを一度も書いた事がありません。 レベル0の人は、プログラミングとはどのような作業なのか想像もつきません。 世の中のほとんどの人は、このレベルです。 レベル0の人は、プログラムをかけるプログラマはいわゆるオタクだと思っています。 ありがちな発言 「プログラミングできるんだ。ふーん。凄いね。」 レベル1 レベル1の人は学校の授業の課題としてプログラムを書いた事があります。 しかし、あまりプログラミングには興味を持てず、コンピュータに詳しい知人に課題をやってもらったり、教えてgooなどで課題の答えを聞いたりしているので、仕事としてプログラミングはできません。 ありがちな発言 「教えて下さい」 レベル2 このレベルの人は、2度ほど何かの小規模プログラムを書き上げた経験を持っています。 段々とプログラミングへの興味が広範囲に及ぶようになり、勉強をするのが楽しくて仕方

    tzt
    tzt 2009/06/05
    自分の場合は、13歳→レベル1、15歳歳→レベル2、17歳→レベル3、現在→レベル4な感じか。プログラマの成長過程を上手くあらわしてると思う。
  • Geekなぺーじ : C++は中高生のセックスに似ている

    「Why C++ is like teenage sex」というネタがあるようです。 古さを多少感じますが結構笑えます。 色々な英語サイトで紹介されており、実際にどこがオリジナルなのかは発見できませんでした。 検索すると微妙に内容が異なる物もありますが、内容は以下のような感じです。 興味がある方は、「Why C++ is like teenage sex」という検索キーワードで検索してみて下さい。 C++は中高生のセックスに似ている。何故ならば。。。 みんな、そればっかり考えている みんな、その話ばかりしている みんな、他の人もやっていると考えている 実際にやっている奴はあまりいない やっている少数の人々は: 下手 次はもうちょっと上手になってるだろう 安全にやってるわけじゃない 成功体験を言いふらしてるけど、実際にやったことがある奴は少ない 原文 C++ is like teenage

    tzt
    tzt 2009/06/04
    zabuton++;
  • 女子クラスで理解するプログラミング言語

    クラスの学級委員を勤める、先生からの信頼も厚いCたんクラス一の金持ちだけど、プライドが高くて、みんなと仲良くなりたいのに素直になれないPythonたん引っ込み思案だけど、そつなくこなす風紀委員のJavaたんふとっちょで行動が鈍いけど、夢に関しては誰にも負けないRubyたんスマートで美人、50m走で一位になってクラスの注目を浴びるFORTRANたん小柄でやんちゃ、時々トラブルメーカーのJavascriptたん隙あらばなんでも商売の種にしようと考える、雑貨屋の娘COBOLたんユニークな製品でみんなを驚かせる、ちょっとエキセントリックな発明家LISPたん瓶底眼鏡で学級新聞を作る、寡黙なれど知識持ちの図書委員、PostScriptたん日々みんなの生活をまとめる、記録係のSQLたんおしゃべり大好き、でもドジっ娘で時々しょんぼりしているPHPたん誰と誰が仲がいい、誰と誰が喧嘩したといつも話している噂好

    女子クラスで理解するプログラミング言語
  • Phenom徹底分析(前):ネイティブクアッドコアに意味はないのか?

    Phenom徹底分析(前):ネイティブクアッドコアに意味はないのか? ライター:米田 聡 Phenom 9600のリテールボックス。今回は秋葉原のPCパーツショップ,高速電脳の協力で同製品を入手した AMDの新世代CPU「Phenom」は2007年における大きなトピックの一つとなるはずだったのだが,4Gamerによる2回のテストで残念ながら良好な結果を残せず(関連記事1,関連記事2),さらにはかなり大きな消費電力,(ただでさえ芳しくない)性能の足を引っ張るErrata(エラッタ)問題と,散々な船出となってしまった。 AMDはかねてからPhenomについて,「ネイティブクアッドコア」(あるいは「真のクアッドコア」)だから競合より優れていると主張してきたが,少なくとも2007年末の時点では,その“優れている”部分,ネイティブクアッドコアの意義を見いだしづらい状況になっている。 だが,当にネイ

    Phenom徹底分析(前):ネイティブクアッドコアに意味はないのか?
  • ドイツのプログラミング大会の優勝作品:アルファルファモザイク

    編集元:ガイドライン板「638 名前:水先案名無い人 投稿日:2009/04/17(金) 15:33:16 ID:tiYVFzCJ0」より 226 ウンナンオウバイ(静岡県) :2009/04/15(水) 18:40:47.19 ID:feyVAFxN 4キロバイト部門の優勝作品 容量制限なし部門の優勝作品 とくに上のほうはマジキチレベル。音楽もグラフィックもプログラムも全部まとめて たった4KBのプログラムにしてる。

  • バグを生まないコーディング法、10個の規則でソフト開発を効率化(1/3) ― EE Times Japan

    ソフトウエア開発にはバグがつきものだ。ただし、バグの発生を最小限にい止める方法がある。コーディング規則を適用してコードを記述することだ。バグが発生してからそれを発見し、修正するという通常の開発手順に比べて、簡単に、しかもコストをかけずにバグをつぶせる。 ここでは、ZigBeeを利用したセキュリティ・システムから医療機器にわたる筆者の組み込みソフトウエア開発の経験から得た、バグをなるべく発生させないコーディング規則を紹介する。 なぜコーディング規則が必要か コーディング規則は、ソフトウエア開発者に対して、コードを記述する上での規則をまとめたものである。英語のライティング教として著名な「The Elements of Style」(William Strunk Jr.、E. B. White著)の、プログラミング言語版のようなものだ。 組み込みソフトウエアにも、きれいで、正しく、簡

  • getoptによるオプション解析

    はじめに プログラムにパラメータを直接埋め込むような, 非効率的なプログラミングは止めましょう. #defineで記述するのもいいですが,頻繁にパラメータ調整をする時には, いちいち再コンパイルが必要です. こういう時にはコマンドラインの引数で,オプション指定するのが一番です. もちろん,非常に多くのパラメータ指定が必要な場合は, パラメータ設定ファイルに記述した方がいいですが, それでもオプション指定はできたほうがいいでしょう. このオプション解析を自分でやろうとすると,面倒なだけでなく, 統一性のないヘンテコリンなコマンドになりがちです (オプションの記述順を変えたらダメとか...). オプション解析は,getoptを使ってスマートに書きましょう. 詳しくは man 3 getopt を見て下さい. ついでに man atoi, man atof あたりも見ておくといいでしょう. 具体

    tzt
    tzt 2009/05/25
    getopt()でマイナスの引数を使う裏技(?)
  • データベースを用いたセッションデータ管理について - LukeSilvia’s diary

    Web アプリケーションとは切っても切れないセッション機構。DB ベースでセッション管理を行なって得られた知見と、それを元に考察した結果をまとめてみます。 セッションデータの特性 DB で管理される他のデータに比べ、セッションデータはかなり特殊です。主な特徴は次のような感じ。 データが増加するのが速い 定期的な削除が必要 頻繁に更新される リクエスト毎に読みに行く必要がある このデータを読めないとアプリケーション全体にアクセスできない アクセス頻度が高いということです。あと、1つ目の特徴からセッションデータについては意識的に管理してやる必要があります。 現在の環境 アプリケーションの領域が少し特殊で、セッションデータがやたらたまります(ユーザ数何百万のサービスとかそういうのではないです)。 RDBMS MySQL 4.0.22 ストレージエンジン InnoDB レコード数 6千万 テータサ

    データベースを用いたセッションデータ管理について - LukeSilvia’s diary