チュートリアル

今年は初めての試みとしてカンファレンスの前日にPythonに関する有料のチュートリアルを開催します!

参加は 参加登録 から。

概要

開催日時 2013-09-13(金) 9:00 ~ 17:00
会場
教室 A:弥生、B:卯月
参加費用
19,800円
(カンファレンスデイのチケット付き)
募集予定人数 最大60人

尚、チュートリアルで用いる資料は当日配布する予定となっています。

詳細

チュートリアルA

タイトル
人工無能を作りながら学ぶPythonプログラミング
〜標準データ型の上手な使い方〜
定員
30名

教室名
弥生

講師
../../_images/ransui.jpg

磯 蘭水 / Ransui Iso

株式会社X-Listing技術戦略グループ・ディレクター。ネット広告の配信システム、配信最適化、データ分析、システムアーキテクチャの設計、エンジニアチームのディレクション等を担当。Pythonは1998年頃より使用。過去にはサーチエンジン、ECサイトその他多くのシステムをPythonをベースに構築。PyCON JP 2011でPyQtについて、2012でソフトシンセを題材としたチュートリアルで好評を得る。

概要

「A+D=P」という式を見たことがありますか?

これは計算式ではなくて「アルゴリズム」と「データ構造」の組み合わせが「プログラム」であるということを表しています。Pascalというプログラミング言語の開発者であるNiklaus Wirthが、1976年に出版した本のタイトルです。

プログラミングというと、記述性、可読性などはもちろんのこと、高速化などの最適化や、疎結合モデルを用いたモジュール化による保守容易性など、さまざまなトピックがありますが、これらの議論のすべてにおいて、適切なデータ構造が用いられていることという前提があります。

高速でエレガントなアルゴリズムも、さまざまなプログラミングやシステム構成のためのテクニックも、それを支える適切なデータ構造がなければ、実力を発揮できないのです。

Pythonには様々な組み込みのデータ型があります、数値や文字列は当然として、タプル、リスト、辞書(マップ)、集合(セット)等です。さらに標準モ ジュールにも便利なデータ構造を作り出すための機能がたくたん提供されています。リストや辞書はそれ単体で利用しても十分に便利なものですが、それぞれを 組み合わせることでとても便利なデータ構造を作り出すことができ、上手に利用すると複雑に思えた処理も意外と簡単に書けてしまったりするものです。解決したい問題を上手に表現できるデータ構造を見つけ出してしまえば、もう問題は解けたも同然ということもできるでしょう。

さて、この手の話はとかく理論寄りだったり、教科書的な話になりがちですが、このチュートリアルでは、参加者の皆さんと対話をすることで徐々に賢くなっていく「人工無能」を作りながら、データ構造が実際の処理にどのように影響を与えている のかを実際の例をを示しながら話を進めていきます。

チュートリアルの最後に、皆さんが作り上げた「人工無能」はどこまで賢くなっているでしょうか。是非、参加してご自身で確かめてみてください。

--「人工無能」とは人工知能っぽいけれどもそこまで本格的に賢くないプログラムのことを指す言葉です。

対象者

以下の水準を想定しています。

  • Pythonの基本的な文法は知っている。
  • 自分で書いたPythonプログラムを実行できる。
  • Pythonに限らず、何らかのプログラミング言語の入門本を読んだり、チュートリアルをやってみたりしたことがある。
用意するもの
  • 演習のための筆記具
  • Python 3.3.x がインストールされているノートPC

チュートリアルでは実際にプログラミングを行うのでノートPCの持参は必須です。 PCには予めPython処理系をインストールして、実行できる状態にしておいてください。

当日の進め方

当日は、解説および演習のための資料を配布します。15~20分程度の解説、30~40分程度の演習、10分程度の休憩というサイクルで進める予定です。

チュートリアルでは、実際のプログラミングを通じて、データ構造の大切さ、基本的なデータ型の組み合わせ、構造を持たせることによる様々な利点等を体感していくという部分を重視します。

理論的側面については紹介程度にとどめ、数学・計算機科学分野の詳細な解説などは行いませんのでご了承ください。

チュートリアルB

タイトル
実践で学ぶDjangoフレームワーク
〜ECサイトを作ってみよう〜
定員
30名

教室名
卯月

講師
../../_images/tokibito.jpg

岡野 真也 / Shinya Okano

株式会社ビープラウド勤務。5年ほど前から業務でPythonとDjangoフレームワークを使って開発をしています。Djangoの翻訳、PyScripterの翻訳に関わっています。Pythonプロフェッショナルプログラミングの著者の一人です。

概要

Djangoは、Pythonで作られたWebアプリケーションフレームワークです。

開発用サーバー、URLルーティング、O/Rマッパー、テンプレートエンジン、管理画面やフォーム生成など、さまざまな機能をフルスタックで提供します。

本チュートリアルでは、シンプルなECサイトのWebアプリケーションを実際に作成しながら、Djangoの機能について解説します。

ECサイトは、商品の管理、ショッピングカートや注文フォーム、検索などのさまざまな機能が必要であり、Webアプリケーション開発を学ぶ上で良い題材です。 これらの機能を1つずつ作りながら、Djangoの使い方について学んでいきます。

「Djangoってどういう機能があるんだろう?」、「Djangoを使ってみたいけど、使い方がよくわからない。」、「Djangoでの開発の流れを知りたい!」など、こういった思いのある方はぜひご参加ください。

対象者

アプリケーション開発の経験者

以下の水準を想定しています。

  • Java、PHP、Ruby、Pythonなどでアプリケーション(Webに限らず)を開発したことがある
  • リレーショナルデータベース(SQLite、MySQL、PostgreSQL、Oracleなど)でSQLを使用したことがある
  • Pythonの基本的な文法を理解している
用意するもの

Python 2.7、Django1.5、SQLite3がインストールされているノートPC

実際にプログラミングを行うので、ノートPC持参は必須です。 当日にチュートリアル環境を整えようとすると時間がかかる為、事前に次のページを確認し、インストールの状態を確認してください。

PyCon APAC 2013 チュートリアルB 事前準備

その他

当日、解説のための資料を配布する予定です。 20〜30分程度の解説、20〜30分程度の演習、10分休憩の繰り返しで行う予定です。

Djangoの解説を重点的に行うため、リレーショナルデータベース自体やPythonの文法についての説明は積極的には行いません。あらかじめご了承ください。