タグ

プログラムに関するtankuのブックマーク (30)

  • DoNotBeACraftsman – アクセンスのおまけ

    職人に成ってはいけない ソフトウェア技術者の間に、ともすると職人を礼賛するような風潮があることに、大きな危惧を覚えている。 「プロジェクトX」なんかが流行ってしまったせいだろうか。 果たして、職人であることが素晴らしいことなのだろうか? 職人に成ることこそが、仕事上の人生の目的であっていいのだろうか? 僕はそうは思わない。 誤解される危険を承知で敢えて言うが、職人に成ってはいけない。 そもそも、「職人」という言葉の意味が、語る人によって違うようだ。 まず、 大辞泉によれば、職人とは「自分の技能によって物を作ることを職業とする人」だそうだ。 ソフトウェアは物では無いから、ソフトウェア技術者は職人ではあり得ない。 へりくつに聞こえるかもしれないけれど、なんも解ってないで「ものづくり」だなんてどこかで聞いてきた言葉を使わないで欲しい。 百歩譲って、ここではソフトウェアを作ることが物を作ることの一

  • コンセプト指向プログラミング、インフォーマルな導入文書公開 | エンタープライズ | マイコミジャーナル

    Webアプリケーションやデスクトップアプリケーション開発に採用されているプログラミング言語の多くでオブジェクト指向が取り込まれている。オブジェクト指向には機能をクラスとしてまとめ部品化が容易であるということや、デザインパターンが適用しやすいといった利点があるわけだが、もうひとつ興味深いプログラミング方法にコンセプト指向プログラミングがある。2007年11月、Alexandr Savinov氏は「Informal Introduction into the Concept-Oriented Programming」の名のもとコンセプト指向プログラミングの紹介論文を公開した。デベロッパにとって興味深いものだ。 コンセプト指向プログラミングの例 - Informal Introduction into the Concept-Oriented Programmingより抜粋 オブジェクト指向はオ

  • Geekなぺーじ : Rubyネットワークプログラミング

    ここでは、Rubyによるネットワークプログラミングの説明を行いたいと思います。 ここで対象としている読者は、ネットワークプログラミング初心者(もしくは入門者)です。 TCP 簡単なTCPサーバとクライアント TCPクライアント(エラー処理付き) 何度も受信できるTCPサーバ TCPサーバ(acceptした相手の確認) UDP UDPを使う UDPでブロードキャストを使う UDPでマルチキャストを使う(マルチキャストを送信する) UDPでマルチキャストを使う(マルチキャストを受信する) UDPでマルチキャストを使う(TTLを設定する) Web 簡単なHTTP GET(Net::HTTP) HTTP HEADと全てのHTTPヘッダの表示(Net::HTTP) HTTP POST(Net::HTTP) 簡単なRSSクライアント その他 IO::selectを使う IPアドレスからホスト名への変換

  • アルゴリズム三選 - 世の中のアルゴリズムx3を実装する : 404 Blog Not Found

    2007年11月29日00:30 カテゴリ1st Day of April アルゴリズム三選 - 世の中のアルゴリズムx3を実装する ニュースにはコードで答える。 引きこもりでも知っておきたい世の中のアルゴリズムx3 : bogusnews 今回選ばれたのは以下3つのアルゴリズム。いずれも日社会を動かす重要な法則だ。 以下は実装例のごく一部。他にもあるという方は遠慮なく「どう掻く.org」まで。 Dan the Bogus Programmer マナーアルゴリズム C++で #define private public C/C++で #include "/dev/tty" Perlで #!perl no strict; no warnings; Rubyで while l = ARGF.readline $KCODE='UTF8' p l.split(//) $KCODE='BOGUS'

    アルゴリズム三選 - 世の中のアルゴリズムx3を実装する : 404 Blog Not Found
    tanku
    tanku 2007/11/29
    「出る杭は打たれるアルゴリズム」ワロタ
  • マイクロソフト,「Visual Studio 2008」日本語正式版を12月中旬にも提供開始

    「Visual Studio 2008日語版の開発作業は,オン・スケジュールで進んでいる。開発作業の完了は,12月中旬を予定している。その数日後に,無償版のExpress Editionのダウンロード提供を開始する」。マイクロソフト デベロッパー製品部の近藤和彦マネージャは11月28日,プレス向けテクニカルセミナーでこう語った。 Visual Studio 2008は,統合開発環境(IDE)「Visual Studio」の新版。マイクロソフトのソフトウエア開発・実行環境である .NET Framework3.0と3.5を利用できる。これにより,ユーザー・インタフェース構築技術であるWPF(Windows Presentation Foundation)を使ったアプリケーションをビジュアルに構築できるほか,Ajaxアプリケーションを開発可能にするASP.NET用ライブラリの「ASP.NET

    マイクロソフト,「Visual Studio 2008」日本語正式版を12月中旬にも提供開始
    tanku
    tanku 2007/11/29
    日本語無償版が出たら乗り換える‥‥たぶん
  • JASA組込みソフトウェア技術者試験 スキルチェックミニテスト

    【組込みソフトウェア技術者クラス2試験】スキルチェックミニテスト1 ※ミニテスト2もあります。 ■ 設問1~10を読み、解答を選択し「採点する」をクリックしてください。

    tanku
    tanku 2007/11/28
    CISCとRISCがいつもごっちゃになるorz
  • ゲーマーでなくても仕組みぐらいは知っておきたいアルゴリズムx40

    高校生の時、数学の先生がこう言いました。 ゲームなんて、開発者が作ったルールの上で遊ばれるだけだ。 と。 その時、ゲーマーな自分はこう思いました。 ゲーマーは、開発者が作ったルールの上で遊ばれたい。 と。 というわけで、普段何気なくプレイしているゲームには、どのようなルール(アルゴリズム)があるのか。それを知るために、いろいろなゲームのアルゴリズムなどを解析しているページへのリンク集を作りました。 ほとんどのゲームのアルゴリズムは正式に発表されていないので、ユーザーの手による逆解析だったり、大学の研究による真面目な考察だったりします。(リンク先には、一部アルゴリズムと呼べないものも含まれています) 各種ゲームのプログラム解析 ドラクエ、FF、ロマサガのプログラム解析 DQ調査報告書(リンク切れ) ドラクエの物理ダメージ計算式は質的にどれも同じだが、細かい部分で微妙に違う RPG INST

    ゲーマーでなくても仕組みぐらいは知っておきたいアルゴリズムx40
  • 404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10

    2007年11月26日18:15 カテゴリMathLightweight Languages プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10 ぎくっ あなたが一番好きなアルゴリズムを教えてください。 また、その理由やどんな点が好きなのかも教えてください。 - 人力検索はてな なぜぎくってしているかというと、実はすでにアルゴリズムの発注を受けているからなのだ。いつまでも伏せておくのもなんなので、ここにえいやっとdiscloseしてしまうことにする。 アルゴリズム大募集! C&R研究所 - トップページ その下書きもかねて、そこでも紹介しないわけに行かないメジャーなアルゴリズムをとりあえず10個紹介しておくことにする。 ユークリッドの互除法(Euclidean algorithm) その昔(数百年ほど前)は「アルゴリズム」といえば、「手順一般」を指すのではなく、この「互除法

    404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10
    tanku
    tanku 2007/11/26
    恥ずかしながら、いくつかソースで確認したこが無いのが‥‥
  • 第4回 コードレビューについて | gihyo.jp

    はじめに 「プログラミングに関する雑多な事柄」がテーマの連載、第4回は「コードレビュー」について取り上げたいと思います。 コードレビューの方法 コードレビューは、文章のレビューと似ています。文章と同様にコードの場合も、人に見てもらうことで、わかりづらい部分や冗長な部分など、さまざまな問題点が見つかります。 自分の書いた文章を人にレビューしてもらうには、たとえば、文章をメールで送ります。この場合、レビューのフィードバックはメールの返信という形で受け取れます。 コードレビューの場合も同様の方法で行えます。コードレビュー用の市販ツールなどもありますが、人に見てもらってフィードバックを得るということが一番大切ですから、特に方法にこだわる必要はないと思います。 コードレビューのメリット それでは、コードレビューに具体的にどんなメリットがあるのか見ていきましょう。 コメントの充実 コードを書いた

    第4回 コードレビューについて | gihyo.jp
    tanku
    tanku 2007/11/26
    頻度重要。個人的には is_data_initialized の方が好きなんだけど‥‥
  • ユメのチカラ: ソースコードの読み方(ニコニコ動画(RC2)で公開)

    ユメのチカラ インターネットの時代になって、地球規模の知恵の集積が 可能になった。ソフトウェア開発においてもオープンソースソフトウェアのバザール的開発が注目されている。いまおきているその現実を現場の視点から記していきたい。 吉岡 弘隆 - よしおか ひろたか 日OSS推進フォーラム ステアリングコミッティ委員 OSDL Board of Directorsを歴任 カーネル読書会主宰 2000年6月、ミラクル・リナックスの創業に参加。 95年~98年、米国OracleにてOracle RDBMSの開発をおこなっていた。 98年にNetscapeのソースコード公開(Mozilla)に衝撃をうけ、オープンソースの世界に飛びこみ、ついには会社も立ち上げてしまう。 2008年6月取締役CTOを退任し一プログラマとなった。

  • C 標準関数逆引き辞典

    tanku
    tanku 2007/11/17
    ワイド文字とか
  • 「難しい言語」の補足 - カレーなる辛口Javaな加齢日記

    http://d.hatena.ne.jp/JavaBlack/20071112/p1 の続き. 私の意見は,*1次のものとほぼと同意見. プログラムを知らない人に最初に教える言語は、仕事に使う言語(そりゃそうだ)。 それが複数あるか、仕事で使うわけでないなら、 PythonJava がいいんじゃないかと思うとです。 Ruby 大好きでも、プログラムを1からやる人に薦める or 教えるなら Python の方がいいような気がしています。 動的言語を意図どおりに扱おうとするのは(初心者にとって)意外と難しいんじゃないかなー、と思っていたり。 Javaが習得できない人に、どの言語を使わせても、結局は危険なコードを書かれる気がする http://d.hatena.ne.jp/tanku/20071113/1194966240 ほんでまあ,Javaというのは,一般的に言っても「簡単な言語」な

    「難しい言語」の補足 - カレーなる辛口Javaな加齢日記
    tanku
    tanku 2007/11/17
    (極稀に)他の方に引用された自分の文を見ると、丁寧語とタメ語を混ぜて書いていることを後悔する(苦笑)。そういえば、文法が複雑でも簡単でも後回しの部分は「おまじない」って教わるのがお約束だなーと思ったり
  • yukobaのブログ

    yukobaのブログ

    tanku
    tanku 2007/11/16
    インストーラーめんどくさいからEXE1ファイル落として起動すればよくね?‥‥という感じ? ファイルサイズがでかい奴はどうすれば‥‥アプレットで解凍とかできればいい‥‥のかなぁ?
  • 2007-11-04

    11月1日の日記(http://d.hatena.ne.jp/Ozy/20071101#p1)で,7行テトリスの作者が,超絶ショートコーダーのnanagyouさんであるということがわかりました.現在はもっと短縮されているようです. http://www.geocities.jp/nanagyou/list.html nanagyouさん(http://geocities.yahoo.co.jp/gl/nanagyou/)は,ショートコーディングにも名を刻んでいるスーパーコーダーであります.先日,私が悩んでいたブロック回転の計算についても解決されていますし,document.bodyも変数を使って上手く短縮しています.何より無駄なif文が省かれて構造的にはより洗練されたものになっています.スバラシイ… で,nanagyouさんのコードを見てて思ったのですが,変数eって単にウェイトをかけてる

    2007-11-04
  • Unicode の文字列をソースコードに埋め込む方法 - bkブログ

    Unicode の文字列をソースコードに埋め込む方法 Unicode の文字列をソースコードに埋め込む場合、直接 UTF-8 などで文字列を書く方法と、\uXXXX などのようにエスケープして表記する方法があります。後者の方法についてまとめてみました。 \uXXXX 形式の場合 Java, JavaScript, Python, C++, C (C99から) などの多くの言語では \uXXXX という表記 (universal character names) でUnicode の文字を文字列の中に埋め込めます。たとえば、「あいう」は "\u3042\u3044\u3046" となります。 \uXXXX で埋め込んだ文字がどのように解釈されるかは言語や処理系によって異なります。 gcc/g++ の場合、 -fexec-charset オプションで、実際に使う文字セット・エンコーディングを指

  • cri-ch.tv [13]

    tanku
    tanku 2007/11/09
    懐かしい
  • 馬鹿プログラマは仕事でプログラムするな - 神様なんて信じない僕らのために

    とか書くと思いっきり愚痴にしかならないんだが、 馬鹿はプログラマになるな。 まあ、馬鹿っていうのが指すのは特定個人名な訳だが、 この人ちょっとおかしいなーと思ったら、 もうどうしようもないレベルであることが判明した。 プログラム馬鹿は必要でも、 只の馬鹿はソフトウェア開発に必要ない。 馬鹿の特徴(一部 プログラムは期間内に動く物ができれば良いと思っている 「動けば良い」とか馬鹿か 調整すべきパラメータもソース内に直書きすれば良いと思っている お前はいちいちビルドしてリンクする気か…… とりあえず自分で仕事を抱えて手が足りなくなったら誰かにふれば良いと思っている 手垢をつけるまえに最初から振れ 他人に自分のプログラムをどうこういわれるのは癪に障る プログラムの指摘に生意気とか言われても…… 他人に自分のコードに手を入れられたくない お前のソースが腐ってるから手をいれてやるって言ってるんだよ!

    馬鹿プログラマは仕事でプログラムするな - 神様なんて信じない僕らのために
  • Karetta|ストリーミング動画を公開

    当日の模様をストリーミング動画で公開します。 http://www.sbbit.jp/article/6627/ 公開するのは「Language Update」「オレ様言語の作りかた」「Lightning Talk」です。

  • javascript - 545バイトテトリス : 404 Blog Not Found

    2007年11月02日09:00 カテゴリLightweight Languages javascript - 545バイトテトリス もう少し短く張りやすくしてみた。 わずか565バイトテトリスのプログラミング解説 「往年の名作「スーパーマリオブラザーズ」、あの濃い内容でわずか40キロバイト」に載っていたわずか565バイトのテトリス。文字数にして551文字。79文字*7行のプログラミングで、テトリスが動きます。 それがこちら。 545バイトテトリス window.onkeydown=function(e){K=e.keyCode};X=[Z=[B=A=12]];h=e=K=t=P=0;function Y(){C=[d=K-38];c=0;for(i=4;i--*K;K-13?c+=!Z[h+p+d]:c-=!Z[h+(C[i]=p*A-Math.round(p/A)*145)])p=B[

    javascript - 545バイトテトリス : 404 Blog Not Found
  • もっと楽しむ! プログラミング言語 「豆」談義:第1回 古くて新しい関数型言語「Lisp」|gihyo.jp

    はじめに「僕たちは今……」 人間の思考に、ことば――すなわち言語は欠かせないものです。考えごとをするときに、ことばを使っていない人はいないでしょう。 さて、僕達は今、コンピュータを身近に感じる世界にいます。 コンピュータというのは、ハードウェアとソフトウェアに大きく分けることができますが、ソフトウェアはさまざまなプログラミング言語を用いて書かれたプログラムで構成されています。 プログラムの重要さは、コンピュータのハードウェアを変更しなくても、中のプログラムを変えることによってコンピュータの用途を「計算」「⁠文書作成」「⁠ゲーム」「⁠勤怠管理」「⁠ショッピング」と変えることができることからもわかります。つまり、皆さんが「コンピュータって便利だね」と、言うときに指すコンピュータとは、プログラミング言語で書かれたプログラムのことなのです。 そのプログラミングの始まりは、チャールズ・バベッジが作成

    もっと楽しむ! プログラミング言語 「豆」談義:第1回 古くて新しい関数型言語「Lisp」|gihyo.jp