The Bangalore Python User Group

Device Interfacing Workshop - July, 2017

BangPypers organized a full-day workshop on 15/July/2017, titled, 'Device interfacing with Python'. Workshop was conducted by folks from Zilogic Systems, Chennai – Vijay Kumar, Deepak, Babusubashchandar, and Rashid Muhammed – and the venue for the workshop was the corporate office of Treebo Hotels. Intent of the workshop was to initiate the participants on how to use Python programming language to interface with embedded hardware.

Workshop began with introduction to basics of embedded systems, understanding different types of operating systems, quick run through the GNU/Linux OS, then progressing towards hardware interfacing, device drivers, and serial communication, concluding with note on sysfs and how to use sysfs to control hardware. Workshop was a mix of theoritical concepts that preceded the hands-on sessions – Zilogic folks split the tasks of speaking as the slides rolled out for each session and helping the participants as part of the hands-on.

Embedded Linux Introduction

Deepak began this session where he explained the various embedded software models, and the technical differences between firmware, threaded OS, GPOS, and RTOS. Then he proceeded to explain GNU/Linux OS with emphasis on Linux Kernel, it's design model and the distinction between kernel and user space. This was followed by how files and file systems are managed in the kernel, the layout and the need for file systems. This concept was highlighted using an example of different file system formats including pseudo file systems like proc and sysfs. Linux's boot process and rootfs was quickly talked through.

After touching upon the idea of embedded Linux, it's pros and cons and the reasons why individuals are inclined to go for it, he explained the specifications and peripheral details of the Zilogic Zkit-ARM-VF51 and DietIO add-on board; this served as the target board for the workshop.

Device Interfacing and Introduction to Device Drivers

Focus of this session was device interfacing and Vijay discussed two concepts – memory interfacing and device interfacing. He explained how memory interfacing works under the hood i.e. how blocks are addressed in memory and how read and write transaction happens in memory and also, how the same transaction with multiple RAM chips (using decoding logic.)

He went on to explain how memory interfacing can be used to do device interfacing via the concept called, memory-mapped I/O. He gave an overview of what memory map is and how hardware devices are mapped as memory addresses and simplified this with examples of using display controller and serial controller. At this point, he mentioned that memory mapped I/O cannot be used for all devices and moved on to the concept called controller based IO where a controller interfaces between the CPU and the device, acting as a translator.

This was illustrated with examples like serial controller, I2C controller, and USB controller. The slides and talk were interspersed with tinkering on the target HW by asking the participants to try out code snippets.

Next major topic began with brief tntroduction to device drivers wherein the speaker explained how the OS abstracts away the differences in the hardware from the applications, using device drivers. Device drivers provide a consistent interface for the applications which is made possible because Unix kernel considers everything as file including physical devices. This presents a similarity in accessing files and IO devices.

This session covered details of how device files work, major and minor mode, and how the kernel uses these modes to invoke the respective driver required by the device. This was emphasized with code examples to show how to read (and interpret) inputs of mouse events, audio playback, read hard-disk partition table – all of this aided by reading from or writing to only device files. He highlighted the limitations with this approach – it's not possible to model all device operations, like control and configuration of the device, via reading and writing to files – and how it can be overcome with system call, ioctl with live example of ejecting the CD-ROM tray using ioctl.

Serial Interface

Babu handled this session in which the primary focus was about 'Serial Communication'. With the short introduction on the internals of UART, it's cost effective in comparison to communication via Parallel Ports. He highlighted problems like, interference, attenuation caused due to out of board (or band ???) connections and solutions to overcome them. This was followed by a working exampple of a GSM modem listening to incoming text messages whose text was displayed on the LCD of the target HW using Python module, PySerial.

'I2C', an acronym for 'Inter-Integrated Circuit', a low speed serial bus developed by Philips, was taken up next. Outlining it's features, like, clock rates, master-slave architecture, he went on to describe the I2C controller and how it's used to connect I2C devices. Continuing with I2C protocol and how a transaction occurs, the participants, assisted by Babu and the rest of Zilogic folks, tried their hands on accessing accelerometer data and four way key using SMBus – this technology provides APIs for communicating with I2C slave.


Vijay started off this session by explaining about /proc filesystem, how it was used to obtain system and active processes from the kernel. With the grwoth of complex hardware, it became a necessity to export hardware information to system programs and eventually '/proc' got cluttered with lots of non-process information. And also, the information in '/proc' was not programmatically parsable though it was human readable. And hence, sysfs was born, which is an in-memory file system that exports information from kernel space to user space.

With few slides to show the characteristics of sysfs and it's hierarchy, he explained as to how devices, using /sys/class, are grouped based on functionality and, /sys/bus, where devices are grouped based on their interface. The concepts of sysfs were demonstrated with a simple task involving how to read configuration information of network interfaces, device backlight, controlling radio switches (WiFi) using sysfs. The session ended with a comparison between ioctl and sysfs for controlling/configuring devices, and when to use what.

GPIOs and PWM interface

Deepak explained the concepts of binary state high or low with simple devices like LEDs and how GPIOs can be used to switch between either of the two states thus allowing to turn ON/OFF the LEDs. With brief description of how to set the direction of GPIO pins depending on whether they act as output or input, he showed how GPIO interfaces can be accessed from user space applications through sysfs. Participants tried controlling an RGB LED and reading input from key (with the help of sysfs) on the target HW via GPIO pins.

PWM, which stands for 'Pulse Width Modulation', was lined up next – Deepak explained what is PWM, duty cycle and how they can be used to control the power generated from the source. Session ended with the partcipants attempting to control the oscillations of the piezzon buzzer on the target HW and, the speed of a DC motor , both achieved through PWM using sysfs.

ADC interface

Babu took this final session which was about Analog-to-Digital Convertor(ADC) – need for ADC, which helps to convert analog values to digital and why there are hardware devices that generate analog values that cannot be directly consumed by microcontroller(s). He showcased how to read the voltage changes in the Light Dependent Resistor(LDR) on th target HW through ADC using sysfs.

BangPypers team is very thankful to the amazing folks from Zilogic for their time and effort in conducting this workshop on embedded systems. We also thank Treebo for hosting the workshop. Hope the workshop participants had great fun and learning!

Some pics from the workshop


Talks - July, 2017

For July's session, we started with a “Machine Learning Basics” theme. The venue was Treebo Hotels, and there were 4 speakers. The talks were each of 40-minutes.

The first talk was by Shrishty Chandra and her talk was “An Introduction to Linear Regression”. She started off with fitting sets of points into curves, taking up a usecase to predict the prices of houses, given a bunch of features to describe the house with and some amount of test data with which to train the model. Then she moved on to explaining the derivative and gradient descent ways of calculating the minimum RSS value - which is the sum of squares of the errors in predictions. This was followed by some demo-ed code for the same.

YouTube video for the talk -


The second talk was by Anand , titled “How to Teach Neural Networks to Your Grandma”.He mentioned and demonstrated systems like solving linear equations and identifying numbers that utilize existing training data to create models and then use them on test data.

YouTube videos for the talk -




The third talk was presented by Suresh Saini and he spoke on the topic “Why Deep Learning” . He showed a video on how Boston Dynamics utilized Deep Learning in robots and the origins of Deep Learning, and some reasons for why Deep Learning emerged now and discussed about why it wasn't required in the past.

YouTube video for the talk -


In the final talk, Kenso spoke about the “Basics of Neural Nets” - what they are ,comparing neural nets to the physical anatomy of the human brain, what they use (supervised regression) and a usecase involving the hours of sleep and hours of study put in by a student and how that affects the marks he gets. He proceeded to speak about the importance of normalizing data and concluded with some references for the same.

YouTube video for the talk -


Hope you enjoyed the talks! See you again next time!

Some pics from the meetup -


The entire Youtube Playlist for the above mentioned talks are available here

Talks - June, 2017

For June's session, we continued the “Journey to the Kernel” theme. The venue was Nutanix, and the 3 speakers, this time spoke again on topics related to the internals of Python. The talks were each of 40-minutes.

The first talk was by Shaifali Agarwal and she spoke about Generators and how they're internally constructed.

YouTube video for the talk -


The second and third talks were by Prashant Raghu , with the second one being about How the Interpretor works from the Code Level. He started off with explaining the code structure of CPython, then moved on to speaking about how different abstracted keywords (type, list etc) could be viewed from within the CPython code.

After a short break, Prashant continued with the third session speaking about Abstract Syntax Trees.

YouTube video for the talks -

How the Interpretor works from the Code Level


Abstract Syntax Trees


The fourth and final talk was presented by Rahul Pydimukkala and his topic was A walk through CPython source tree with emphasis on the key pieces of the code of the interpreter . He spoke about how the interpretor breaks down each Python program statement into ASM (using opcodes). He illustrated this by using different sample programs and disassembling them and then showing where each of these opcodes are defined in the CPython code.

YouTube video for the talk -


Hope you enjoyed the talks! See you again next time!

Some pics from the meetup -


The entire Youtube Playlist for the above mentioned talks are available here

How BangPypers meetup is run

What is BangPypers?

