The Dimagi Blog
Members of our tech team share insights
about technologies we use for CommCare.
Another day, another Zero Day: What all Digital Development organizations should take away from recent IT security news
Even if you don’t work as a software developer, you probably heard about recent, high profile security issues that had IT Admins and developers frantically patching servers over the holidays and again more recently. Dimagi's CTO shares what these recent issues mean for Digital Development organizations.
January 28, 2022
Join the fight to support critical open source infrastructure
Open Source tools are a critical piece of global infrastructure, and need champions for long term investment
March 17, 2020
Two big lessons that Iowa and Geneva can teach us about technology in digital development
Last week brought two high profile technology failures into the global spotlight. Although these two mishaps may seem quite different at first glance, they both highlight challenges that are inherent in providing software in the public sector (regardless of locale) and illustrate cautionary lessons worth discussing for practitioners in Digital Development. The Iowa Caucus Debacle
February 7, 2020
Beyond 'Wrappers' - Using Querysets to Compartmentalize Business Logic into the Django ORM
The Django ORM is an invaluable tool for querying your data. However, as a generic tool, it's often not a clean fit. This article describes a technique for extending Django querysets with methods specific to your models.
December 19, 2018
‘Offline First’ Is More Than a Download Button: Principles of Offline Data Collection
Dimagi builds software products for offline data collection. Learn the fundamental principles behind remote data collection.
May 14, 2018
Migrating a Legacy Codebase to RequireJS, Part 3
April 30, 2018
Migrating a Legacy Codebase to RequireJS, Part 2
April 16, 2018
Migrating a Legacy Codebase to RequireJS
April 2, 2018
Running Calabash Integration Tests with Amazon Device Farm
Our development and QA teams put considerable effort into implementing almost our entire Android test plan in Calabash.
March 26, 2018
A Non-Coder’s Experience with Calabash-Android
Taking the time set up Calabash framework has completely changed how we handle mobile testing for the better.
March 23, 2018
Dimagi Wins Elasticsearch Cause Award
Dimagi recognized as a winner of the second annual Elastic Cause Awards.
March 12, 2018
Communicating Changes Made to Your Software Product
Keep your users in-the-know about changes. Read this guide to communication changes made to your software product.
January 23, 2018
ICT4D News Roundup – June 23, 2017
Welcome to our weekly #ICT4D News Roundup! We are passionate about the intersection of technology and social good. Each week we look for the best articles that focus on the ICT4D industry, the issues that impact the sectors we work across, and interesting content for social enterprises. Highlighted articles this week: What are the
June 23, 2017
Why we made quickcache
One of the great things about Python is how easy it is to hit the ground running. The standard library is vast, and for every common problem people have, someone has written and published a library that you can download and install with pip. Often there is one right way to do things. Want to make
May 11, 2017
What Every Developer Should Know About CouchDB
A little more than five years ago, I started working with CouchDB. I had recently joined Dimagi, and before I arrived on the scene, Dimagi had found some success using CouchDB in one of our largest projects at the time, an offline EMR in Zambia. We chose CouchDB because of its replication capabilities, which let us keep data
March 29, 2016
Scaling Code Review
At Dimagi, we write a lot of code. In the last month on just our CommCare HQ repository, 25 people pushed 1,617 commits to master (and 2,270 commits to all branches) affecting 1,392 files and with over 175,000 additions and deletions. What that also means is that we review a lot of code. Every line
February 24, 2016
Frontend testing in Django with Grunt
January 22, 2016
Love in the time of Emojis - A tale of Github emoji usage
Dimagi Engineering spends a lot of time on Github, and with that, comes lots of comments and emojis. After one year at Dimagi, I’ve become an avid emoji user and relish the opportunity to use emojis in the most astute way possible. There’s just something great about being able to express your thoughts in a
January 15, 2016
Debugging a thread-related test failure
Recently I’ve been working on adding support for using nose to run the CommCare HQ test suite. Since CommCare HQ is a Django project, I’m using django-nose. This has been a tedious process of running the tests repeatedly and debugging each test failure encountered along the way. Typically on running the tests, I would see
November 25, 2015
From the (Open) Source: Introducing Dimagi’s New Tech Blog
Across all of our teams at Dimagi, we’re committed to sharing and building on top of one another’s ideas. It’s a big reason why we support and create open source software. This is especially true for our tech team, which consists of 29 people on our engineering, product and support teams. As part of the
October 9, 2015
Page 1 of 4
Showing 1 - 20 of 76 articles