サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Wikipedia
www.tsunematsu.cc
先週末からちょこちょこと書き始めて大分書くことが無くなって来ました。 コメント、質問歓迎です。まだまだ改善の余地がある気がするんだけど… →C/C++言語 開発環境 — Gist Windows/Linuxで両方で動作する成果物を想定。 有償のツールは理解が得られる方が稀なので除外。 仕様書 外部仕様 Word/Excelが手軽だけど差分が追いにくい。 Markdown+PandocかSphinxでPDF提出がいいかな? Pandoc – About pandoc Sphinx-Users.jp :: ドキュメンテーションツール スフィンクス Sphinx-users.jp 内部仕様 きちんと書いてあればDoxygenで十分だと思う。 Cしか対応していないみたいだけどdocuriumの方がgitとの親和性が高くて(tag付された結果をまとめて解析してくれるみたい)出力結果も今風に
もちろん無料で出来る範囲の話で ( ´ー`)y-~~ Jenkinsもようやく落ち着いて運用できるようになったし、テストも少しずつできてきたからようやくレガシーコードと戦っていけるかなと感じ始めた今日この頃なんですが、「○○を直すべきだ」と主張するにもやっぱり根拠がいるよねということで久しぶりに静的解析事情を調べてみました。 昔使っていたのはSourceMonitorでブログに書いたのが2008年の1月でした(SourceMonitor » tune web)。その後実際に業務にも適用して、不定期に測定を続けながらライブラリのリファクタリングを地道に行なっていました。 Jenkinsも当たり前の時代になったし、もうちょっといい方法があるのかなと期待していたのですがどうもあまり進化がないようです。Jenkinsプラグインとして商用の静的解析ツールは割と見つかるのですが無料のものは結構敷居が高
会社の開発環境を整備しているところなのですが、プロジェクトごとに細かく分けているSubversionのリポジトリ管理がだんだんと面倒になって来ました。特にアクセス権の設定が面倒で、メンバーの入れ替わりがあると複数の設定を直さなくてはなりません。ということで、随分前にブックマークしていて、最近また見かけることがあったSCM Managerで既存リポジトリを整理してみました。 SCM-Manager | The easiest way to share your Git, Mercurial and Subversion repositories over http. SCM Managerとは 日本語の技術ブログではあまり情報が見当たりません。そしてこれが何のソフトなのかいまいち分かりにくいのですが、私の理解では「Subversion/Git/MercurialのリポジトリをWebベースで
ラベリング処理というのは入力画像に対して、連結する画素(同じ色とか、同じ領域とか)ごとに同じ番号を割り振る処理のことです。領域別に処理する際の前処理に使ったり、画像中の微小領域のサイズを測定してノイズ除去に使ったりと色々と有用です。アルゴリズム入門 : 第 3 章 画像処理入門 1を読むとイメージが湧くかと思います。 ラベリング処理は1970年代から知られている処理ですが、高速なアルゴリズムが意外と知られていません。ネットで検索すると大学の授業での説明資料が見つかる程度で、文献をあたっても解説があまりにも少なく多くは役に立ちません。 古い本でラベリング処理のアルゴリズムが詳しく説明されたものを見つけたので多くの人に有用と思い、ここに書いておきます。参考にした本は近代科学社発行の長尾真さんによる「デジタル画像処理」で、1978年に発行されています。ラベリング処理の紹介は360ページ〜361
gitでリポジトリからのチェックアウト時に文字コードを変換する » tune webの続きです。 【未解決】VisualStudioとgccでコンパイルできるソースのエンコーディング » tune webでも書きましたが、問題はVisualStudioはUTF-8 BOM有のみ、gccはUTF-8 BOM無しのみ扱え、両者で問題なく扱える文字コードが存在しない事でした。gitにあるsmudge/cleanを使うとチェックアウト/ステージ時に任意のフィルタを通すことができ、BOMの除去をここでやれば出来そうなのですが、文字コード変換ソフトのnkfではBOMの有り無し以外も書き変わってしまうことがあるため実用に使えなかったのがこれまででした。 git smudge/cleanはPro Git – Pro Git 7.2 Git のカスタマイズ Git の属性に詳しく解説されています。 gi
少し前に発表されたGoogle Cloud Print構想ですが、まだ動くものがないせいか最初のニュースリリース以来何の進展もないのが現状です。 Googleは全プリンタ(既存のものも!)をWebプリンタとして標準化統一化することを目指す プリンタドライバの役割をクラウドに – Googleが「Cloud Print」を発表 | パソコン | マイコミジャーナル Introduction – Google Cloud Print – Google Code TechCrunchが一番詳しく報じていましたが、それでもGoogle Cloud Printが何をしてくれるのか、現状どういう状態にあるのか知ることが難しかったので元情報にあたってみました。そんなに難しい英語ではありませんが、後で参照することを考えて訳も残してあります。きちんと原文と対応する訳ではありませんが、参考にはなるんじゃないか
photo credit: lett -/= 最近Adobeのニュースが賑わっています。CS5の発表もありましたが、多くはAppleとやりあっているFlash関連のニュース。とうとう先日AdobeはiPhone/iPad向けのFlashから手を引き、Androidに注力することを宣言しました。業績が好調のAppleがAdobeを買収するのではという憶測も定期的に出てきています。 Appleとの溝を深めるも将来に自信を見せるAdobe – ITmedia エンタープライズ AppleがAdobeを買収するというシナリオ – ENGINE04 blog AdobeはFlashを共通のミドルウェア化することでWebの覇権を取りに行こうとしていますが、Flashそのものでは利益を生めません。Flashをオーサリング出来るAdobe Flash、さらにはPhotoshop, Illsutratorを
情熱プログラマー ソフトウェア開発者の幸せな生き方 posted with amazlet at 10.04.11 Chad Fowler オーム社 売り上げランキング: 12001 Amazon.co.jp で詳細を見る ソフトウェア開発者のみならず、あらゆる分野でその道を極めようとしている人におすすめです。プログラマ固有のところは極めて少なく、自分の人生を自分で切り開いていくために必要な情報が分かりやすく整理されています。 以下この本で気になった所を引用しておきます。この本がプログラマ以外の人にも示唆に富む内容であることが伝わるのではないかと。 より良い製品を作って仕事を確保することだけが大切なのではない。より実りある人生を送るためのスキルと感性を磨くことも大切だ。人生には素晴らしいことがたくさんある。仕事はそのひとつに過ぎない。(David Heinemeier Hansson) 偉
photo credit: drdaeman makeplex salon:あなたのスキルで飯は食えるか? 史上最大のコーディングスキル判定 (1/2) – ITmedia エンタープライズを解いてみました。ソースはtune’s itmedia_makeplex at master – GitHubに上げてありますのでリビジョンも見れるようになってます。最初のコミットを上げるまでに、面子の表示順の違いを抑えるところで詰まってチンイツの待ちを出力するプログラム – 107143955443560を参考にしました。参考にしましたというよりもC++のソースをRubyに移植しましたと言う方が近いほど同じ処理です。基本的なアルゴリズムは最後まで踏襲しています。 最初のコミットまでが3時間ぐらい、リファクタリングに1時間ぐらいです。ちょっと時間がかかりすぎですが、日常的に書いてないRubyで、日常的に
今週からクリーンコードを毎晩読んでいます。 コードをどう書くべきか、かなり泥臭いところを懇切丁寧に解決した本です。 まだ触りを読んだだけですが、良書の感じがします。 あまりネット上に言及している記事が無いので自分の勉強がてら勉強したことを書いていくことにします。続くと思います、多分。 ○前書き ソフトウェア開発では小さなことこそが重要。 建築家はきちんと閉まらないドア、曲がった床のタイル、汚れた机をよしとするか? 「神は細部に宿る」 5S原則はソフトウェア開発にも当てはまる。 整理:どこに何があるかを把握する。名前付けはきちんとできているか。 整頓:コードは読む人が”ここにあるだろう”と推測した場所にあるべき 清掃:コードをコメントアウトで汚してないか 清潔:コーディングスタイル、仕事の進め方 しつけ:変革を厭わない姿勢を持っているか 設計に終わりは無い。常に元あった状態よりも良
前に考えていた開発プロセスの変更を色々試行錯誤してみてある程度固まってきました。過去の記事は以下からどうぞ。 Subversion, Git, Redmine, Hudson – 現状の連携 » tune web Subversion, Git, Redmine, Hudson – 今考えている連携 » tune web Subversion, Git, Redmine, Hudson – 今考えている連携2 » tune web ネットワークが切り離された外部チームとのやりとりは結局git bundleにしました。外部チームからはパッチでもらい、レビューした後に適用する。ある程度開発が進んだらgit bundleでリポジトリをコピーして外部チームに送付。外部チームはbundleファイルをそれぞれcloneして開発を行い、適宜git fetch/git pullしながら更新に追従します。タ
オープンソースという言葉が定着し,ソースを見ることができるソフトがずいぶん登場しました.人のソースコードを読むことは自分のプログラミングスキルを向上させ,ソースコードを書き換えることで不具合の修正や改良を自由に行うことができます.オープンソースのソフトウェアが成熟していくにつれ,プログラムの規模は大きくなり,なかなか読むのが大変になってしまいます.そんな大きなプログラムを読みやすく手助けしてくれるのが GNU GLOBALです. GNU GLOBALはソースコードを解析し,関数や変数をリンク付けして交互に参照することを可能にしてくれます.対応環境としてはシェルのコマンドラインやbash,vi,Emacs,Webブラウザなど多くがあります.中でもブラウザはHTML形式に変換することで利用し,ソースを整形して出力してくれます.そのとき関数名,変数名にはハイパーリンクを貼ることで変数の利用箇所
git svn cloneして、ファイル編集して、git commitして、git svn dcommitでSubversionサーバに変更を反映させる。Subversionの変更を取ってくるのはgit svn rebaseだ… なんてのがWeb上で探してすぐ見つかる情報ですが、これでは複数人でgitを使う場合の運用ですぐに行き詰まってしまいます。 実用Gitの16章に定石が載っていると聞き、さっそく買って読んでみました。他の章を飛ばして16章だけ読んだせいもあるのか自分の中ではまだうまく消化出来ていません。とりあえず手順だけ書いておきます。 ◯前提条件 git svnを行う窓口は1箇所にする。git svnのオプションを変えたり、とってくるリビジョンを変えただけでもコミットオブジェクトは変わってしまう。 ◯前準備 git svnを使ってSubversionリポジトリのcloneを作る
Subversion, Git, Redmine, Hudson – 今考えている連携 » tune webでいただいたコメント、実際にやってみて出来なかったことを反映してアップデートしてみました。 前回からの差分がいくつかあります。 git svnの窓口となるリポジトリとgit開発時のcentralとなるリポジトリを分けた。 内部設計書としてソースからDoxygenで生成したものを使っていたことを思い出したので追記 外部との作業項目のやりとりにRedmineからチケット一覧をExcelをエクスポートして使っているのを追記 お互いにパッチを送り合うのをやめて、パッチをもらったらgit-bundle(1)で作成したファイルを送るようにした。これなら物理的に離れていても同じリポジトリを使って作業出来る。 gitとSubversionの橋渡しにかなり悩んだのですが、実用Gitによると、窓口を1つ
これからが本番、検索エンジンから来た方は先にSubversion, Git, Redmine, Hudson – 現状の連携 » tune webを読むことをおすすめします。上記が週末考えていた「こういう連携なら今の問題点を解消できるかな」と思えるフローです。「こうしたほうがいいよ」とかコメントありましたらお待ちしています。 1番のポイントはバージョン管理システムとしてGitを中心に据えました。社内はSubversionで統一するという規則があるので残すとして、開発チーム内ではgit svnを使ってGit化し、Subversionを直接触らないようにします。協力会社はSubversion縛りが無いのでGitで統一してもらいます。これまでは差分ファイルを送り合っていましたが、Gitを使えばパッチをうまく作り、修正単位でパッチファイルをやり取りすることが出来るでしょう。これまでは複数の修正がま
会社の仕事を「Gitを中心に据えた開発ワークフロー」に変えたいなとこの週末ぼんやりと考えていたんですが、現状を整理して残しておくのも、あとで振り返った時も参考になるかもしれないと思って残しておきます。 開発しているものは画像処理ライブラリで、言語はC言語。プラットフォームはWindowsとLinux両方に対応していて、32bitと64bitどちらでも動くようにしたいのが前提。ほとんどのソースは共用出来るようにしています。開発者はWindowsを使ってVisualStudioで開発し、自動テストやリリース時はLinuxでMakefileを使ってビルドします。 バージョン管理は課で管理しているSubversionを使い、他のプロジェクトともリポジトリを共用しています。他に使っているツールはテスト自動化にHudsonとタスク管理と障害管理でRedmineがあります。Hudsonは2種類のテストを
TortoiseSVNだけじゃなくてTortoiseCVS/TortoiseHg/TortoiseGitでも同じだと思います。オーバーレイアイコンが表示されない原因はアイコンキャッシュが壊れていたりといろいろ原因があるのですが、ついこの前気づきにくい理由で表示されないことがあったので参考までに紹介しておきます。 会社の作業環境ではTortoiseSVNとTortoiseGitをインストールしていたのですが、いつからか両方のオーバーレイが表示されなくなってしまいました。てっきり両者が競合でもしてるか、TortoiseGitが悪さでもしているのだろうと思っていたのですが、調べてみるとWindowsの仕様で表示されなくなっていました。 Windowsではオーバーレイさせるアイコンをレジストリで記憶していますが、最大で15個という制限があるそうです。それ以上もレジストリに登録できるのですが、最初に
TDD Boot Campに行ってきました。 ◯t-wadaさんのTDD話 いつものように資料があとでアップされるのではないかと思います。 個人的にとってたメモを以下に載せておきます。 会場ではt-wadaさんのテスト駆動開発本が見れるようになっていました。かなり読み込まれた形跡があって、TDD愛が伝わります。訳がいまいちというAmazonレビューで躊躇していましたが購入して読んでみようと思います。 ◯Test Drivenの作者 Lasseさんの講演 レシーバーが足りなそうだったので英語を聞きとるのに必死になってしまい、話の所々がフォローできず。 twitterの#tddbcタグを見る方が参考になるかも。 内容はレガシーコード改善ガイドの紹介と、Coberturaのライブハッキング。Eclipseのコードさばきが見事すぎて見とれてしまいます。 ◯TDD実践編 ペアを組んでサ
先週の中頃から悩んでいたWordPressが応答不能になってしまう問題ですが、ようやく根本的な原因がつかめたので後々のためにメモ。 分かってしまえば目新しい物ではなく、以前からブログで不調を訴えている人も、解決策を提示してくれている人もいた。検索の仕方が悪かったようだ。 で、問題はMySQLテーブルはInsert/Deleteを繰り返していくと領域に無駄ができ、パフォーマンスが落ちる問題がある。これがMySQLのオーバーヘッド。WordPressでMySQLを使っていると何かの原因でオーバーヘッドが大きくなり、MySQLにログインできるものの、オーバーヘッドが大きなテーブルからデータを参照できなくなる。こうなるとインデックスページを表示する処理も、個別ページを表示する処理も、管理画面を表示する処理もMySQLのクエリで処理が詰まってしまう。詰まってしまうといくつものリクエストが待たされて
1TBのTimeCapsuleはMacのバックアップだけでなく、NASとしても利用できますが、バックアップがディスク容量を有るだけ使い切ってしまうため、ある程度期間が経つとNASとして新規にデータを置くことが難しくなります。データを置く直前に手動でもバックアップディスクを縮小できればまだいいのですが、それも難しいようです。ビデオカメラで撮ったデータはサイズの割に参照回数が低く、NASに退避させてMacからは消したかったのですがそのような運用ができないことに気がついたのでバックアップ領域に容量制限をかける方法を探してみました。 公式にこういう設定があってもよさそうなものですが、AppleはNASとしての使い方を認めてないのか設定項目は無いようです。なのでこんな手口を使ってTimeCapsuleをだますことにします。 TimeCapsuleはDataフォルダに”マシン名.sparsebundl
ようやく実現できたのでやり方をメモ。 設定ファイルで拡張子に基づくフィルタリングをすればOK。 ProGitの情報によるとリポジトリから取ってくるときをsmudge、リポジトリに突っ込むときをcleanと呼ぶらしい。 以下はリポジトリ内のソースファイルがUTF-8 BOM有、改行コードがLFCRの場合の設定例。文字コード変換はnkfを使っています。 WindowsのVisualStudioに合わせると上記設定が望ましいが、Linux環境でgccを使うにはBOM無しにして、改行コードをLFにする必要がある。 まず.gitconfigファイルに以下を追加する [filter "fixencoding"] clean = “/usr/local/bin/nkf -w8 -Lw” smudge = “/usr/local/bin/nkf -w -Lu” これでsmudgeでUTF-8 B
タイトルの通り。 大学時代から使っていたChangeLogメモとchalowですが、Evernoteを使い始めたところ画像の扱いとかiPhoneとの連携とか便利すぎて気がついたらChangeLogメモがほったらかしになっていました。2箇所にメモが散らばっているのも具合が悪いので思い切ってEvernoteにデータを移行しました。ChangeLogメモ自体は残しておいても邪魔にならないし、Evernoteに何かあってもエクスポートはできるみたいなので多分大丈夫でしょう。 作業手順ですが chalowでChangeLogファイルを変換 不要なHTMLファイルを削除(日別のページとインデックスページだったかな?) EvernoteでChangeLogインポート用のノートブックを作成 HTMLファイルをインポート とやりました。 いくつか手こずったとこもありました。 chalowの設定が面倒だったの
カテゴリー 技術 (366) Webサイト (75) WordPress (17) ソフトウェア (232) Subversion (7) Thunderbird (11) Vim (7) プログラミング (16) 日々の出来事 (1857) お仕事 (61) お出かけ (71) 料理 (10) 映画 (366) 生活改善 (12) 買い物 (304) 本 (178) 漫画 (18) 食べ物 (143) ラーメン (38) 未分類 (73) 考え (12) twitter F1イタリアグランプリを見るためにひさしぶりに23時以降まで起きている。ずっと更新してなかったブログでも更新しようか 13時間前 gitメンテナによる入門gitは9/19発売! 最近仕事でgit使い始めたし買ってもいいかも 2009年9月9日 鳩迷惑は今年の流行語対象の候補に躍り出そうだ 2009年9月8日 Snow L
RiptとPilePaperFileとEvernote 2008 年 3 月 19 日 Posted by tune in : ソフトウェア , trackback ここ1ヶ月ぐらいで立て続けに見つけた、”個人用データベースの構築”という互いに目指すゴールが同じに思えるソフトウェア3本。 Ript™は写真とかテキストとかWebで気になったものをスクラップブックのようにためていけるソフト。MSのOneNoteのUIをアナログにしたソフトにも見える。 スクラップという観点から見ると紙Copiも近そうなんだけどスクラップしたデータから何か発想を得るにはこっちのほうがよさそう、アナログのUIがインスピレーションを刺激するのかな。 PilePaperFileは未踏の支援を受けて開発されている紙のようにファイルを扱うことができるようにするソフト。これまでのUIと違ってウィンドウがないのが新鮮。有償で
SourceMonitor 2008 年 1 月 12 日 Posted by tune in : 日々の出来事 , trackback Derive Your Dreamsさんの過去ログを見ていて知ったソースコードの複雑度を測ることができるソフトだそうです。 SourceMonitorに関する説明は以下のサイトが詳しかったです。 ソースコードのメトリクス(品質測定)を行うツール - ふにゃるん 最強のメトリクス測定ツール - 僻地のプログラマkmt-t - わりとどうでもいい日記 SourceMonitorの特徴をまとめると・・・ Windowsで動作するフリーソフトウェア サポートする言語はC++, C, C#, VB.NET, Java, Delphi, Visual Basic,HTML GUIで操作可能 ソースコード行数、コメント行数とともにソフトウェアの複雑度を測定してくれる
11 月 16 2008 WindowsでのHudson設定に難儀 11 月 06 2008 HudsonのWindows/Linux混在テスト環境できたよー♪ 10 月 22 2008 Hudsonについて試行錯誤 WindowsでのHudson設定に難儀 2008 年 11 月 16 日 (Visited times) Posted by admin in : ソフトウェア , add a comment WindowsとLinuxの混在環境が構成できたと先週ブログに書いたばかりですが、WindowsではSlaveがいつの間にかオフラインに切り替わってしまう現象が頻発して実運用には使えない状態であることが分かりました。ログとかを眺めていますが、Hudsonに関する情報はまだまだネット上に少なくてバグなのか、自分の設定ミスなのかも切り分けられません。ちなみにエラーメッセージ
Windows Vistaでzshが動かなかった 2007 年 6 月 26 日 Posted by admin in : ソフトウェア , trackback コマンドプロンプトの代わりにcygwinが使えるようVistaにインストールしてみたのですがzshを起動するとエラーを吐いて止まってしまう困った現象が発生しました。 ネットで検索してもずばりな状況は見あたらなかったのですが、どうも torutkの日記 - Cygwin Xで日本語表示OKで紹介されている Windows VistaでDLLのアドレスのコンフリクトがおきるらしい が原因のようです。解決方法はリンク先にもありますが 1. cygwinのrebaseパッケージをインストール 2. コマンドプロンプトからash.exeが置かれたディレクトリへ移動し、ash.exeを実行 3. rebaseall.exeが置かれたディレ
GNU GLOBALの検索結果をviから操作する 2006 年 1 月 7 日 Posted by admin in : Vim , trackback 以前ソースコードを読みやすくする GNU GLOBALの紹介をしましたが, ひげぽん OSとか作っちゃうかMona- - Emacs + GLOBALでソース読みを快適にを見てエディタから呼び出せることを知りました.Emacsからの使い方を紹介しているのですが自分はvi派なのでviからの使い方を調べてみました.以下調べた結果のまとめです.自分が使いそうなところだけ抜粋してあるのでちゃんとした使い方を知りたい方はGNU GLOBALのマニュアルを当たるようにしてください. >> vimの6.2以降で利用できる. GNU GLOBALの入手先 > http://www.gnu.org/software/global/download.ht
次のページ
このページを最初にブックマークしてみませんか?
『Megawin777 | Layani Daftar Id Gaming Online Yang Terpercaya』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く