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.

2019


cover-old-projects.png

Suggestions For Picking Up Old Projects

Dmitriy Chukhin

At Caktus, we work on many projects, some of which are built by us from start to finish, while others are inherited from other sources. Oftentimes, we pick up a project that we either have not worked on in a long time, or haven’t worked on at all, so we have to get familiar with the code and figure out the design decisions that were made by those who developed it (including when the developers are younger versions of ourselves). Moreover, it is a good idea to improve the setup process in each project, so others can have an easier time getting set up in the future. In our efforts to work on such projects, a few things have been helpful both for becoming familiar with the projects more quickly, and for making the same projects easier to pick up in the future.

cover-charitable-giving-winter-2018.jpg

Community & Caktus: Charitable Giving, Winter 2018

Kel Hanna

Pictured: Developer Dan Poirier is an advocate for WCPE and a volunteer announcer. WCPE is one of the recipients of our charitable giving program.

cover-creating-api-endpoint-django-rest-framework.png

A Guide To Creating An API Endpoint With Django Rest Framework

Dmitriy Chukhin

As part of our work to make sharp web apps at Caktus, we frequently create API endpoints that allow other software to interact with a server. Oftentimes this means using a frontend app (React, Vue, or Angular), though it could also mean connecting some other piece of software to interact with a server. A lot of our API endpoints, across projects, end up functioning in similar ways, so we have become efficient at writing them, and this blog post gives an example of how to do so.

cover-7-conferences.png

7 Conferences We’re Looking Forward To

Elizabeth Michalka

Above: The Internet Summit in Raleigh is one of the local conferences we recommend attending. (Photo by Ian Huckabee.)

At Caktus, we strongly believe in professional development and continued learning. We encourage our talented team to stay up to date with industry trends and technologies. During 2018, Cakti attended a number of conferences around the country. Below is a list (in alphabetical order) of the ones we found the most helpful, practical, and interesting. We look forward to attending these conferences again, and if you get the chance, we highly recommend that you check them out as well.

cover-secret-lives-cakti-part-2.jpg

The Secret Lives of Cakti (Part 2)

Tim Scales

Pictured from left: Our musically inclined Cakti, Dane Summers, Dan Poirier, and Ian Huckabee.

The first installment of the secret lives of Cakti highlighted some colorful extracurriculars (including rescuing cats, running endurance events, and saving lives). This time, we’re taking a look at our team’s unexpected musical talents.

cover-django-bulk-inserts.jpg

How to Use Django Bulk Inserts for Greater Efficiency

It's been awhile since we last discussed bulk inserts on the Caktus blog. The idea is simple: if you have an application that needs to insert a lot of data into a Django model — for example a background task that processes a CSV file (or some other text file) — it pays to "chunk" those updates to the database so that multiple records are created through a single database operation. This reduces the total number of round-trips to the database, something my colleague Dan Poirier discussed in more detail in the post linked above.

cover-caktus-blog-top-18-posts-2018.png

Caktus Blog: Top 18 Posts of 2018

Elizabeth Michalka

In 2018, we published 44 posts on our blog, including technical how-to’s, a series on UX research methods, web development best practices, and tips for project management. Among all those posts, 18 rose to the top of the popularity list in 2018.

2018


cover-new-years-resolution-work-less-code-better.jpg

My New Year’s Resolution: Work Less to Code Better

Jeremy Gibson

You may look at my job title (or picture) and think, “Oh, this is easy, he’s going to resolve to stand up at his desk more.” Well, you’re not wrong, that is one of my resolutions, but I have an even more important one. I, Jeremy Gibson, resolve to do less work in 2019. You’re probably thinking that it’s bold to admit this on my employer’s blog. Again, you’re not wrong, but I think I can convince them that the less work I do, the more clear and functional my code will become. My resolution has three components.

cover-how-to-fix-python-code-style.png

How to Fix your Python Code's Style

Dan Poirier

Sometimes we inherit code that doesn't follow the style guidelines we prefer when we're writing new code. We could just run flake8 on the whole codebase and fix everything before we continue, but that's not necessarily the best use of our time.

cover-top-tip-computer-security.png

Our Top Tip for Computer Security During the Holidays

Scott Morningstar
Elizabeth Michalka

Updated December 2020.

This holiday season, there’s more online activity than ever, from shopping to Zoom sessions with family and friends, not to mention remote work and school. But during all this online activity, how much do you think about your computer security? (We know, there are way more important things on your mind these days!) But a security breach could wreak havoc on your business or personal life. Just think, is your password different for every shopping site or app that you use? If not, it should be!