I'm a developer, not a writer
So I've learned some things since my last post on here.
For one, people actually come to my little website. I did not know this. I haven't run any usage tracking stuff for a long time and just kind of figured it's a tiny blog thing which I don't advertise and I'm not famous, so it must get like 2 hits per year. I got bored and set up Google Analytics a few days ago and it turns out more people visit each day than I thought did in a year. Not tons. Not even ...→ read more
I've started a second small to mid sized project to go along with Djukebox. I'm using this to test something out with Django projects to see what I prefer. With Djukebox I just made it a proper installable app that you can install with pip (if I put it on pypi). I like this because then you can easily start a project called whatever you want, which does anything you want, and add Djukebox to it. It also makes it easy to distribute without tying myself or anyone else to a specific project structure, you set up your ...→ read more
I finally got done adding track editing data to Djukebox. I can't remember when I started on this, but I believe it was well over 6 months ago. I had a lot of delays and not much free time in getting it done. I took two calculus classes, had my employer shut down all in house software development and lay off the entire team and so had to find a new job, and had a baby. It's been a long time coming, but the functionality is finally added.
I learned some things while adding the new features. I ...→ read more
Today I tried to use CoffeeScript for the first time. Some of the other guys at my new job like it and it's not often that you are encouraged to use more cutting edge, less supported, less proven technology so I figured I'd give it a try on my current work project.
I recently bought the beta of Two Scoops Of Django based on all of the good reviews and recommendations it's getting fro people who know way more about Django than me. I haven't read it all in depth, but I've read most of it and at least glossed over the rest and so far it was well worth the $15.
The explanations of how and when to use the Class Based Views were excellent. The official documentation hasn't been very clear on them, so I've avoided them. In my personal case I still think they ...→ read more
Not too long ago I began talking to a company which will remain unnamed for now about a Django dev job. Part of their hiring process is to write single player a tic-tac-toe game where the computer always wins in Python. The hiring is on hold over the holidays, but I figured I'd get a head start and document it here for fun.
I start with a couple of basic classes, Board, Player, and AIPlayer.
→ read more
class Board(object): """A tic tac toe board""" wins = ((0,1,2), # rows (3,4,5), (6,7,8), (0,3,6), # columns (1 ...
I was peer reviewing a bug fix for some code at work the other day and learned something about Python and encoded Unicode. It makes sense now, but when I first saw the fix my initial thought was that there's no way that's what is going wrong. It turns out that once you've encoded a Unicode string, perhaps to utf8, you can chop off just part of the bytes of a single Unicode character using string slices.
→ read more
>>> u = u'A string with some random unicode \u0200 \u0202. There it is.' >>> u u'A string with some random ...
I recently reworked the Djukebox UI. It's still ugly, but it uses way cooler things behind the scenes. The original incarnation had a main page which housed the player, a hidden iframe for uploading new tracks while letting the user continue browsing and listening, and another iframe for the current page content so that the player could keep playing while the user clicks around through lists of tracks and albums.
It worked pretty smoothly, but it's not cool and new. This is an old, hacky way of doing things. The point of Djukebox is to be a playground ...→ read more
I have begun work on a new control panel app for the CMS used for bash-shell.net. I got to learn a little about how django.contrib.admin works since I dug into its code to see how the dynamic urlconf creation happens and how model registration is handled. For bscontrolpanel entire views are registered rather than single models. This can be a bit more work, but it allows for streamlined, user friendly control panel views to be built, housed with the app they belong to, but appear dynamically in the control panel and all live under a common base ...→ read more
The site has a new look. I completely scrapped the old html and css and started from scratch. I'm terrible with picking colors so I used a bootstrap them from BootSwatch and then went to work on the layout. I made changes to the back end to hopefully let me expand this more as time goes on. The blog section is now one app while the projects are their own app rather than being hacked into the blog stuff. I'm hoping to find time to take the projects section and tie into github and bitbucket APIs, add file ...→ read more