Caktus Blog

Insights and strategies from a team recognized at Python and Django conferences worldwide since 2009. The Caktus Blog is your space for practical how-to’s, real-world solutions, and expert advice on building better user experiences, strengthening quality assurance, solving deep and complex Python/Django problems, and managing projects that deliver impact. Whether you’re refining a UI or prepping for launch, join us to learn, level up, and lead with confidence.

2016


cover-time-flexbox-first.png

Time for Flexbox First

Calvin Spealman

The web development community has a habit of declaring “firsts” those practices and approaches that reach some ill-defined status signaling they are the go-to way to solve a particular problem. We’ve seen “mobile first” and, more recently, “offline first.” In these examples, a new problem comes along and as that problem grows more common there comes a tipping point. On the other side of that tipping point, it begins to make sense to solve the problem from the ground up, rather than building a project and solving it as an afterthought.

cover-wagtail-2-steps-adding-pages-outside-cms.png

Wagtail: 2 Steps for Adding Pages Outside of the CMS

Erin Mullaney

My first Caktus project went live late in the summer of 2015. It's a community portal for users of an SMS-based product called RapidPro. The portal was built in the Wagtail CMS framework which has a lovely, intuitive admin interface and excellent documentation for developers and content editors. The code for our Wagtail-based project is all open sourced on GitHub.

cover-writing-unit-tests-django-migrations.jpg

Writing Unit Tests for Django Migrations

Calvin Spealman

Editor's note: This post was originally published in February 2016 and was updated in August 2017 to incorporate improvements suggested by our readers. It has also been tested for compatibility as of the Django 1.11 release.

cover-shipit-day-recap-q1-2016.jpg

ShipIt Day Recap: Q1 2016

Liza Chabot

Last Friday, the Cakti set aside regular client projects for our quarterly ShipIt Day, a chance for personal development and independent projects. People work individually or in groups to flex their creativity, tackle interesting problems, or expand their personal knowledge. This quarter’s ShipIt Day saw everything from cat animations to improvements on our Taylor Swift lyric generator app. Read about the various ShipIt Day projects for Q1 of 2016 below.

cover-trials-tribulations-and-triumphs-choosing-me-platform.jpg

The Trials, Tribulations, and Triumphs of Choosing an M&E Platform

MERLTech 2015 Panel

Republished with permission from ICTWorks.org

At the recent MERL Tech conference, Tania Lee (Caktus Group), Tom Walker (Engine Room), Laura Walker McDonald (SIMLab), and Lynnae Day (Oxfam America) led a session called, “The Trials, Tribulations, and Triumphs of Choosing an M&E Platform.” They’ve written up their reflections and learning from that session focusing on project design, tool design/research, and getting things off the ground, whether that means finding external help or building a custom solution.

cover-modified-preorder-tree-traversal-django.png

Modified Preorder Tree Traversal in Django

Rob Lineberger

Hierarchical data are everywhere, from product catalogs to blog post comments. A classic example is the tree of life, where kingdoms are subdivided into a hierarchy of phylum and class down to genus and species. What if you wish to store this data in a database table, which is inherently flat? Databases do not natively store hierarchies, so you need to work around that.

2015


cover-what-we-open-sourced-2015-new-years-retrospective.jpeg

What We Open Sourced in 2015: A New Year's Retrospective

Liza Chabot

This year we had the pleasure of building a number of unique solutions for several organizations. In addition, we had the support of these clients to open source the tools we built. By open sourcing our work, we enable others to use, replicate, and even improve upon the tools we’ve created.

cover-reflecting-my-time-caktus-open-source-fellow.jpg

Reflecting on My Time as Caktus' Open Source Fellow

Ben Phillips

My name is Ben Phillips and I am Caktus’ Open Source Fellow. As my fellowship comes to a close, I wanted to reflect on my time at Caktus and to share my experience and some of what I’ve learned here. First, however, I should probably share how I ended up here in the first place.

cover-caktus-participates-tree-bikes-american-tobacco-campus.jpg

Caktus Participates in Tree of Bikes at American Tobacco Campus

Liza Chabot

This year, our neighbors at American Tobacco Campus (ATC) hosted Durham’s first ever Tree of Bikes event to help collect and distribute new bikes to children in need in the local community. The tree is a 25-foot tall sculpture made entirely of new children’s bicycles donated by individuals and local businesses in the Triangle. The bikes are then distributed to children living in the Cornwallis Road affordable housing community managed by the Durham Housing Authority.

cover-cto-colin-copeland-helps-launch-open-data-policing-website.jpg

Caktus CTO Colin Copeland Helps Launch Open Data Policing Website

Hao Nguyen

Today, at Caktus headquarters, CTO and co-founder of Caktus Colin Copeland will stand at a press conference along with activists, police representatives, and elected officials to announce the launch of OpenDataPolicingNC.com. The first site of its kind, OpenDataPolicingNC.com draws on public records to publish up-to-date stop, search, and use-of-force data—broken down by race and ethnicity—for every police department and officer in the state of North Carolina. The volunteer effort, led by The Southern Coalition for Social Justice (SCSJ) and technical leadership by Colin, includes approximately 20 million anonymized data points from 15 years of NC traffic stop data.