Mobile Python - Rapid Prototyping of Applicationson the Mobile Platform
Buy Rights Online Buy Rights

Rights Contact Login For More Details

More About This Title Mobile Python - Rapid Prototyping of Applicationson the Mobile Platform


Mobile Python is the introduction of Python programming language to the mobile space.  This practical hands-on book teaches readers how to realize their application ideas on the Symbian OS. Programming on the Symbian mobile platform has been difficult and time consuming in the past.  This innovative new title will remedy this problem. 

Chapters deal with topics that are based on Python S60 features and presented in an order that lets the user learn first the “simple to code” ones and then increasing in complexity.



Jurgen Scheible is a designer, media artist and musician who holds a degree in telecommunications from Karlsruhe, Germany. After graduating, he worked for eight years at Nokia in Finland pursuing various positions such as programmer, product manager and competence transfer manager. Besides his occupation, he performed and produced music as well as media art under the pseudonym Lenin's Godson.

In 2003, he left his engineering career to concentrate full-time on his creative career, because he felt his heart was much more in his artistic works that in engineering. In 2004, he became a doctoral student at the  media Lab at the University of Art and Design, Helsinki, where he established the Mobile Hub, a prototype development environment for mobile client and server applications. it has a strong focus on artistic approaches and creative design, and serves as a resource to art and design students who use mobile technology as part of their projects. His doctoral research focuses on designing multimodal user interfaces for creating and sharing interactive artistic experiences.

Since 2004, he has been evangelizing Python for S60 as one of its pioneers. he is internationally active having given talks and taught innovation workshops in both academic and professional settings on more than 40 occasions, in places such as Stanford University, MIT, NTU Taiwan, Yahoo research Berkeley, Tsinghua University Beijing, Nokia and Nokia Siemens Networks, in more than 17 countries. His focus is on rapid mobile application prototyping using creative approaches for innovation.

In 2006, he spent several months as a visiting scientist at MIT, Boston in the Computer Science and Artificial Intelligence Laboratory (CSAIL). Jurgen was recognized as a Forum Nokia Champion in 2006 and 2007 for his driving vision of building bridges between art, engineering and research. He was one of the winners of the ACM Computers in Entertainment Scholarship Award in 2006 and of the Best Arts Paper Award at ACM Multimedia 2005 conference.

The philosophy behind his works is to bring back the depth of human feelings and emotional aspects to the digital world which, in his opinion, were lost with the arrival of the fast-paced digital production technology. By inspiring other with his works, he gets inspired himself. This leads him to many new ides for designing new kinds of interactive experiences for people, especially in the are of mobile phone application that fuse the real and the virtual worlds. He believes this era will change the way we live and communicate in the future and it will transform societies. Therefore it is important, in his opinion, to design for these coming applications.

Ville Tuulos is currently a researcher in the Department of Computer Science, University of Helsinki, Finland. He has more than 15 years' experience of creative hacking, including data visualization, web research engines, and machine-learning algorithms. He has been an enthusiastic Pythonista since 2000 and he has been exploring and extending the limits of python for S60 since 2005. He has used it to implement, among others, real-time image processing algorithms, various positioning techniques and an urban game for 200 players in New York City.



About the Authors.

Authors’ Acknowledgments.

Symbian Press Acknowledgments.


1. Introduction and Basics.

1.1 Why Does Python Make a Difference?

1.2 How to Use this Book.

1.3 Who Is this Book For?

1.4 What Are Symbian OS, S60 and Python for S60?

1.5 Python Terminology in this Book.

1.6 Democratizing Innovation on the Mobile Platform.

1.7 The Process of Rapid Prototyping with Python S60.

1.8 Summary.

2. Getting Started.

2.1 Installing Python for S60 on 3rd Edition Devices. 

2.2 Installing Python for S60 on 2nd Edition Devices.

2.3 Writing a Program in Python for S60.

2.4 White Space in Python Code.

2.5 Troubleshooting.

2.6 Summary.

3. Graphical User Interface Basics.

3.1 Using Modules.

3.2 Native UI Elements – Dialogs, Menus and Selection Lists.

3.3 Messages.

3.4 Summary.

4. Application Building and SMS Inbox.

4.1 Functions.

4.2 Application Structure.

4.3 String Handling.

4.4 SMS Inbox.

4.5 SMS Game Server.

4.6 Summary.

5. Sound, Interactive Graphics and Camera.

5.1 Sound.

5.2 Keyboard Keys.

5.3 Graphics.

5.4 Camera.

5.5 Mobile Game: UFO Zapper.

5.6 Summary.

6. Data Handling.

6.1 File Basics.

6.2 Reading and Writing Text.

6.3 Local Database.

6.4 GSM and GPS Positioning.

6.5 Vocabulector: A Language-Learning Tool.

6.6 Summary.

7. Bluetooth and Telephone Functionality.

7.1 Bluetooth Pairing.

7.2 OBEX and RFCOMM.

7.3 Phone-to-Phone Communication.

7.4 Phone-to-PC Communication.

7.5 Communication with GPS and Other Devices.

7.6 Telephone Functionality and Contacts.

7.7 System Information.

7.8 Summary.

8. Mobile Networking.

8.1 Simple Web Tasks.

8.2 Setting up the Development Environment.

8.3 Communication Protocols.

8.4 Server Software.

8.5 Pushing Data to a Phone.

8.6 Peer-to-Peer Networking.

8.7 Using a Phone as a Web Server.

8.8 Summary.

9. Web Services.

9.1 Basic Principles.

9.2 MopyMaps! Mobile Yahoo! Maps.

9.3 Eventful: Finding Eventful Events.

9.4 InstaFlickr: Shoot and Upload Photos to Flickr.

9.5 Summary.

10. Effective Python for S60.

10.1 Powerful Language Constructs.

10.2 Introspection.

10.3 Custom Modules and Automatic Updating.

10.4 Program Patterns.

10.5 Summary.

11. Combining Art and Engineering.

11.1 MobiLenin.

11.2 Manhattan Story Mashup.

11.3 MobileArtBlog – Image-Composition Tool.

11.4 ArduuinoBT Micro-Controller Board.

11.5 Controlling Max/MSP with a Phone.

11.6 OpenSound Control.

11.7 Robotics.

11.8 Summary.

Appendix A: Platform Security.

Appendix B: Bluetooth Console.

Appendix C: Debugging.

Appendix D: How to Use the Emulator.




Python Language Lessons.

Python for S60 Modules.