Everybody that leads something at Dell felt the need over the Holidays to send out some sort of back-patting, self-aggrandizing letter disguised as heartfelt and encouraging pick-me-up messages. So here is mine.

Well, not really. I don’t have a lot of back patting or milestone announcements to pad this post with. I am however, working on a few side projects.

Most important of the side projects that I am working on is a complete re-write of the tooling I use to build my website. At the moment I use a collection of bash and python scripts coupled with the third-party - yet open source - website generator "pelican" cobbled together with a makefile. It works, but it isn’t pretty by any means and it is not easy to reuse at all. So I am working to change that a few bits at a time.

I started with the biggest challenge of the whole thing, the big code-re-write portion of the project. While a big challenge it was is also the easiest way to start since it helps to give shape to the rest of the project. The first things I got rid of was having my content git repositories as submodules to the repo that builds the site. The second bit I’m getting rid of is everything that was hardcoded and tied to that structure that I used before. In short this involves just writing a new system to replace the old one using the new requirements I have in mind. Another major addition is that I don’t think I’m going to use Pelican, I am instead writing my whole thing in python already so I’ll use jinja and build the pages myself. I have already started working on designing an INI style config file that will allow me to configure a new project really quickly since the content will be separate from the generater code by design.

Above I said that the website rewrite was one of my more important projects that I have going at the moment. It is, but mainly because I have plans to continue work on some of my other really interesting projects but I need a better way to record my progress and documentation for each project. I have the domain locations in mind, but I just need to create appropriate websites for everything.

To that end I have been playing with the Skeleton Responsive CSS stylesheets and I will be looking at updating some of the design of my page as I change how things get built. For now, the old process and scripts will be used to update things here though.

Other projects that I want to showcase, and continue working on would be:

  1. Netify : Generic Webapp project boilerplate using Flask
  2. Potty Oh : Programmatic Audio Generation using python
  3. Space : A non-descript space based game that is not fully fleshed out yet.

For all of the projects I want a place or a way to post updates and stuff. It would be nice if those types of posts would show up in my main website but also under a project specific section. I also would like a place to host more technical library and API documentation for each project because I’m a nerdy engineer like that.

In more detail, Netify is essentially some boilerplate architecture and libraries that lay out a structure that I hope to be able to use to provide a common, moduler underlying structure for my other projects that I have in mind. It is really little more than a set of libraries including a config file module that you can inherit from, define modules for, and essentially start up a new project in a familiar manner that should also allow for combining multiple Netify projects into one coherent webapp. It includes support for hosting the whole thing with NGINX inside a docker container so the plan is to continue with that level of modularity.

Potty Oh is a python project where I have programmed a signal generator that can create audible tones of various frequencies and write that to an audio f file. I have a bunch of ideas for how to extend this as well as adding things like audio effects and perhaps even on the fly music generation if I can figure out how to get it to work. Before I move any further into this project though I need to document what I’ve learned up to this point. It took me a long time to figure it out and since it is quite complex and technical I need to document it appropriately before I move on to different things. If I can get on the fly music generation working then it may actually make sense to write a web API and a javascript front end for controlling it. This is one place where Netify should come in handy.

Space is a python based project. It simulates a space based construction, management and conquering game. I have a number ideas about what to do with it but it has sort of become backburnered in favour of the things I’ve mentioned above. In a very very loose sense it will sort of be based on Zorg Empire or OGame which are both online browser games with a similar sort of gameplay idea to what I am working towards.

I have less exciting projects like fully organizing all my paperwork and RC gear at home or cleaning up my config repository and making it open source too. But those will need to wait for another blog post since I don’t think they are much worth talking about at the moment.

" "