BangPypers is a twelve year old group started by Anand B Pillai. For Half a decade meetup group is the anchor for organizing Python meetups in Bangalore. During the period, co-organizer has devised working for the team.

Event Types?

In last five years, the team organized Sixty-four meetups. Few early volunteers left the team. Moved to different city, nation, and continent. Kudos to everyone!

The events are half-day or whole day event. There are three main events; Talks, Workshops and Dev Sprints.

Talks are half a day event with minimum three speakers. Sometimes with six speakers. On an average, each session lasts for thirty to forty minutes. The team calls this as full-length talks. Another version of the talks is short talks or Flash talks of duration ten minutes.

Next format is the workshop. Workshops are a complete hands-on event for a half day or full day. The one or two speakers come together and handle a session.

The last format is Dev Sprint. Dev Sprint is a half a day or full day event. The developers visit the premise and work on the FOSS projects. Sometimes maintainers of the projects attend the event and help participants contribute.

All three event formats take different effort to organize. For example, talks and dev sprint require a higher degree of co-ordination to find speakers and mentors.

What are the task involved?


Finding the place for the meetup was hard in the beginning. Running a meetup in the same location, again and again, projects a company runs the meetup. Initial days were hard to find the venue. Friends and group members helped a lot. Later, attendees and business outreach team got in touch with us. Ninety participants attended the last meetup. Now the challenge is to find a bigger venue. When a company contacts us in meetup page or email to host us, we ask a handful of questions. Following are few

  • What is the capacity of the venue?
  • Can you share photos of the place?
  • Do you provide Wi-Fi to guests?
  • Do you have proper table setup? The setup is mainly for workshops.
  • Can you offer us Snacks and Lunch (optional)?
  • Do you have two wheelers and four wheeler parking facility?

In the past, we have forgotten to ask these questions and had issues. Some companies require participants to carry a Government issued Identification Card. Other companies ask for participants names in advance. We don’t share members contact information. One day before the event, the host coordinator receive the attendees name list. In one or two days, after the event, a volunteer sends out venue specific feedback to the hosts with a ‘Thank you’ note.


The speakers and topic attract the audience for the meetup. The compelling content pulls the audience to step out of the house on the weekend. For a workshop, one speaker is sufficient and with few folks to help. Finding speakers for talks is the real challenge. Call for speakers happens three weeks before the event. A volunteer sends out an email to meetup group and mailing list. Then an announcement hits Twitter and FaceBook with Meetup link. The interested audience reply in email or comment on the meetup page. Sometimes talk slots are taken in a day, and sometimes there is one free slot. A follow-up is sent in next week when a talking slot is empty.


The team's biggest challenge is knowing how many will attend the meetup. Till date, all the events were free of cost. So interested participants RSVP. Not everyone who showed interest show up for the event. During initial days, only 20% of participants who showed interest attended the meetup. Now the ratio is above 50%. RSVP opens six days before the event with 2X venue capacity with the open waitlist. Three days before a volunteer sends out an email to all participants who showed interest to un-RSVP in the case of any change in plans.

Managing meetup page

The meetup page contains details of every meetup. RSVP is accepted only on the meetup page. The members can message organizer for queries about participation, hiring, a chance for a speaking slot, hosting the meetup. The Volunteers answer the questions in the event comment section. The comment section is used differently before and after the meetup.

On the day

A volunteer reaches the venue half an hour before the start time and oversees the setup. During the meetup, volunteers introduce speakers, keep track of talk timings, share feedback link and answer individual queries. The volunteer also takes few pictures.


From the beginning, BangPypers event reports are available on the blog. Every event has a separate blog post about attendees count, how was the event, photos, and other details. The blog post goes on to social networks, meetup group, and mailing list.

Feedback form

Feedback is the fruit of the event. Feedback gives us the sense of participants thoughts, a chance for speakers to improve, where did the organizing team slip and what do members expect from future meetups. Our feedback form is Google forms and shared at the end of the meetup. The feedback form has multiple choice questions and one optional text question.


The team uses Email and Whatsapp for internal communication to discuss labor sharing, whom to contact for the venue, what topics to discuss and who will be available during the meetup, how can we and post-mortem. During any month, the volunteers start planning for next two meetups. Whether the next meetups are workshop or talks, where to host etc. You can see the team members in the meetup group co-organization section.


In last three meetups, a volunteer record talks using an iPhone and uploads to YouTube channel. The video coverage is still at the experimental stage.

The organizing team spends a significant amount of time doing all the work. On an average, the team, not an individual spends somewhere between twelve to fifteen hours monthly to run the meetup.

It has taken years for us to reach this place. If you have read this far and manage a meetup group, take a couple of hours and write up how you organize the meetup. All of us can learn from each other.

Next blog post is about lessons from organizing the meetup. Stay tuned.

Talks - May, 2017

For May's session, we continued with the “Talks” pattern, but we had a unique theme by name - “Journey to the Kernel”. The venue was VM Ware, and this time we had 5 speakers , all of them focusing in some way, on the internals of Python. The talks were each of 40-minutes.

The first talk was by Naveen Sivanandam Python of VM Ware on Containers - Deploying Web Services on Kubernetes. He spoke briefly about kubernetes and the typical infrastructure using a master,nodes, pods and services. He also demo-ed how to deploy 3 pods and run a flask app on them. The code for his talk along with the presentation can be found here.

YouTube video for the talk -


The second talk was by Dhilip Siva about Dictionaries in Python 2 and 3.
This was quite a nice session with people learning about how a dictionary could possibly be implemented starting with falsehoods where an implementation of a dictionary was only seemingly one but violated the basic principles of it by indexing keys instead of hashing. Gradually this was built upon, to demonstrate collisions of keys and how to avoid them etc.

YouTube video for the talk -


This was followed by a brief break where tea and biscuits were available at VM Ware. Naveen also spoke during this interval about how VM Ware was using Python.

The third talk was presented by Sasidhar and he spoke about How Import Works in Python i.e, what exactly happens when you say “import math” etc. in a Python program. He explained the different levels of searches that take place (first looking up in sys.module and then in the sys.meta_path and so on) finally resulting in the loading of the module. His code and slides can be obtained here.

YouTube video for the talk -


The fourth talk was by Rivas Hameed and he spoke about the Garbage Collector in Python - about basic memory allocation , garbage collection by ref counts and by tracing, along with some live examples. His thoughts on the subject can be found on his blog here.

YouTube video for the talk -

Garbage Collection

The fifth and final talk was by Piyus Gupta, speaking about the Concurrency and Parallelism in Python. He spoke about CPU scheduling , thread safety and demonstrated how different implementations with or without multiple CPUs/single or multi-threading/multiprocessing can positively or negatively influence the performance of programs. The slides for this talk can be found here.

YouTube video for the talk -

Garbage Collection

Hope you enjoyed the talks! See you again next time!

Some pics from the meetup -










The entire Youtube Playlist for the above mentioned talks are available here

Talks - Apr, 2017

For April's session, we went with the “Talks” theme again and this was hosted by Saloni of Byte Academy at CoWrks Infinity and we had 4 speakers with diverse topics for talks, each with a 15 minute duration.

The first talk was by Arvind Padmanabhan. He spoke about Functional Programming and how it could be used in Python. In the process he illustrated the usage of libraries like functools, itertools, operator and also a third-party library called toolz which provides a lot of extensibility to the existing toolkit that Python offers off-the-shelf. His iPython notebook is available for download here.

YouTube video for the talk -

Part - 1


Part - 2


The second talk was by Rivas Hameed about the Chain of Responsibility (CoR) Design Pattern.
He spoke about how the pattern could be used in a real-world scenario, illustrating how an earlier system failed due to the lack of forethought and an efficient design pattern - this was mitigated by using the CoR pattern.

YouTube video for the talk -


This was followed by a brief break where tea and biscuits were available at CoWrks to be partaken of. Byte Academy also briefly introduced themselves and mentioned the programs they were offering.

The third talk was presented by Vidya Sagar from VMWare and he spoke about Web Scraping using Python - specifically using Requests and Beautiful Soup. He also demonstrated the same with a demo of how he had performed the scraping of the website “espncricinfo”. His slides can be obtained here and the demo code for the same, here

YouTube video for the talk -


The final talk was by Tasdik Rahman and he spoke about Ansible and about Inventories, configuration files and using built-in ansible modules to run adhoc-commands
remotely on your managed hosts and using ansible roles. The talk was wound up with a demo of the same - provisioning a remote server using an ansible-playbook from controlling node. His slides are available here.

YouTube video for the talk -


The session was concluded with CoWrks mentioning briefly about themselves.

Hope you enjoyed the talks! See you again next time!

Some pics from the meetup -



The entire Youtube Playlist for the above mentioned talks are available here

Algorithms Workshop - Mar, 2017

For the second session in this month (March), we decided to conduct a beginners' workshop on Algorithms implemented in Python and this was hosted by Karthika at ThoughtFactory and the speaker was Ankur (co-founder, Numerate Labs). An afternoon session was conducted for this week as well and it started post-mic and projector logistics around 2.30 PM.

