Hatena::ブログ(Diary)

星のダンスを見においで

2014-12-24

Ingressの楽しさ

この記事は ADVENTARのIngressカテゴリ24日目のエントリー です。
(昨日は、ymotongpooさんの これまでのIngressとDarsanaの思い出 でした。)

千葉あたりで活動しているEnlightenedの@VorpalBunniesです。
「2本挿し教徒」でしたが改宗して「フルデプロイ教」に入信する必要があるかもしれない?と思う今日この頃です。

さて、Ingressをプレイしている皆さんは、どんな所に楽しさを感じていますか?

CFを作成し陣地を増やしていくのが面白い、色々なポータルのキーを集めるのが好き、ポータルを求めて歩き回るついでに神社仏閣を参拝するのが楽しい。
もう少し、システム寄りであれば、CFを作成してトップランク入りする事に喜びを感じる人、ミッションを沢山こなしたい人、1人モクモクとレベル上げに精を出す人もいらっしゃるでしょう。

今回は私が感じているIngressの楽しさについてお話したいと思います。

プレイする上での目標


このゲームに設定されている勝利条件は、世界を分割したセルという単位ごとの地域で決められた計測時間に、より多くのMuを稼ぐという事です。
しかし、私はLv8になって比較的早い段階で陣地を奪ったり奪われたりという不毛な争いに嫌気がさしてました。

結局、人員が多いResistanceの方が「圧倒的に有利」なのです。

程なくして、この事に気づいた私の目標は「味方を有利に導く」になりました。

すなわち、以下の3つです。

1. Enlightenedの仲間にcomm(チャット)で呼びかけたり、リアルキャプチャしてハングアウトに誘い連携する
2. レベルの低い人のレベルアップのお手伝いをする(レベリング)
3. Resistance勢力が強すぎてEnlightenedがいない地域(敵ファーム)を定期的に破壊し、Enlightenedの新人さんを見つけ出す

ただ、あまりにもストイックにやりすぎたせいで、一時期、辛さばかりを感じるようになりました。

Ingressが本当に楽しくなったきっかけ


1か月程前に、仲間たちと敵ファームをCFで封印してしまおうという作戦を実行しました。
最終的に話が広がって東京湾も使った比較的大きなCFを作る事ができました。

人数は伏せますが、それなりの人数で緻密な計画を立て、実行できた時の楽しさは今まで味わった事のない物でした。

そして、イベントのDarsana。これもまたチームを組んで仲間たちと一緒に戦い、勝利した時の喜びはまた格別でした。

私にとってのIngress


1人でやる事には所詮限界がありますし、1人でやり続けると辛さしか感じなくなりますが、
今の私は、仲間を作り、より大きな目標を立てて計画を遂行する事に大きな楽しさを感じるようになりました。

もし、ハングアウトに参加していても、いつもソロプレイで限界を感じているエージェントがいらっしゃったら仲間を募って何かやってみませんか?


明日の最終日は @inuro さんの多重CF作成講座です。

2014-12-23

Ingressの楽しさ

この記事は ADVENTARのIngressカテゴリ24日目のエントリー です。
(昨日は、ymotongpooさんの これまでのIngressとDarsanaの思い出 でした。)

千葉あたりで活動しているEnlightenedの@VorpalBunniesです。
「2本挿し教徒」でしたが改宗して「フルデプロイ教」に入信する必要があるかもしれない?と思う今日この頃です。

さて、Ingressをプレイしている皆さんは、どんな所に楽しさを感じていますか?

CFを作成し陣地を増やしていくのが面白い、色々なポータルのキーを集めるのが好き、ポータルを求めて歩き回るついでに神社仏閣を参拝するのが楽しい。
もう少し、システム寄りであれば、CFを作成してトップランク入りする事に喜びを感じる人、ミッションを沢山こなしたい人、1人モクモクとレベル上げに精を出す人もいらっしゃるでしょう。

今回は私が感じているIngressの楽しさについてお話したいと思います。

プレイする上での目標


このゲームに設定されている勝利条件は、世界を分割したセルという単位ごとの地域で決められた計測時間に、より多くのMuを稼ぐという事です。
しかし、私はLv8になって比較的早い段階で陣地を奪ったり奪われたりという不毛な争いに嫌気がさしてました。

