programmingとProgrammingに関するtoy2doneのブックマーク (241)

  • 分散バージョン管理Git/Mercurial/Bazaar徹底比較

    分散バージョン管理Git/Mercurial/Bazaar徹底比較:ユカイ、ツーカイ、カイハツ環境!(3)(1/5 ページ) Subversionとは一味違う「分散バージョン管理」とは? 最近、Linuxをはじめ、Ruby on RailsMySQL、OpenSolarisなどのオープンソースプロダクトが次々と分散バージョン管理システムを導入し始め、「Git」「Mercurial」「Bazaar」といった、分散バージョン管理システムが注目を浴びています。 稿では、バージョン管理ツールのデファクトスタンダードであるSubversion(以下、SVN)と分散バージョン管理システムを比較しながら、メジャーな分散バージョン管理システムであるGit、Mercurial、Bazaarについて紹介していきます。 集中型と分散型 最初に、集中管理方式(または、集中型)のバージョン管理システムと分散管理

    分散バージョン管理Git/Mercurial/Bazaar徹底比較
  • FF(16進数の掛け算)を覚えよう - やねうらおブログ(移転しました)

    最近、あるプログラマと話していて気づいたのだけど、彼は16進数の2桁と1桁との掛け算(FDh×5とか)が出来ない。やり方自体を知らないのだ。彼はWindowsの電卓を立ち上げて計算していた。 そのときは「プログラマでなくともこんなこと知ってて当然だろ!」と思ったのだけど、その後、10人ぐらいのプログラマに出来るかどうか聞いてみたが誰も出来ない。 結局、「普通は出来ない」のだと私は理解した。しかし16進数の掛け算はそんなに難しくない。私が子供のころには、まわりにFF(1×1=1に始まって、F×F=E1まで)を丸暗記している人がいっぱいいた。情報教育の一環として中学か高校で教えても計算の仕方ぐらい教えればいいのになぁと思っている。 前置きが長くなったが、以下にやり方などを書いておく。 ■ 16進数に馴染もう 16進数では、A = 10 , B = 11 , C = 12 , D = 13 ,

    FF(16進数の掛け算)を覚えよう - やねうらおブログ(移転しました)
  • あなたのテスト、単なる動作確認になっていませんか?

    EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。

    あなたのテスト、単なる動作確認になっていませんか?
  • 神奈川 tDiary 会議 01 - HsbtDiary(2008-12-07)

    ■ [tDiary][ruby1.9][ruby] 東京 神奈川 tDiary 会議 01 予定通り、新横浜の某所でtdtds, kakutani, NT, kmachu, hsbt の5名でWebアプリケーション研究会が開催されたので以下議事録。今後のアクションプランは後でまとめる。 ruby 1.9 対応 magic comment どうするか 何も考えないで *.rb の先頭に入れる magic comment はエディタに依存するものではなく、汎用的な定義 sed -i "1s/.*/# -\*- coding: utf-8; -\*-\n&/" **/*.rb rubyじゃないのかよ←お約束 plugin類の扱い magic comment は書かない。evalを行う時に encoding 指定で何とかできるらしいのでやってみる ruby インタプリタ実行時の --encodin

    神奈川 tDiary 会議 01 - HsbtDiary(2008-12-07)
  • OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん

    OMakeすごい。OMakeはマジですごい。 OMakeはGNU makeの代替品みたいなものなんだけど、正直なところこのツールの強力さはGNU makeと比べると失礼なくらいすごい。これのおかげで、「コード修正→ビルド→デバッグ→コード修正→・・・」のループの、ビルドにあたる作業がほぼ消え去った。 ファイルの依存関係の解析がとにかくすごい。よくあるユースケースなんかの場合、最小限の手間でほぼ完璧に依存関係を網羅して、よしなにビルドしてくれる。 とりあえず、はやみずが実際に使ってみたケースを例にとってそのすごさの一端を紹介しようと思う。 case study 論より証拠ということで、自分が OMake を試しにつかってみたケースを紹介する。C言語でスタティックライブラリを作っていて、それに加えて簡単なテストプログラムを書いている。 /include/ 以下にヘッダファイルが全部ある /sr

    OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん
  • ブラウザで正規表現のチェックなどができるサイトまとめ | IDEA*IDEA

    ドットインストール代表のライフハックブログ

    ブラウザで正規表現のチェックなどができるサイトまとめ | IDEA*IDEA
  • プロジェクトの遅れを取り戻す方法10選

    印刷する メールで送る テキスト HTML 電子書籍 PDF ダウンロード テキスト 電子書籍 PDF クリップした記事をMyページから読むことができます プロジェクトが計画通りに進まなくなる原因は数多くある。例えば、タスクの見積もりが甘かったり、プロジェクトから要員が抜けたり、リソースの割り当てがまずかったりということがある。記事では、遅れの生じたプロジェクトを立て直すための実践的なテクニックを紹介する。 プロジェクトチームで働いた経験のある人であれば、様々な要因によってプロジェクトの納期がずれ込んでしまうということを知っているはずだ。一部の作業が当初の想定よりも手間取るものであったり、メンバーの入れ替わりが激しく、新担当者の業務知識に対する習得時間が無視できないものとなったりするのは珍しいことではない。また、単に作業見積もりが甘かっただけということもあるだろう。しかし原因がどのような

    プロジェクトの遅れを取り戻す方法10選
  • あなたの知らないJDKの便利ツールたち

    Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします(編集部) 標準JDKに含まれる便利なツール 読者の皆さんは、最近のJDK(Java SE)に、開発やデバッグに便利な新しいツールが含まれていることをご存じでしょうか? 古くからのJava開発者は、古い時代のJDKのツールしか知らず、一方で新しいJava開発者はEclipse/NetBeansなどの統合開発環境に慣れてしまい、細かなコマンドツールを直に使う状況が減ってきているかもしれません。 そこで今回は、最近のJava SE 6含めて比較的新しいと思われるツールを以下の5種類に分けて紹介します。 プロファイリング トラブルシューティング/情報取得 監視 配備/補助 スクリプティング 「こんなツー

    あなたの知らないJDKの便利ツールたち
  • 東京を走る路線のデータを使って、最短経路問題をダイクストラ法で解く - imHo

    ダイクストラ法が小さなサンプルデータで動いたら、実際のデータを使ってみたくなるのが人情。東京を走る地下鉄のデータでやってみたいと思った。 JavaScriptとPrototype.jsとGoogleMapsAPIとすったもんだしたあげく、なんとか動くものができた。 502 Bad Gateway テストアプリはこちら JavaScriptのソースはここのhtmlに 駅や路線のデータは駅データ.jpのものを使わせてもらいました。 使ったのは東京メトロ+都営+山手線 駅(ノード)の数は、同じ駅でも路線ごとで別にカウントして 322 駅同士をつなぐ線路(エッジ)の数は、徒歩や乗換えを含め 912 体感もっさり感じるけど、経路の検索以外のところがかなりかかってる Tips Prototype.js Array.without は超重い、使うな! Hash.keys で返ってくるキーはすべて文字列に

    東京を走る路線のデータを使って、最短経路問題をダイクストラ法で解く - imHo
  • 技術者としての「日本語が亡びるとき」 - stanaka's blog

    語が亡びるとき を読みました。普段は、あまり書評らしいものは書かないのですが、いろいろ確信が得られたので、熱が逃げない内に記します。 日語が亡びるとき―英語の世紀の中で 作者: 水村美苗出版社/メーカー: 筑摩書房発売日: 2008/11/05メディア: 単行購入: 169人 クリック: 12,641回この商品を含むブログ (456件) を見る こので論じられている「日語はこのままだと亡びる可能性がある」ということは、僕にとっては、若干背を向けたかった現実だったりします。僕は、英語が完璧にはほど遠いエンジニアの常として、なんだかんだ言って日語をベースとした活動としています。「日語が亡びる」ということは、それらの活動が将来的に無になってしまうことと、ほぼ同義です。 技術、特に情報科学・技術を専門としている身としては、英語が普遍語である、というのは、このに教えられるまでもなく

    技術者としての「日本語が亡びるとき」 - stanaka's blog
  • log.utashiro.com: sl コマンド

    最近、なぜか sl コマンドのことが話題になる。 探してみると1997年に社内向けに書いた記事があったので載っけておこう。 懐かしのSL… 過日、何年ぶりかで fj.unix を覗いてみると、sl コマンドが話題になっている。 と言ってもわからない人が多いだろうから説明しよう。 Unix に、ls というコマンドがあって、ファイル名のリストを表示するために使われる。MS-DOS の dir に相当するもので、文字端末を主なユーザインタフェースとして使用する Unix では、頻繁に利用される一般的なコマンドである。 ところが、急いで入力していると、たまに右手と左手の同期に失敗して、ls と打とうとしたところが sl と打ってしまうことがある。 普通の Unix には sl などというコマンドは存在しないので、 sl: Command not found. というエラーが表示される。 このとき

    log.utashiro.com: sl コマンド
  • SubversionとTracでファイル管理の“迷宮”から脱出

    SubversionとTracでファイル管理の“迷宮”から脱出:ユカイ、ツーカイ、カイハツ環境!(2)(1/4 ページ) プロジェクトで修正/仕様変更が“迷宮”入りする理由 ソフトウェア開発を行ううえで、設計書やソースコードのバージョンをきちんと管理することは非常に重要です。構成管理(ファイル管理)を行っていないプロジェクトでは、例えば次のような問題が発生します。 2人以上の開発者が同時に成果物を編集した場合、後に編集を始めた開発者がすでに編集を行った開発者の編集内容を上書きしてしまう。結果として、修正したはずのバグや変更したはずの仕様が、設計書やソースコードに反映漏れするという事態が発生 設計書やソースコードのレビューを行って修正したはいいが、どこをどう修正したのか分かりにくく、レビュー内容の反映の確認を行っても修正漏れや修正誤りに気が付かない ソースコードを変更すると、動かなくなってし

    SubversionとTracでファイル管理の“迷宮”から脱出
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • JavaScript はどのように実行されるか - IT戦記

    JavaScript はどのように実行されるか Safari*1 の実装を例に JavaScript はどのようにして実行されているかを書く。自分用のメモ。日語の出来は気にしない 1. ブラウザを起動して以下のようなページを開いたとする <html> <head> <script> var a = 1; var b = 2; alert(a + b); </script> </head> <body> </body> </html> 2. インターネットからデータが到着する そうすると WebCore::FrameLoader::write という関数に生の文字列が渡される。型は char* だ。 http://trac.webkit.org/browser/trunk/WebCore/loader/FrameLoader.cpp#L990 この関数の中では、到着した文字の文字コードを解

    JavaScript はどのように実行されるか - IT戦記
  • プログラミングテクニックのまとめ - プログラミング日記

    とりあえず思いついたもののまとめ。 まずは、ベーシックなものから。 変数のスコープをなるべく狭くしろ 他はグローバル変数を使うなとか、モジュール化と界面を意識せよなど。とにかくスコープは重要かつ意外と奥が深い。スコープに関係する機能は、モジュール(パッケージ)、クロージャ、ローカル関数、ローカルクラス、変数の種類、アクセス制御など。 同じロジックのコードを2度以上書くな 他はDRY原則、コピペをするななど。自分の場合、2度書く方がシンプルになる場合、2度書くこともある。特に、ifやswitchなどのロジックの中で同じコードが2度現れる場合、ちょっとしたコードでわざわざ別のところで関数やブロックにまとめて、それを参照するのは面倒。但し3度以上現れる場合は関数などにまとめるケースが多いかも。 汎用コード内で条件分岐コードを減らせ 他はifをポリモーフィズムによりなくせなど。条件分岐は汎用性を損

    プログラミングテクニックのまとめ - プログラミング日記
  • 優秀なプログラマを雇う方法:Geekなぺーじ

    「A Guide to Hiring Programmers: The High Cost of Low Quality」という記事と、その記事への捕捉として後ほど投稿された「A follow up to "A Guide for Hiring Programmers"」という記事がありました。 プログラマの雇い方というタイトルではありましたが、内容はもう少し広いです。 一部著者の熱すぎる想いが加熱しているように見える部分や、アメリカ的事情に見える部分もありましたが、全体的に興味深い内容でした。 以下、2つまとめた要約です。 3番までが一つ目の記事で、4番以降が二つ目の記事要約です。 誤訳等が含まれている可能性があるので、是非原文をご覧下さい。 概要 Perlのコミュニティでプログラマを雇う事(特にPerl開発者)を話し合っていて、以下の点で知人達と合意ができた。 どのようなプログラミング

  • アプリ開発でも、よ~く考えよう。キャッシュは大事だよ

    アプリ開発でも、よ~く考えよう。キャッシュは大事だよ:現場から学ぶWebアプリ開発のトラブルハック(12)(1/2 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) “無駄”より“遅い”ものはない 今回もパフォーマンスにまつわるトラブルをハックするが、アプリケーションのパフォーマンスチューニングで最も有効な手段は「処理を行わない」ことである。何もしないことに勝る高速化は存在しない。今回のトラブルでは、インスタンスをキャッシュ化して、無駄な処理を行わないことでチューニングを行う手法を紹介する。 しかしながら、往々にしてチューニングはトレードオフである。そのトレードオフが引き起こす、さらなるトラブル

    アプリ開発でも、よ~く考えよう。キャッシュは大事だよ
  • Ruby on Railsの作者より:高まった生産性を仕事を余計にこなすためではなく自分の将来に向けて使おう - himazu blog

    IT ConversationsでRuby on Railsの作者デービッド・ハンソンが2008年5月にRailsConfでおこなった講演が配信されている。そして、以下でも聞ける。 RoRの思想についての言及が冒頭にあるが、大部分は開発者の身の処し方についての講演である。その部分の概要は以下の通りである。 RoRは他のフレームワークや開発手法に比べて生産性について依然として優位性があり、RoRを使って開発していると「余剰開発力」を享受できる。しかし、その状態は永遠には続かない。遅かれ早かれ以下のどれかが起こるから。 他の言語/フレームワークがRoRを凌駕する RoRを凌駕する新たなフレームワークが登場する RoRがメインストリームになる 幸い、どれもすぐには起こりそうになく、RoRでの開発はまだしばらく生産性の点で有利である。その優位性によって生ずる余剰開発力をいかに活用すべきだろうか。も

  • 7つのバージョン管理システムを知る | エンタープライズ | マイコミジャーナル

    Subversion - open source version control system オープンソースプロジェクトではソースコードの共有や管理にバージョン管理システムを使っていることが多い。バージョン管理システムを使ってソースコードの共有とバージョニングを可能にすると、複数名での開発やロールバックが簡単の実現できるようになる。オープンソースプロジェクトに限らず、商用システムの開発でも活用できる機能だ。 以前はCVSが代表的なシステムだったが、現在ではほかにもいくつかの候補がある。候補はいくつもあるが、Smashing Magazineの7 Open Source Version Control Systems Reviewedに興味深い記事が掲載されているためチェックしておきたい。同記事では7つの代表的なバージョン管理システムが簡潔にまとめられている。簡単にまとめると次のとおり。

  • 間違ったコードは間違って見えるようにする - The Joel on Software Translation Project

    Joel Spolsky / 青木靖 訳 2005年5月11日 水曜 私が最初の当の仕事をはじめたのは1983年9月に遡る。それはオラニムというイスラエルの大きな製パン工場で、16台の飛行機ほどもある巨大なオーブンで、毎晩10万個のパンが作られていた。 はじめて工場に入った時、そのあまりの汚さに信じられない思いだった。オーブンの側面は黄ばんでいるし、機械は錆びていて、そこらじゅうが油だらけだった。 「いつもこんなに汚いの?」と私は聞いてみた。 「なんだって? なんの話をしてるんだ?」とマネージャが答えた。「掃除したばかりだから、今が一番きれいな状態なんだ」 なんてこった。 毎朝の工場の清掃を何ヶ月か続けて、ようやく彼らの言っていたことが理解できるようになった。パン工場では、きれいというのは機械にパン生地が付いてないことを言うのだ。きれいというのは、ゴミ箱に発酵したパン生地が入ってないこと