Ankur started with a description of time and space complexities, delving deeper into comparisons of different algorithms’ worst time complexities - taking sorting as his primary example. This was followed by allowing the attendees to implementing out the various sorting algorithms in Python on their own - bubble and selection for starters and then the slightly more complex - Merge Sort.

Then there was a 15 minute break with good snacks provided by ThoughtFactory.

The second half of the session focussed on searching and trees, specifically - Binary Search Trees. The scope of the overall session was decided to end here so as to allow for attendees to digest these preliminary topics, so that they would be able to appreciate the intermediate-level topics better in coming sessions.

Thanks to Ankur for conducting an informative workshop and to ThoughtFactory for hosting the event.

Hope you all had a good time learning. See you again next time!

Here are a few snapshots from the meetup -





IoT Workshop - Mar, 2017

For this month (March), we conducted an IOT workshop hosted and presented by Sudhir Rawat and Zeeshan at Microsoft.

The strength of attendance was around 75 people, more than 50% of those who had RSVP-ed which was a good indication of interest.

The first hour was spent in setting up the wifi connection for attendees and providing them with Azure credentials and distributing the Raspberry Pi kits (1 device per table was allotted - for 10 tables). Sudhir and Zeeshan had already arranged for these to be distributed efficiently, and that helped ease the whole process. Attendees also introduced themselves which allowed for a demographic expectation to be set - most people wanted an introductory hands-on experience with IOT.

Once the logistics was out of the way, the IOT Hub setup, storage configuration etc on the Azure platform was taught. The Pi devices provided had been pre-loaded with Raspbian and Python programs to communicate with the device connected. The 3 main tasks that this workshop focused on was, observing how the fingerprint sensor connected to pin 3 (for our setup) of the device relayed an acknowledgement upon being touched, creating a new device on the IOTHub and sending messages using the device to the Azure Analytics module in the Hub using Python.

The talk was well recieved and the feedback was overall very positive, requesting that a second session be conducted to continue the pattern and material of this workshop.

See you all at the next meetup! :)

PS -

The code used in the meetup can be found at Sudhir's Github link.

Block diagram as presented -

Talks - Feb, 2017

This meetup was different from previous one. Every meetup is different and unique since topics and attendees are different. This meetup was a testbed for a new format called Short Talks. Each short talk lasts for ten minutes and Q&A for five minutes. In fifteen minutes, a talk is over. We had seven such talks in Feb meetup.

Sahaj Software Solutions hosted feb meetup. Nearly 50 folks attended the meetup. The event commenced at 10:30 AM and went on til 1:00 PM.

The first talk was How TDD rescued my time by Sivasubramaniam Arunachalam. The talk showcased how TDD helped in solving a business case. The complete video is available in Periscope.

The second talk was Method Resolution Order (MRO) (for beginners and intermediates) by Arvind Padmanabhan. The crisp talk covered a couple of examples of multiple inheritances and
a linear pattern against the diamond pattern. The complete video is available in Periscope and slides in

The third talk was Lazy evaluation in Python by Rahul. Rahul showed us how iterator protocol works and being lazy he overshot the allocated time. The complete video is available in Periscope and slides in SlideShare.

The fourth talk was Data Visualisation in Python - An Overview of Libraries for Data Science by Amit Kapoor. Amit gave a short and high-level overview of Python visualization libraries. The complete video is available in Periscope and slides at SlideShare.

The fifth talk was Getting started with Python decorators by Choudhary Sourya Vatsyayan. The talk gave a quick introduction to decorators, how it works and things to keep in mind while using them. The complete video is available in YouTube and slides at

The sixth talk was My Favorite Python 3.6 features by Kracekumar. The talk showed new exciting features like f-strings, async comprehensions, and underscores in numeric literals. The complete video is available in Youtube and slides at

Out of no blue, Chillar Anand came up with the talk, Super Charge Your Shell For Python Development. The talk covered handy shortcuts and tricks for the shell. The complete video is available in Youtube.

The audience were positive, and the format was appreciated.

See you at the next meetup!

Talks - Jan, 2017

Thought Factory in Diamond District hosted first meetup of the year. The meetup started in the morning at 10:30 AM and went on till 1:00 PM. Close to 40 folks walked in. There were three talks. Two full-length talks, 30+ minutes and one 15 minutes talk.

The first talk was by Ram about setting up Jenkins Pipeline. Trust me Jenkins is a beast Open Source CI/CD/More software. Here is the link to the talk demo.

AWS lambda using Python

The second talk was by Bibhas, quick introduction to AWS Lambda using Python. AWS Lambda is one of the leading providers of serverless architecture. I feel the name is a misnomer! Here is the link to the presentation.

Concurrency in Python 3.0

Anand B gave climax talk of the meetup. He spoke about Concurrency in Python 3.0. If you have spent a little bit time in Python, you must have heard about infamous GIL! He talked about multi-threading, multi-processing, asyncio and when to use each one of them. The content is private, and you can leave a comment in the meetup against Anand's comment to receive the snippets in your inbox.

See you at the next meetup!

Pandas Workshop - November 2016

The November BangPypers workshop happened at the Clear Tax office in Hongasandra.

The workshop was an introduction to pandas. The presenters were Bargava and Amit Kapoor.

Workshop was started at 9 O clock. First half of the workshop was theory. They started with a brief explanation about data analysis and why it is required. There was a discussion about the real life examples of data analysis. Then they showed how to use Jupyter notebook and explained the basics. There was break for about 10 minutes.

After resuming from break, they started explained about using pandas with imdb dataset. They explained several operations that can be performed on dataframes. Later they gave several exercises to participants to refine, transform and model data.

Content used for workshop is available here

Here are a few snapshots from the workshop:



There was great response for the workshop. Thanks to speakers, participants for making meetup awesome and Cleartax for hosting the event.

If you need any help with Python or Bangpypers events, you chat with us at Bangpypers slack channel. If you want to give a talk or a workshop, please leave a comment on the meetup page.

Django REST Framework workshop - BangPypers October Meetup

The October Bangpypers meetup was held at the BHIVE Workspace at HSR layout. 50+ people turned up for the event.

At 10AM, Siva started off the session (well actually, Haris was late by 10 minutes :P) by introducing REST and comparing it to other ways of API development.


Haris Ibrahim rushed in at around 10.15 and quickly took over, starting with an apology.

Addressing the fact that REST has been around since 2000s, a quick explanation of what it all means was followed up with the hands-on workshop.

The session was structured as a top-down exercise, where the participants, along with the instructor, built a basic inventory system using all the magic (read abstraction) that DRF provides, and then breaking them up into pieces one by one.

It was quite interactive and at times the discussion went off on tangents addressing concerns that people had when building their products.


With a quick 10 minute break in between, we wrapped up the session at around 1.30PM. In case you missed attending the event and feel like going through the content, you can find it here:

DRF Workshop Content

Special thanks to Siva and Anand for organizing the event, and BHIVE for hosting it.

We can't wait for our next gathering! Feel the same way? Sign up for Bangpypers!

Ansible Workshop - BangPypers September Meetup

September Bangpypers meetup happened at RedHat office in Bannerghata road. 31 people attended the event.

In the previous meetup Abraham presented a talk on ansible. Many participants were interested in it and so we planned for workshop this time.

Abraham started workshop with brief explanation of virtualbox, vagrant and ansible. He helped participants to setup them.

After that he explained simple ansible modules like ping, shell e.t.c and how to run those on target machines.

Later he explained about ansible playbook and how to can configure them.

We had lunch break for about 30 minutes. After resuming from break, he showed a demo of deploying a django web app. Here he used 4 machines(1 load balancer and 3 web apps) and showed hot to automatically configure and orchestrate them.

Then he showed how to update all webservers with zero downtime.

Here are a few photos from workshop.




Workshop content can be found in gitHub.

Thanks to Abraham for conducting workshop and Redhat for hosting the event.

Talks About Automation - 2016 August Meetup

August meetup happened at the office. 60 people attended the event. For the first time, all talks were arranged in Automation theme. Thanks for the warm response from the audience and enthusiastic proposals from speakers.

We had a hiccup with the projector and lost fifteen minutes, but meet up commenced on time.

Praveen presented the first talk “Building and maintaining a self-developed test-suite”. You can find the slides of the session here.

