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.

2013


Caktus and Python Software Foundation Collaborate on PyCon 2014 in Montreal Site

Alex Lemann

[Caktus is proud to be a part of the launch of the]{style=“color:#000000; background-color:transparent; font-style:normal;”} PyCon 2014 in Montreal[ website. We were delighted to be selected as this year’s partner for software development and brand updates. In the past, we've enjoyed working with the ]{style=“color:#000000; background-color:transparent; font-style:normal;”}Python Software Foundation[ as a collaborator for the ]{style=“color:#000000; background-color:transparent; font-style:normal;”}Raspberry.io[ branding and development and are excited to help out with the PyCon website.]{style=“color:#000000; background-color:transparent; font-style:normal;”}

MEDIA_ROOT and Django Tests

Mark Lavin

If you’ve ever written a test for a view or model with associated uploaded files you might have noticed a small problem with those files hanging around after the tests are complete. Since version 1.3, Django won’t delete the files associated with your model instances when they are deleted. Some work-arounds for this issue involve writing a custom delete for your model or using a post_delete signal handler. But even with those in place the files would not be deleted during tests because the model instances are not explicitly deleted at the end of the test case. Instead, Django simply rolls back the transaction and the delete method is never called nor are the signals fired. This can be quite an annoyance when running the tests repeatedly and watching your MEDIA_ROOT (or worse your S3 bucket) fill up with garbage data. More than annoyance, this introduces something you always want to avoid in unittests: global state.

Making your Django app more pluggable

Dan Poirier

This blog post is about ways of doing things in your Django app, and pitfalls to avoid, so your app is easier to plug in to other sites.

cover-caktus-teaches-mhealth-fulbright-enrichment-students.jpg

Caktus Teaches mHealth to Fulbright Enrichment Students

Alex Lemann

 

[As part of the Fulbright Enrichment [From Lab to Market]{style=“font-style: italic;”} seminar, Caktus hosted 16 Fulbright students from around the world on Wednesday, May 29th. The participants were engineering and science students with an interest in Public Health and Mobile Health innovation.]{#docs-internal-guid–15dfdd3-f622-293e-da9c-340d4c5b5818}

AngularJS to PyGame: Caktus’ 2nd ShipIt Day

We had our 2nd ShipIt Day at Caktus last week. ShipIt (coined by Atlassian), in case you don’t know, is an exercise that allows your team to work on alternative projects in a 24-hour hackathon. We brainstorm ideas related to Caktus, break into small groups and try to build a project by the end of the day on Friday. It’s a lot of fun and provides an opportunity to work on internal tools, try something new and collaborate together. \

Managing Django Translations with Transifex

Mark Lavin

We manage a number of open source Django apps here at Caktus. While many of us here are proficient in a number of programming languages, the same can’t be said for our ability to read or write in languages other than English. The Django community is global and we want our apps to support other languages. For that we’ve turned to Transifex which it the same tool Django itself uses for translations.

cover-time-magazine-100-most-influential-people-2013.gif

Time Magazine: 100 Most Influential People of 2013

Nicole Mance Foster

UNICEF clients Erica Kochi and Christopher Fabian were listed among Time Magazine’s 100 Most Influential People of 2013 for creating text-message based applications in the developing world. They spearheaded RapidSMS, the open source web framework used for applications like sending infant HIV results via text in Zambia. Caktus worked directly with Kochi and Fabian and were instrumental in the core development of RapidSMS, the creation of RapidSMS.org on behalf of UNICEF, and initial RapidSMS applications in Africa.

cover-caktus-sponsoring-and-speaking-mobile-health-switchpoint-2013.jpg

Caktus sponsoring and speaking on mobile health at SwitchPoint 2013

SwitchPoint is a one-of-a-kind conference and a unique opportunity to learn, share ideas, and hear about global and mobile health efforts around the world. We had a great time at SwitchPoint last year. I’m excited to announce that Caktus, for the second year in a row, is sponsoring [SwitchPoint 2013]{style=“color: rgb(17, 85, 204);”}.

A helper script for runserver

Dan Poirier

My Django runserver shortcut script

This is a little shell script I save as rs, put on my path, and use as a shortcut to start the Django development server. It has several features that make me more productive:

cover-pycon-2013-recap-teaching-and-learning-python-community.jpg

PyCon 2013 Recap---Teaching and Learning with the Python Community

Alex Lemann

Caktus had a wonderful time at this year’s PyCon conference.  We believe strongly in supporting our developers in their quest to become the best coders that they can be and think that being at PyCon is a great way for them to learn about what’s going on in the Python community.  We sent ten people to the conference to work at our booth and attend conference events.  The organizers of PyCon, headed by Jesse Noller, put on an amazing event that created a space for people to meet face to face in order to work and learn together.