mosowave

sinamon129による(主に)技術ブログ。Ruby,Ruby on Rails,Elasticsearchやその他について書きます。

PyLadies Tokyo Meetup #1に参加してきた!

こんにちは、しなもそです。

ふだんは仕事でphpを書いていることが多いのですが、
同期の@amacbeeが主催しているということで、
会場係<として参加してきました!

pythonはド初心者なのですが、
@amacbee「会場係やってくんない〜」
@sinamon129「いいよ〜」
@amacbee「LTやらない〜?」
@sinamon129「いいよ〜」
の二つ返事でやってみました。

今日は折角なので、かる〜くどういう内容だったかを書きたいと思います。
(飲みながらかいてるので、若干おかしいかもしれないですね)

PyLadies Tokyo Meetup#1はどういうイベントなのか?


PyLadies Tokyo Meetup #1 - connpass

PyLadies Tokyoは,PyLadies (http://www.pyladies.com/) の東京(or 日本!?)支部として,Pythonが好きな女性同士をつなぐために活動しています.その最初のMeetupとして、開催されました!
来ている人はPython玄人から初心者の方まで色々でした!

スケジュール&発表内容

さらっと書きます!

オープニング:PyLadies Tokyoについて  @amacbee

@amacbeeによる、PyLadiesってこういう団体だよ!っていう話

Python初心者がTornadoを触ってみた @sinamoso129

@sinamon129(自分)による発表。
Pythonはほぼ勉強したことがないのですが、せっかくなのでLTを!ということで、
何をしようかなぁとおもったときに、Tornadoがおもしろそうだったので、
Tornadoをhello worldする感じのデモをしました。
さくっと簡単に、手軽にできるwebサーバ&フレームワークだなぁと思いました。

Pythonと出会ったデザイナーの話 @uniqさん

デザイナーさんが、Pythonを触るにいたった経緯なお話。
もっとよしなにデザインしたい!っていう歯がゆいところから、
pythonを触るようになって。
エンジニアとデザイナーってやっぱり近い所にいるし、
お互いの領域に踏み込めたほうがいいよねーというのはありますよね。

技術本翻訳のススメ @fujinagaさん

たのしいプログラミング Pythonではじめよう! の訳者の方による、
技術本翻訳のススメ。
英語から日本語の表現に変える難しさはありつつ、
技術本はテクニカルタームが多く、実用書なら具体例も多いので、
そういう点は楽しそうなところも多そうに感じました!

Simple is better than complex. ~私がPythonを愛する理由~ @cocodripsさん

プログラミング言語を学ぶときに、何から学びますか?という話から、
言語思想を学ぶといいのでは話から、Zen of Python を読み合わせる!
Pythonの言語思想はいいなぁというところが多かった。何回も読みたい。

PyLadies Tokyo活動予定について @amacbee

他国のPyLadiesの活動の様子や、今後の活動はどういうふうにしていきたいかなど。
一緒に作っていきましょう募集てきな感じ!

クロージング @amacbee

ゆるふわっぽいけど、ガチな感じでよかったです。ありがとうございました〜

懇親会(希望者)

なんかOSSにバグレポートを出す話とか、英語の話だったり、海外のカンファレンスの話だったり、
すっごいガチな話が多く…w
一旦お開きの後、女性エンジニアのキャリア、キャリアアップの悩みについての話に。
今後こういう話も聞きたいですねーという話も。

\\(//∇//)\\この顔文字がエスケープ泣かせだった

\\(//∇//)\\
…ただの照れてる顔文字に見えるが案外手強いこいつ
(見たらわかると思うが、スラッシュとバックスラッシュを多用している…)

vimで検索したかったとき
?\\\\(//∇//)\\\\

vimで置換したかった時
%s?\\\\(//∇//)\\\\?置換する文字列?gc

…たぶんいままでつかったことないけどぜったいこれからさきも\\(//∇//)\\こいつつかわないってきめたんだ…

sublime textが素敵すぎて乗り換えるかもしれない

ひさびさに。
(フォントがとっても読みにくいので、元にもどしました…w)

sublime textが素敵だという噂をよく聞いていたのですが、
エディタの変更ってなれるの大変><だし。。。
と躊躇していたところで、
ゼミでのアプリケーション開発で、
ゼミメンバーで環境統一仕様って話が。


個人的に統合開発環境は重たくてあまり好かないのと、
(もちろんいいところも沢山あるけど;;)
linuxで使う&emacs,vimなど特にお気に入りがない?メンバーだったので、
sublime textを思い切って入れてみるのはどーかなーと思って、実験がてら。




sublime textってなんぞや
恋に落ちるエディタ”「Sublime Text」 完全入門ガイド!
LIGの記事。ここがわかりやすいw


入門でつかったもの
Sublime Text 2入門(ドットインストール)
基礎は大体ここで網羅してるんじゃないかなー
ひと通りやってみて、魅力はけっこう沢山\(^o^)/



エンジニアだけじゃなくて、デザイナーさんもつかいやすそう。
私はマークアップとかかくときはcodaでやって、プログラム書くときはvimでやってるんだけど、
これだったら一本でよさげ。
プラグインも、パッケージコントロールをいれたら、中で検索できるし、
カラースキーマも最初から選択肢あるし!
(そして私がvimで愛用している、monokaiがデフォルト!!)
設定ファイルもjsonだし。構造もわかりやすい気がする。
あと、見た目がとても素敵。これけっこう大事!!←

まだgitとかがめんどくさくなく使えるようにしていない(というか、ほぼまだカスタマイズしていない)ので、
色々いれてまた記事書こうかしら。

aws RDSに接続できなかった件(´・ω・`)

なんか、DB Security GroupがRDSの左リストにあるよってかいてあるんだけど、
なかった。

なんか、EC2のSecurity Groupみろって、かいてあった。

EC2のSecurity GroupのInboudのmysqlのポートを開けないとつながらない\(^o^)/

そりゃそうだよな……はまりました。。。。

Jenkinsでcsrf対策いれるとドロップダウンリストが一部選択できない(´・ω・`)w

ひっかかったので。
f:id:sinamon129:20130505182049p:plain

ここがどろっぷだうんされるんだけど、選択されなくてこまってたら
グローバルセキュリティ設定のCSRF対策をおんにしてたからだった…
えーーーーーー
オフにしたらちゃんと選択できるようになった。

phpで一日前の日付を取得する

ちょっとひかっかったのでめも。
phpでdate関数を使うと日付が取ってこれますが、一日前の日付や一ヶ月前の日付など、
その日以前以後の日付を使う時の話。

<?php
//タイムゾーン
date_default_timezone_set('Asia/Tokyo');

date("Y-m-d",mktime(0,0,0, date("m"), date("d")-1, date("y")))

date関数について、詳しくは、
http://php.net/manual/ja/function.date.php

mktimeの date("m"), date("d")-1, date("y")の部分を、のm,d,yの部分を並び替えてしまってあれーってなってたんだけど、これはこの順じゃないといけなくて、表示の時の整形はdate("Y-m-d", $date)のかの"Y-m-d"のぶぶんでやるらしい。

見た目が一緒なUTF-8な文字列がなぜか一致しなかったお話

躓いたのでめも。

とあるcsvファイルのあるカラムと、DBにあるテーブルのあるカラム(文字列)が一致していたら、
テーブルのidをとってきてほげほげっていうコードをrubyでかいてた。

hoge.csvの中身
hoge_id,title,hoge,hoge2,hoge3
10,あばばば,あば,あばばば,あばばばば

DBのテーブル
id,title,piyo,piyopiyo,piyoyoyo
1,あばばば,aba,ababbababa,ほげほげ

みたいな(雑だけど

で、titleの部分を一致させたいんだけど、
どう見ても一致するとこが一致しない。
謎におもって、コマンドプロンプトにその文字列はっつけたら
片方は「あばばば」って表示されたんだけど、
もう片方は(csvのほう)は「あは<3099>は<3099>は<3099>」(´・ω・`)

この<3099>ってのは、
unicodeの正規化の方式でNFD方式らしい。
http://q.hatena.ne.jp/1246722275
utf-8だったらなんでもいいってわけじゃないのね(´・ω・`)

で、治す。
教えてもらったpythonばーじょん。

import codecs
import unicodedata
import sys

f = codecs.open(sys.argv[1], "r", "utf-8")
unistr = f.read()
print unicodedata.normalize('NFKC', unistr).encode("utf-8")

f.close

rubyhttp://sho.tdiary.net/20110204.htmlを参考にするといいみたい。
いまrubyでかいてるからruby版もやってみよう。


おしえてもらったこれすげーー
http://homepage1.nifty.com/nomenclator/unicode/normalization.htm