The Second talk was by JoyDeep about “Windows task automation using pywinauto”. The crisp talk duration was fifteen minutes. You can find Slides for the talk in [GoogleDrive]( and, the code snippet in [GitHub]( Calm offered us tea and snacks during the break. The participants took a break for twenty minutes. A lot of first timers and repeated audience indulged in offline discussions about the talks and their interests. After the refreshing break, Abraham presented “Setting development environment with Ansible”. It was a lively session with questions flying from all corners of the room, and the speaker answered all of the very well. We didn’t have enough time left for Q&A. Here is the link to [slides](

The last talk of the day was from Srinath about “Building Scalable Server Automation with Python”. Srinath talked about the design drawbacks of their product over the years. How each version improved performance and how efficient is the current generation product. This talk was very well received and enabled discussion among the audience.

You can find the slides in Google Drive.

Please a take thirty seconds to provide us your feedback in this form. We highly appreciate your efforts to help us improve the meetup. We do meetups for people like you!

In case you would like to host us in your premise, leave a note on our meetup page.

Thanks to speakers for putting up a great show and, for hosting the event. Hope you had a great time with us.

See you in our next meetup.

Machine Learning Workshop - July 2016

The July BangPypers workshop happened at the AdNear office in Koramangala. More than 80 people attended the workshop.

The workshop was focused on getting started with machine learning using scikit-learn. Amol Agarwal started workshop with basics of numpy & matplotlib. He then explained what is machine learning, supervised and unsupervised learning.

After that, he explained several topics including classifiers, SVM, regression, clustering and validation. He showed machine learning use cases with examples like spam classification and facial recognition.

Content of workshop is available on github.

Here are few pictures from the workshop:




Thanks to Amol Agarwal for taking workshop and AdNear for hosting the event.

Django Workshop - June 2016 Meetup

June Bangpypers meetup happened at the Knowlarity office near Trinity. Kracekumar facilitated the workshop. 57 people attended the workshop.


The session started around 10.30AM and concluded around 4PM. The content was about web development with Django. It is for people who are new to web development and wanted to learn django.

Krace started workshop with the demo of the web application that we will be builing during workshop.


He explained how to create django projects, django apps and differences between them. Then he explained about django models, created models for Todo app and showed how to read, write & delete records from shell as well as admin.

Then he explained about views, created a hello world view. Later he showed how to create list view and detail view for Todo items.

Then we break for lunch at 1PM. Workshop resumed at 1:45PM.

During this session he explained about http methods. He showed how to create views to create new todo item, edit and delete them.

After this several participants asked various questions about django, web development and other things and Kracekumar answered them. Several participants personally thanked Krace for taking time to conduct workshop.


Content of the workshop is available on github.

Thanks to Kracekumar for facilitating the workshop and Knowlarity for hosting the event.

Talks About Mesh Networks - 2016 May Meetup

May meetup happened at the Blue Jeans in Prestige tech park. 35 people attended the event. This time we had a series of talks about Mesh networks.

Selva gave first talk. He explained about how internet works, what is a mesh network and why we need one. He also explained how mesh networks were used during chennai floods for communication when there was no other way to communicate. He also explained advantages of setting up a mesh network in rural areas and challenges in setting up them.


Second talk was given by Ganesh. He explained about the hardware for Mesh networks. He started with basics of routers, how router works, their design and how we can take complete control of it using OpenWRT. He also explained FM, design of various antennas and showed several softwares available for it.




Third talk was by Surya. He talked about P2P software applications. He explained why we need a p2p approach. Later he explained about several interesting projects Zeronet, ZeroConf, Avahi, Serval Mesh, Rumble, Murmur, opentracker, etc. Some of them are built with Python.


Slides about talks are available here and here.

At the end, there was a flash talk by Saurabh about defaultdict(collections). He explained how to implement a recursive defaultdict(a tree) and use cases of it. You can find the code here.


Bluejeans livestreamed the event. Several people who couldn't come to venue watched it online.

In case if You're interested to give talk or a workshop, please leave comment in the meetup page.

Thanks to speakers and BlueJeans for hosting & streaming the event.

April 2016 Dev Sprint Report

April BangPypers Dev Sprint happened at the [Knowlarity][] office in M. G. Road.

Dev sprint started around 10 O Clock. The agenda was to contribute to open source projects. There were 30 participants. The event started with introduction about Python open source projects and participants.

Here is the list of projects on which participants have worked.

Event winded up at 4 O clock.

Here are few pull requests which are merged.

There were few more issues where participants started but were unable to
send the pull request.

Here are a few snaps from dev sprint



More photos are available at meetup page.

Thanks for Knowlarity for offering the space and food.
Thanks to mentors for helping participants with their first contributions.
Thanks to participants for making their contributions to open source.

We also have a mailing list, slack chanel where discussion happens about Python.

Robot Framework Workshop - April 2016

Robot framework workshop at GreenBubbles startup services. 30 people attended the workshop.

Saravana started session at 10 O clock. He explained why robot framework is needed. He demonstrated how to write basic test cases using robot framework. There was break for about 10 minutes. After the break, he demonstrated how to run test suites and how to generate nice html reports. Session ended around 12:30.

Here are a few pictures from meetup.



Thanks to saravana for taking session and GreenBubbles for hosting the event.

If you want to give a talk or workshop, please leave a comment on meetup page. If you need any help with Python or Bangpypers events, you chat with us at Bangpypers slack channel.

March 2016 BangPypers Workshop Report

March Bangpypers meetup happened at the 30 people attended the meetup. Session started around 10:30.

Jitendra Agrawal conducted workshop on Solr and Indrajit Rajtilak volunteered for the session.

Apache Solr is a fast, open source and easy to use search platform built on top of Apache Lucene. He explained the limitations of database search functionality and why solr is required for searching. Then they helped participants to install and run basic queries on solr. Later speaker about customising solr.

Next, they created a simple django app. Using django-haystack, they built an index from django models. Once index is built, they quired index from CLI and also created a view to query the index.

There are lot of questions from participants and session was very interactive. You can checkout slides from here and django app code is available here.

Here are a few pictures from workshop.




Thanks to for sponsoring lunch & t-shirts.

If you wanted to give talks or conduct workshop, please leave a comment on meetup page.

Feb 2016 bangpypers workshop

The February BangPypers workshop was hosted by Sabre, attended by 60 participants. This was a joint meetup organized by BangPypers and Bangalore Operations Research Meetup.

Amit from Sabre Technologies spoke about optimzations in airlines, about industry usecase. The session was well received, followed by Q&A.

Bargava kick started the workshop, Introduction to Optimization using Python with simple problem.

Various ways to compute the solution for the problem was discussed. Each approach was discussed with its pros and cons. Every approach was solved in white board first and later in Python. Lot of classic computer science concepts like Knapsack problem, Dynamic programming, Greedy Algorithm were discussed. During the course of the workshop various problems and solutions were discussed.


The workshop material can found in Github.

Please take a minute to share your feedback to us in the form. Feel free to send us your thoughts and suggestions.

Thanks for all participanst, speakers and Sabre for hosting us.

Feb 2016 bangpypers talk report

The February BangPypers talks happened at the Grofers, attended by 70 participants. This is the first time Grofers hosted us.

First talk was Deploying a simple Django application with nginx and uwsgi on a Ubuntu server by Jagadish. Talk covered uWSGI configuration, advantage of using virtualenv, emperor mode and other key aspects of uWSGI.

Second talk was Analysing public health care of India by Unnati Team, Nischal HP and Raghotham S. Talk was centered on health care data available for Nilgris District and Chennai District from The session was interactive and lot of data related discussion sprout up. Audience interacted with speakers after talk for long time.

Third talk was Introduction to collections module by Sasidhar. Talk covered collection modules features like namedtuple, dequeue, Counter, OrderedDict, defaultdict with lot of examples. These are very handy features and used quite often.

Final talk was Dealing with Django CSRF in SPA by Akshay. This was flash talk and he covered how to handle scenairo when cookies weren't set in request.

Please take a minute to share your feedback to us in the form. Feel free to send us your thoughts and suggestions.

Thanks for all participanst, speakers and Grofers for hosting us.

January 2016 Salt stack workshop report

We kickstarted this year's meetup with salt stack workshop at mavenhive technologies. There were 23 participants.

Ram took the session. He started with what is devops, why we need dev ops and various tools available for devops.

Then he explained about salt stack, master, minion, grains, pillars, modules e.t.c and how to automate configuration management on multiple servers.

There was a break for about 10 minutes.

After resuming from break, participants then tried to deploy a web app (Junction) to a virtual machine using saltstack. There were questions about grains, pillars from participants and Ram explained clarified about them.

Here are few pictures from the meetup.




Thanks Ram for taking the session and Mavenhive for hosting us.

December 2015 Dev Sprint report

The December BangPypers Dev Sprint happened at the [AdNear][] office in Kormanagala.

Dev sprint started around 10 O Clock. The agenda was to contribute to open source projects. There were 30 participants. The event started with introduction about Python open source projects and participants.

Junction, Wye and Presentations360 were the three projects for dev sprint.

[Krace Kumar][] and [Anand][] mentored for Junction, Shanki mentored for Wye and Ramaseshan mentored for Presentations360.

Event winded up at 4 O clock.

Here are few pull requests which are merged.

There were few more issues where participants started but were unable to
send the pull request.

Here are a few snaps from dev sprint




More photos are available at meetup page.

Thanks for AdNear for offering the space, food, snacks.
Thanks to mentors for helping participants with their first contributions.
Thanks to participants for making their contributions to open source.

We also have a mailing list, slack chanel where discussion happens about Python.

November talks 2015 meetup report

The November BangPypers talks happened at the Aerospike in Ejipura. 35 people attended the event. We had 4 talks, commenced at 10:30 AM.

First talk was Android UI test automation by RajaniKanth Reddy. Talk was about uiautomator features, integration with pytest and ease of use.

First Talk

Second talk was Interacting excel files with Python xlrd module by Mahtab Alam. This was crisp talk covered, Reading multiple excel files, aggregating results and reporting the aggregate results.

Second Talk

Third talk was Python coding standards (PEP8/PEP257) by Sharad Singla. Talk focused on writing good, maintable doc string and adhering to PEP 8 standards with pointers.

Third Talk

Final talk was Pandas Data Frames by Sasidhar. Sasidhar spoke about data frames, visualizing data and inbuilt capabilities of Pandas using Mutual fund data.
Here is the link to presentation.

Fourth Talk

Thanks to speakers, participants for making meetup awesome and Aerospike for hosting the event.

November 2015 Workshop report

What a great turnout! 133 people attended Python 101 workshop. Most number of participants in the history of Bangpypers.

The November Bangpypers workshop happened at the Juniper Networks office in Kadubeesinahalli. The session started at 10:30AM and concluded around 4:30PM.

Shrishty, Nitin came forward to take workshop. Siva, Vignesh, Anurag, Janki, Madhu, Priyal Jain, Deborah Digges, Kracekumar and Anand were volunteers for the session.

Before beginning session, volunteers helped participants with installation of python. Shrishty started morning session by explaning about python interpreter and various cli options available for it. Afterwards she expained about basic things like arthimetic, variables, strings. Later she expained about python data structures(tuples, dictionaries, lists), various operations on data structures and when to use which one.

There was lunch break around 1:00pm. Juniper networks sponsored lunch. After lunch, workshop resumed around 2:00pm.

Nitin started off session with control flows. He expained about control flows, showed some examples and asked participants to solve some problems. Afterwards he expained about functions, various inbuilt functions. Then he teached about file handling. Later he expained about object oriented programming, classes, inheritance.

Entire workshop was very interactive with lots of interesting questions from participants and speakers explanation about them.

In the end, Shiva & Krace kumar took live feedback from participants and answered many questions. Thanks Juniper Networks for hosting us.

Here are a few snapshots from workshop






October 2015 meetup report

The October BangPypers talks happened at the Belong in Jeevan Bhima Nagar. 50 - 60 people attended the event on a loooong weekend, total RSVP was 96! Talks commenced at 10:15 AM.

First talks was How to use Salt Stack to create working machine from bare os by Ramaseshan. Talk covered
salt-master, minion, modules, remote executions, grains, pillars. Code sample is available in GitHub.

Second was Flash talk about PythonExpress by Shanki and Vijay. PythonExpress is platform to teach Python programming language to

Third talk was Bottle and how it helps DBA's by Darshan. This was first time Darshan speaking in meetup, audience were able to sense the excitement and happiness of finding a tool which saves time.

Final talk was Introduction to Pandas by Anand Chillar. Anand covered topics Vectorization, series, DataFrame. Lot of audience would relate ease of using Pandas while dealing with CSV files.
Here is the link to presentation.

Please take 30 seconds to fill the feedback form.

Talks concluded at 12:30 and all participants went for Lunch.

25 participants stayed back after lunch to hack on Open Source projects. Participants worked on Junction, wye, django-facebook-graph and few other pet projects. There was a git crash course.

If You're interested to give talk or a workshop, please leave comment in the meetup page.

Thanks to speakers, participants for making meetup awesome and Belong for hosting the event.

September 2015 workshop report

The September BangPypers workshop happened at the Akamai Technologies office near Bellandur.

The workshop was an introduction to data analysis. The presenters were Bargav and Amit Kapoor.

Workshop started with a brief explanation about data analysis. Later they helped participants to setup environment. They explained how to acquire data, refine it, explore data, build models and turn data into insight. They explained about various packages that are available for data analysis at various stages and particular use cases for those packages.

Content used for workshop is available here

Also there were few books available at meetup. Puneet borrowed Data Science from scrath, Shanki borrowed Two scoops of django and Anand borrowed Python for data analysis. Some free books were also distributed to participants.

Here are a few snapshots from the workshop:





Thanks to speakers, participants for making meetup awesome and Akamai Technologies for hosting the event.

If you need any help with Python or Bangpypers events, you chat with us at Bangpypers slack channel.

August 2015 workshop report

We had workshop on salt stack at RedHat office. Workshop was attended by 30 people.
Previously we had done workshop with Django, Data Visualization and this time it was on automation and configuration management. This is very niche area. We had 35 participants. Workshop had very light content. Workshop content can be found in GitHub.

Here is FB post from participant.

Thanks Saravana for taking time and RedHat for sponsoring food

August 2015 meetup report

The August BangPypers talks happened at the Blue Jeans in Prestige tech park. Nearly 50 people attended the event!

First talks was Introduction to Exception Handling by M.Tech student Janaki.


This talk covered various exceptions, why they occur, how to handle them. This talk is focused on beginners. Slides can be found here.

Second talk was Web servers - forking, pre-forking, threading, async processing by Jitendra.


This talk started with brief introduction to socket programming and then servers, forking, pre-forking, threading, async processing request. Speaker also explained the functional differences between Apache & Nginx. Slides can be found here

Third talk was Using Regular Expressions by Arvind Padmanabhan.


This talk was for beginners and entire presentation was live demo. It covered introduction to regex, basic syntax, usage of 're' module, various practical regex use cases like Django url routing, ip address matching, pitfalls with regex and when not to use regex. Code used for demo is available here.

At the end, there was a flash talk by Ram about their Product which is used for media storage management and how Python made it quite easier to build their product.


In case if You're interested to give talk or a workshop, please leave comment in the meetup page.

Thanks to speakers, participants for making meetup awesome and BlueJeans for hosting the event.

July 2015 meetup report

The July BangPypers talks happened at the LinkedIn in Prestige tech park. 82 people attended the event!

First talk was Scaling LinkedIn Infrastructure Management with Python Eco-System by Bhupendra Singh and Veerabahu Subramanian. photo1
Talk covered how monitoring, alerts are done at large scale and different libraries used.

Second talk was Avoiding common pitfalls of datetime from a webapp's perspective by Indradhanush.
Talk covered do's and don't about datetime and how to test datetime specific code. Slides can be found

Third talk was Python, Salt, BitTorrent : Cross­colo data transfer at 10GB/s by Akhil Malik.
Talk covered how LinkedIn uses torrent architecture for transfering content.
The talk was crisp, covered how saltstack is used for orchestration.

Last talk was Explore Big Data using Simple Python Code and Cloud Environment by Hari
Talk covered how to use AWS infrastructure to bring up cluster of machine and process Wikipedia dataset.
The speaker wrote small piece of python mapper and reduce program to extract the data.

In case you're interested to give talk in our next meetup,
please leave comment in the meetup page.

Kudos to participants for making the workshop great and thanks to LinkedIn for providing the space.

June 2015 workshop report

The June BangPypers workshop happened at the Akamai Technologies office near Bellandur.

The workshop was focused on getting started with machine learning using pandas, scipy, numpy, matplotlib & scikit-learn. The presenters were Bargav and Ragotham. They started workshop by explaining what is machine learning, machine learning terminology, various problems that arise in machine learning and pros, cons of various machine learning models.

After theory, they helped participants to setup environment and download sample data. After that, using pandas they have examined the sample data. Later by using scikit-learn, they showed how to classify data and how to measure the accuracy of various models.

Most of the workshop was interactive and participants asked lots of questions on the problems they had with machine learning and clarified their doubts.

Slides of workshop are here and content is available here.

Few snapshots from the workshop:



Kudos to participants for making the workshop great and thanks to Akamai Technologies for providing the space.

May 2015 meetup report

The May BangPypers workshop happened at the RedHat office in Bannerghatta Road.

The workshop was focussed on writing unit test and functional tests in Python using unittest, py.test, mock. The presenter Kracekumar started
the workshop by briefing basic command line program to create phonebook app. The application was designed to take the input from the command line
and store in Sqlite3.

Topics covered where
- How to use unittest module
- How to use py.test and why py.test
- Writing simple functions as testcases
- Using different py.test command line features
- Capturing stdout with py.test
- Setting fixtures with py.test
- Writing Test classes which py.test can pick
- Using pytest.fixture
- Running specific test module/class/function etc …
- Writing setup and teardown in pytest style
- How to mock expensive resources like network call, System Call.
- Patching modules/functions/classes.
- How to use Stubs/Fakes.

Content for the workshop is available in GitHub.

Kudos for participants making the workshop great, please take 10 seconds to fill the feedback.

Thanks for Red Hat for providing the space.

May 2015 Dev Sprint report

The May BangPypers Dev Sprint happened at the ThoughtWorks office in Kormanagala.

The agenda was to contribute to open source projects. There were 40 participants. The event started with introduction about Python open source projects and participants. The participants were mix of beginners and experienced contributors. We had 4 mentors Arun Ravindran, Sayan, Harsh Gupta, Krace.

Lot of pull requests were sent, new issues were created and learnings. Following are few

There were few more projects where participants started but were unable to
send the pull request.

Few tweets/photos by participants and mentors

Few photos are available in our meetup page.

Thanks for ThoughtWorks for offering the space, food, snacks.
Big kudos to mentors, participants to making the event fun.

We also have a mailing list where discussion happens about Python.

April 2015 Meetup report

The April BangPypers meetup happened at IBM, Domlur. This time we had 4 talks from 10:30AM to 1.10PM.

40+ people attended the talks. The first talk was about Enough iPython For Everyday Programming by Anand Reddy Pandikunta.
The talk covered various IPython features, integration with Emacs etc … There were lot of interaction from participants. Here is the link to

Second talk was by Bargava and Ragotham about plotting libraries in Python. The talk provoked lot of interesting discussions.

Third talk was by Anirudh about Basics of NLP. The slides for the talk can
found in slideshare.

Last talk was by Arun Ravindran about Emacs and Python. There were lot of Emacs users in our meetups :-)
Presentation was in org mode and markdown version.

There were lot of discussions during and after talks. Thanks for all speakers, participants and IBM for hosting the event.

March 2015 Meetup report

The March BangPypers meetup happened at ZeOmega in Banasvadi. This time we had a total of 2 talks from 10:30AM to 2.00PM.

40+ people attended the talks. The first talk was about Experience of building desktop apps with WxPython by Sayantan Bhattacharya. The talk covered various topics on WxPython and do's and don'ts.


Second talk was by Anand B Pillai about Gotchas in Python. The talk covered gotchas in floating numbers, mutable variables, class variables, instance variables, methods, functions etc … It was great interaction from participants.

This session went for two hours and workshop content can be used downloaded from here.
In case if you would like to use the material you need to seek permission from Anand.


We would like to thank ZeOmega for sponsoring the venue. Big kudos for speakers and participants.


Feburary 2015 Meetup report

The Feburary Bangpypers meetup happened at the IBM accelerator, EGL, Domlur. This time we had a total of 3 talks from 10:30AM to 12:45PM.

41 people attended the talks. The first talk Emacs as Python IDE by
Anand. The talk was walk through of different emacs packages which saves
lot of time while using Emacs. Obviously there were vim users :-). We didn't have any flame war!


Second talk was by Vinayak about Data analysis using pandas.
We had hiccup for 15 minutes with laptop, then we resumed the talk. Vinayak gave good introduction about pandas. Lot of audience actively participated in discussion about high level vs low level framework for data analysis and machine learning.


Last and final talk was about using MongoDB with PyMongo by Kushan. Talk covered what is document store, how it is different from SQL, comparison of SQL statements and MongoDB statements.


Few more photos can be found here.

We would like to thank IBM for sponsoring the venue and food. Big kudos for speakers and participants.

January 2015 Meetup report

The January Bangpypers meetup happened at the Goibibo office near Trinity Metro
Station. This time we had a total of six talks from 10:30AM to 1:15PM.

45 people attended the talks. The first talk An introduction to faster data
processing using Blaze
Bargava. The talk explained the different pros and
cons of using Blaze for data processing. The next talk Living in Farm and
Learning Python by Vaibhav. Vaibhav talked on his life at Jaaga Study and how
he leads a disciplined life and thrives to learn something new everyday.


After the break, Sushant gave a talk on Writing an Ansible Module. He started
off with a small introduction to Ansible. Later, he talked on about roles, playbooks and
tasks in Ansible and how Ansible is the perfect tool for provisioning your
servers and how easy its to get started with Ansible. The next talk was taken
by Abhishek on Heroku starter
. He gave a demonstration of a
minimalistic template he wrote for starting off with a Django project and
deploying it to Heroku.

Jaseem explained the library named
Colander. He explained the main components
of Colander - serialization, de-serialization and validation. He also demoed a
few examples on how trivial its to do validation in Colander. The last talk
was by Sriram on Robot Framework. He discussed on how to automate the
process of testing using the Robot Framework.


Thank you 2014

2014 was great year for BangPypers. We had workshops, talks and dev sprints.
Thanks for all our sponsors.
- ApiGee
- LinkedIn
- Akamai
- Intuit
- ZeOmega
- InMobi
- Bang The Table

Thanks for all our speakers and mentors
- Siva
- Haris
- Anand B Pillai
- Jaseem
- Baiju
- Sayan
- Arun
- Sanket
- Vignesh Sarma
- Elvis,
- Kracekumar.

Complete list of 2014 event details can be found in the blog.

Finally, a big thanks for all participants :-). See you all in 2015!

