SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Pythonおじさんの
web2py挑戦記
2012-09-16 Python Conference Japan 2012
中村 良幸 @nakayoshix
Python札幌 / 数学勉強会@札幌 / クラウド研究会@札幌
今日のアジェンダ
• 自己紹介と札幌の勉強会事情
• PythonのWeb Application Framework
• web2pyの特徴的な機能及び利点と欠点
• web2pyの事例紹介
• web2pyによるライブコーディング
• まとめ
自己紹介
• 中村 良幸
→ なかむら よしゆき
→ なかよし(ワタミメソッド)
→ nakayoshix(xを付けて)
→ 統合ID: nakayoshix です。(キリッ
仕事でやってきたこと
• HPC (Fortran) 1994∼2000
• 津波数値解析、港湾の水質汚染拡散計算、泊原発の大気汚染拡散計算
• 報告書作成と3Dアニメによる可視化 (C + PostScript & OpenGL)
• CRM (Siebel) 2001∼2003
• 北海道ガス(北ガス)のお客様問い合わせ対応システム
• Siebelのカスタマイズは、SiebelVBというMicrosoftVB互換言語
• MSテクノロジー (ASP.NET, C#がメイン)
• 札幌市環境マネジメントシステム (ASP.NET, C#, VS2005時代)
• 某組織向けグループウェア(XML Web Service & スマートクライアント)
• 他にもJava, PHP, ExcelVBA, R, およびPythonによる業務用アプリ開発を色々と…
Pythonによる受託アプリケーション開発歴
• 2006年 全国各地の大学向け施設管理システム(Webアプリケーション)
• 帳票出力モジュールを、Linux上でPython + PyUNO + OpenOffice.orgで作成
• 2007年 北海道大学の大気環境汚染研究のためのサーバシステム
• センサー付き端末から定期的に送られるメール(含データ)を受信してDB化
• Python SMTPモジュールを利用、O/R MapperとしてSQLAlchemyを利用
• 2009年 中古自動車売買Webサイトの構築 ( http://www.calwing.com/ )
• DjangoによるWebアプリケーション、DjangoAdminを大幅にカスタマイズ
• 2010年 統計分析用パッケージの作成(納期二週間でSPSSと同じものを…)
• 重回帰分析(AICによるモデル選択を含む)計算処理はRで、GUIはPythonで
Pythonによる自社用アプリケーション開発歴
• 2010年∼2012年にかけて、SSLサーバ証明書の申請管理システムを開発
• 初めてのweb2pyによる業務用Webアプリケーションの開発
• 他システムとのAPI連携がたくさん
• Google Apps, Zoho CRM, kintone, JIRAとの間のREST API連携
• Root CAとの間の証明書ベースによる暗号化されたSOAP API連携
• ぼっちdeveloperゆえ、基本的に全て独りで開発。最近ではサーバーへの
デプロイ、サーバの保守管理、セキュリティ、ログ管理、社内PC管理
等々まで独りで…
• 本当は、今日はその実際の事例を紹介しようと思っていましたが、諸般
の事情でそれが不可能になりました。
というわけで…
•Pythonおじさんです。(キリッ
勉強会活動について
• 札幌で色々と勉強会を主宰しています
• Python札幌 / from sapporo import *; with the Zen of Python
• 現在、「Python初学者向け読書会@札幌」を隔週木曜で開催中
• 数学勉強会@札幌 / 大人のためのやり直しの数学勉強会
• 現在、「解析の基礎」を教科書に、毎週月曜に勉強会を開催中
• クラウド研究会@札幌 / 年に一度の「クラウド温泉@小 」
• 現在、「ぼちぼちHaskell勉強会@札幌」を隔週木曜で開催中
• 勉強会充です。(キリッ
その他、趣味とか興味とか
• オープンソース関連活動
• オープンソースのCRM, openCRXの日本語化
• openCRXのベースとなるMDAフレームワーク、openMDX
• 最近興味があるのは…
• 関数型言語、特にHaskell (ついでにScala & F#)
• Monadとその理論的背景である圏論、代数構造
• 好きなエディタはEmacs
• Emacs歴24年になります。自称・Emacsおじさんです。(キリッ
• 日常生活では
• 1994年からヨーガを始めたので、ヨーガ歴24年です。
前置きはここまで
• ここからが本編です
Pythonで作られた各種の
Web Application Framework
• Django - 豊富な実績、多くのPaaSでも標準で使える
いわゆるフルスタックフレームワーク
• TurboGears ( → Pylonsと統合)
• Pylons (→ Pyramidと統合)
• Pyramid - Python3へ対応済み、Zope由来、自由度最大
• Flask - マイクロフレームワーク by @mitsuhiko
• web2py - 今日紹介するものです
web2pyとは?
• web2pyは高速、スケーラブルでセキュアかつポータブルなデータベース
駆動型のWebアプリケーションをアジャイルで開発するための、フ
リーかつオープンソースなエンタープライズ向けWebアプリケーション
フレームワークです。
• もちろん全てPythonで書かれています。
• ライセンスは LGPL version 3 License
• 最新バージョンは一昨日出たばかりの2.0.9 (2012-09-13 23:51:30) stable
• 作者は、アメリカのDePaul University College of Computing and Digital
Media (CDM)でコンピュータ・サイエンスを教えている、Dr. Massimo Di
Pierroで、Massimoさんは、元々は物理屋さんです。
web2pyの特徴・その1
• フルスタックのフレームワーク
• セキュリティを重要視している
• 全てブラウザのみで開発が可能
• インストール不要
→ web2py_src.zipを展開するだけで使用可能に
• そのままGAEにデプロイが可能
• 開発当初より後方互換性を維持
フルスタックとは?
• SSLとストリーミングが可能なWebサーバー
• SQLを動的に作成するデータベース抽象レイヤ (DAL)
• 多様な認証方式とロールベースアクセス制御
• Localの他, OpenID, OAuth, Janrain, CAS連携等が可能
• グループとロールベースによる完全なアクセス制御
• エラーロギングとチケットシステムの統合
• スケーラビリティのための様々なキャッシュメソッド、等々
セキュリティ重視
• The Open Web Application Security Project (OWASP) のいうと
ころのセキュリティ上の問題トップ10を未然に防ぐための仕
組みを内蔵
• クロスサイトスクリプティング
• インジェクションフロー
• ディレクトリトラバーサル
• 悪意のあるファイルの実行
• Audit Trail (監査証跡) 機能も追加されている
Web IDEでブラウザによる開発
• 強力な機能を持つWeb IDEを標準で持つ
• 開発、テスト、デプロイ、メンテナンスといったアプリ
ケーション開発の各フェーズに対して、ローカルやリ
モートから操作のできるWebのインターフェイスを提供
• 新規アプリ作成時のウィザード機能も追加された
• Mercurialがインストールされていれば、バージョン管理
までWeb IDE上で可能になった
• 結論として、ブラウザのみで全ての開発が可能です
Emacsによる開発も可能
• とはいえ、Web IDEは単なる釣りです
• Emacsのみによる開発ももちろん可能です
• 通常はEmacsでソースコードを編集し、ターミナルから
web2py用のシェルを起動して動作確認を行います
• ipythonがインストールされていれば、それを使います
• bpythonがインストールされていればそちらを優先します
• 開発中のイメージを次に…
GAEへのデプロイ
• 一部制限はあるものの、GAEにデプロイしてそのまま
動作させることが可能
• 一部制限とはDB設計の根本的な違いが原因
→ BigTableはRDBではないため
• アプリケーションID以外はソースコード以外の設定
ファイル等も書き換える必要なし
• GAEへのデプロイに関しても、今はWeb IDEからク
リック一発でインストールが可能に
web2pyの特徴・その2
• 多くのDBに対応した強力なDAL機能
• 強力なテンプレート機能を備えたView機能
• AppAdminはDjangoAdminとは少し方向性が違うが非常に便利
• RESTやSOAP等、多くのWeb Serviceに標準で対応
• 全てにおいてデフォルト値を持つ
→ 初期状態において、設定なしですぐに動作可能
• ボイラープレートコードを極限まで排除
• ネット上のコミュニティが活発 → 進化がとても早い
DALの存在
• DAL (= Database Abstraction Layer)は本当に便利です
• あくまでもデータベース抽象レイヤーです
→ 他のFWが持つようなO/Rマッパーではないので注意が必要
• 実際に使ってみて非常によく出来ている
→ DjangoのO/Rマッパーに不満を持っている方は一度お試しを
• デフォルトで非常に多くのデータベースに対応
• SQlite, MySQL, PostgreSQL, Oracle, MSSQL, DB2, Firebird, MyBase,
Informix, Google App Engine
• RDBMSの他、GAE (BigTable)にも対応している
• 最近では、MongoDB等のNoSQLにも対応済み
Pythonなのにimport文が不要
• ボイラープレートコードを極限まで排除
• フレームワークの基本機能に関しては、importが不要
• VとCにおいて、HTMLタグをPythonの関数で作ることが可能
• その代わり、フレームワーク側でexecfileを行い、グローバルレベル
での環境を作ってしまう!
• とはいえ、それはやってもいいのか?
• 古参PythonistaでPythonic重視派からは異端視
• ネット上どこの掲示板へ行っても、世界中からdisられる原因に
• そこへ、原作者のDr. Massimoさんが必ず出てきて反論を…
二年間使ってきた私の今の印象
• DBへの操作が必要なWebアプリを、とにかく手軽に素早く作るのには向い
ている
• 業務用Webアプリも、最初にとにかく早く作る上では十分に役だった
• ところが、段々と辛くなってきます
• O/Rマッパーではないので、テーブルに対応するクラスを持つべきか、持
たざるべきか?
• テスト容易性(Testability)の問題
• 結局、多くの機能は順次モジュール化していきます
• 以前はlocal_import()関数でしたが、今は普通にimportでいけます
• 本格的な販売管理等の業務アプリケーションを作る際には再考が必要です
実際の使用例
PyCon Asia Pacific 2012
• PyCon Asia Pacific 2012のサイト構築で使
われています
• web2pyのアプリケーション、Conf2pyを
使って構築されているそうです
• 実際にサイトを見てみましょう
アプリの例: Conf2py
• Open Source Conference Management System (GPL2)
• Massimo Di Pierroさんによって作られたweb2pyのアプリケーション
• MetaCryption LLCにより、サポートも提供されている
• スライドショー:
• http://www.slideshare.net/mdipierro/conf2py
• web2py appとしてダウンロード (sourceも含む):
• http://conf2py.googlecode.com/files/web2py.app.conf2py.w2p
• ソースのみダウンロード (google codeより):
• hg clone https://conf2py.googlecode.com/hg/ conf2py
• オンライン・ビデオ(バージョンは古いものが対象):
• http://vimeo.com/1838049 http://vimeo.com/12157148
ライブコーディング
• ここで、実際にライブコーディングで
プログラムを作ってみましょう
web2py関連の情報源
• web2pyの公式サイト
• http://www.web2py.com/
• 日本語化プロジェクト(web2py japan)
• http://groups.google.co.jp/group/web2py-
japan
まとめ
• GAEについて
• Pythonについて
• web2pyについて
• ライブコーディング
• GAEへのデプロイ
勉強会の紹介
• 私が主催する勉強会 (立ち上げた順)
• Python札幌
• 数学勉強会@札幌
• クラウド研究会@札幌
最後に
• ご清聴ありがとうございました。

Weitere ähnliche Inhalte

Was ist angesagt?

そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?
takezoe
 

Was ist angesagt? (20)

Treasure Dataを支える技術 - MessagePack編
Treasure Dataを支える技術 - MessagePack編Treasure Dataを支える技術 - MessagePack編
Treasure Dataを支える技術 - MessagePack編
 
心理的安全性と、Veinの紹介 Psychological safety and introduction of Vein
心理的安全性と、Veinの紹介 Psychological safety and introduction of Vein心理的安全性と、Veinの紹介 Psychological safety and introduction of Vein
心理的安全性と、Veinの紹介 Psychological safety and introduction of Vein
 
設計書からの卒業
設計書からの卒業設計書からの卒業
設計書からの卒業
 
Redmineによるメール対応管理の運用事例
Redmineによるメール対応管理の運用事例Redmineによるメール対応管理の運用事例
Redmineによるメール対応管理の運用事例
 
はじめてのPRD
はじめてのPRDはじめてのPRD
はじめてのPRD
 
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
 
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
 
Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
View Customize Pluginで出来ること
View Customize Pluginで出来ることView Customize Pluginで出来ること
View Customize Pluginで出来ること
 
C/C++とWebAssemblyを利用したライブラリ開発
C/C++とWebAssemblyを利用したライブラリ開発C/C++とWebAssemblyを利用したライブラリ開発
C/C++とWebAssemblyを利用したライブラリ開発
 
そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?
 
JavaScriptでSQLを唱えたいだけの人生だった
JavaScriptでSQLを唱えたいだけの人生だったJavaScriptでSQLを唱えたいだけの人生だった
JavaScriptでSQLを唱えたいだけの人生だった
 
高位合成におけるC++テンプレートメタプログラミングの効果
高位合成におけるC++テンプレートメタプログラミングの効果高位合成におけるC++テンプレートメタプログラミングの効果
高位合成におけるC++テンプレートメタプログラミングの効果
 
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介がっつりMongoDB事例紹介
がっつりMongoDB事例紹介
 
リーン開発の本質 公開用
リーン開発の本質 公開用リーン開発の本質 公開用
リーン開発の本質 公開用
 
トップエンジニアが実践する思考整理法~テクニカルライティングを用いた課題解決の基本
トップエンジニアが実践する思考整理法~テクニカルライティングを用いた課題解決の基本トップエンジニアが実践する思考整理法~テクニカルライティングを用いた課題解決の基本
トップエンジニアが実践する思考整理法~テクニカルライティングを用いた課題解決の基本
 
JavaScript GIS ライブラリ turf.js 入門
JavaScript GIS ライブラリ turf.js 入門JavaScript GIS ライブラリ turf.js 入門
JavaScript GIS ライブラリ turf.js 入門
 
Rust Error Handling
Rust Error HandlingRust Error Handling
Rust Error Handling
 
脱RESTful API設計の提案
脱RESTful API設計の提案脱RESTful API設計の提案
脱RESTful API設計の提案
 

Andere mochten auch

Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
2bo 2bo
 
Wrapping a C++ library with Cython
Wrapping a C++ library with CythonWrapping a C++ library with Cython
Wrapping a C++ library with Cython
fuzzysphere
 
Hpcビジネスコンテンスト発表資料
Hpcビジネスコンテンスト発表資料Hpcビジネスコンテンスト発表資料
Hpcビジネスコンテンスト発表資料
Hironori Nakajo
 
ScalaでAndroidアプリ開発
ScalaでAndroidアプリ開発ScalaでAndroidアプリ開発
ScalaでAndroidアプリ開発
papamitra
 
Pythonの開発環境を調べてみた
Pythonの開発環境を調べてみたPythonの開発環境を調べてみた
Pythonの開発環境を調べてみた
Kenji NAKAGAKI
 
数理最適化とPython
数理最適化とPython数理最適化とPython
数理最適化とPython
Yosuke Onoue
 
Google App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろうGoogle App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろう
kenji4569
 

Andere mochten auch (20)

Rubyとプログラミング言語の潮流
Rubyとプログラミング言語の潮流Rubyとプログラミング言語の潮流
Rubyとプログラミング言語の潮流
 
Djangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込むDjangoとweb2pyをapacheに組込む
Djangoとweb2pyをapacheに組込む
 
自社開発をしていなかった会社が Python を選んだ理由
自社開発をしていなかった会社が Python を選んだ理由自社開発をしていなかった会社が Python を選んだ理由
自社開発をしていなかった会社が Python を選んだ理由
 
2012-07-07 Sapporo.r #1 LT発表資料 「仕事で使うR」
2012-07-07 Sapporo.r #1 LT発表資料 「仕事で使うR」2012-07-07 Sapporo.r #1 LT発表資料 「仕事で使うR」
2012-07-07 Sapporo.r #1 LT発表資料 「仕事で使うR」
 
クラウド温泉への誘い 2015-08-01 「第48回データマイニング+WEB@東京」版
クラウド温泉への誘い 2015-08-01 「第48回データマイニング+WEB@東京」版クラウド温泉への誘い 2015-08-01 「第48回データマイニング+WEB@東京」版
クラウド温泉への誘い 2015-08-01 「第48回データマイニング+WEB@東京」版
 
DL on Azure ML with Python where type DL = Deep Learning | Deep LOVE
DL on Azure ML with Python where type DL = Deep Learning | Deep LOVEDL on Azure ML with Python where type DL = Deep Learning | Deep LOVE
DL on Azure ML with Python where type DL = Deep Learning | Deep LOVE
 
Wrapping a C++ library with Cython
Wrapping a C++ library with CythonWrapping a C++ library with Cython
Wrapping a C++ library with Cython
 
No te comas la coma
No te comas la comaNo te comas la coma
No te comas la coma
 
Scalaと過ごした5ヶ月間
Scalaと過ごした5ヶ月間Scalaと過ごした5ヶ月間
Scalaと過ごした5ヶ月間
 
Webの未来 〜 PNaClとasm.jsでカワルミライ - いま、モバイルWebの先端で起こっていること
Webの未来 〜 PNaClとasm.jsでカワルミライ - いま、モバイルWebの先端で起こっていることWebの未来 〜 PNaClとasm.jsでカワルミライ - いま、モバイルWebの先端で起こっていること
Webの未来 〜 PNaClとasm.jsでカワルミライ - いま、モバイルWebの先端で起こっていること
 
Hpcビジネスコンテンスト発表資料
Hpcビジネスコンテンスト発表資料Hpcビジネスコンテンスト発表資料
Hpcビジネスコンテンスト発表資料
 
Pythonについて
PythonについてPythonについて
Pythonについて
 
ScalaでAndroidアプリ開発
ScalaでAndroidアプリ開発ScalaでAndroidアプリ開発
ScalaでAndroidアプリ開発
 
Scala初心者がPlay/ScalaでロックなWebアプリを作ったお話
Scala初心者がPlay/ScalaでロックなWebアプリを作ったお話Scala初心者がPlay/ScalaでロックなWebアプリを作ったお話
Scala初心者がPlay/ScalaでロックなWebアプリを作ったお話
 
Scala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまでScala 初めての人が Heroku で Web アプリを公開するまで
Scala 初めての人が Heroku で Web アプリを公開するまで
 
多分モダンなWebアプリ開発
多分モダンなWebアプリ開発多分モダンなWebアプリ開発
多分モダンなWebアプリ開発
 
Pythonの開発環境を調べてみた
Pythonの開発環境を調べてみたPythonの開発環境を調べてみた
Pythonの開発環境を調べてみた
 
数理最適化とPython
数理最適化とPython数理最適化とPython
数理最適化とPython
 
Google App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろうGoogle App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろう
 
めんどくさくない Scala #kwkni_scala
めんどくさくない Scala #kwkni_scalaめんどくさくない Scala #kwkni_scala
めんどくさくない Scala #kwkni_scala
 

Ähnlich wie Pythonおじさんのweb2py挑戦記

CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
Yuki Ando
 
Win/Mac/Android/iOS向け クロスプラットフォーム開発にXamarinが うまくハマりそうだった話
Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話
Win/Mac/Android/iOS向け クロスプラットフォーム開発にXamarinが うまくハマりそうだった話
Takuya Kikuchi
 
Windows Azure for PHP Developers
Windows Azure for PHP DevelopersWindows Azure for PHP Developers
Windows Azure for PHP Developers
fumios
 
WebDB Forum 2012 基調講演資料
WebDB Forum 2012 基調講演資料WebDB Forum 2012 基調講演資料
WebDB Forum 2012 基調講演資料
Recruit Technologies
 
20110305_Code4Lib2011参加報告会:田辺浩介参加報告
20110305_Code4Lib2011参加報告会:田辺浩介参加報告20110305_Code4Lib2011参加報告会:田辺浩介参加報告
20110305_Code4Lib2011参加報告会:田辺浩介参加報告
Code4Lib JAPAN
 

Ähnlich wie Pythonおじさんのweb2py挑戦記 (20)

Hueによる分析業務の改善事例
Hueによる分析業務の改善事例Hueによる分析業務の改善事例
Hueによる分析業務の改善事例
 
クラウドセキュリティ基礎
クラウドセキュリティ基礎クラウドセキュリティ基礎
クラウドセキュリティ基礎
 
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
CODT2020 ビジネスプラットフォームを支えるCI/CDパイプライン ~エンタープライズのDevOpsを加速させる運用改善Tips~
 
The seminar of asp.net at 201908 sakurug
The seminar of asp.net at 201908 sakurugThe seminar of asp.net at 201908 sakurug
The seminar of asp.net at 201908 sakurug
 
20180723 PFNの研究基盤 / PFN research system infrastructure
20180723 PFNの研究基盤 / PFN research system infrastructure20180723 PFNの研究基盤 / PFN research system infrastructure
20180723 PFNの研究基盤 / PFN research system infrastructure
 
ChainerMNをDocker containerで動かす
ChainerMNをDocker containerで動かすChainerMNをDocker containerで動かす
ChainerMNをDocker containerで動かす
 
クラウドセキュリティ基礎 #seccamp
クラウドセキュリティ基礎 #seccampクラウドセキュリティ基礎 #seccamp
クラウドセキュリティ基礎 #seccamp
 
「宣言的プログラミング」とSDNのひとつの形態
「宣言的プログラミング」とSDNのひとつの形態「宣言的プログラミング」とSDNのひとつの形態
「宣言的プログラミング」とSDNのひとつの形態
 
Mk network programmability-03
Mk network programmability-03Mk network programmability-03
Mk network programmability-03
 
Node-redでプロトタイピング
Node-redでプロトタイピングNode-redでプロトタイピング
Node-redでプロトタイピング
 
Win/Mac/Android/iOS向け クロスプラットフォーム開発にXamarinが うまくハマりそうだった話
Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話Win/Mac/Android/iOS向けクロスプラットフォーム開発にXamarinがうまくハマりそうだった話
Win/Mac/Android/iOS向け クロスプラットフォーム開発にXamarinが うまくハマりそうだった話
 
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノートIoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
IoT Edge and Serverless playground with Node.js ~ IoT EdgeとサーバレスをNode.jsで遊ぶ実験ノート
 
Windows Azure for PHP Developers
Windows Azure for PHP DevelopersWindows Azure for PHP Developers
Windows Azure for PHP Developers
 
Microservices and Servcie Mesh on Azure
Microservices and Servcie Mesh on AzureMicroservices and Servcie Mesh on Azure
Microservices and Servcie Mesh on Azure
 
WebDB Forum 2012 基調講演資料
WebDB Forum 2012 基調講演資料WebDB Forum 2012 基調講演資料
WebDB Forum 2012 基調講演資料
 
Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会Gmo media.inc 第9回西日本ossの普及を考える会
Gmo media.inc 第9回西日本ossの普及を考える会
 
作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく作る人から作りながら運用する人になっていく
作る人から作りながら運用する人になっていく
 
04 citynet awsセミナー_クラウドでビックデータのスモールスタート
04 citynet awsセミナー_クラウドでビックデータのスモールスタート04 citynet awsセミナー_クラウドでビックデータのスモールスタート
04 citynet awsセミナー_クラウドでビックデータのスモールスタート
 
クラウドでビックデータのスモールスタート
クラウドでビックデータのスモールスタートクラウドでビックデータのスモールスタート
クラウドでビックデータのスモールスタート
 
20110305_Code4Lib2011参加報告会:田辺浩介参加報告
20110305_Code4Lib2011参加報告会:田辺浩介参加報告20110305_Code4Lib2011参加報告会:田辺浩介参加報告
20110305_Code4Lib2011参加報告会:田辺浩介参加報告
 

Pythonおじさんのweb2py挑戦記