May 31, 2010

SG-GTUG Special Tutorial Session June 12

Theme: "Introduction to Python + Google App Engine"

Venue: Google Singapore, Level 35, 8 Shenton Way (Temasek towers) S068811

Speaker: Wesley Chun (Google HQ).


12:30PM - 01:00PM - Registration
01:00PM - 02:30PM - Talk 1: Introduction to Python
02:30PM - 02:45PM - Refreshment break
02:45PM - 04:15PM - Talk 2: What is Google AppEngine?
04:15PM - 04:30PM - Networking & End-of-Meetup

RSVP @ Registration form for 12 June presentation

Talk 1: Introduction to Python


Python is an agile object-oriented programming language that is continuing to build momentum… popular with the open source, LAMP and Linux/all BSD/Solaris/MacOS X crowd (and even Java and Win32 programmers) for applications and web development—especially for Python’s frameworks that compete with Rails: Django (including Google App Engine), TurboGears, Pylons, Zope and Plone (all RIA platforms), plus Trac and Mailman, the wiki+issue-tracker and popular mailing list manager, respectively. Web developers know about JSON already, but did you know that it maps nearly identically to Python’s dictionary/hash type? Of course Python can do XML/ReST/XSLT, multithreading, SQL/databases, GUIs, hardcore math/science, Internet client/server systems and networking (heard of Twisted?), GIS/ESRI, QA/test, automation frameworks, plus system administration tasks too! Python can also be found at the heart of the OLPC. If Python doesn’t do what you want, you can extend it in C/C++, Java, or C# (and even VB.NET)! Have you noticed the huge growth in the number of jobs that list Python as a desired skill?

With Python, you can design just about any app that most modern languages enable, but it’s way more fun! You can code as fast as you think! Because of Python’s simple yet robust syntax, it’s a great tool to teach programming (heard of Alice before?) with as well as a solid (first) language to learn for non-programmers and other technical staff. Come find out why Google, Yahoo!, Disney, Cisco, YouTube, BitTorrent, LucasFilm/ILM, VMware, NASA, Ubuntu, and Red Hat all use Python!

Talk 2: What is Google App Engine?


Google App Engine is Google’s exciting application development and hosting platform in the cloud. With it, you can build & deploy web applications on Google’s scalable high-traffic infrastructure. App Engine supports apps written in Python or Java, and they will execute on servers that use the same technology that powers Google’s websites for speed and reliability. There is no need to think about virtual machine images, databases, or disk requirements… you just provide the source. There is no “lock-in” because you still own your code, and can port it to a standard LAMP stack if necessary using existing web technologies like Django and Groovy.

App Engine applications are easy to build and scale as your traffic and data storage needs grow. With App Engine, there are no servers to maintain: You just upload your application, and it’s ready to serve your users. There is a generous free quota, and if you think you may need more, can enable billing which gives you additional free quota. You only pay for what you use beyond that. There are no set-up costs and no recurring fees. You control the maximum amounts of resources your app can consume, so it always stays within your budget.

This talk introduces you to the architecture and core components of Google App Engine, including some of its most popular developer APIs. Time-permitting we’ll go through a simple example using Python. Although knowing Python and web programming may be helpful, it is not required.

Speaker Bio (Full CV ):

WESLEY J. CHUN, MSCS, is the author of Prentice Hall's bestseller, "Core Python Programming", its video training course, "Python Fundamentals" (LiveLessons DVD), co-author of "Python Web Development with Django", and has also written various technical articles for Linux Journal and CNet. In addition to being a software architect and Developer Advocate at Google, he also runs CyberWeb, a consulting business specializing in Python software engineering and technical training. He has over 25 years of programming, teaching, and writing experience, including more than a decade of Python. While at Yahoo!, he helped create Yahoo! Mail and Yahoo! People Search using Python. He holds degrees in Computer Science, Mathematics, and Music from the University of California.