December 2014 Dev Sprint report

The December BangPypers meetup happened at the APIGee office in Kormanagala. This time we didn't have workshops or talks but dev sprint.

The agenda was to contribute to open source projects. There were 53 participants. The event started with introduction about projects participants would like to work on. The participants were mix of beginners and experienced contributors. We had 5 mentors, Baiju, Sayan, Siva, Elvis, Krace.


Participants worked on following open source projects CPSLib, dubdubdub,
uiautomator, fedora-infra, Network Visualization, genetic-drift, nidaba, Junction, pelican-pyembed, pssi, gridic, arrow, pynsq, rpmdev-assistant, cloudlynt. The mentors helped some participants to send their first pull request!

The participants were excited to see demo by Elvis, a note/time grid that helps create small fragments of music.
Here is a list of pull requests and commits by participants (not in any order)

Comments by participants can be found in meetup page.

Big thanks for APIgee for sponsoring food and venue for the meetup and pssi for sponsoring the t-shirt. Complete photos of the event can be found in G+ page.

We also have a mailing list where discussion happens about Python.

November 2014 Meetup report

The November BangPypers meetup happened at the Bang The Table office in Indira Nagar. Sayan and Arun facilitated the workshop. Krace helped the meetup as a volunteer.

It's been around 6 months, since we conducted Python 101 session. We felt it is good time to conduct one. Without any surprise it was very well received.

