Saturday, June 4, 2016

fuzzyslogic.com changes

I've spent a bit of time recently extending the new flask based backend I'm using on fuzzyslogic.com.

The main areas of improvement is around image and thumbnail handling and refactoring the database models to allow for sucking in content from sites which use atom feeds with custom fields (ie: goodreads).

I'm continuing to enjoy working with python, flask, sqlalchemy and jinja2. I feel like my understanding of the framework has really come along and I'm confident that things I used to consider to be major work I can throw together very quickly.

Tuesday, January 12, 2016

I Know Python... A Bit

Back in 2014 I had the realisation that not every problem was a nail which could be hit with my clumsy php hammer. I needed to find a language which I could use to create desktop applications and settled on python. I'm very glad I did.

My initial apps were basic console based utilities but I quickly found myself wanting to create GUI based tools. I got my head around WXPython and have a couple of apps which I'm proud enough of that I'll let other people use them. Things that I'd always skipped over as being "too pro for me to bother with" such as unit tests, logging, error handling and code re-usability come second nature.

During 2015 I decided I liked python so much I didn't even want to use php for websites any more. I read a bunch of stuff about web frameworks such as django and pyramid but finally settled on flask (well, actually flask appbuilder). I've used this to create a handful of sites which are at a level of complexity that I'd never have even attempted in php.

The next big jump I made was learning about threading so that my GUI based apps were completely non-blocking and gave good feedback to the user about what was happening.

Better yet is that I've got all these things set up in project skeletons which I can quickly build on top of to kick start development of new tools.

My next step is to get my web based python stuff set up using docker, to make it even easier to shift around as required. This docker for beginners guide is my current reading.