<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Best Practice on Caktus Group</title><link>https://www.caktusgroup.com/tags/best-practice/</link><description>Recent content in Best Practice on Caktus Group</description><generator>Hugo</generator><language>en</language><lastBuildDate>Mon, 25 Jan 2021 15:32:15 +0000</lastBuildDate><atom:link href="https://www.caktusgroup.com/tags/best-practice/index.xml" rel="self" type="application/rss+xml"/><item><title>JavaScript Variable Declaration in the 21st Century</title><link>https://www.caktusgroup.com/blog/2021/01/25/javascript-variable/</link><pubDate>Mon, 25 Jan 2021 15:32:15 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2021/01/25/javascript-variable/</guid><description>&lt;p>October 2020 marked the 14th anniversary of the introduction of &amp;ldquo;let&amp;rdquo;
and &amp;quot;const&amp;quot; to Javascript. Yes, it was in 2006 that this feature was
first introduced, and we&amp;rsquo;re still having conversations about it. So why,
you ask, are we still talking about this? It seems that a lot of
confusion remains, not to mention a lot of old code being passed around
on StackOverflow with &amp;ldquo;var&amp;rdquo; all over the place. Here I&amp;rsquo;ll discuss the
difference between these three declarations, and come to a conclusion
about best practices&lt;/p></description></item><item><title>Accessibility Testing Tips for Beginners</title><link>https://www.caktusgroup.com/blog/2020/07/23/accessibility-testing-tips/</link><pubDate>Thu, 23 Jul 2020 14:37:24 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2020/07/23/accessibility-testing-tips/</guid><description>&lt;p>&lt;em>Above: Caktus uses several mobile devices for accessibility testing. For a more realistic experience, it&amp;rsquo;s important to test on devices, and not just with simulators.&lt;/em>&lt;/p></description></item><item><title>Our Top Tip for Computer Security During the Holidays</title><link>https://www.caktusgroup.com/blog/2018/11/29/top-tip-computer-security/</link><pubDate>Fri, 30 Nov 2018 00:26:09 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/11/29/top-tip-computer-security/</guid><description>&lt;p>&lt;em>Updated December 2020.&lt;/em>&lt;/p>
&lt;p>This holiday season, there&amp;rsquo;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!&lt;/p></description></item><item><title>Complicated Project? Start with our Discovery Workshop Guide</title><link>https://www.caktusgroup.com/blog/2018/08/27/discovery-workshop-guide/</link><pubDate>Mon, 27 Aug 2018 15:31:43 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/08/27/discovery-workshop-guide/</guid><description>&lt;p>If you ever struggled to implement a complicated development project, starting your next one with a discovery workshop will help. Discovery workshops save you time and money over the course of a project because we help you answer important questions in advance, ensuring that the final product lines up with your primary end goals. Our new guide, &lt;a href="https://learn.caktusgroup.com/shared-understanding-caktus-discovery-workshops" target="_blank" rel="noopener noreferrer">Shared Understanding: A Guide to Caktus Discovery Workshops&lt;/a>, demonstrates the value of these workshops and why we’ve made them a core component of our client services.&lt;/p></description></item><item><title>3 Common Form Testing Issues (Plus 1 Helpful Tool)</title><link>https://www.caktusgroup.com/blog/2018/05/28/3-common-form-testing-issues-plus-1-helpful-tool/</link><pubDate>Mon, 28 May 2018 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/05/28/3-common-form-testing-issues-plus-1-helpful-tool/</guid><description>&lt;p>Forms are something that I find myself testing frequently, whether it&amp;rsquo;s an e-commerce checkout page or a new &lt;a href="https://docs.djangoproject.com/en/2.0/topics/db/models/" target="_blank" rel="noopener noreferrer">model&lt;/a> in the Django admin. The challenge of forms is that users will often enter things that may not have been accounted for when the form was created.&lt;/p></description></item><item><title>Avoiding the Blame Game in Scrum</title><link>https://www.caktusgroup.com/blog/2018/05/14/avoiding-blame-game-scrum/</link><pubDate>Mon, 14 May 2018 14:00:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/05/14/avoiding-blame-game-scrum/</guid><description>&lt;p>The words we use, and the tone in which we use them, can either nurture or hinder the growth of Scrum teams. This is especially true for teams that are new to Scrum or that may be transitioning into a new Agile methodology.&lt;/p></description></item><item><title>The Users We Don't Know</title><link>https://www.caktusgroup.com/blog/2018/04/23/users-we-dont-know/</link><pubDate>Mon, 23 Apr 2018 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/04/23/users-we-dont-know/</guid><description>&lt;p>Businesses and organizations come to Caktus to build custom web applications that will help solve their users’ problems. Before contacting us, clients spend time and effort thinking through their users’ problems. But in doing so they do not always talk directly to potential users of the application. As a result, they come up with ideas for the application based on who they think the target users are rather than who they know those users are. Or, if they have correctly identified their target user segment, they may make assumptions about the ways users think, behave, or accomplish tasks.&lt;/p></description></item><item><title>5 Scrum Master Lessons Learned</title><link>https://www.caktusgroup.com/blog/2018/04/16/5-scrum-master-lessons-learned/</link><pubDate>Mon, 16 Apr 2018 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/04/16/5-scrum-master-lessons-learned/</guid><description>&lt;p>March 2018 marked the end of my fourth year as a Scrum master. I began with a Certified ScrumMaster workshop in 2014 and haven’t stopped learning since. I keep a running list titled “Lessons Learned,” where I jot down thoughts I find significant as they occur to me so that I can go back to the list and draw from my little bank of personal wisdom.&lt;/p></description></item><item><title>When a Clean Merge is Wrong</title><link>https://www.caktusgroup.com/blog/2018/03/19/when-clean-merge-wrong/</link><pubDate>Mon, 19 Mar 2018 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/03/19/when-clean-merge-wrong/</guid><description>&lt;p>Git conflicts tell us when changes don’t go together. While working with other developers, or even when working more than one branch by yourself, changes to the same code can happen. Trying to merge them together will stop Git in its tracks.&lt;/p></description></item><item><title>What is Software Quality Assurance?</title><link>https://www.caktusgroup.com/blog/2018/03/14/what-software-quality-assurance/</link><pubDate>Wed, 14 Mar 2018 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2018/03/14/what-software-quality-assurance/</guid><description>&lt;p>A crucial but often overlooked aspect of software development is quality assurance (QA). If you have an app in progress, you will likely hear this term throughout the development life cycle. It may seem that coding is the brunt of the development work, since without code your app doesn’t exist, but quality assurance efforts often consist of up to 50% of the total project effort (1) (and part of the QA effort is coding). Without quality assurance, your app may exist but it is unlikely it will function well, meet the objectives of your users, or be maintainable in the future. QA is important, but what exactly is it?&lt;/p></description></item><item><title>User-Centered Navigation Design</title><link>https://www.caktusgroup.com/blog/2017/10/09/user-centered-navigation-design/</link><pubDate>Mon, 09 Oct 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/10/09/user-centered-navigation-design/</guid><description>&lt;p>Designing navigation that will support the needs of website users is one of the more important aspects of site usability. At Caktus we practice iterative, user-centered navigation design, which includes user feedback.&lt;/p></description></item><item><title>False Peaks and Temporary Code</title><link>https://www.caktusgroup.com/blog/2017/09/11/false-peaks-and-temporary-code/</link><pubDate>Mon, 11 Sep 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/09/11/false-peaks-and-temporary-code/</guid><description>&lt;p>In the day-to-day work of building new software and maintaining old
software, we can easily lose sight of the bigger picture. I think we can
find perspective when we step back and walk through the evolution of a
single piece of software.&lt;/p></description></item><item><title>Readability Counts (PyCon 2017 Must-See Talk 6/6)</title><link>https://www.caktusgroup.com/blog/2017/07/10/readability-counts-pycon-2017-must-see-talk-66/</link><pubDate>Mon, 10 Jul 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/07/10/readability-counts-pycon-2017-must-see-talk-66/</guid><description>&lt;p>&lt;em>Part 6 in the 2017 edition of our annual &lt;a href="https://www.caktusgroup.com/blog/tags/pycon-must-see-series/">PyCon Must-See Series&lt;/a>, highlighting the talks our staff especially loved at PyCon. While there were many great talks, this is our team&amp;rsquo;s shortlist.&lt;/em>&lt;/p></description></item><item><title>The Caktus Success Model</title><link>https://www.caktusgroup.com/blog/2017/06/21/caktus-success-model/</link><pubDate>Wed, 21 Jun 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/06/21/caktus-success-model/</guid><description>&lt;p>Here at Caktus, we’ve been fortunate to work on some incredible projects with our clients. For example, we built the &lt;a href="https://www.caktusgroup.com/case-study/worlds-first-sms-voter-registration-system/">world’s first SMS voter registration app&lt;/a> for Libya, developed a &lt;a href="https://www.caktusgroup.com/case-study/moving-from-physical-tapes-to-amazon-glacier/">digital archiving system&lt;/a> for the world’s largest on-demand video provider, and created a &lt;a href="https://www.caktusgroup.com/case-study/auto-scaling-online-survey/">survey tool with auto-scaling architecture&lt;/a> to help the University of Chicago track school reform.&lt;/p></description></item><item><title>TriAgile 2017 Recap</title><link>https://www.caktusgroup.com/blog/2017/06/14/triagile-2017-recap/</link><pubDate>Wed, 14 Jun 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/06/14/triagile-2017-recap/</guid><description>&lt;p>I attended the &lt;a href="http://triagile.com/" target="_blank" rel="noopener noreferrer">TriAgile conference&lt;/a> in Raleigh, NC on March 30th, 2017 and wanted to share some takeaways from a couple of the talks I saw. Overall, the conference was a nice opportunity to network with some local Agilists and hear about their work and experiences. It was well organized, and I was pleasantly surprised by the size of the Agile community in the Triangle!&lt;/p></description></item><item><title>Subtests are the Best</title><link>https://www.caktusgroup.com/blog/2017/05/29/subtests-are-best/</link><pubDate>Mon, 29 May 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/05/29/subtests-are-best/</guid><description>&lt;h2 id="subtests-are-the-best">Subtests are the best&lt;/h2>
&lt;p>Testing our code is important. Because developers write bugs, it&amp;rsquo;s
valuable to catch and correct them before the code gets to production so
our apps work as they should. Specifically, we want tests that are DRY
(Don&amp;rsquo;t Repeat Yourself), thorough, and readable. Though there are many
ways to try to accomplish these goals, subtests make each of them
easier. If you&amp;rsquo;re not using subtests in your test classes, you probably
should be.&lt;/p></description></item><item><title>3 Reasons to Upgrade to the Latest Version of Django</title><link>https://www.caktusgroup.com/blog/2017/05/22/3-reasons-upgrade-latest-version-django/</link><pubDate>Mon, 22 May 2017 15:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/05/22/3-reasons-upgrade-latest-version-django/</guid><description>&lt;p>When considering a website upgrade, many business stakeholders probably think about the frontend, i.e., how the website looks or the features users interact with. Perhaps less often considered is the importance of upgrading the backend; that is, the databases, applications, and servers powering all the behind-the-scenes activity. Infrastructure support and upgrades are necessary but often performed as a separate project from any improvements to design or user experience, rather than as part of a holistic update project.&lt;/p></description></item><item><title>Product Discovery Part 2: From User Contexts to Solutions</title><link>https://www.caktusgroup.com/blog/2017/04/19/product-discovery-part-2-user-contexts-solutions/</link><pubDate>Wed, 19 Apr 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/04/19/product-discovery-part-2-user-contexts-solutions/</guid><description>&lt;p>In the first installment of this two-part series, I &lt;a href="https://www.caktusgroup.com/blog/2017/04/17/product-discovery-part-1-getting-started/">introduced product discovery&lt;/a> as the process of building a shared understanding about the product between stakeholders and the product team, which helps you make better decisions about what to build. I also suggested that we look at product discovery as a four-step process:&lt;/p></description></item><item><title>Product Discovery Part 1: Getting Started</title><link>https://www.caktusgroup.com/blog/2017/04/17/product-discovery-part-1-getting-started/</link><pubDate>Mon, 17 Apr 2017 13:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/04/17/product-discovery-part-1-getting-started/</guid><description>&lt;p>When setting out to build a new website or web application, it is a good idea to build a shared understanding of the product between stakeholders and the product team. Through research and collaborative activities that aim to answer questions about the product, its goals, and its users’ needs, the stakeholders and product team discover the full breadth and depth of the application to be built, as well as contexts and implications that need to be considered for the product to be successful. We call this process &lt;a href="https://www.producttalk.org/2016/03/rise-modern-product-discovery/" target="_blank" rel="noopener noreferrer">product discovery&lt;/a>.&lt;/p></description></item><item><title>How to write a bug report</title><link>https://www.caktusgroup.com/blog/2017/02/15/how-to-write-a-bug-report/</link><pubDate>Wed, 15 Feb 2017 13:00:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/02/15/how-to-write-a-bug-report/</guid><description>&lt;p>Here are some brief thoughts on writing good bug reports in general.&lt;/p>
&lt;h2 id="main-elements">Main elements&lt;/h2>
&lt;p>There are four crucial elements when writing a bug report:&lt;/p></description></item><item><title>Responsive web design</title><link>https://www.caktusgroup.com/blog/2017/01/04/responsive-web-design/</link><pubDate>Wed, 04 Jan 2017 15:26:22 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2017/01/04/responsive-web-design/</guid><description>&lt;h3 id="what-is-responsive-web-design">What is responsive web design?&lt;/h3>
&lt;p>&lt;a href="http://blog.teamtreehouse.com/beginners-guide-to-responsive-web-design" target="_blank" rel="noopener noreferrer">Responsive web design&lt;/a> is an approach to web design and development whereby websites and web applications &lt;em>respond&lt;/em> to a screen size of the device on which they’re being accessed. The response includes layout changes, rearrangement of content, and in some cases selective display or hiding of content elements. Using a responsive web design approach you can optimize web pages to achieve great user experience on a range of devices, from smartphones to desktop.&lt;/p></description></item><item><title>Using Priority in Scrum to address team anxiety</title><link>https://www.caktusgroup.com/blog/2016/12/21/using-priority-scrum-address-team-anxiety/</link><pubDate>Wed, 21 Dec 2016 20:13:42 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/12/21/using-priority-scrum-address-team-anxiety/</guid><description>&lt;p>In Scrum, the backlog of tasks is ordered by the Product Owner from highest to lowest business value - not merely prioritized - so that the team knows what the most valuable items are. This helps to prevent Product Owners/Project Managers from being able to say two or more Product Backlog Items (PBIs) are the “same priority.” And this makes sense for the most part. However there are times when this information is not enough.&lt;/p></description></item><item><title>Django is Boring, or Why Tech Startups (Should) Use Django</title><link>https://www.caktusgroup.com/blog/2016/12/14/django-boring-or-why-tech-startups-should-use-django/</link><pubDate>Wed, 14 Dec 2016 15:04:32 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/12/14/django-boring-or-why-tech-startups-should-use-django/</guid><description>&lt;p>I recently attended &lt;a href="https://www.djangounderthehood.com/" target="_blank" rel="noopener noreferrer">Django Under The Hood&lt;/a> in Amsterdam, an annual gathering of Django core team members and developers from around the world. A common theme discussed at the conference this year is that “Django is boring.” While it’s not the first time this has been discussed, it still struck me as odd. Upon further reflection, however, I see Django’s “boringness” as a huge asset to the community and potential adopters of the framework.&lt;/p></description></item><item><title>On building relationships - Digital Project Management Summit Recap</title><link>https://www.caktusgroup.com/blog/2016/11/18/building-relationships-digital-project-management-summit-recap/</link><pubDate>Fri, 18 Nov 2016 15:27:30 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/11/18/building-relationships-digital-project-management-summit-recap/</guid><description>&lt;p>&lt;em>Photo of Elizabeth speaking to DPM 2016 Summit by David Jordan.&lt;/em>&lt;/p>
&lt;p>When I first became a digital project manager, I struggled to find professional resources. There was a plethora of information available for traditional project management, but not much specifically for digital project management. Luckily, a colleague recommended the &lt;a href="http://bureauofdigital.com/summits/digital-pm/" target="_blank" rel="noopener noreferrer">Digital PM Summit&lt;/a>, sponsored by the Bureau of Digital.&lt;/p></description></item><item><title>How to tell if you’re building great user experience</title><link>https://www.caktusgroup.com/blog/2016/10/06/how-tell-if-youre-building-great-user-experience/</link><pubDate>Thu, 06 Oct 2016 18:23:27 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/10/06/how-tell-if-youre-building-great-user-experience/</guid><description>&lt;p>In web and software development, when we talk about &lt;a href="https://www.smashingmagazine.com/2010/10/what-is-user-experience-design-overview-tools-and-resources/" target="_blank" rel="noopener noreferrer">user experience&lt;/a>, we usually mean the experience you have when you are using a website or an application. Does it feel like you know where to click to get to your next destination? Do you know what to do in order to accomplish a task? Has anything you’ve clicked taken you to an unexpected page? Are you getting frustrated with or are you enjoying the website or app? Answers to these and similar questions are what describes the experience you’re having as a user. That’s user experience.&lt;/p></description></item><item><title>Principles of good user experience (UX)</title><link>https://www.caktusgroup.com/blog/2016/09/29/principles-good-user-experience-ux/</link><pubDate>Thu, 29 Sep 2016 17:56:15 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/09/29/principles-good-user-experience-ux/</guid><description>&lt;p>Google “UX principles” and you’ll end up with a search results page that offers:&lt;/p>
&lt;ul>
&lt;li>5 principles&amp;hellip;&lt;/li>
&lt;li>31 fundamentals….&lt;/li>
&lt;li>10 principles…&lt;/li>
&lt;li>Guidelines…&lt;/li>
&lt;li>Basics….&lt;/li>
&lt;/ul>
&lt;p>So let’s get this out of the way: no single checklist will guarantee that you create a great user experience. Every project is different, and the development of every product should be tailored to the user segment the product is built for. But there are some principles that can guide design decisions no matter what and you will not go wrong if you follow them. Let’s talk about a few:&lt;/p></description></item><item><title>What Web Analytics Can’t Tell You About User Experience</title><link>https://www.caktusgroup.com/blog/2016/09/13/what-web-analytics-cant-tell-you-about-user-experience/</link><pubDate>Tue, 13 Sep 2016 14:38:47 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/09/13/what-web-analytics-cant-tell-you-about-user-experience/</guid><description>&lt;p>Is analytics data collected for a website, an application, or a game sufficient to understand what problems users encounter while interacting with it and what prevents their full engagement?&lt;/p></description></item><item><title>Digital development principles: a tech firm’s take on understanding ecosystems</title><link>https://www.caktusgroup.com/blog/2016/09/07/digital-development-principles-tech-firms-take-understanding-ecosystems/</link><pubDate>Wed, 07 Sep 2016 15:54:02 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/09/07/digital-development-principles-tech-firms-take-understanding-ecosystems/</guid><description>&lt;p>When we meet potential clients, we want to learn more about their software development needs. Beyond that, we’re deeply curious about the work they do, those involved, and the kind of impact they desire to make in the world.&lt;/p></description></item><item><title>Insights into software development from a quality assurance (QA) pro</title><link>https://www.caktusgroup.com/blog/2016/08/29/insights-software-development-quality-assurance-QA-pro/</link><pubDate>Mon, 29 Aug 2016 15:51:24 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/08/29/insights-software-development-quality-assurance-QA-pro/</guid><description>&lt;p>Because quality assurance (QA) is all about creating a seamless application experience across any number of devices, it’s most successful when no one notices it. The craft and expertise behind the work of QA professionals, as a result, can sometimes feel hidden. Charlotte Fouque, Caktus’ QA Analyst, sheds light onto what exactly quality assurance is and the intricacies of doing it well.&lt;/p></description></item><item><title>Better Testing With Less Code (PyCon 2016 Must-See Talk: 2/6)</title><link>https://www.caktusgroup.com/blog/2016/07/13/better-testing-less-code-pycon-2016-must-see-talk-26/</link><pubDate>Wed, 13 Jul 2016 13:37:37 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/07/13/better-testing-less-code-pycon-2016-must-see-talk-26/</guid><description>&lt;p>&lt;em>Part two of six in our annual &lt;a href="https://www.caktusgroup.com/blog/tags/PyCon%20Must%20See%20Series/">PyCon Must-See Series&lt;/a>, a weekly highlight of talks our staff especially loved at PyCon. With so many fantastic talks, it’s hard to know where to start, so here’s our short list.&lt;/em>&lt;/p></description></item><item><title>New white paper: "Shipping faster: Django team improvements"</title><link>https://www.caktusgroup.com/blog/2016/04/04/new-white-paper-shipping-faster-django-team-improvements/</link><pubDate>Mon, 04 Apr 2016 13:26:38 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/04/04/new-white-paper-shipping-faster-django-team-improvements/</guid><description>&lt;p>For the past couple months, we’ve been working on a new white paper, “&lt;a href="http://learn.caktusgroup.com/shipping-faster-django-team-improvements?utm_source=web&amp;amp;utm_medium=bloglaunch&amp;amp;utm_campaign=shippingfaster" target="_blank" rel="noopener noreferrer">Shipping Faster: Django Team Improvements&lt;/a>”. We examined our existing processes, looked at best practices, and considered what has or hasn’t worked across our dozens of simultaneous projects.&lt;/p></description></item><item><title>Lightweight Django now in Portuguese!</title><link>https://www.caktusgroup.com/blog/2016/04/02/lightweight-django-now-portuguese/</link><pubDate>Sat, 02 Apr 2016 17:18:24 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2016/04/02/lightweight-django-now-portuguese/</guid><description>&lt;p>We&amp;rsquo;re proud to report that &lt;em>Lightweight Django&lt;/em> (O&amp;rsquo;Reilly Media) is now available in Portuguese as &lt;em>Django Essencial&lt;/em>. The book was written by our technical director Mark Lavin and Caktus alumnus Julia Elman to great reviews. &lt;em>Django Essencial&lt;/em> comes just in time for Mark&amp;rsquo;s keynote talk during PyCon Nordeste.&lt;/p></description></item><item><title>Creating and Using Open Source: A Guide for ICT4D Managers</title><link>https://www.caktusgroup.com/blog/2015/05/29/creating-and-using-open-source-guide-ict4d-managers/</link><pubDate>Fri, 29 May 2015 18:25:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2015/05/29/creating-and-using-open-source-guide-ict4d-managers/</guid><description>&lt;p>Choosing an open source product or platform upon which to build an ICT4D service is hard. Creating a sustainable, volunteer-driven open source project is even harder. There is a proliferation of open source tools in the world, but the messaging used to describe a given project does not always line up with the underlying technology. For example, the project may make claims about modularity or pluggability that, upon further investigation, prove to be exaggerations at best. Similarly, managers of ICT4D projects may be attracted to Open Source because of the promise of a “free” product, but as we’ve learned through trial and error at Caktus, it’s not always less costly to adapt an existing open source project than it would be to engineer a quality system from the ground up.&lt;/p></description></item><item><title>Celery in Production</title><link>https://www.caktusgroup.com/blog/2014/09/29/celery-production/</link><pubDate>Mon, 29 Sep 2014 12:00:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2014/09/29/celery-production/</guid><description>&lt;p>(Thanks to &lt;a href="https://www.caktusgroup.com/about/mark-lavin/">Mark Lavin&lt;/a> for significant
contributions to this post.)&lt;/p>
&lt;p>In a &lt;a href="https://www.caktusgroup.com/blog/2014/06/23/scheduling-tasks-celery/">previous post&lt;/a>, we
introduced using Celery to schedule tasks.&lt;/p>
&lt;p>In this post, we address things you might need to consider when planning
how to deploy Celery in production.&lt;/p></description></item><item><title>OSCON 2014 &amp; REST API Client Best Practices</title><link>https://www.caktusgroup.com/blog/2014/08/04/oscon-2014-rest-api-client-best-practices/</link><pubDate>Mon, 04 Aug 2014 11:36:53 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2014/08/04/oscon-2014-rest-api-client-best-practices/</guid><description>&lt;p>&lt;a href="http://www.caktusgroup.com/about/mark-lavin/" target="_blank" rel="noopener noreferrer">Mark Lavin&lt;/a>, Caktus Technical Director and author of the forthcoming &lt;a href="http://shop.oreilly.com/product/0636920032502.do" target="_blank" rel="noopener noreferrer">LightWeight Django&lt;/a> was recently at &lt;a href="http://www.oscon.com/oscon2014" target="_blank" rel="noopener noreferrer">OSCON 2014&lt;/a> in Portland where he gave a talk on improving the relationship between server and client for REST APIs. OSCON, with over 3000 attendees, is one of the largest open source conferences around. I sat down with him to ask him about his time there.&lt;/p></description></item><item><title>Caktus Completes RapidSMS Community Coordinator Development for UNICEF</title><link>https://www.caktusgroup.com/blog/2014/02/05/caktus-completes-rapidsms-community-coordinator-development-unicef/</link><pubDate>Wed, 05 Feb 2014 14:12:35 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2014/02/05/caktus-completes-rapidsms-community-coordinator-development-unicef/</guid><description>&lt;p>Colin Copeland, Managing Member at Caktus, has wrapped up work,
supported by UNICEF, as the Community Coordinator for the open source
&lt;a href="http://rapidsms.org" target="_blank" rel="noopener noreferrer">RapidSMS&lt;/a> project. RapidSMS is a text messaging
application development library built on top of the Django web
framework. It creates a SMS provider agnostic way of sending and
receiving text messages. RapidSMS has been used widely in the mobile
health field, in particular in areas where internet access cannot be
taken for granted and cell phones are the best communication tool
available. This has included projects initiated by UNICEF country
offices in Ethiopia, Madagascar, Malawi, Rwanda, Uganda, Zambia, and
Zimbabwe.&lt;/p></description></item><item><title>Factory Boy as an Alternative to Django Testing Fixtures</title><link>https://www.caktusgroup.com/blog/2013/07/17/factory-boy-alternative-django-testing-fixtures/</link><pubDate>Wed, 17 Jul 2013 14:30:00 +0000</pubDate><guid>https://www.caktusgroup.com/blog/2013/07/17/factory-boy-alternative-django-testing-fixtures/</guid><description>&lt;p>When testing a Django application you often need to populate the test
database with some sample data. The standard Django &lt;code>TestCase&lt;/code> has
support for fixture loading but there are a number of problems with
using fixtures:&lt;/p></description></item></channel></rss>