Imaginary has implemented two high tech tools to foster a decidedly low tech essential for success - frequent and productive client collaboration.
As Web developers we are sticklers for website details. That's why I always look at the copyright year, often found in the footer of a page.
Whenever I go to ...
Django-RQ is a Django integration with RQ, a Redis-based Python queuing library. This post is a step-by-step guide on how to set up a queue with Django-RQ plus how to make it a daemon process on a server (to always run in the background).
In February 2017, Google announced its plans to discontinue its Google Site Search product. Those clients of Imaginary Landscape who had relied on Google to provide their users with a search engine service for their website looked to us for a new solution. Finding no obvious equivalent replacement, we decided to create our own website scraper and accompanying search app.
This is the third and final part of a multi-part tutorial covering a simple(ish) setup of a continuous integration/deployment pipeline using Drone.io:0.5. Since ...
Like eating Brussels sprouts, everyone knows that keeping software current is good for you. But getting clients to actually upgrade regularly is hard. Why is that?
Update 2017.11: Since this article was released in 2016, Letsencrypt has simplified its install process. This article has been updated to address those changes.
You may have heard of ...
New Top 10 List of the Most Critical Security Risk to Web Applications, Is Your Application Vulnerable?
The new OWASP Top 10 list of website vulnerabilities has just been released.
Presenting a new open source plugin: The Django Version Viewer!
Imaginary Landscape is pleased to present a helpful new plugin for the Django Web Framework - The Django Version Viewer!