secretbase.log

.NET/C#/Pythonなど

2013-01-01から1年間の記事一覧

2013年ふりかえり

2013年大晦日ということで簡単にふりかえっておきます。 ふりかえり 今年の前半は、OSC2013にmercuriap-users.jpで出展をしたり、OSPN Pressに寄稿 したりと少し活動をしていましたが、プライベートが忙しくなり3月くらいから時間があまり割けなくなってしま…

Windows 7 / Python 2.7.6 にて ez_setup.py にて UnicodeDecodeError が出て困ったけど解決した件

追記 (2014/6/3) Python ML にて報告がされていました。 http://www.python.jp/pipermail/python-ml-jp/2013-December/011156.html Python 2.7.7 にて下記不具合として修正されていますので、2.7.7を使いましょう。 http://bugs.python.org/issue9291 http:/…

Windows上でソースコードから開発版TortoiseHg をビルドしてみる

Mercurial & TortoiseHg Advent Calendar 2013 - connpass の 8日目のエントリです*1TortoiseHg を 使っているとちょっと改良してみたいなぁと感じることもありますが、Windows上のビルド環境構築はけっこう面倒だったりしますね。Windows 上で環境をスクラ…

PyCharm 3.0.2 にアップデート

PyCharm 3.0.2 がリリースされました。 [blog] Announcing PyCharm 3.0.2 URL2013-12-02 22:09:31 via twitterfeed Terminal fixes for Windows Remote interpreters fixes Test runner for Django 1.6 fixes Formatter, VCS fixes and other Windowsのター…

TortoiseHg のワークベンチから快適なターミナルを起動する(Windows)

Mercurial Advent Calendar 2013 2日目は、TortoiseHgのワークベンチから好きなターミナルの起動をできるようにしてみたいと思います。Windows上でコマンド入力するterminalはいくつか選択肢があります。 基本は OS標準添付の cmd(コマンドプロンプト)である…

Ubuntu 12.04 LTS にて Python 3.3 の環境構築

Ubuntu 12.04 (precise) の Python 3系は、Python 3.2.3 ですが、最新の Python 3.3.1をインストールし virtualenv を用いた環境の構築手順です。 PPA を導入 PPAにてPython3.3パッケージを公開している方がいます。自己責任で入れましょう。 sudo apt-get i…

PyCharm と Mercurial の連携

PyCharm とMercurialの連携をしてみた。diff画面がなかなかカッコイイので紹介します。 準備 (hg init相当) PyCharm上でリポジトリをつくることもできます。プロジェクトを普通に作成し、その後 ファイル追加 (hg add 相当) 普通にファイル追加すると、リポ…

Python の辞書に含まれる最大値のKeyを求めるクールな実装

下記のような辞書型があり、辞書の値の最大値を持つキーを取得したい。 例えば、下記のような辞書だ。 d = {'a': 1, 'b': 2, 'c': 3} 上記例では、 3 が最大値。よって、 c を得たい。 ここで if文のような条件分岐をつかった実装は クールではないのは容易…

WPF MVVM ふりかえり 発表資料

今年度から C#/WPF/MVVM/Prism な開発環境で過ごすことが多くなって来ました。私は実際の開発よりもCIやインストーラなどの役回りなのですが勉強しないといけないと思い、今日の mokusharp(木曜日 社内C#勉強会)で発表した資料になります。 発表資料(前編)…

ackより速いagを試してみる

ackより速いらしいagを試してみました。ackはgrepをよりプログラマ向けに便利にしたもので、agはperlで記述されたackよりCで書いている分高速であることがウリとのことです。 ack http://beyondgrep.com/ ag http://geoff.greer.fm/2011/12/27/the-silver-se…

SSH キーをクリップボードにコピーするワンライナー

あらかじめ、 ssh-keygen でキーを作成しましょう。公開鍵をコピーしたくなったときに、下記コマンドを実行します。 $ xclip -sel clip < ~/.ssh/id_rsa.pub Ctrl + V で貼り付けることができます。 インストール debian の場合、 xclip は、下記コマンドで…

debian 7 の Sphinx にて Could not import extension となる問題の原因と対策

debian 6 から 7.0 に upgrade したところ、sphinx の make html でエラーが出るようになってしまった。 Extension error Extension error: Could not import extension sphinxcontrib.plantuml (exception: No module named plantuml) make: *** [html] エ…

ifconfig コマンドの導入

debian GNU/Linux 7.0 への ifconfig インストール方法のメモ。 インストール方法 $ sudo aptitude install net-tools 実行方法 /sbin なので通常のユーザではPATHが通っていないことに注意。 $ /sbin/ifconfig インストールパスの確認方法 $ dpkg -L net-to…

local time から始めるプログラミング言語入門