55 people attended the session.

Arun handled morning session about variables, conditions, loops, strings, functions and list.

We had a great heavy Indian lunch and Sayan resumed the session around 1.45 PM.
Sayan covered inbuilt functions, dictionary, tuples, files, class, exception handling.


We wrapped the session by 4.00 PM. Ramesh and his friend borrowed Python 101 book and Two Scoops of Django 1.6.

Find list of python resources here

Special thanks to Nandaja for being a great help in organizing the event at Bang The Table.

We also have a mailing list where discussion happens about Python.

October 2014 Meetup report

The October Bangpypers meetup happened at the InMobi office near Bellandur. Sanketsaurav facilitated the workshop. Krace helped the meetup as a volunteer.

The workshop was focussed on build REST Service using TastyPie. The workshop started at 10.25 and wen t to till 1.45. Sanket explained all the concepts required to build REST service in depth with examples.

There were about 35 participants for the workshop.

Find the content of the workshop here

Special thanks to Iliyas Shirol for being a great help in organizing the event at InMobi.

We also have a mailing list where discussion happens about Python.

August 2014 Meetup report

The August Bangpypers meetup happened at the InMobi office near Bellandur. Kracekumar facilitated the workshop. Siva helped the meetup as a volunteer. After a few initial hiccups of trying to get the projector up and running the session started around 10.30AM and concluded around 1:30PM.

The content was about what all goes into writing a web framework. It was targeted at people who already had some experience with using a framework. Starting off with the very basics oh handling a request and sending a response, the workshop was taken forward step by step.

There were about 45 participants for the workshop, one of them personally thanking Krace for all the workshops that he had done previously. Apparently after attending them and learning Python, he recently got a Python gig.

Towards the end, a copy of Two Scoops of Django and Python 101 were circulated among the participants. Some of the participants and organizers hung around to discuss about the upcoming Python India Conference and the Python Express initiative.

Find the content of the workshop here

Special thanks to Iliyas Shirol for being a great help in organizing the event at InMobi.

June 2014 Workshop report

The June Bangpypers workshop happened at the Apigee office, Koramangala. Kracekumar facilitated the workshop. Siva came forward as volunteer. The session started at 10:30AM and concluded around 1:30PM.

The workshop covered following topics

  • Classes
  • Inheritance
  • Composition
  • Unit Testing
  • Class methods

Find the exercises and solutions used for the workshop here:

As was the case for the past couple of meetups, 47 people attended. The workshop covered quite advanced topics like classmethods. The workshop was hands on where participants developed contact book application.

June 2014 bangpypers talk report

The June Bangpypers talk happened at the Apigee, Koramangala. After 6 months we had talks! Talks started at 3.00 PM and ended at 5.00 PM.

25 people attended the talks. There were two talks. First talk was writing better python code by Kracekumar. The talk took few badly written python code and showed how to make the code better. Talk went for 40 minutes. Second talk was What is magic methods by Vignesh sarma. This was an excellent talk covering __len__ and other magic methods. Talk went for 50 minutes.

May 2014 Meetup report

The May Bangpypers meetup happened at the Intuit office near Bellandur. Kracekumar facilitated the workshop. Haris Ibrahim K V, Sayan Chowdhury and Siva came forward as volunteers. The session started at 10:30AM and concluded around 4:30PM. Following this, we had the volunteers meeting for InPycon for which a few of the participants joined in as well.

The meetup was organized as a continuation to last month's beginner-level problem-solving Python workshop. As such, it focused on the following intermediate topics:

  • Passing functions as arguments to functions
  • Decorators
  • Introduction to classes
  • Inheritance
  • Recursion
  • Unit Testing
  • Installing third party libraries
  • Using standard library and third party libraries

