アーカイブ

投稿者のアーカイブ

Emacsでキーの割り当てを調べる

2011 年 5 月 2 日 コメント 2 件

M-x describe-bindings でいける。よく思い出せずに苦労するのでメモ。

カテゴリー: Emacs タグ:

Linuxで容量の大きいディレクトリを調べる

2011 年 4 月 10 日 コメントはありません
# du -m /home | sort -nr | head -5

で容量の大きいディレクトリTOP5調べられる。

カテゴリー: Linux, SysAdmin タグ: ,

MacのEclipseで「フォントが小さい」とお嘆きの方へ

2011 年 3 月 21 日 コメントはありません

解像度の高いMacのEclipseは下のようになぜかPackage Explorerのフォントが小さい。Source EditorなどはEclipse上でフォントサイズを設定することができるけど、なぜかPackage Explorerはできない。

mac_eclipse_font_after

んで、色々調べてたどりついたのがMake Eclipse use larger fonts – Mac OS X Hintsという質問。TinkerToolというソフトを入れて フォント→ヘルプタグのフォントサイズを大きくすればいいらしい。

こんな感じで大きくなった!これは11pt -> 15ptに変更した場合のもの。

mac_eclipse_font_after

このTinkerToolというソフト、他にも色んな設定ができて便利そうな雰囲気。とりあえずMacのEclipseで「フォントサイズが小さい」とお嘆きの人はぜひ試してみてほしい。

Effective Java 第2版 (The Java Series)

著者/訳者:Joshua Bloch

出版社:ピアソンエデュケーション( 2008-11-27 )

単行本(ソフトカバー) ( 327 ページ )


カテゴリー: Eclipse, Mac タグ: ,

MySQLでデータベースの全テーブルを強制的にInnoDBに変換するPythonスクリプト

2011 年 2 月 21 日 コメントはありません

仕事でMyISAMなテーブルをInnoDBにしたかったのでこんなん書いた。

$ ~/to_innodb.py -h localhost -u root mydatabase
#!/usr/bin/env python
# -*- coding: utf-8 -*-
 
# INSTALL ====================
# $ sudo easy_install argparse
# $ sudo easy_install mysql-python
 
import argparse
import MySQLdb
import os
 
def main():
    # setup command line options
    parser = argparse.ArgumentParser(
        prog = os.path.basename(__file__),
        description = 'Convert all tables to InnoDB',
        conflict_handler = 'resolve'
    )
    parser.add_argument(
        'database', metavar='DATABASE', nargs=1,
        help='database name.',
    )
    parser.add_argument(
        '-h', '--host', metavar='HOST', default='localhost',
        help='host name',
    )
    parser.add_argument(
        '-u', '--user', metavar='USER', default='root',
        help='user'
    )
    parser.add_argument(
        '-p', '--password', metavar='PASSWORD', default='',
        help='password'
    )
    parser.add_argument(
        '-P', '--port', metavar='PORT', type=int, default=3306,
        help='port'
    )
 
    options = parser.parse_args()
 
    db = MySQLdb.connect(
        host = options.host,
        port = options.port,
        user = options.user,
        passwd = options.password,
        db = options.database[0])
 
    cursor = db.cursor()
    # get all table names
    cursor.execute("SHOW TABLES")
    for row in cursor.fetchall():
        table = row[0]
        print("--- %s ---" % (table))
        cursor.execute("ALTER TABLE %s ENGINE=InnoDB" % (table))
 
    cursor.close()
    db.close()
 
if __name__ == '__main__':
    main()

初めてのPython 第3版

著者/訳者:Mark Lutz

出版社:オライリージャパン( 2009-02-26 )

大型本 ( 808 ページ )


カテゴリー: Python タグ:

wgetでURLにアクセスできるか簡易的にチェックする

2011 年 2 月 17 日 コメントはありません

Webサーバがちゃんと立ち上がったかどうか、URLにアクセスしてチェックしたいので。

