When it’s ready.

出来るまで出来ない

sakura VPS上のUbuntuのDropboxのバージョンアップ

いつのまにやらDropboxクライアントのバージョンが2を超えていた。 osxやwinはインストーラーで簡単にアップデートできるがサーバー版はちょいとめんどくさいので今後のためにメモ

ファイル構成など

  • dropboxdの本体
~/.dropbox-dist
  • 管理スクリプト
~/bin/dropbox.py

最新版のDLからインストール

  1. 一旦downloadフォルダに落としておいて展開する
  2. 既存のサービスを停止
  3. 既存フォルダをリネーム
  4. DLしたフォルダを標準Pathにmv
  5. max_user_watches数を変更
  6. 新しいdropboxdを起動
cd download
wget -O - "https://dl-web.dropbox.com/u/17/dropbox-lnx.x86_64-2.0.7.tar.gz" | tar xzf -
pyhon ~bin/dropbox.py stop
mv ~/.dropbox-dis ~/.dropbox-dist.org
mv ~/download/.dropbox-dist ~/.
echo 100000 | sudo tee /proc/sys/fs/inotify/max_user_watches
pyhon ~bin/dropbox.py start

上記コマンドは手打ち(ターミナルからコピペしてない)ので、間違っているかもしれません。 DLするバージョンは、適宜際し版に書き換えてください。上記サンプルは、Ver.2.07_64bit版です

動いているか確認

python ~/bin/dropbox.py status

これで今何をしているのかわかります。

sakuraVPSで12.04にアップデートしたらapt-getが不動作の件

12.04からDNSの取り扱いが変わって設定ファイルが/etc/resolv.confじゃなくなったらしい。 そのおかげで名前解決できなくなってapt-getが動かなくなってる。っていうか、全般動かなくなってる。外からアクセスするには問題ないが、能動的に動かないのでやや困り

sakuraVPSを使っている場合

/etc/resolvconf/resolv.conf.d/base ファイルに以下を追加

search sakura.ne.jp
nameserver 210.188.224.10
nameserver 210.188.224.11

反映させるコマンド

% sudo resolvconf -u

Py旅館 2013/03 参加

いつぶりになるんだろう、Py旅館というPySpaのショートバージョン(1泊版)に参加した。 金曜の昼から土曜の昼過ぎまで24時間強の1day もくもく会

やったこと

Jenkins設定

bitbucket監視して、特定ブランチ更新されたらpullしてきてテスト 公開サーバーにpushしてupする

AngularUIでsortable使いこなせるようになる

これは全然出来なかった・・・

FlaskとYeomanの共有開発環境構築

Flaskのstatic部分をyeoman管理下におければ色々幸せかと思ったけどそうでもなかった。

理由:

  • yeomanのdevサバはnodeで独自のhttpサバ立てやがるのでFlaskから行くと使えない
  • yeomanソースは、buildするまでappフォルダ内でbuildしたら別フォルダ。Flaskのdevサバと相性悪い

開発環境と本番環境でstaticファイルを変える方法は、app作るときに指定するのでそこを変えればいいはずな何だけど、defaultから変えると複数階層追ってくれないので諦めムード

from flask import Flask

app = Flask(__name__)
app.debug = True

if app.debug:
  app.static_url = '/app'
  app.static_path = 'app'
  app.static_url_path = '/app'
else:
  app.static_url = '/buld'
  app.static_path = 'build'
  app.static_url_path = '/build'

ということで、今後はサーバーサイドはGoでシンプルなRESTfullなサーバ書いて、クライアントサイドは、YeomanでAngularJS組み上げるほうが楽なんじゃないかと思う今日この頃・・・ GoでWebApp書いたこと無いけどww

22時からrcファイル 公開大会

お互いvimとzshの秘伝のタレを公開しあう会が突如開催。 それぞれ100行近い秘伝のタレを舐めまわす。

気になった書き方zsh:ファイルの有り無しで挙動を変えたい時if使ってたけど使わないやり方がスマート

[ -f ~/.hogerc] && source ~/.hogerc

他にも色々あってとっても有意義な時間だった。 またあったら参加したい。

AngularJS ハッカソ#1 参加しました。

あけましておめでとうございます。
今年から、Bloggerに引っ越そうと思っているa2cです。

本日、Googleさんで開催されたAngularJSハッカソン#1に参加しました。
久しぶりのガッツリハッカソン系のイベントで、チーム分けしたり、デモ出来るレベルまで実装したり
全チーム発表を行ったりして、充実したイベントでした。チュータ役で参加だったので、どのチームにも
所属していませんでしたが、発表直前に@can_i_do_webさんといっしょにペアプログラミングでAngularの
とっても便利な機能の1つng-classのデモを作成したので紹介します。

はてな記法を忘れてしまったので、Qiitaで書きました

Qiita上でhtml編集したので、動かないかもしれないです。おかしかったら教えて下さい。

デモページ

AngularJSについて

AngularJSを触ったことない人はちょっと触ってみるといいかと思います。
クライアントサイドのMVCに関しては興味があって都度エントリーしてきた。