Find the exercises and solutions used for the workshop here:

As was the case for the past couple of meetups, 50 people attended. The entire cafeteria got occupied and we had to pull in chairs around the area to accommodate those few who were late to join the party. Krace started off by doing a quick recap of what was covered during the last meetup. Making sure everyone was on the same page, he jumped into functions. Slowly building upon one function after the other, he hand held the crowd to be prepared for the scarier parts that were to follow.

By the time decorators came into the picture, everyone had their brains working high. After giving a quick peek, lunch was served around 1:00PM. In spite of the 1 hour lunch break, surprisingly, everyone finished off the Subway Burrito in a hurry, took a swing of the Mango Juice served along with it, and were ready by 1:30PM for the session to continue. Fed and their brain's chugging, we continued with decorators at 1:45PM.

Just before getting started, there was a special announcement. Daniel Roy Greenfeld, the co-author of Two Scoops of Django, had donated a copy of the new edition of his book to Bangpypers. We decided that the best way for the community to use the book would be to pass it on from person to person every month. Upon collectively agreeing to this norm, the book was awarded to its first keeper, Siva. Hopefully, the mantle will be passed on during each meetup from now on.

Finishing one part after the other, Krace made writing tests a parallel task from the beginning onwards. Giving a rock solid explanation on classes and its use, the workshop was concluded by 4:30PM. There were bonds strengthened, new friends made and good will spread around among the Puys all through the day. We shook hands and left, impatiently waiting for the next gathering.

April 2014 Meetup report

51 Puys! The greatest turnout yet. There was not event one chair left unoccupied in the hall. The enthusiasm of such a large crowd does give us all a hint about the demand in the industry for beginner level Python training. With the organizer, Kracekumar himself facilitating the workshop, the in-depth beginner level session was received by the crowd with much appreciation. The April Bangpypers meetup happened at the Akamai office near Bellandur. Kartik, Haris and Sayan came forward as volunteers. The session started at 10:30AM and concluded around 6:00PM.

Kicking off the workshop by getting to know the crowd better, Krace quickly got into the exercises, thereby getting everyone hands-on. The workshop was structured as a series of exercises in folder, along with their respective solutions in another. The material was shared in advance with the audience. The instructor went over each exercise (which were separated into individual files) by first demoing the concept using the Python interpreter and then letting the audience try it out within the file. You can find the course content comprising of the exercises and solutions here.

The session was riddled with questions from the participants. Being a man of patience, Krace took all of them, refined them and gave a solid explanation along with all the answers. We broke for lunch at about 1:30PM. Akamai was generous enough to sponsor huge mean boxes consisting of rice, curries, sweets and a pack of juice. We wrapped up luch by 2:30PM, at the point which Akamai gave us a short demo of their world wide service. All of us were taken into a room that resembled the cockpit of a spaceship where on a huge screen, you could see the globe rotating, having streaks of green and yellow depicting Akamai's realtime traffic, which apparently consisted of 40% of the world's!

The workshop resumed at 2:45PM, continuing from list, dictionaries, list & dictionary comprehensions to files, error handling and standard libraries. The session covered all these and went on till about 6:00PM. Although that was more than the estimated time, the audience did not have the slightest of problems with the delay, due to the excellent workshop. Krace, having imparted the best practices, basic Python knowledge as well as the idiomatic approach to writing Python code, concluded his session by pointing them at other resources which they could follow up with as exercises.

At around 6:15, all of us parted, exchanging good-byes and wishing each other to meet within another month!

March 2014 Meetup report

“Writing tests is an absolute waste of time”, some of them say.

Well, we do not think so. The March Bangpypers meetup was a hands on workshop covering TDD with Django. Just like last time, an enthusiastic crowd of 42 attended the session. It was held at the Apigee office in Koramangala. Facilitated by Siva, the session started at around 10:30AM and went on till 3:30PM. Unlike the previous sessions, Kracekumar was the only volunteer to help the participants.

The workshop started by telling everyone the importance of writing tests, the concept and theory of Test Driven Development and how it could help one tremendously while writing code. Although a bit hectic at first, it is a practice that would certainly pay off when it comes to catching the bugs in your code before it is deployed in production. The Repo and the session notes can be found here.

The session focussed on using selenium for writing functional tests and the Python unittest library for writing unit tests. As you can see from the notes, each step was implemented step by step, one at a time making sure that the crowd was following along. The functional tests were bundled in a standalone package whereas the unittests were written within the file of the newly created Django app.

The concept of writing tests for a piece of code that was not written, was quite alien to almost all the participants. “TDD is like martial arts”, stated Siva towards the end. “You cannot learn it in one day. First you have to go through all the troublesome exercises before getting to the actual kicking and punching part”.

Making voluntary, common mistakes in his code, the instructor made the participant experience newbie mistakes that anyone could make. Thereby making them think it through and finding a solution. The well laid out exercise along with the elegant presentation imparted a great deal of knowledge to the attendees.

The workshop was wrapped up by 3:30PM after which, all of us hungout a bit talking to each other about different technologies and how they compare with each other. Certain participants had a couple of doubts about the session to be clearted who stuck with Siva for a while to get everything cleared.

By 4:15, all of us were on our ways, waiting to come together once more for the next meetup!

February 2014 Meetup report

Surprisingly, the February Bangpypers meetup witnessed a whooping crowd of 46 Puys attending it. The LinkedIN office space where it was being held, had to be modified a little in order to accommodate everyone comfortably. The meetup was in the form a full-day hands on beginner level Python workshop. It was facilitated by Haris Ibrahim K. V. The agenda was to work through problems, thereby introducing and teaching Python. Kracekumar, Siva, Sayan and Souradeep came forward willingly to help the participants out whenever they had any doubt.

The workshop, which was supposed to commence at 10:00AM, got delayed by half an hour as people were pouring in one after the other. It started off by teaching everyone to fly with Python by importing 'antigravity'. After the initial gimmick was done with, the customary “Hello world” program was written, comparing it with the way it would be if this was a beginner Java or C workshop. God forbid.

The instructor used a library book storing application as an exercise that was continuously built upon during the duration of the course. He had another set of questions which were used to demonstrate and understand certain specific concepts. The audience had a mix of absolute Python beginners as well as others who had a little bit of experience using it. The willingness to learn along with their warm and friendly nature gave the gathering a pleasant atmosphere both in terms of learning Python as well as interacting during the session.

The topics covered included:
* Working with the basic data types
* Understanding Data structures well such as dictionaries, lists and tuples
* Control flow statements including if, for loop and while loop
* Writing functions and understanding parameter passing
* File IO
* A short introduction to writing classes

The workshop finished around 3:30PM. Everyone hung out for a while discussing the various areas where Python was used, the various resources to learn Python from followed by a short talk by LinkedIN on where they were using Python and how. Everyone collected the cool t-shirts LinkedIN was giving away and parted, looking forward to the next meetup.

January 2014 Meetup report

Django unchained!

The January Bangpypers meetup happened at the Apigee office. The organizers, as a part of trying to improvise and improve the quality of the meetups, decided to do a full day session on using the Python Django framework. The trio of Siva, Sayan and Haris were burdened with the responsibility of preparing the content and delivering the workshop. Siva put forward the idea of doing the tutorial in a step by step manner. He created the tutorial content on GitHub with a branch for each step. Find the repo here. Kartik accompanied the team to help out the participants.


The workshop commenced at 10:30AM with around 25 participants.

Sayan kicked off by introducing Django, its features and its structure. He further dived down deep into describing the various settings as well sa workflow possible thereby imparting a solid structure to the participants. He wound up his instroductory session at around 11.15AM.

Next up, it was Haris who had to handle the first and second tutorials. Enlightening the crowd with the customary “Hello World” application, he started by explaining how the different parts of a Django project tied together. He explained and demonstrated by giving a hands on session regarding writing a “Hello World” app. He presented both the approach of directly returning a response as well as using a template in order to render the HTML. He finished off his session in about an hour.

Just before lunch break, Siva took the stage and introduced the flow and structure of the third tutorial. Once everyone got the idea of what was coming, the gathering took a break for lunch at 1:00PM and had some awesome pizzas sposored by Apigee. Everyone got back together at 1:45PM and the session commenced. He had explained each step of his tutorial one by one in this gist. This helped the participants a lot in terms of getting together their bearings once things went too far for them to follow.

Demoing and giving a hands on workshop covering each step one by one, he imparted a clear view of how Django worked, how they could do useful things and how to carry it on forward. The concept of views, forms, models, templating engine, MVT as well validation were covered with simple but non-trivial examples. He concluded his session by 3.15PM by giving a few advices on best practices to follow.

Sayan again took the stage in order to explain in detail the admin features as well about the templating. He went on explaining about how the admin would automatically generate fields for all the models written in a particular Django project to how the templating engine works. Its capabilities, features and best practices of using it. He finished off the last part around 4.315PM.

