タグ

programmingに関するmarkupのブックマーク (89)

  • 頭の中にプログラムを入れる

    Paul Graham / 青木靖 訳 2007年8月 いいプログラマは、自分のコードに集中しているとき、それを頭の中に保持しておくことができる。数学者が取り組んでいる問題を頭の中に入れているのといっしょだ。数学者は学校で子供たちが習っているように、紙の上で問題の解いているわけではない。彼らは多くの部分を頭の中でやっているのだ。問題の領域をよく把握しようと努めることで、普通の人が記憶にある育った家の中を歩き回れるように、数学者は頭の中で問題空間を歩き回ることができる。最高の状態で行われるプログラミングもそうだ。プログラムの全体を頭の中に入れたなら、それを思い通りに操れるようになる。 これはプロジェクトのはじめにおいては特に価値がある。それはプログラムを作り始めるときに最も重要なことが、やっていることを変えられるということだからだ。単に問題の解き方を変えるという ことではなく、解いている問題

  • 生年月日から年齢を計算する簡単な計算式:ITpro

    私の個人ブログに掲載したら好評でしたので、こちらでもご紹介してみます。 最近知ったんですが、生年月日から年齢を計算する簡単な計算式というのがあるそうです。 (今日の日付-誕生日)/10000の小数点以下切捨て。 PHPで書くと echo (int)((20070823 - 19850101)/10000); Perlで書くと print int ((20070823 - 19850101)/10000); JAVAで書くと System.out.println( (int)((20070823 - 19850101)/10000) ); という感じになります。 日の法律を確認してみました。誕生日の前日が終了する瞬間(すなわち誕生日をむかえる午前0時00分の直前)に1歳を加えることになる。ただしうるう年など、年によって期間を定めた場合において最後の月に応当する日がないときは、その月の末日を

    生年月日から年齢を計算する簡単な計算式:ITpro
  • codeなにがし

    世界最高峰のブックメーカーでベットしましょう。オンラインベッティングでお気に入りのスポーツをお楽しみください。

    markup
    markup 2007/08/02
    汎用型ソースコード・ノウハウ共有サイト
  • 各種プログラムコードの整形ツール集:phpspot開発日誌

    Time-Savers: Code Beautifier And Formatter 各種プログラムコードの整形ツール集。 ブラウザ上でコードを自動で美しく整形してくれるツールなどがまとまっていました。 コードが綺麗だとメンテナンスしやすくて多くのメンバーでも作業しやすくなりますね。 Quick Highlighter - コードをハイライト化したHTMLCSSを吐き出せる PrettyPrinter - PHP, Java, C++, C, Perl, JavaScript, CSSコードを整形 PHP Code Beautifier - PEARのコーディング規約に沿った形にPHPコード整形 Ruby Script Beautifier - Rubyスクリプト整形 Tabifier - インデントツール CSS Beautifier - CSS整形ツール Highlight.js -

  • [Java]正しい無限ループの書き方 - きしだのはてな

    boolean д = true; for(;д;){ System.out.println("でれません"); } boolean ω = true; for(;ω;){ System.out.println("ぬけれません"); } boolean ェ = true; for( ;(ェ); ){ System.out.println("終わりません"); } boolean TдT = true; while(TдT){ System.out.println("帰れません"); } 参考 while(1)をfor(;;)って書くやつ(2ch)

    [Java]正しい無限ループの書き方 - きしだのはてな
  • プログラマレベル:Geekなぺーじ

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

  • 仕様から学ぶOpenIDのキホン - @IT

    にわかに注目を集めている、URLをIDとして利用する認証プロトコル、OpenID。連載ではこのプロトコルの仕組みを技術的に解説するとともに、OpenIDが今後どのように活用されていくのかを紹介する(編集部) OpenIDってなんだろう? 現在、国内外でにわかに注目されつつあるOpenIDという仕組みを聞いたことがあるでしょうか? これはユーザー中心の分散ID認証システムですが、まだ日での普及は進んでいない状況です。 これにはいくつか原因が挙げられるでしょうが、筆者はOpenIDが正しく理解されていないことが原因だと考えます。 連載ではOpenIDの現行仕様、およびその拡張仕様とともに、実装を例に取りつつOpenIDとは何かということを明らかにしていきます。最終的にはOpenIDが切り開く未来を見るため、現在策定中の次期仕様についても触れていきたいと思います。 広がりつつあるブラウザベ

    仕様から学ぶOpenIDのキホン - @IT
  • 小野和俊のブログ:そして、ペア・プログラミングが始まる

    ここ数日、私はずっとペアプログラミングをしている。 ペアプログラミング自体は、これまでに何度も経験したことがある。 しかし今回の試みが今までと違うのは、 一日中、ペアプログラミングしかしないという点である。 1セット1時間半、15分の休憩を入れて、 ドライバーとナビゲーターを交互に入れ替えて毎日4セットやる。 このところ、これを何日も続けている。 こうやって、ある程度ストイックに続けてみることで、 わかってきたことがある。 それは、ペアプログラミングにはメガトン級の破壊力があるということだ。 プログラマーは絶えず誘惑にさらされている。 調べ物でウェブを見たついでに何時間もネットサーフィンしてしまったり、 考えたことをメモするついでに2時間かけてブログを書いてしまったり、 仕事の用事で知人に IM したついでにしばらくだべってしまったり、 Twitter に書き込んだついでに Friends

    小野和俊のブログ:そして、ペア・プログラミングが始まる
  • 総論 複数のプログラミング言語を学ぶ意義 - フリー言語で真のプログラミングを学ぶ:ITpro

    ネットワーク応用通信研究所 特別研究員。島根の田舎に住みながら国際的なオープンソース・ソフトウエアの開発に挑むプログラマ。家族6人で幸せな田舎暮らしを満喫している。バグと原稿の締め切りがなければもっと幸せなのに,と思いつつ,考えてみれば,それらがないならないで,別の困ったことがあるよなあと思う今日このごろ。 皆さんは「サピア・ウォーフ仮説」をご存じでしょうか。これは言語学における古典的な仮説の一つで,「人間の思考は使用する言語とそれに付随する文化に影響を受ける」というものです。もし仮に数字を3までしか持たない言語があったとすると,その言語を使用する文化に生まれ育った人間は3以上の数を認識できない,といったことです。言語学的にはこの仮説は否定されているようですが,日常生活の中では,この仮説が当ではないかと感じる経験がたびたびあります。 例えば,私は年に数回海外に出張して講演をする機会があり

    総論 複数のプログラミング言語を学ぶ意義 - フリー言語で真のプログラミングを学ぶ:ITpro
  • IBM わかりやすいコードを作成するための 6 つの方法 - Japan

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM わかりやすいコードを作成するための 6 つの方法 - Japan
  • てっく煮ブログ - 四則演算を JavaScript で実装する

    aki noteGoogle 電話面接を受けました orz (いまは消えてるけど)にて割り算が壊れました。自分で実装してみてくださいという質問が紹介されていた。せっかく(?)の機会なので、割り算だけでなく、四則演算を全部壊してみて、JavaScript で実装して見ることにした。JavaScript を選んだのは、コンパイル不要、ビット演算がある、Firebug で手軽に確認できる、という理由から。それ以上の深い意味はない。ということで、次のような問題に一般化してみた。問い四則演算を JavaScript で実装しなさい。演算子は ==、!= およびビット演算子のみ使ってよいものとします。補足例えば、for 文で for(var i = 0; i { // ... } と書くためには、++ 演算子は次のように定義できる。 function increment(i){ var c =

  • Windowsの通知領域で処理が終わったことをお知らせ - ヒルズで働く@robarioの技ログ

    id:hirose31さんのファイルを変更したら自動的にreloadする方法 - (ひ)メモにあるobserve-mtimeを使わせていただいて「編集したら自動コンパイル」とかやってるんですが、裏で動かしてるのでいつコンパイルが終わったのか分からないんですよ。 でも音は出したくないので、通知領域にテキストバルーンを表示させることにしました。Windowsだし。 (MacだとMac::Growl::RegisterNotificationsかな?) cpanからWin32::GUI - metacpan.orgをインストールして、 % perl -MWin32::GUI -e '$t=3;$n=Win32::GUI::Window->new->AddNotifyIcon(-balloon=>1,-balloon_tip=>q{COMPLETE});sleep $t;'と、これだけで3秒間「C

  • ファイルを変更したら自動的にreloadする方法 - (ひ)メモ

    ファイルの更新を監視して、変更されたらMozReplなFirefoxさんにreload指令を送る。 コンテンツのファイルをいじってて、いちいちF5するのがめんどいので。 reload指令を受理できるように MozLab - Trac をインストール。 ツール→MozLab→Start Replで開始。 extensions.mozlab.mozrepl.autoStartをtrueにすれば、動きっぱなしにできるのかも。 4242でlistenしてるのはlocalhostだけなので、他のマシンからtelnetしたいときは、パケットリピータを使う。 例えばstoneを使って、 4242宛てのパケットをlocalhost:4242にリピートする ただし、接続を許可するのは10.6.25.201と10.6.25.202からのみ とするときはこんな感じ: stone -nr localhost:42

    ファイルを変更したら自動的にreloadする方法 - (ひ)メモ
  • 【連載】今からはじめるAIRプログラミング (1) AIRの概要とインストール方法 | エンタープライズ | マイコミジャーナル

    今月11日、それまで「Apollo」のコードネームで開発が進められてきたAdobeのRIAプラットフォームが、「AIR(Adobe Integrated Runtime)」という正式名称を与えられて、β版のリリースに至った。α版に比べて多くの機能追加が行われており、プラットフォームとしての完成度がかなり高まった感がある。 そこで、連載では、そのβ版を使用し、AIRが持つ様々な機能と、それを利用したプログラミングテクニックを紹介していきたいと思う。 今回は連載の1回目ということで、AIRの概要とインストール方法、およびサンプルの実行方法を説明する。β版の機能を利用したプログラミングについては次回から解説しよう。 AIRの概要と利点 AIRは、先ほども述べたとおり、コードネーム「Apollo」として開発が進められてきた、Adobeの次世代RIAプラットフォームだ。AIRは「Web開発技術をそ

  • mixi Engineers’ Blog » mixi日記キーワードランキングの秘密

    皆さん、先月の半ば頃からmixiのトップページの3列目に「日記キーワードランキング」というコーナーが登場していたのをご存じでしょうか。手前味噌ながら、これはとても面白い機能で、毎日ランキングが更新される度に素敵なランキングが作られていて悦に入っているmikioです。今回は日記キーワードランキングの秘密についてお話します。 日記キーワードランキングとは、日記に書かれた言葉の使用頻度を統計的に処理して、今話題になっている度合を算出し、その上位をランキング形式で表示する機能です。トップページには5位までが表示されるので、それをチェックするだけで最新の流行を把握することができます。さらに「30位までを読む」に進むと30位までのキーワードとその関連日記が表示されます。詳細を知りたい場合はキーワードをクリックすると、そのキーワードで日記検索をした結果を見ることができます。一通り見るのに10分くらいでし

    mixi Engineers’ Blog » mixi日記キーワードランキングの秘密
  • まつもと直伝 プログラミングのオキテ---目次 - まつもと直伝 プログラミングのオキテ:ITpro

    第0回 あらためてRuby入門 まつもとゆきひろ氏自身による「Ruby入門」をお届けします。日経Linuxの連載開始前の特別企画(2005年4月号)として,Rubyが他のスクリプト言語やオブジェクト指向言語とどこが違うのか,なぜ便利なのかを中心に解説してもらったものです。 ● 基と他言語との違い ● 実装とRuby誕生の秘密 第1回 プログラミングとオブジェクト指向の関係 プログラマを目指す人々の中にも,「オブジェクト指向は難しい」とか,「なかなか分からない」という印象を持つ方が多いようです。そこで,Rubyを題材にオブジェクト指向という考え方について説明していきます。 ● その1 ● その2 ● その3 第2回 抽象データと継承 オブジェクト指向プログラミングを構成する3原則のうち,前回は「ポリモーフィズム」を学びました。今回はオブジェクト指向の歴史を復習した後,残りの「データ抽象」と

    まつもと直伝 プログラミングのオキテ---目次 - まつもと直伝 プログラミングのオキテ:ITpro
  • Concepts + Principles - プログラミングの原則 - Concepts + Principles - Top

    ここはプログラミングの原則を集める Wiki です。巨人の肩に乗って、ふつうの人がよいプログラムを書くための指針を集めたいなと思ってます。 目次 よいデザインのための Concepts + Principles DRY (Don'tRepeatYourself) 名前重要 直交性 トラッシュではなくクラッシュ DuckTyping よいルーチンを書く 凝集性 結合性 契約による設計 (DesignByContract) ルーチンを作る正当な理由 よいモジュールを書く 適切なモジュール性を確保するために守らなければならない5つの原則 開放/閉鎖原則 (OpenClosedPrinciple) よいアプローチのための Concepts + Principles 曳光弾 可逆性

  • 君は新言語LOLCODEを知っているか? - Kentaro Kuribayashi's blog

    Twitterをぼげぇ〜と眺めていて発見。 LOLCODE Matzさんでさえ言及した様子がないこのLOLCODEですが、なかなかどうして面白い……って、小飼弾さんの「404 Blog Not Found:君は新言語xtalを知っているか?」をまともにパロる力量に、残念ながら全くもって欠けているので、ここからは普通に。 さて……ってんでさっそく話を始めたいところですが、LOLCODEの説明に入る前に、予備知識を少し。 ここ数ヶ月、英語圏のブログ等で、文法的におかしな英語やネット用語等からなるユーモラスなキャプションの付された、の画像を見かけた方も多いでしょう。それらはLOLCATSといって、まぁ日でいえば、の写真を、はてなセリフで2ch語と掛け合わせたみたいな感じで、可愛いとユーモラスなキャプションとの対比が、激烈なカワユス効果を生み出しています。最近では、に限らず、様々な動物や

  • 404 Blog Not Found:君は新言語xtalを知っているか?

    2007年05月23日05:00 カテゴリLightweight Languages 君は新言語xtalを知っているか? Lua に関してねっとをぼげぇ〜と眺めていて発見。 xtal-language - Google Code xtal_doc/syntax xtal_doc/ref xtal_doc/cpp 新言語 Xtalを作る日記 DOFI-BLOG どふぃぶろぐ Matzさんでさえ言及した様子がないこのxtalですが、なかなかどうして面白い。for loopの後ろにelseが書けたり、Fiberを持っていたり...callee()で無名再帰関数も書けたり...そうそそう、...といえば、可変引数の引数は、...という配列に入って、...[0]がその最初の要素というのも楽しいですね。 XTALというとOSの方を思い出してしまいますが、組み込み向けという点で共通しているかも。偶然の一

    404 Blog Not Found:君は新言語xtalを知っているか?
  • ブロックを組み立てるようにプログラミングを簡単に学べる『Scratch』がすごいかもしれません | POP*POP

    MITのメディアラボで開発されている開発ツール「Scratch」が話題になっています。 小さなお子さんでもプログラミングに親しんでもらおう、という目的で作られたツールです。 この時代、誰でもプログラミングを学びたいものですよね。この「Scratch」、どれほど簡単なのでしょうか。 以下に詳しく見ていきましょう。 ↑ 起動直後の画面。左側からアクションを選んで組み立てていきます。 ↑ まずはを動かしましょう。左側から「Move 10 Steps」を選び、横のエリアにドラッグします。それをダブルクリックするとが横に動きます。もちろん「10」の値は好きに変えられます。 ↑ 次にさっきのブロックの下に「Say Hello for 2 seconds」をくっつけます。これでこのブロックをダブルクリックすると「横に動いてHelloと2秒間言う」というアクションがつくれました。 ↑ こうしてできたア

    ブロックを組み立てるようにプログラミングを簡単に学べる『Scratch』がすごいかもしれません | POP*POP