Skip to main content

A look at how Caktus Group built PyCon 2015, Libya's SMS voter registration, and more

Each July, the launch of the upcoming year's conference website is a huge moment for the PyCon team and community. It's a beacon to everyone that another PyCon is on the way, and a sign that the various teams that shape the event are already hard at work to prepare for it. For yet another year, we have a beautiful site in front of us: https://us.pycon.org/2015, designed and implemented by long time sponsor Caktus Group.

As with years past, the site is built on Django and Symposion, a conference management framework in use by several conferences in the Python community and otherwise. Caktus' prior involvement with that combination of technologies meant "we were able to concentrate on bug fixes and small features that make a big difference to the conference organizers," according to Rebecca Muraya, Caktus' lead developer on the PyCon 2015 site. Having been around the block with that stack has resulted in a higher quality site, and left more time to spend on the visual aspects of the site.

"One of the few requirements was the design should have color and energy and something that tied to the Palais [des congrès de MontrĂ©al]," Trevor Ray, lead designer, said of our request to include the vibrant colors found inside and out of the venue. Beyond the structure, what happens inside was equally as important to represent in the design, especially the talks - both on stage and in the hallways.


"Fueled by this idea, we focused on creating a design that communicated the idea of diversity, mingling crowds, and the energy you feel while you’re at a truly great conference. We wanted the colors to talk about PyCon, not only the Palais," said Trevor of the flowing snake-like colored ribbon.

Having spent nearly all of my time outside of talks the last few years, I saw this immediately. The free flowing nature of the color stream crossing back on itself, looping around, randomly appearing out of the sides as you scroll down the front page - that's a walk through the halls of PyCon to me. The size, direction, and shape of each color in the ribbon changing represents the different conversations with different groups going in slightly different directions at each step.

"It was both a great challenge and a wonderful opportunity to create a design for PyCon 2015. With the great feedback of the PyCon organizers and the input from the entire Caktus team I think the project has been a great success," said Trevor.

All the while, Caktus has been busy continuing work with iN DEMAND, one of the largest providers of pay-per-view and video on demand services. According to Hao Nguygen, through their work with iN DEMAND they've uploaded 1.3 petabytes of movies into the system. They're also working with the International Rescue Committee, a group which helped over 13 million people affected by humanitarian crises around the world. "Our portfolio really emphasizes projects that are complex and highly scalable since that, for us, is where it gets interesting, where high quality code matters most," says Hao.

One of the most interesting pieces of their portfolio is the work they've done to implement SMS voter registration in Libya. Due to the ubiquity of SMS technology in Libya, where there are 163 cell phone subscriptions per 100 Libyans as of 2013, the government mandated that registration be carried out via SMS.

In order to build the system, Caktus went with RapidSMS, a Django-based SMS framework. "We’ve implemented RapidSMS applications for UNICEF in Rwanda, Malawi, and Zambia," said Tobias McNulty, CEO of Caktus, experience which helped them build the Libyan system that saw 1.5 million registrants across two elections.

Tobias went on to mention how political instability raised the stakes not only for delivery of the project within time and budget constraints, but how that instability led to the need for a system that
didn't rely on in-person registration. A Caktus case study mentioned 78 in-person registration stations having been forcibly closed by violence in December 2013, among the many reasons why an SMS system was needed by the Libyan High National Elections Commission.

"Our software integrates with Vumi, an application focused on connecting to mobile network operators in a very scalable fashion," said Vinod Kurup, Caktus' lead developer on the registration project. The application is built on top of Twisted, with heavy use of Celery to offload their message processing. Deployment is managed with Fabric and Salt. They also got a lot of use out of Django and a host of Django libraries under the hood.


"As you can see, one of the major reasons that Python is attractive is that it can handle so many diverse aspects of the application, from the web, to the SMS backend, to asynchronous processing, to mobile network connectivity, to deployment," continued Vinod. "The combination of simplicity and power made it an obvious choice for this project."


Beyond development projects, Caktus is currently building out classroom space and curriculum for their upcoming Python and Django courses. Called Astro Code School, the three and twelve week courses are heading for a spring time launch, with plans for corporate training as well.

As for PyCon itself, Caktus is looking forward to getting back to Montreal for another year. "Aside from manning our booth, we’re hoping to attend talks, say hello to folks we know, and meet new people," says Hao, so go up and introduce yourself. They're also sponsoring Django Girls and PyLadies as well!

Comments

Popular posts from this blog

PyCon 2019 Registration is Open!

It is that time of year! Registration for PyCon 2019 has launched and once again we are selling the first 800 tickets at a discounted rate.
How to register Once you have created an account on us.pycon.org, you can register via the registration tab on the conference website.
Registration costs The early bird pricing is $550 for corporate, $350 for individuals, and $100 for students. Once we sell the first 800 tickets, regular prices will go into effect. Regular pricing will be $700 for corporate, $400 for individuals, and $125 for students.
PyCon will take place May 1-9, 2019 in Cleveland, Ohio. The core of the conference May 3-5, 2019 packs in three days worth of our community’s 95 best talks, amazing keynote speakers, and our famed lightning talks to close out each day, but it is much more than that.
It’s having over 3,000 people in one place to learn from and share with. It’s joining a conversation in the hallway with the creators of open source projects. It’s taking yourself from…

PyCon 2019 Launches Financial Aid

The PyCon conference prides itself on being affordable. However, registration is only one of several expenses an attendee must incur, and it’s likely the smallest one. Flying, whether halfway around the world or from a few hundred miles away, is more expensive. Staying in a hotel for a few days is also more expensive. All together, the cost of attending a conference can become prohibitively expensive. That’s where PyCon's Financial Aid program comes in. We’re opening applications for Financial Aid today, and we’ll be accepting them through February 12, 2019.
To apply, first set up an account on the site, and then you will be able to fill out the application here or through your dashboard.

For those proposing talks, tutorials, or posters, selecting the “I require a speaker grant if my proposal is accepted” box on your speaker profile serves as your request, so you do not need to fill out the financial aid application. Upon acceptance, we’ll contact the speakers who checked that box t…

Pycon 2019 Call for Proposals is Open!

The time is upon us again! PyCon 2019’s Call for Proposals has officially opened for talks, tutorials, posters, education summit presentations, as well as the hatchery program PyCon Charlas. PyCon is made by you, so we need you to share what you’re working on, how you’re working on it, what you’ve learned, what you’re learning, and so much more.

Please make note of important deadlines for submissions:
Tutorial proposals are due November 26, 2018.Talk, Charlas, Poster, and Education Summit proposals are due January 3, 2019.
Who should write a proposal? Everyone! If you’re reading this post, you should write a proposal. PyCon is about uniting and building the Python community, and we won’t advance as an open community if we’re not open with each other about what we’ve learned throughout our time in it. It isn’t about being the smartest one in the room, so we don’t just pick all of the expert talks. It’s about helping everyone move together. “A rising tide lifts all boats,” if you will.

We…