LT初心者へのたった2つのアドバイス

先日、人生2回目のLTをしました。その反省を込めてメモ。 01. 小本健司・自動テストが無い製品を・・・ from Kenji Omoto 初歩的な説明もするべし あなたが当然と思っていることや、わざわざ言及するのはカッコ悪いと思っていることであっても、聴衆は知ら…

Linux Mint Xfceのデフォルトのキーボードショートカットを削除する

Linux Mint 16 Xfceでは、Superキー(Windowsキー)を叩くとメニューが開き、Super + Tでターミナルが開く、といった設定があらかじめされている。 こういったアプリ起動のキーは「設定マネージャー→キーボード→アプリケーションショートカットキー」から追…

らんらんら言えるかな?Pythonのなまえ〜

組み込み方面向け?の Micro Python という実装があるらしい。 http://t.co/6cCc1QvIf6 一体Pythonにはいくつ処理系があるのか? #python— 東京の小本 (@doloopwhile) April 13, 2014 というわけで、知ってるだけリストアップしてみました。 Qiitaで続きを読…

aptとpyenvを併用するためのプラグインを作った

pyenv はご存知の通り、プロジェクトごとにPythonを自動で切り替えるツールです。 しかし、Pythonの各バージョンのインストールに時間がかかる欠点がありました。 pyenv install はソースコードからPythonをビルドするからです。 aptなら十数秒で済むのに。 …

わずか7+1ステップでできる、WEBサイトのS3移行

消費増税で否応なく財政が逼迫する今日このごろ、 さあ今こそ、レンタルサーバーに置いたサイトをS3移行して、経費増大を取り返そうではありませんか! 参考:Amazon S3による静的Webサイトホスティング 1. コンテンツの用意 WEBサイトのHTMLや画像を用意し…

早速Python 3.4.0をインストールする

pip同梱! enum! pathlib! functools.singledispatch! ソースからインストール 伝統の ./configure make install するだけです。 # 依存ライブラリをインストール sudo yum install zlib zlib-devel sqlite-devel ncurses-devel gdbm-devel readline-devel b…

JAWS DAYS 2014に参加してきた

一観客としてですが(JAWS DAYS 2014)http://jawsdays2014.jaws-ug.jp/に行ってきました。 聞いたセッション Amazon Kinesisで広がるクラウドによるリアルタイムデータプロセッシングとその未来 大谷 晋平 & 榎並 利晃 アマゾンデータサービスジャパン株式会…

Rubyから外部プログラムを起動する方法まとめ

簡単なまとめ Open3.capture3 Open3.capture2 Open3.capture2e 普通に起動するとき Open3.popen3 Open3.popen2 Open3.popen2e 外部プログラムにパイプでつなぎたいとき バッククオート 書き捨てスクリプト用(出力がほしい場合) system 書き捨てスクリプト…

json版sedことjqのPythonバインディングをcythonで作った

jqはjsonデータを加工するコマンド、「json界のsed」と呼ばれています。 jq is a lightweight and flexible command-line JSON processor. jqコマンドでjsonデータを整形・絞り込み - Qiita [キータ] JSONを超絶に読みやすくする jq コマンド - WebAPIバリバ…

2013年を振り返って

(この記事は、ごくごく私的なものです。読んでもたぶん面白くありません。) 2013年のお仕事 社会人2年目に突入しました コミット数は減少 製品のコミットログを見ると 2013/01/01 - 2013/12/31 の期間に371回コミットしていました。 Bugzillaのバグは57件…

pathlibはファイル操作の新標準!

Python Advent Calendar 2013の13日目です。 Python 3.4ではasyncio functools.singledispatchなど画期的なライブラリがいくつも追加されています。それはアドベンドカレンダーで皆さんが紹介されている通りです。 そして!その中で最も重要で画期的と言える…

Python3.4のSingle-dispatchでpprintをパワーアップさせてみた!!

前置き Python3.4のSingle-dispatchで遊んでみた - Python Advent Calendar 2013 — hirokiky's blog 読んだ瞬間、脳細胞に衝撃が! 「これはpprintのための新機能だ!」 「あの長いPrettyPrinter._formatがsingledispatchでプリチーに書ける!」 「自作クラ…

合計が均等になるようにグループ分けする

問題 製品のテストをJenkinsで並列に走らせていると想像して下さい。 実行するテストケースをノードに上手く割り振っていなかったので、 あるノードではテストが5分で終わるのに、別のノードでは40分もかかってしまっていました。 各テストケースの所要時間…

パスをシェルにコピペできる形で表示

