Monitoring Django with Tracing and OpenTelemetry

23 September 2022

Uptrace tracing tool Distributed tracing allows to observe requests as they propagate through distributed systems, especially those built using a microservices architecture. In a distributed environment, tracing also helps you understand relationships and interactions between microservices. Distributed tracing gives an insight into how a particular microservice is performing and how that service affects other microservices.

How to Test TLS in SWAKS

03 April 2021

In this post we detail how to use Swaks for testing emails over tls. This post picks up where the manual page leaves off and more explicitly goes over how to send a test email over tls. Swaks is a popular tool in penetration testing circles, it is written in Perl and according to it’s github history it was first published on December 12th 2001.

Cybersecurity Tips that Could Save Your Small Business

11 March 2021

Ipad Cybercriminals like to go after small businesses because they tend to be vulnerable and unprotected compared to larger companies. In fact, nearly half of all cyber attacks target small businesses! Did you know that most small companies that experience a cyber attack go out of business within just six months? Fortunately, there are several precautions you can take to protect your customers’ data and safeguard the future of your company.

Django Find Records in an Hour

03 December 2020

Here we show how to select all records that occur in an hour. This is useful for cases where you are running an async task at some interval smaller than a day. My first attempts at doing this type of filtering involved providing a start and end datetime. But there is a way to do it more simply by leveraging some database functions.

Django Email Management Command

14 October 2020

Email Here we share a small django management command that sends an email. This command is useful because it will use the same email credentials the rest of your django api is using to send emails. So you can use this as a sanity check to see if your settings are correct.

How Small Businesses Can Adapt and Thrive During the Pandemic

27 July 2020

Woman in mask The pandemic has been damaging for a number of industries and has hit small business owners especially hard. The best way forward is to adapt to the new reality, which involves finding ways to grow your online presence, or if you have a physical business, enacting safety measures to keep your staff and customers healthy.

Django and Intuit Quickbooks api Quickstart

05 March 2020

Login with Quickbooks I recently had a client that wanted a primer on the quickbooks api for oauth. Below find a short video tutorial of how to copy, configure and run a django api that uses login with quickbooks. I also go over the oauth flow between intuits servers and the django api endpoints.

Setting placeholder text for Django TextField

05 December 2019

Django Recently I struggled with a Django form. The requirement was to specify a placeholder html data attribute. This task is very standard but the search terms involved made it tricky to find a solution online. I provide it here to help others.

Troubleshooting React Native projects and AndroidX

25 October 2019

React Native I recently worked on a legacy React Native app that had issues running on Android. Like many software projects there is never enough time nor enough engineers so the project was not tested for Android. When they finally got around to running the app on Android it was too painful. I was asked to fix it.

Django import data from 3rd party api with pagination

10 September 2019

API to Database Async tasks are an intermediate backend engineering problem. Most public facing apis need to return an answer under 1 second for a good user experience. However many real world tasks require more than 1 second to complete or need to be scheduled to repeat. The solution is usually to create a task that can run asynchronously. In Django one way to accomplish this is by writing a management command.