結局、人員が多いResistanceの方が「圧倒的に有利」なのです。

程なくして、この事に気づいた私の目標は「味方を有利に導く」になりました。

すなわち、以下の3つです。

1. Enlightenedの仲間にcomm(チャット)で呼びかけたり、リアルキャプチャしてハングアウトに誘い連携する
2. レベルの低い人のレベルアップのお手伝いをする(レベリング)
3. Resistance勢力が強すぎてEnlightenedがいない地域(敵ファーム)を定期的に破壊し、Enlightenedの新人さんを見つけ出す

ただ、あまりにもストイックにやりすぎたせいで、一時期、辛さばかりを感じるようになりました。

Ingressが本当に楽しくなったきっかけ


1か月程前に、仲間たちと敵ファームをCFで封印してしまおうという作戦を実行しました。
最終的に話が広がって東京湾も使った比較的大きなCFを作る事ができました。

人数は伏せますが、それなりの人数で緻密な計画を立て、実行できた時の楽しさは今まで味わった事のない物でした。

そして、イベントのDarsana。これもまたチームを組んで仲間たちと一緒に戦い、勝利した時の喜びはまた格別でした。

私にとってのIngress


1人でやる事には所詮限界がありますし、1人でやり続けると辛さしか感じなくなりますが、
今の私は、仲間を作り、より大きな目標を立てて計画を遂行する事に大きな楽しさを感じるようになりました。

もし、ハングアウトに参加していても、いつもソロプレイで限界を感じているエージェントがいらっしゃったら仲間を募って何かやってみませんか?


明日の最終日は @inuro さんの多重CF作成講座です。

2013-12-09

Pythonを禁止されたインフラエンジニアのたった1つの冴えたやり方

はい、釣りタイトルです。Python Advent Calendar 2013 の9日目は@usaturnがお送りします。
UNIX/Linux環境が自由に使えずWindowsクライアントインフラ運用する場合、Cygwin環境でPython動かすのは結構便利だよ、というお話です。

さて、私はかつてアウトソーシング系の会社に勤めており、色々な現場へ行き色々な経験をさせて頂きましたが、ある時、厳しい現場にあたり非常に困った事がありました。

