2016年9月23日金曜日

PyconJP2016でライトニングトーク2回してきた

お疲れ様です。

今年もPyconJPに行ってきました。
結論から言うとめっちゃ楽しかったです。

最初はトーク枠で参加予定だったんですけど、諸事情(詳しく聞きたい方は直接聞いてくださいwwwwww)により辞退してしまいました。残念。

その代わりと言ってはなんですが、ライトニングトークでそのストレスを発散してきました。
思いの外すぐに枠が埋まり始めて、私がエントリーしようとした時はすでに残り2、3枠という面白い状況でした。
(ちなみにこれの3番目とこれの4番目が私です。空気読まず2回エントリーしました。ライトニングトークって自由でいいよね。togetterの中の方、ありがとうございます。)

ワークボードに所属している企業の求人情報も置いておきました。
私の名刺も置いておいたのですが、何枚か取っていってくれている方もいてうれしかったです。ブロックチェーンのキャラクターmijinのクリアファイルの方が早くなくなりましたが。

当日始発で大阪を出発したので、途中で眠くなる可能性をひしひしと感じていたのですが、全くそんなことはなく、面白いイベントと人間に囲まれ、人生って素晴らしいなとまで思ってしまいました。

二日目昼のFintech関連の会合とPyconJP公開ミーティングも楽しかったです。
Python Boot Campで講師をした時の関係者の方や、普段Twitterでしか関われない方を肉眼で拝見することもでき、年に一度のお祭りを堪能できたと思っています。

Pythonにおける地方の活性化の名の下、大阪でもどんどんイベント開いていきたいなと思っています。

以上です。

2016年5月7日土曜日

また性懲りもなくPyconJP 2016のプレゼンにエントリーしてみた

去年のあれで味をしめたので、今年もエントリーしてみた。
SNSで拡散しろとのことなので、しておきます。

タイトルは「Pythonからクラウドサービスを使い倒して、ビッグデータを解析した話」です。
当日までにタイトルなどは変わる可能性あります。

また選ばれたらPycon行こうと思う。
でもまぁ、選ばれなくても結局行こうと思う。

ちなみにPython Boot Camp(詳細はこちら)なるものの、講師候補になってます。
縁があれば講師やってると思います。
今はその授業で使うテキストを、時間みつけて作ってます。

人生が楽しくなるといいね。






2016年3月17日木曜日

BigQuery使って困ったこと

BigQueryのメリットやデメリットは巷で溢れている情報なので、個々では割愛

個人的に困ったのは下記のエラー

Resources exceeded during query execution. For more information, see https://cloud.google.com/bigquery/troubleshooting-errors

今回の場合、 主な原因としては、
  1.  クエリorder句を利用しており、検索結果の量もあいまって、リソースを大量消費したこと
  2.  クエリで外部結合をしており、検索結果が大量に存在したこと
であった。

回避策として、order句や外部結合を使用せずに、検索結果を内部メモリに保存して、モジュールのロジックにてグローピング、ソートを行った

これが世に言う富豪プログラミング です。
早く中間テーブルを使った対策を取らねば
 

2016年1月8日金曜日

Python使って仕事してるので、pypiデビューしてみた。
アップしたのはファイル操作のライブラリクラウドサービスのライブラリ
このリンクからGitHubもたどれるので、何かあったらプルリクください。
関数仕様もそこに書いてます。
これからも更新していく予定。

地味にマルチバイトが関わるCSVの処理とか、クラウドサービスのPythonからの操作って
メンドくさい事が多い。特に2系。boto3も使ってみたかったし。

BigQueryやCloudStorage、EC2やS3の操作がだいぶ楽になるはず。。。

2015年10月13日火曜日

2015/10/10に

PyCon JP 2015に行ってプレゼンしてきた。
名前は『なぜWeb画面自動テストはうまく行かないのか』です
PyconなのにPythonの話ぜんぜんしてないけど、思いのほか反応よかったので、たぶん成功といえると思われる。
ついでに資料はここ

2015年9月30日水曜日

ブラウザテスト環境提供サービスの比較

世の中には便利なものがあって、最近はSeleniumでブラウザを起動するための環境を
手前で用意する必要は無い。
ネットワークの関係か、日本から動作させるといかんせん遅いような気もするが、
それでも十分なサービスが次の3つ。
各メリット、デメリットつきで記述する。

  1.  CrossBrowserTesting
  2. この3つのサービスのうち、一番安定して動作している気がする。ただし、起動できるブラウザの種類が少なく(Androidデフォルトブラウザのテストができない!)、ChromeやFireFoxの最新版も導入されるスピードが遅い。UIもシンプルだが低機能。ほかの2つと違って、テストのステータスを取得するAPIも存在しない。
  3.  BrowserStack
  4. 最新ブラウザに 対応し、直感的でわかりやすいUI、APIを伴っている。チュートリアルもわかりやすい。ただしIPhoneやAndroidの動作がいかんせん不安定。
  5.  SauceLabs
  6. 全てにおいて及第点。 
     
お勧めはSauceLabs。もちろん現時点ではの話。

2015年3月22日日曜日

requestsでurlに同一キーの複数パラメータを付与する方法

pythonのrequestsモジュールはこういうめんどくさい人たちに比べてかなり使い勝手がいい。
でもでも、urlのパラメータをdictで指定する(参考)ため、同一キーのパラメータは指定不可能
だと思っていた。

で、もやもやしている日曜の早朝に、

\  __  /
_ (m) _  ピコーン
   |ミ|
/ `´  \
  ( ゚∀゚)
 ノヽノ |
  < <
ってなって、実際に試してみたら、出来たので、共有がてら。

結論から言うと、配列で渡せばいい。

例)
    query = {
        'hoge': 'hoge1',
        'huga': ['huga1','huga2']
        'fuge': True
    }
    r = requests.get('http://testhost/test.json', params=query)
    orint r.url
    >>u'http://testhost/test.json?hoge=hoge1&huga=huga1&huga=huga2&fuge=True


こんな感じ。
今あるソース全部書き換えたい。。。