プログラミング入門としては、Hello World を標準出力に出力することがよくあります。初めて触る言語で行うサンプルとして、Hello World より少しだけ進んで local time の現在時刻を表示するサンプルコードをいくつかつくってみました。 [2013/01/24 12:34:…

virtualenv 環境で sphinx を試してエラーが出て先生に尋ねたら解決した

Python のパッケージをインストールする場合、virtualenv を使うのが常識のよう なので、sphinxやその拡張もシステムに直接インストールせずに、virtualenv環境でやってみようと考えていました。 sphinxのビルド環境を virtualenv で用意する(ドキュメント…

分散バージョン管理の機能比較まとめ

DVCSで有名なものですと、 Git , Mercurial, Bazaar があります。 最近では、Veracity という分散バージョン管理も出てきました。どのように違ってどういう基準で選ぶと良いか悩みますね。これらの違いはなんでしょうか? そこで、比較資料をまとめてみまし…

入門TortoiseHg+Mercurial 書評

Mercurialコミッタのフジワラさん(id:flying-foozy)から、"入門TortoiseHg+Mercurial"を頂きましたのでこのエントリで紹介させていただきます。 入門TortoiseHg + Mercurial作者: 藤原克則出版社/メーカー: 秀和システム発売日: 2013/02メディア: 単行本購入…

.NET Framework のバージョンを確認する

調べたらバッチファイルで確認する方法 があるので、Windows8 で試してみました。 実行結果 Windows 8 は、.NET Framework 4.5 が同梱されていますが、その下位バージョンもインストールされていることがわかりました。 参考 http://www.atmarkit.co.jp/ait/…

svnversion で subversion の リビジョンが取得できる

svnversion を使えば、シンプルに revision だけ取得できます。Windows 7 32-bit / TortoiseSVN 1.7.10 / msysgit の環境で実行しています。 $ svnversion 212 $ which svnversion /c/Program Files/TortoiseSVN/bin/svnversion svnversion -h で helpがみら…

Windows で which コマンドを使えるようにする

Linux や Unix でおなじみの which コマンドが Windows にはない。よく準備するのでメモ。 準備手順 この内容を which.bat として、 パスの通っているところ(例えば C:\Windows\System32 )におけばOK。gist においていますので、 view raw をクリックすると…

Cygwin のバージョンを知る方法

Cygwinのターミナルを開いて下記コマンドで確認できます。uname は、 Linux や UNIX でも使えるコマンドです。 $ uname -r 1.7.16(0.262/5/3) また、 cygcheck コマンドがあります。 $ cygcheck -c cygwin Cygwin Package Information Package Version Statu…

OSPN Press 「オープンソース」を使ってみよう Mercurial 編 に寄稿しました

「オープンソース」を使ってみよう (第28回 Mercurial 編) に寄稿しました。 Windows ユーザ バージョン管理を知っているが使ったことがない 方を対象として、記事を書きました。 Windows上でバージョン管理を初めてみてはいかがでしょうか? また、オープン…

PIL を正しくインストールする

JenkinsマシンでビルドしたSphinx の image ディレクティブ の scale オプションが効いてなかったので、なんでだろう?とつぶやいたら、 清水川先生から Pillow(PIL)が入ってないんじゃね? ということで、PILを入れてみます。正しく PIL をインストールする…

MLでよく出てくる省略形の英単語の意味

英語が読めないながらも、興味ある開発系のメーリングリストに目を通して気になる話題をウォッチしていると楽しいです。そこでちょくちょく、よくわからない略語(頭文字)が出てきます。実際に、The Mercurial-devel Archivesに出てきた単語をメモしていて、…

Windows 7 で wget および unzip を導入 (Jenkinsのビルド成果物を取得する)

例えば Jenkins さんでビルドした成果物(archive.zip)は、Webサーバ上で公開されています。 Windows上で取得、展開したい場合、どうすればいいのでしょうか。 そこで、Windows上で使える GNU 系のツール(ここでは wget と unzip) を導入してみました。 wget …

2012年に参加した勉強会一覧

1月 日本鼻メガネの会 新年会 : ATND 第2回shinagawa.redmine勉強会 : ATND スタッフ 2月 第3回RxTstudy : ATND 2月17日 Shibuya.trac meets 品川Redmine ちきちき楽しい交流会♪(東京都) TokyoMercurial#2 3月 3月26日 DevLOVE ターミナル勉強会「オレの*_hi…

Python の型の安全性

Python には変数の型宣言が必要なく、動的な型付けをします。では異なる型同士を演算するとどうなるのでしょう? 動的な型付け 下記の例では、変数 x, y はそれぞれ事前に型を定義することなく、代入することができます。 $ python Python 2.7.3 (default, A…

全てのエンジニアがPythonを勉強するべき2013年到来

2013年は、巳年です。ヘビといえばPython(ニシキヘビ)ですね。 Python をはじめよう Python を初めてない人は初めてみるのもよいと思いますので、まずは下記の記事を読んでやる気を出しましょう。 全てのwebエンジニアがPythonを勉強するべき2013年到来 Ho…