By this time, the audience were really interested to know more about and around the Python community. They had been really interactive during the workshop, following each line, asking doubts and making sure they learnt whatver was being taught. Towards the end, questions, both related to Django as well as Python started pouring in. It was a wonderful time where the instructors as well as [Krace][], the main organizer, addressed each of their queries one by one.

Questions regarding flask v/s Django, Django ORM, static files, templating engine, deployment, learning curve and a lot more were asked and discussed. The meeting was adjourned at 5PM and everyone parted to their own ways after exchanging good byes.

December 2013 Meetup report

The December Bangpypers meetup happened at the ThoughtWorks office. Instead of just the usual 3 hour meetup, this time, we had a beginner level Python workshop in the morning which almost the same number of people attended.


The workshop commenced at 10:00AM and was facilitated by Sayan. After introudcing Python, he dived deeper into it with hands on exercises for basic strings, data structures and conditions. The session was very interactive and it came to and end at 1:45PM. Find his slides below:


After finishing the workshop as well as lunch, everyone gathered back at the TW hall around 3PM and the sessions started at around 3:20PM.

The sessions kicked off with Kracekumar's introduction to iPython. He started off by explaining the various difficulties that users face while fiddling around with the normal Python shell, multiline editing being the major bottle neck. He went one explaining the myriad of features that came with iPython that helped make life much easier.
Auto-completion, iPython notebook, running system command from within the interpreter, getting help for the objects, and ended with displaying nbviewer, where you could share your iPython notebooks as gists. You can find his notebook here.

Next up was Shoaib Najeeb with his talk on using Cassandra from Pycassa. It was quite an elaborate talk where he started right from the basics explaining the NoSQL database layout contrasting it with the RDBMS ones. After having gotten everyone on the same page with the Cassandra basics, he then moved onto explaining the CAP theorem as well as the configuration required on Pycassa to get it up and running. The session was extremely interactive where he was bombarded with questions, all of which he replied to to the best of his knowledge. As time was running out, leaving his audience thirsty for more, he concluded his session by 5:40PM. The link to his presentation will be updated soon.

To end the day's fireworks, we had Fayaz presenting his session on logging. He started off from the basics, explaining the need for logging in any project that was going into production. Moving forward by sharing some of his insights into the best practices of using logging, he introduced various features that came with the library. He also mentioned some useful utilities such as the Redis Handler, the FingersCrossedHandler as well as the TicketingHandler. Having convinced his audience to go back and get started with logging, he wound up his session by 6:15PM, thereby bringing the meetup to an end. His presentation shall be shared soon.

Thanks to everyone who attended and let's keep the ball rolling folks!

December 2013 Meetup

December Bangpypers will be held at ThoughtWorks office. This time we are taking new initiative for workshops.

Next few months we are planning to have workshops, tutorials in the morning and talks in the afternoon. RSVP here.



  1. Introduction to Python - Beginner level - 9:30 AM - 1:30 PM by Sayan.

Please install 2.7.x (not 3.x) in your laptop.


Talks: (3:00 - 5:00 PM)

  1. Introduction to IPython - Beginner level - Kracekumar - 30 minutes.

  2. Intro Pycassa - Shoaib

    This talk will start with a high level introduction to Cassandra and its data model. A major portion of the talk will be used for understanding Pycassa, the python client library for Cassandra and exploring various pycassa methods for interacting with the Cassandra data model.

  3. Logging and error reporting for fairly large projects - Fayaz.

November 2013 Meetup report

November Bangpypers held at ThoughtWorks office. 15 people attended the meetup.


Kracekumar gave talk about creating python project skeleton.

Saurabh gave a talk about using docopt. It was lucid and clean explanation.

Kracekumar gave talk Django vs Flask.

Shantnu gave a lighting talk about graphite.

Kracekumar also gave a lighting talk about how to use ipython to write blog post.

July 2013 Meetup Videos

July Bangpypers held at Google office. 50 people attended the meetup. There was lot of discussion and crowd
was fantastic. We were unable to have Django logging talk by Siva which will be continued in next month meetup.


Anand gave talk about Python 3 features.

Saurabh was supposed to give a flash talk about decorators but it ended up being full length 38 mins talk.

Lakshman gave a talk about using IPython and Pandas for analysing what Head Phone to buy. He also wrote a medium post about it.

May Meetup

Bangpypers may meetup was be held on 18th, May 2013 in [Alphalabs][] JP Nagar .


  1. Introduction to map/reduce by Anand.

  2. Run Python in browser by Kracekumar.

    Run python in browser is talk about how to run python in browser without sending request to server.Empythoned is a project that converts CPython to LLVM bitcode and emscripten converts LLVM bitcode to javascript. Here is the code used in demo, feel free to contact kracekumar for further details.

  3. Experience in writing Python to Javascript compiler - pyjs by Anand

    This talk also featured in Pycon India 2011.

You can subscribe to mailing list, meetup page, facebook page, youtube channel.

Bangpypers group expertise & interest poll

I have created poll to have better understanding of bangpypers meetup group expertise level, as co-organizer of the group it helps me to tell to speaker about audience level and expertise. It helps them to tune to audience level with relevant examples, talk content.

Please cast the vote in the following polls.

In case you have any other suggestions please write back to me

March Meetup Report

Bangpypers march meetup was held on 23rd, March 2013 in FSMK office in

FSMK Office
No. 121/17, 1st Floor, 6th main, 14th Cross, 
Wilson garden, Bengaluru - 560030

from 2.00PM to 4.30PM, 25 people gathered.

Siva gave session how to get started with Django web development, showed a
demo how to create a todo list using Django admin interface.

There was one lightning talk by Arun about his
experience of using python standard library to scrape internal live journal

During recording audio input was mistakenly connected to audio output of
the lecture recorder, as a result audio for Siva's session was lost.
Unfortunately camera backup of the video was delayed in recording and only
speaker face was focused, as a result video is now unusable. Sorry :-(.

March Meetup

Bangpypers march meetup will be held on 23rd, March 2013 in FSMK office in

FSMK Office
No. 121/17, 1st Floor, 6th main, 14th Cross, 
Wilson garden, Bengaluru - 560030

from 2.00PM to 5.00PM.


  1. Introduction to Django by Siva
  2. Lighting talks(Anyone can present) about Python Tools, internals, frameworks, third party libraries.


  1. Kracekumar Ramaraju: 8553029521 - Bangpypers Coordinator
  2. Shaiju: 8892324346 - FSMK Volunteer

February Meetup Videos

Jonathan Toomim gave talk about his HEG/near-infrared spectroscopy work.

One more talk was about IronWASP - security tool which is written in C#, and it is usable with IronPython.

Two lighting talks, one about bpython and other about python editors.

25 people attended meetup in CIS.

January Meetup Videos

Anand gave talk about 15+ people attended the session. The video is 1:34 hours.

We didn't have time for lighting talks.

December Meetup Videos

Anand gave talk about implementing python interpreter as part of PLOnlineCourse. The talk is of two parts.

Bangpypers has a playlist in for all meetup videos.

January Bangpypers Meetup

January BangPypers meetup will be held on 19th, January in CIS, Domlur. RSVP


Centre for Internet and Society
No 194, 2nd C Cross, 4th Main
Opp. Domlur Club, Domlur 2nd Stage
Bangalore, Karnataka – 560 071
Ph: 85530-29521

Meetup will start at 3:00 PM.


  1. Introduction to - Anand
  2. Lighting talks.

After the meetup, interested people can join aaronsw memorial hacknight.

December Bangpypers Meetup

December BangPypers meetup will be held on 15th, December in learnstreet office. RSVP


26,Second Floor,Zam Zam Center,
Infantry Road, Bangalore,
Karnataka - 560001, India.
Phone:  +91 80-22861869
Fax: +91 80-22861869 

Meetup will start at 3:00 PM.


  1. Experience in implementing Python Interpreter as part of PLOnlineCourse - Anand

In case any one want to have discussion about particular topic it is welcome. Feel free to leave a comment.


Attended by roughly 15 people.

At 17:30, Anand completed his presentation on his interpreter.

Started a discussion on the website. The points that came up are.


  1. Conduct community projects - Bangpypers can spearhead projects which the local user group can work on.

Site suggestions

  1. Root the blog at and then by date e.g. This entry would be
  2. We need a subscribe link on the website.
  3. We need an embedded “recent Bangpypers mail threads” widget on the site.
  4. Design love. The site needs a lot of of design love. There were some suggestions from the audience. The plan is for the interested parties (Sidharth) to send mockups to the mailing list.
  5. We need a college catalogue (like the Pune company catalogue).
  6. We need a member roster.
  7. Take appropriate steps to rename the @pyconindia twitter account and use @pythonindia for all notifications of user group meetups and everything else.

November Bangpypers Meetup

November BangPypers meetup was in InfoToros office, JP nagar on 24th.

There were 10 ten people and there were two talks.

We had mix of audience beginners, intermediate, advanced.

Baiju gave Introduction about python usage, history, comparision for 7 minutes. Video is uploaded in Youtube channel.

There was another talk by Nandhakumar about django_social_auth experience around 1 hour. Here is the video.

Bangpypers has a youtube playlist, please share the info.