結局2013年になり、現在様々なJSのライブラリーが登場してるよね。ほんとに、めっちゃ沢山出てるから正直どれを
使えばいいのかわけわかめ状態だったですよ。そんでもって、思考停止して、今のところjQuery使って問題ないからOKじゃね?
みたいなコンサバジジイがそこかしこにはびこるようになった。そんなんでいいのか?
4−5年前の自分にそんな自分を見られて恥ずかしくないのか?オレ
という感じになっていたので、周りに使ってる人がたまたまいたAngular教に年末頃に、入信してみた。

結果、ヤベーよヤベーよ。コレ使わずにjQueryで頑張るとかどんだけ苦行だよって感じになった。
例えて言うと、jQuery教の人が、「JSゴリゴリ書いてて、$()ってなんですか?」って言ってる人に感じる思い。

「$()でゴリゴリ書いてて、$scopeなんですか?」って言った自分にはよ改宗せいともっと早くに言ってやりたかった。
もうねIDとかDOM操作をJSから手動でやるとか、許されるのは、小学生か35歳以上の老害グラマーですよ(嘘

AngularJSの20%くらいしかかじってないですが、コード量も修正しやすさも読みやすさも断然簡単かつ便利に使えてます。
ただし、HTMLに直接イベント書いたりするので、jQ派だった身としては少なからず違和感ある部分もあります。
しかし、それに目をつぶってしまえるくらいの恩恵がたーくさんあります。

とりあえずは、最近いっぱい出てきてるJS フレームワークの一種でしょ、jQueryみたいなやつだよね
みたいな風にAngularJSの事を思っている人は15分でいいので、AngularJSのチュートリアルやってみませんか?

私は、dotInstallのAngularJSでtutorialやりました。
ファイル構成も今のままいけるし、jQueryと併用可能だし、学習コストもかなり低いので知っといて損はないはず。

そして、沢山スニペットやTipsなどをネットの海に垂れ流して下さい。みんなが楽できるように・・・フフ


## JSで多次元配列をシンプルに作る方法知りたい。

デモ作ってる時に、座標とフラグ{’tate':1, 'yoko':1,'flg':false} のデータを作る必要があったのだけど、普通にforで回した。

     var data_grid = []
     for (var dan=0; dan<20; dan++){
        var temp_arr = [];
        for (var retu=0; retu < 20; retu++){
            temp_arr[retu] = [retu, false]
        }
        data_grid.push(temp_arr)
     }

これって、めんどくさくない?

例えばPythonみたく

[[{'tate':x, 'yoko':y, 'flag':"false"} for x in range(20)] for y in range(20)]

みたいに書く方法ないのでしょうか?

俺とお前とPython温泉

PySpa Advent Calendar Day16
Python界の無職、こんにちはa2cです。タイトルに意味はありません。

はじめに

PySpaに参加するとどうなるのか?自分なり視点で綴りたい。

PySpaは、全日ではDay1~3(2泊3日)のイベントでIT系のユーザーレベルイベントではかなり長めなイベントとなっている。さらに、PC部屋(ネット、電源、テーブル、イスが完備)と寝室は、24時間いつでも自分のタイミングで利用することが出来る。(例外:食事と温泉は行かなければならない)

参加する殆どの人は、到着すると直ぐにUnPackingして席につきPCを開く。大抵の場合、そこから晩御飯を経由して眠くなるまでPCをいじり続ける、Day2も朝から晩(時には朝)までいじり続ける。もしコレが業務や、やらされていることだったらブラック以外の何物でもない状態と言える。自分も寝室に戻らずにPC部屋で朝まで過ごしたことが何回かある。ぶっちゃけ十分な休息が身体的にとれてない状態。それでも可能な限りPySpaには参加している。それはなぜか?

2晩で何が起きるのか?

1年365晩のたった2晩で何が起きるのか?もちろん参加している人それぞれ思うことがあるだろうし一概には言えないが、一枚の写真を見て欲しい。PySpaの解散する時に撮った写真では、みんな笑ってる。2日ロクに寝てなかったりするそんな後に撮った写真です。


"オリジナルの解像度ではより細かく表情が見られる"
みんな、緊張もなく、無表情もなく、みーんな笑顔。この写真がPySpaに参加すると何が起きるのかを表していると思う。

それぞれのバックボーンが全く違う野郎達が一つ屋根の下で、同じ釜の飯を食い、同じ風呂に入り、夜通しくだらない会話をする。なぜそんなに笑顔になるのか?なぜ年2回開催されていたPySpaにほぼ同じメンバーが再度参加するのか?

PySpaに参加すると***が身に付きます。みたいなシンプルなものではない。それは数年スパンで熟成された運営の妙と参加者の織り成す情報のカオスが絶妙なコントラストをもって参加者を包み込む。あの場所、あのタイミングでないと味わえない何かがそこにはある。

ネタは各自持参

PySpaにテーマはない。「**やりましょう」とか「**してください」とかそういうイベントではない。強いて言えばルールは2つ

  • お酒はなし
  • 食事は全員で食べる

(例外はない)

同じ意識の人が集まりましょうってのがオフ会だったり勉強会だったりとかだと思うのだがPySpaはそもそもの設定が可怪しい。メールを使えるとか、プログラミングしたことあるとか、PCを持っているとかその程度の共通項しかない。一般的な成人ならだれでも当てはまると思う。

ただし、ほとんどの参加者が何がしかの調査対象や課題設定をして参加してくる。あるフレームワークを身に着けたいとか、ある言語を触ってみたいとか、既存のサービスを改修するとか、別に何かテーマを用意して来るようにとかそういうルールはなにもないけどみんなそれぞれやりたいことを持ってくる。カードゲーム仲間を探すとかそういうのもあったりするような無いような気もする。

このネタは各自持参してくるという流れが、フレッシュなネタ集めに一役買ってると思う。自分が持っていったネタを消化しつつ、他の参加者が持ってきたネタももれなくおみやげで持って変えることが出来て非常に濃い時間を過ごすことが出来る。PySpaに参加することで期待してようがしてなかろうが、良さげなConfigを知ることが出来たり、新しいツールを持って変えることが出来る

HogeSpaに期待!

もうね、なんでもいいからSpaっちゃえばいいと思うんですよ。PySpaは参加するのが(定員的に)かなーり難しいので、参加できなかったら出来なかったで自分たちでやればいいと思うんですよ。3日間も取れない時には、Py旅館とかいう1泊2日のに参加したりしてるので別に長さはそんなに重要じゃないです。ただ、日帰りは終電等々時間が短めになるので1泊以上がおすすめですよ。もし開催する人がいたら呼んでクダサーイ。

ということで、PySpaに参加するとなぜかみんな笑顔になるよっていう紹介でした。
いよいよPySpカレンダーも、明日からラスト1weekです。楽しみにしております!

あしたは世界のtk0miyaさんです。

SublimeText2で、Vintageモードを使い。;(セミコロン)と:(コロン)のショートカットを入れ替える設定

.vimrc 436行程度のvim使いです。

JSの必要なライブラリのDLと展開をエディター内で行えるSublimetext2のデモを見てから乗り換えを検討中です。

・こんな感じに必要なファイルをサクッとDL&展開してくれる。
・自分用のBootstrap作っておいてそれを登録することも可能

他にもいろいろと、便利そうなのがあるのですが現在お試し中のプラグインたちは

	"installed_packages":
	[
		"ActionScript 3",
		"BracketHighlighter",
		"Gist",
		"HTML5",
		"Markdown Preview",
		"Nettuts+ Fetch",
		"Octopress",
		"Package Control",
		"SideBarEnhancements",
		"SublimeCodeIntel",
		"SublimeServer",
		"Terminal",
		"ZenCoding"
	]

SublimeTextにさくっと乗り換えられたのは、VintageというVimとややクリソツに動くことが出来るため
jkキーバインドが使えるのが大きかったです。結構ストレスなく乗り換え出来ました。

しかし、vimでは、;と:のショートカットを入れ替えているため若干イライラしたのでSublimeText2でも
同様のコンフィグをやってみました。VintageのパッケージがなくVintageユーザーConfigが無いため
全体のKeybindingに書き足しました。 Default.sulime-keymap

  { "keys": [";"], "command": "show_overlay", "args": {"overlay": "command_palette" , "text": ":"}, "context": [{"key": "setting.command_mode"}] },
  { "keys": ["S"], "command": "save", "context": [{"key": "setting.command_mode"}] },

この設定を追加しました。
セミコロンキーでコマンドモードでパレット出しつつコロンを入力状態にする。
コマンドモード時に大文字Sで、保存する。

SublimeText2では、設定ファイル編集後保存するときにスペルミスチェックしてくれるので
vimみたいに、設定ファイルミスってとんでもない状態になる的なことがありません。素敵
また、設定も保存すると直ぐ反映なので再起動要らないので便利です。

シングルライセンスで$59と若干高めですが買ってしまいました。

追記

vimではNERD TREEを利用していました。SublimeTextではサイドバー上にフォルダ構成が
表示されるのですが、操作がアローキーだったのでなんとかならんものかと思って呟いた所

https://twitter.com/yuitowest/status/268251603365146624
@yuitowest さんありがとうございます。

素敵なコンフィグいただきました。> https://gist.github.com/4064453

ますます、st2でモーマンタイな予感

au版 iPhone5で○症候群解消した話

体感的なものなので、ほんとは全然関係無いかも知れません。

iPhone5を入手して早3週間くらい。初めのうちは快適に使えてましたが最近やたら○モードになっていました。スピナーまで遅く回るので更にイライラを盛り上げてくれます。

そんな折Twitter
https://twitter.com/morikawa/status/260998934074380288 align='left' width='350'
こんな情報を教えていただきました。もちろん早速電波のはいるところで試しました。

サイトの説明では10分かかる事がありますって書いてあったけども、たっぷり40分くらいかかりました。試した場所の電波状況かな?PRLバージョン(設定>一般>キャリア(タップ))が3だったのが5になりました。

その後再起動して、それからはほとんど○モード見ていません。
○モードにお悩みの方は、簡単にできるのでぜひお試しを

PRLバージョンが5で丸の人には効かないかと思います。