wget -o /dev/null -O - http://twitter.com/ > /dev/null
if [ $? -eq 0 ] ; then
    echo "OK"
else
    echo "Failure!!"
fi

な感じかなぁ。

仕事に使えるLinuxシェルスクリプト~bashで作る実用サンプル41

著者/訳者:千葉 真人

出版社:日経BP社( 2004-11-25 )

単行本 ( 381 ページ )


カテゴリー: Linux, SysAdmin タグ: ,

2010年のまとめ

2010 年 12 月 31 日 コメントはありません

仕事

思い返してみると、昨年の12月に諸事情があって転職活動をせざるを得なくなって、今年の2月までは転職活動してたんですね。最終的には緑色の会社に行くことに決めたのですが、自分が思っていたより遥かに自由にやらせてくれる会社だったので、すごくあたりくじを引いた気分です。上場してるはずなのにこんな自由でいいんだろうか、と思ってしまうレベル。あと、一緒に仕事をしている人は何に対しても前向きな人が多いので、相変わらず回りの人にも恵まれています。

関わっているサービスは、事業的には非常に成功しているので自分の出る幕がないのですが、サーバの管理や裏側の仕組みはまだまだ改善の余地ありなので、来年1年間かけてしっかりと直していきたいところ。ただ、その部分に注力できるような、アプリのコードを書けてサーバ運用もある程度わかるエンジニアが圧倒的に少ない!ので、もしそういう人が転職活動を考えていればぜひぜひ話をしたいです:-)

プログラミング言語

プログラミング言語的には Perl から Java になりました。Javaは言語としてはしっかりしているのですが、やっぱりLLのお手軽さを経験してしまうとかなり堅苦しい印象が強いです。あとはJVMの運用が大変(GC回りだったり、シグナル使えなかったり)。そして運用系のツールはPythonで行くことを決めて、社内で草の根Python勉強会を始められたのが良かった。毎週誰かがプログラムを書いてきてそれを発表するというスタンスでやっているのですが、自分一人だったら絶対に途中でくじけていたことでしょう。PythonはPerlと比べると若干制約が多い言語だという印象ですが、標準ライブラリが充実しているのが好きです。Pythonのいいところはまた別エントリでまとめたいところ。

データベース

データベースは相変わらずMySQLで、前職の経験もだいぶ生きています。やっぱり運用回りの知識がある程度ないとインフラの人と話ができないので。社内ではMongoDBの事例も出て来ているので、来年はMongoDBを真面目に勉強したいところです。

勉強会とか

社外の勉強会では、qpstudyの最初の回でrsyncのちょっとイイ話というタイトルで発表したり、study2study のWebサーバ勉強会 #1でちらっと発表したり。自分にはまだまだ創意工夫が足りないので、すごく他の人の役に立つような話はできないのですが、来年はtomahawkの布教活動を進めていきたいなぁ。

来年に向けて

全然まとまってないのですが、来年はPythonやPerlなどのLLを引き続き頑張っていくのと、AppEngineが良さそうなので自分で何かサービス作りたいです。エンジニアとしてのキャリアパスは相変わらずよくわかりません。というわけで皆さん1年間ありがとうございました。また来年!

カテゴリー: 日記 タグ:

AppEngine for PythonでImportError: No module named cgiとなる場合の対処方法

2010 年 12 月 29 日 コメントはありません

おそらくvirtualenv使ってると発生するのだと思うのですが、AppEngine for Pythonで下記のようなエラーがでました。

File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/webapp/__init__.py", line 61, in <module>
    import cgi
ImportError: No module named cgi

/usr/local/bin/dev_appserver.py の1行目のshebangを

#!/usr/bin/env/python
 ↓
#!/usr/bin/python

にしたら直りました。

プログラミング Google App Engine

著者/訳者:Dan Sanderson

出版社:オライリージャパン( 2011-01-24 )

大型本 ( 392 ページ )


カテゴリー: GoogleAppEngine, Python タグ: ,
Pages: << 1 2 3 4 5 6 7 8 ...23 24 25 >>