our blog

Accurate Timing

Accurate Timing

In many tasks we need to do something at given intervals of time. The most obvious ways may not give you the best results. Time? Meh. The most basic tasks that don't have what you might call CPU-scale time requirements can be handled with the usual language and...

read more
Exploring Dependent Types in Idris

Exploring Dependent Types in Idris

When I'm not coding the "impossible" at Art+Logic, I take a lot of interest in new programming technologies and paradigms; even if they're not yet viable for use in production, there can often be takeaways for improving your everyday code. My current...

read more
Legacy Vulnerabilities AKA Software Senescence

Legacy Vulnerabilities AKA Software Senescence

Does your business still have an XT computer in the back office because it's running that one version of some database software that your business depends on? Yeah, we know there is. Most modern software doesn't work like that. If you aren't keeping your custom...

read more
Asynchronous Python – A Real World Example

Asynchronous Python – A Real World Example

Introduction We have a customer that developed a hardware device to make physical measurements. Some years ago we wrote a suite of software tools for the customer: a tablet application for configuring the hardware device, a django web server to receive uploaded XML...

read more
Creativity in Software Testing

Creativity in Software Testing

What's in a name? Well, in the case of Art+Logic, our name conveys the idea that software development is a combination of both art and logic. We find this to be the case in all aspects of the software development life cycle. And this is definitely true with software...

read more
Join Us at Music Tectonics!

Join Us at Music Tectonics!

Art+Logic is sponsoring and presenting at Music Tectonics on October 27th and 28th. The virtual conference, with engaging and enticing presenters, promises me the opportunity to slip back into a world I once knew well and vicariously experience the road not travelled....

read more