問題 パスを表示するときは、ユーザーがシェルにコピペできる形で表示すると便利です。 基本的には、ダブルクォーテーション(「"」)で囲めばOKですが、 OSによって扱いが異なります。 解決 Windows(コマンドプロンプト)の場合 Windowsでは単にダブルクォ…

daemonコマンド

問題 LinuxでDropboxを使おうとしたらハタと困ってしまいました。 新規作成した.dropbox-distフォルダから Dropbox デーモンを実行してください。 ~/.dropbox-dist/dropboxd シェルからプログラム(dropboxd)をデーモンとして起動するにはどうしればいいんだ…

QtQuickとPyQt5で、最初のアプリを作る

とりあえず、Python & QtQuick についての箇条書き QtQuickってなに? Qt QuickはQML(JSを拡張したDSL)でコンポーネントを作れる Qt Createrも使える でも言語がシンプルなので、直接編集するのも簡単 C++をコンパイルせずUIを開発できる PyQt/PySideも(…

venvでpipを一緒にインストールする

ご存知のようにPython3.3でvenvモジュールが追加されました。 これは、virtualenv(サードバーティ)に似たもので、 使うpythonのバージョンを切り替えたり、(2.7 <-> 3.3 <-> PyPy 2.1など) プロジェクトごとに、使うライブラリを切り替える ことができます。…

AWKによるワンライナー7つ

AWKは、PythonやRubyに比べれば古くさいイメージがあります。 しかし、ワンライナーとしてはAWKは強力(という話)です。 そこで、一度覚えておけば、きっと役立つ機会は多かろうということで、 AWKワンライナーのよくありそうなパターンを7つ調べてみました…

Yet another git hook management tool 'git-hooker'を作ってみました

Gitのフックスクリプトの管理ツールには、Sho Kusanoさんが作ったgit hookコマンドがあって、私も使わせていただいていたんですが、自分の求めるものと微妙に違う気がしたので、自分が欲しいものを作ってみました。git hookから引き継ぎたい長所は: install…

コーディングミスの見逃しを防ぐスクリプト

git diffをブラウザに表示することで、コーディングミスの見逃しを防ぐ(ことを期待している)スクリプトを作りました。 プログラマーとして働き出してそろそろ1年になるのですが、そこで感じている自分の欠点は、コーディングの凡ミスが多いことです。 コ…

逆FizzBuzz問題

近未来、2016年(・・・って、中途半端に近い未来ですね)では、 Googleの入社試験では、逆FizzBuzz問題を解くことになるそうな。 逆FizzBuzz問題 (Inverse FizzBuzz) - 猫とC#について書くmatarilloの雑記 F#で逆FizzBuzz問題 - Bug Catharsis わぁいInvers…

setup.pyについてのいくつかのメモ

モジュールにソースコード以外のファイルを添付する 添付の種類は4種類あります. (1 - 3) setupの引数として指定する(scripts, package_data, data_files). setup.py内のsetup関数の引数としてファイルを指定します. scripts, package_data, data_filesの違…

Python 2.6との後方互換性を保つための4種のTips または, 2.7の新機能紹介

Pythonは2.7が2010年7月にリリースされ, 現在では2.8をリリースするかが問題になっているようですが, 今でも旧バージョンである2.6への需要は存在するようです.ここでは, 2.6互換にするために注意する点を紹介します. 1. 標準ライブラリ 当たり前ですが, 2.7…

グローバル変数は必要です

Life is beautiful: Python Hack : 噛めば噛むほどおいしくなるクロージャの話クロージャと無名関数を使うと、こんな風に実装することができる。 import yaml def _get_from_disk(): data = open('config.yaml').read().decode('utf8') config = yaml.load(d…

全ての大学は職業教育の場です!

(学生時代に書いた記事を発掘したので、一部修正して投稿します) 気になる記事が紹介されてたので、> 修士論文の代わりに退学願を提出してきた http://blog.riywo.com/2009/02/27/120733私自身も、就職活動に七転八倒した口で、昨日修士論文を提出し終わっ…

声に出して読みたい7つのPython用語

冷凍マグロ系スクリプト言語として知られるPythonの、もっともすばらしい用語7点をご紹介します。これらのネーミングセンスを学ぶことにより、PHPerやRubyistでは不可能な変態力を身につける事が出来るでしょう(Perl Mongerには負けるかも知れない)。 PyP…

「結構便利だからみんな使った方がいいぞ!」という7つのPythonライブラリ

一部で最強と呼ばれているPythonには, virtualenvやipythonのような絶対入れる超定番以外にも, あると便利なライブラリというものがあります.ここではラッキーセブン, 7つご紹介しましょう. なお, furl以外は3.xに対応しています. requests 覚えやすいWebリ…

ドライブを一覧表示するコマンド

コマンドプロンプト上でLaTeXでPDFを作成し、それをUSBメモリにコピーする事が頻繁にあるのですが、USBメモリのパスはどれだったっけマイコンピュータを開くのが面倒くさい!というわけで、pywin32で作ってみました。当然、Windowsでしか動きません #!python…

良い言語・ツールの条件

ふと思う。VimやPythonについて、自分はこういう過程をたどっているな、と。 ナイスな言語orツールに出会う ナイスなので、なんでもかんでもその言語orツールでこなすようになる どんどんライブラリやプラグイン導入しまくる 既存のライブラリでは満足できず…

ソニーからの挑戦状をPythonで解いてみた

Sony Japan | 採用情報|新卒採用|GO FOR IT~情熱と技術が世界を変える~の真似をして、Pythonで書こうと思います。以下で作るCubeクラスの仕様はPyQt4/PySideのQtCore.QRectと同様にしたかったのですが、QtCore.QRectは >>> QtCore.QPoint(0, 0) in QtCor…