困った事・・・それは「ほとんどのフリーウェア/OSSを使わせてもらえない」という事(その時の顛末はこちらに https://yukar.in/note/ckFj5Y )。
そもそもインターネットアクセスすら許されないような現場もあるので、私の場合はまだ良かったのかもしれませんが、上記のような時に役に立つ(かもしれない)のがCygwinです。

つまりWindowsネイティブPythonを許可されなくても、Cygwinが許可されればPythonだってなんだって入ってるじゃない!

という主張なのですが、そんなシーンがそうそうあるのかは疑問です。

Cygwinの便利な点

まあまあ、そんな目で見ないで聞いてやってください。

インターフェースについて考える必要が無い

仮想環境のインターフェースだとブリッジでIPアドレスを使ってしまったりNATでハマったりする所ですが、CygwinWindows上で動くのでなんの問題もありません!

Windows上のツールと連携できる

UNIX/Linuxのコマンドが使えるという事は言うに及ばず、Windows上で手軽にシェルスクリプトを書いて動かせますし、ファイラでディレクトリ移動した所をカレントにしてターミナル(mintty等)を開いたり、逆にシェルからcygstartでExcel方眼紙を開く事だってできます!

ビルド環境を整えるのが楽

Pythonの拡張パッケージには、pycryptoやPILのようにインストール時、Cのソースをコンパイルするパッケージがあります。
Windowsの場合はVC++頒布可能パッケージを探してきてインストールする必要があり結構面倒ですが、Cygwinならgccを入れるのは簡単です。むしろ初めから入れてるでしょう!

Pythonを知らなくても使えるツール達


Pythonのパッケージ管理ツール(setuptools,pip)を使って簡単にインストールできる上にPythonコードを書かずに使える便利なツールがあります。

Sphinx

最早語るまでも無いドキュメンテーションツール。

Mercurial

Gitに押されがちですが、Gitよりも学習コストが低いバージョン管理ツール

Ansible

まだchefやpuppetの影に隠れてますが、こちらも学習コストが圧倒的に低い、サーバ等の構成管理ツール

pssh,tomahawk

機能的にはTeraTermProのブロードキャストコマンドに近い物があります。複数サーバへのssh同時実行ツール。

Pythonを書ければもっと便利に!


標準モジュール

Pythonの文法をちょっと覚えれば、充実した標準モジュールを使って作業の自動化ができてしまいます。
socketモジュールで名前解決のチェック、httplibモジュール等でWebやProxyのチェック、smtplibでSMTPのチェックやメール送信などなど。

Fabric

拡張モジュールならFabricを使い、ssh越しにできる作業はなんでも自動化可能。TeraTermマクロでやっていた事、あるいはできなかった事でもFabricならスマートに実行できます。
スクリプト内でのコマンド実行、返り値の取得、ファイル転送まで全てがシームレスに実行可能。
「超強力なリモートで実行できるシェルスクリプト+α」、それがFabricです。

最後に


Cygwin推しな点を述べてきましたが、VirtualBoxなりVmwareServerなりを使わせてもらえるなら素直にCentOSUbuntuを入れた方が幸せになれると思います。Cygwinは動作が重い上に色々やろうとするとハマる事が・・・
しかも「Cygwin環境でPython動かすのは結構便利だよ」というお話をするつもりでしたが、よく考えたらビルド環境を整えるのが楽、という事以外にPython関連で便利な事って無かったですね (∀`*ゞ)テヘッ
タイトルも「インフラエンジニアに勧める言語はPythonで決まりだね!」くらいにしたほうが良かったでしょうか。

さて、明日はtwitterでのゆるふわ顔文字キャラで定評のある @ さんです。

2011-12-18

1人アドベントカレンダー18日目「アジャイルサムライ読書会 新宿道場#1」


アジャイルサムライ読書会 新宿道場#1 2011/12/18 日曜日 14:00 to 17:00

https://connpass.com/event/125/

株式会社タイムインターメディア様の会議室をお貸し頂きました。

諸注意 〜 アイスブレイク 〜 第1章

2つのテーブルで2グループに分かれて座っていたのですが、Python関連の勉強会で顔見知りな方が多かったです。
知らない人同士2人組を組んで10分近く自己紹介〜おしゃべりをたっぷりしました。アイスブレイクでここまで長時間しゃべったのは初めてです(笑)

アイスブレイク終了後は各自、知りたい事を付箋紙に書き出しチーム的にどういう形で進めるか相談しながら勧めていきます。

付箋紙をまとめた所で私のいたグループは大きく分けて2つ

ここで、そもそもアジャイルとは、それぞれにとってどのような物なのかを発表しないか、という提案がメンバから出ます。
みなさんの意見をお聞きして思ったのが、人によってアジャイルのイメージが違う!という事。
私がイメージしているのは「人と人とがコミュニケーションを重視した考え方」でしたが、これはあくまでも根本の考え方の1つにしかすぎずアジャイルの最終目標ではありませんでした。

最後にこの提案をしたメンバの発表がみんなを納得させる1つの答えとなり、それは、

アジャイルとはお客様に価値を届ける事」

ここまでで一区切り。

ワークショップの形式は「ワールドカフェ」。
ワールドカフェはグループを作り、リーダーを決めてディスカッションを進め、話したい人はトークンオブジェクトと呼ぶ目印(コースターでもなんでもいい)を持つルール。
1ラウンドが終わったら、リーダーだけテーブルに残り他の人は別のテーブルに移るという方式です。
今回は2グループしか作らなかった為、変形バージョンとしてリーダーは立てずにメンバが半々入れ替えに。

ここでも色々な意見が出ます。

  • アジャイルなら計画を立てなくていい、いくら仕様変更をしてもいい、というわけじゃないでしょ?
  • アジャイルは何度でも小さな計画を立て直す事ができる
  • buzzwordじゃないよ!」 #世界のマスターセンセー
  • フィードバックも道を見ながらハンドリングをする必要があるよね?
  • Webで有名なブランコの話
  • ゴールさえしっかりしていれば、なんとかなるんじゃないか
  • 色々な事象フィードバックされるから進める事ができる
  • アジャイルとは共有する事だよね
  • ゴールを共有してフィードバックする事で柔軟性が出てくるのではないか?

2ラウンド目が終わり、おやつタイムへ。

おやつタイム

主催者の方の心づくしで凄く豪勢な感じでした。スイートポテトがとてもおいしかったです!
時間が20分で少々長めでしたが、この時間にも色々お話しました。

  • アジャイルを業務で実践している方〜?」誰もいなかったり〜
  • 「一生ウォータールでやりたくないから学びに来ているんですよね?」

第2章

テーマ決めて、じっくりディスカッションしました。

  • 自己組織的なチームってどんなチーム?
    • 積極的に考える事ができるメンバでないと難しい
    • 考えを持っていても発言しやすくないとダメ
    • 自己組織化って何?上から指示してもメンバが動かない。チーム内で話合っていって動くようになった
    • 自分が良いと思った事は率先してやる。問題があったら後で謝ればいい
    • 自分が言ったことに責任を持つ
    • アジャイルはそこに顧客が入ってくるので謝ればいいという事にならない。コミットメントが必要。
    • チーム内と対顧客で少し違う
    • 失敗があった時に失敗した人だけを非難するのは間違っている。チーム全体の責任であるはず。そのためにはコミュニケーションが必要
    • 達成感があれば目標に進んでいける
    • リーダに守られる安心感があるといい

ここでメンバ交代。

  • 自己組織的なチームを作るコツは?
    • リーダーが指示するだけではなく、自分で動く事
    • リーダーに守られる安心感
    • ゴールを共有する
    • 全員がリーダーになろう http://d.hatena.ne.jp/Chikirin/20110927
    • ゴールの共有という意味合いで、顧客とチームで対立していく
    • 顧客の夢が広がっていくのをどう止めるのか
    • 担当レイヤーが違う。メール配信ツールを作っていたのにFacebookみたいなのができていた、というのはおかしい
    • それはプロダクトオーナーと調整する事で解決。顧客もチームに巻き込む
    • みんなの意見を、よしこれにする!と決めるのがプロダクトオーナー
    • アジャイルのゴールは一体どこにあるんですか?
    • ゴールは始まりの時点では方向性だと思う。それが最終的に点に収束するのでは?
    • そうではないと思う。その機能を作ったら何が起こるのか?個々の機能を作るのではなく、顧客は最終的にどうなりたいのか?を実現する事ではないのか?

だんだんアジャイルサムライ中盤以降の内容になってきた為、自己組織的なチームについての話へ戻ります。

    • みんなで補い合っていこう、というと相対的に能力が低い人をフォローする為に能力が高い人の負荷があがってしまう
    • 結局、日々の仕事に追われて、教育しながらという事ができない。日々できる人が損をする
    • 自己組織化というのは助け合いではない
    • うまくいかないのはマネージメントが足りていないから。周りのフォローアップができていない。
    • まさにマネージメントができていない。マネージャーがいない。
    • 誰が何をやる、タスクの割り当てというのは誰かがやるの?
    • マネージャーはいないとダメ。どこの現場でもマネージメントは絶対必要
    • その人がどれだけできるか、積極性があるか。どうやって成長していくのか
    • アジャイル関係なく、そもそもチームを作るのであれば、おかしい事をおかしいと言えるような環境が必要。
    • プロジェクトが抱えている目的に向かって進んでいくというのもあるけど、細かいイテレータで回していう考え方が必要
    • ネガティブな事を言うのではなく、改善していく行動をする、それを繰り返していく事によって幸せになれると思う
    • イテレーションの区切りで振り返る時に、ネガティブな意見ではなく改善する行動を起こしていく
    • 顧客をいかに巻き込んでいくか。信頼をどうやって高めるか。信頼貯金をためていく
    • アジャイルを導入する時に、不安のある顧客に正直ベースで話していく
    • お隣さんを巻き込む。例えばgeekの顧客に技術的なデモをしていく

懇親会

半分くらいの方が参加されました。本編3時間に対して、懇親会は4〜5時間やってたような気がします(笑)

トピックスとしては「TDDのお話」「英語しゃべれるようにする為には?」

私が、おお!と思ったのは社内で「++」という方法を採用している方がいらっしゃった事。
バグを見つけたりした場合、バグを出した人に「-(マイナス)」を付けるのではなく「+(プラス)」を付けるんだそうで。
こういう事を考え、また採用されるような会社は素晴らしいですね。

2011-12-17

1人アドベントカレンダー17日目「(第14回)Python mini Hack-a-thon」


(第14回)Python mini Hack-a-thon 2011/12/17(土) 11:00?

https://connpass.com/event/141/

これまた感想が前後してしまいますが、前回の#pyhack(Python mini Hack-a-thon)に引き続き私は2回目の参加となります。

場所はアリエル・ネットワーク株式会社様。

午前

電車遅延等で遅れてくる方が多かった為、11:30頃からしょーまさんから事務通知。全員で自己紹介&本日やる事の発表をしてから黙々と各自の作業開始・・・ではなくまずは雑談が多かったかも。

私は午前中一杯かけてどんなツールを作るのかをまとめてました。

自社で大量に個人宛てにメールを送信するような事をしそうなので、メール送信が楽できるツールを作りたい
最低限の要件

  • 個人宛てのメール送信ができる
  • To: ○○さん のような宛先は引数で指定できるようにする。
  • CUIで操作する
  • メールのテンプレートを準備して、宛先ごとに編集がしやすいようにする。※できたら

流れ

  1. メール送信モジュールの確認
  2. 操作方法考案


お昼

お昼は@t2yさんのお勧めカレー店へご一緒にさせて頂きました。

@junjun_mathさんの質問から形態素解析の話になった。@tk0miyaさんと@t2yさんから色々お話聞けた。

  • N-gram
    • n文字単位で分ける
  • わかち書き
    • 単語で区切る
  • どちらも良い所があるのでハイブリッドの検索システムがある。
  • わかち書きではインデックス(辞書)をメンテナンスするのが大変
  • 東京都』という単語から東の「京都」を必要とする人もいたりするのでどうヒットさせるかを決めるのは難しい
  • 自然言語処理関連の技術でWebをクロールさせて辞書を作成する事は可能だが、どうしても人が判断する必要のある文字列(複合語とか)が出る。
    • 人が判断する所を省く事はできるけど、精度の低い検索エンジンって意味ないよね
    • 検索範囲がインターネットグローバルなのか、会社のファイルサーバで自分が書いた文書なのかで複合語の扱いは変わってくる


午後

皆さん事務関連やら議論やら雑談やらアドベントカレンダーの勧誘やらで色々お話されてましたが、15:30くらいから本格的にモクモクし始めました。
私は成果発表を必ずする!と決めていたので、この間、少しでもマシな発表ができるよう必死に。

そして、17:30から成果発表。

全員分のIDと発表詳細を追い切れなかったのでツイートからコピって箇条書きです。

自分の成果
    • emailモジュールの使い方をググってヒットしたブログからコピーさせてもらいました(汗
    • メール送信まではできましたが、メール本文をテキストから入力という部分がわからず。詰まり中
    • 成果発表の際に、アドバイスを受けて文字化けしながらもメール送信できた!

懇親会

色々楽しいお話を聞けました。ネタ的な物も多かったですが、興味深い話も多かったです。

特に@aodagさんの面接時にする?したい?質問「好きな図形は?」「その理由を30秒で答えて」はスキルについては、それまでに十分わかっているので、この質問でその人のポリシーがわかるという話が面白く感じました。ちなみに@aodagさんは平行四辺形と台形が完璧の一歩手前で好き、との事。奥深い・・・

その他トピックス
  • 高校生が2人参加。自分がこの人たちに追いつける日はいつなのかと考えてしまった
  • @t2yさんから塩昆布を頂いた
  • 今日発売されたばかりのVITAを買ってきてハック始めた方が!
  • まずいと評判のフィンランドのお菓子「SALMIAKKI」を頂きました!外側のチョコレートは普通においしかったです。
  • しょーまさんにsmtplibのSMTPはクラスなのでインスタンス作らないと、と教えて頂いた。

来月の#pyhackも公開されたので、早速登録しました。とにかく少しでもレベルあげないと・・・