Sheena O'Connell

GitHub: sheenarbw

I'm the CTO of Umuzi. I build code and systems in order to build people up.

(will fill this in some more in the near future :) )

Accepted Talks:

Django Rest Framework <3 Redux

Django Rest Framework lets you rapidly create well behaved, increadibly consistent, REST api endpoints on your Django app. It's pretty great and its saved me personally a lot of time.

A very common thing to do is take your Django app and treat that as a backend to a modern frontend built in something like Vue, React, Angular or one of their many many competitors.

Now each of these frontend tools/frameworks have their own way of keeping trac of data or state. So when people plug their frontend tooling into Django certain wheels tend to get reinvented.

Enter Redux. Redux is a teeny weeny and painfully elegent JavaScript library that works wonders with state managment. Redux is commonly associated with React, but it's not actually relient on React in any way. It's just JavaScript, it can actually be used just about anywhere that JS runs (yes, even a backend if you wanted to).

I use Redux a lot and have built some web-frontend-framework agnostic tools that make it easy to manage your api data on any old js frontend and deal with forms that are backed by a DRF api. What's cool about this is that it's dead simple to useonce you have it set up, and it doesn't stop you fronm using other state managment tools for other parts of your application.

I'm sure this tool has saved me weeks of pain and suffering. If you are into fullstack web dev and modern frontends then you might find this useful.

Panel Discussion: Educating coders

What does it take to effectively train a coder/developer? Well... it's complicated. There are a lot of opinions out there.

This panel will include a few different voices. We'll have representation from industry, formal education and alt-education.


Nhlanhla Lucky Nkosi is a Software Engineer in BBD’s dedicated Research and Development Unit (ATC) whose responsibilities include facilitating learning BBD's staff. He is a technical lecturer at Wits University's Digital Arts department and holds degrees in Engineering and Game Design. Lucky has experience in building and maintaining enterprise banking software with a vast range of technologies from VB6 and C# through to the modern web technologies which lie at the core of his current technical speciality and passion. Lucky hones this love for the web by also being a co-organiser of JoziJS.

Lucky is also incredibly involved in BBD's graduate program. This means he works with grads from formal education as well as alternative systems. He takes junior devs and trains up to BBD's high standards.

Sheena O'Connell is the CTO of Umuzi, a successful NPO that's all about launching high value digital careers. She designs curriculums in order to get people to a point where they can hit the ground running in various technical careers, does a lot of technical mentorship, and builds software and people processes to better facilitate and scale tech learning across Africa.

Tim Flusk is Associate Lecturer in Digital Arts at Wits University. He lecturers second and third years in game design and game development.

He was initially trained in game development and spent several years in the industry, and entered academia in an attempt to contribute to training of young developers and creating of knowledge and research within the media and technology space

Miek Messerschmidt is a Senior Lecturer at The Department of Mathematics and Applied Mathematics at the University of Pretoria. He received a PhD in pure mathematics from Leiden University in The Netherlands in 2013. For a number of years Miek has taught introductory scientific computing using Python to first year science students at the University of Pretoria. With mixed success, he sometimes tries his hand at competitive gaming (ranked 1v1 Planetary Annihilation) and at arts and crafts (stereo photography, pottery, furniture design, bookbinding, crochet).