Yeah, this isn't technical, but it is still a post!
I remember the first time I met a best friend. I was four years old. I saw another boy obviously my age walking on his tip-toes. Maybe he was trying to be taller. His nick-name was Scooter, and to this day I've got no idea as to what his name was. It was in his house that I remember seeing men on the moon live. I was five when I moved away. I saw him a few times but we grew apart. Eventually we lost touch.
I was six years old and just starting first grade when I met John. I think his last name was Oplenger. We became inseparable and I remember navigating my way across a mile to find his house. That was back in the 1970s when kids did that sort of thing. We made stop-animation super 8 films together. I was eight when I moved away but we stayed in touch for several years. Eventually our interests grew apart and we lost touch. I might have seen him a few times in my late teenage years, but I didn't have the guts to go up and talk to him.
We moved as I turned 16 so I switched high schools at the end of my sophomore year. I left the people I knew behind. I lost touch real fast with most of the people I knew back then. Thanks to Facebook I've reconnected with a few. Yet I wonder what ever happened to Mark, Steve, David, Jack, Donald, Katy, and many others.
After my aimless college years I drifted uselessly for a while. I lost touch with people I knew in my second high school and college. In 2000 thanks to Google and the now wretched classmates.com I started to reconnect with those old friends.
During my aimless college years I met a smart, pretty girl named Christine. She was the one I should have dated. Ha. The follies of youth.
I'm sure over time I'll find everyone I knew. I'm delighted to find these people and to see how their lives worked out. That even the craziest of us have turned into responsible parents seems like destiny. In return, no one seems surprised by how my life has turned out.
But the ones I really miss are the ones whose names I can't quite recall, or whose names are so generic that finding them seems impossible. People like Scooter, John, Christine, and others.
19 more posts to go!
Showing posts with label november. Show all posts
Showing posts with label november. Show all posts
Thursday, November 12, 2009
Wednesday, November 11, 2009
Picking a Django powered CMS
Note as of October 2011
The CMS options have changed greatly since I wrote this blog post in 2009. I might write a more current post. In the meantime, instead of FeinCMS, use Django CMS, Mezzanine, or use the CMS grid on Django Packages to make your own decision.
Back to the old blog post...
A few months ago I asked the community to help us (NASA SMD) pick a Django powered CMS.
The response of the community was awesome. We were provided a decent sized list of CMS candidates to evaluate. We got a lot of responses, both in comments on my blog, twitter messages, and even direct emails. We compiled the list and got to work.
Now it was time for evaluation. As much as I wanted to do it myself, this was given to the capable hands of my co-worker, Chris Adams. I was a bit jealous because I like to explore, but that's how it worked out.
First Chris used a process of elimination to weed out the ones that were unusable based on my published requirements:
- Was it actually open source?
- Was it 508 compliant or easy to make so?
- Runs on PostGreSQL and MySQL?
- Is there an active community?
- Could you show pages nested inside of pages? In order words, could you rely on Tree Traversal for display of content?
- Was there documentation? In English?
Day by day it was a sad to see the list get smaller and smaller. Each project was the labor of many hours by talented people who cared about their work. Yet Chris had a job to do, and while he didn't drop candidates easily, he did drop them.
Chris now added our sample content to each surviving candidate and invited the rest of the team to look at the code and the results. It was now up to our subjective evaluation. Two finalists stood out as winners, FeinCMS and Django CMS 2. They were so close that one might consider the results to be a tie. Both met all our needs, their code bases smelled pretty nice, documentation felt complete, code had test coverage, and the community active. They even shared a lot of the same dependencies!
The call was very close but in the end we picked FeinCMS.
Django CMS 2 was a very, very close second. I cannot say that enough.
In a few months we'll announce the front facing site we are building. We'll contribute the work we can to the open source community, which will either be work done on FeinCMS or stand alone applications.
Finally, I want to make clear the amount of effort and clarity of work Chris Adams put into these evaluations. He did the hard work and he did it well.
20 more posts to go!
Tuesday, November 10, 2009
Python Wars
Python Wars Solo was the result of a few hours effort roughly duplicating a text-based Star Trek game I wrote back in 1980-1981. I wrote the game in Apple ][ basic, and it had you 'fly' the USS Enterprise against up to nine Klingon ships. You could fire phasers, launch photon torpedoes, take evasive actions, and it seemed pretty fun. Beating one was a piece of cake. Three was a fun challenge. Five was tough. Seven was done only a few times. Nine was never done. The game was simple, fast, easy to learn, and tons of fun. Back in High School it was one of the games traded on floppy disks during the computer club so I considered it a success.
Back in 2007 I decided to try and reconstruct the software. One thing I did was was write most of it in one quick code dash of near stupidity. My theory was that it would more closely match the feel of my efforts as as 15 year old wrestling with Apple ][ basic without the benefits of a manual.
Some changes from the original:
* Rather than name it after the Star Trek universe, I named it a bit generically.
* Switched from phasers to a spinal mount weapon like what they used so wonderfully in Babylon 5.
* Changed from photon torpedoes to missiles.
The result worked, and was fun to play in dribs and drabs. The code is embarrassing, but that was kind of the point.
http://code.google.com/p/python-wars/wiki/PythonWarsSolo1
Do a svn checkout (svn checkout http://python-wars.googlecode.com/svn/trunk/ python-wars-read-only), and then python go.py. Don't laugh too hard!
I'm toying with moving this this over to Github and even doing a formal release. That would be really funny.
21 more posts to go!
Back in 2007 I decided to try and reconstruct the software. One thing I did was was write most of it in one quick code dash of near stupidity. My theory was that it would more closely match the feel of my efforts as as 15 year old wrestling with Apple ][ basic without the benefits of a manual.
Some changes from the original:
* Rather than name it after the Star Trek universe, I named it a bit generically.
* Switched from phasers to a spinal mount weapon like what they used so wonderfully in Babylon 5.
* Changed from photon torpedoes to missiles.
The result worked, and was fun to play in dribs and drabs. The code is embarrassing, but that was kind of the point.
http://code.google.com/p/python-wars/wiki/PythonWarsSolo1
Do a svn checkout (svn checkout http://python-wars.googlecode.com/svn/trunk/ python-wars-read-only), and then python go.py. Don't laugh too hard!
I'm toying with moving this this over to Github and even doing a formal release. That would be really funny.
21 more posts to go!
Monday, November 9, 2009
Code I'll reuse
When I'm evaluating a package to use in my work or play I tend to look at five things. I think many of my on-line colleagues look at a similar list. If its missing too many of these things then odds are I'll go somewhere else for my needs or roll my own.
Documentation
Did the author bother with a README file? How about some sphinx documentation? How complete it it? Does it get me started and give a few basic examples?
I'm okay with typos and mistakes. These happen. But I want to see
Licensing
Everyone has their own idea of what they like for licenses. I like the MIT/BSD thing. I can understand the attraction to LGPL and GPL although they aren't for me. What I can't stand and won't use are monstrosities like GPL/Commercial used by such libraries as ExtJs.
Want to make money off your software? Easy... let anyone use it and charge for support. Worked damn well for communities and companies like Python, Django, Plone, various Linux distributions (Redhat anyone?), etc...
Eggification
Is your software constructed so that it can be installed via easy_install or pip? And yes, this is a bit of mild embarrassment for me, so I'm happy enough to eggify other people's work.
Tests
Do you have tests? Even a nearly empty tests file or folder? How about a test application? If you have no tests then your package is suspect. How do I know it will work independently of your personal computer?
Code Quality
Does the code smell bad? Can it be easily extended? If its innovative but the code needs work is it on a DVCS so more people can easily contribute?
22 more posts to go!
Documentation
Did the author bother with a README file? How about some sphinx documentation? How complete it it? Does it get me started and give a few basic examples?
I'm okay with typos and mistakes. These happen. But I want to see
Licensing
Everyone has their own idea of what they like for licenses. I like the MIT/BSD thing. I can understand the attraction to LGPL and GPL although they aren't for me. What I can't stand and won't use are monstrosities like GPL/Commercial used by such libraries as ExtJs.
Want to make money off your software? Easy... let anyone use it and charge for support. Worked damn well for communities and companies like Python, Django, Plone, various Linux distributions (Redhat anyone?), etc...
Eggification
Is your software constructed so that it can be installed via easy_install or pip? And yes, this is a bit of mild embarrassment for me, so I'm happy enough to eggify other people's work.
Tests
Do you have tests? Even a nearly empty tests file or folder? How about a test application? If you have no tests then your package is suspect. How do I know it will work independently of your personal computer?
Code Quality
Does the code smell bad? Can it be easily extended? If its innovative but the code needs work is it on a DVCS so more people can easily contribute?
22 more posts to go!
Sunday, November 8, 2009
Eating your own dogfood
Since way back in 2007 when I blogged about JSON and Python I've used blogspot as my blog engine. I've never been completely happy with it because it didn't easily support code coloration. Still, it worked, had great up time, and I got used to it.
Recently though on twitter I've been getting a few dings about using python to host my blog. And since I've now captured pydanny.com and pydanny.net it makes even more sense. I toyed a few times with writing my own blog engine but while I've done it for my job, I never wanted to do it for myself.
So I've been shopping around for what I consider the best blog engine for me. I had a lot of great options thanks to a blog engine query asked in April. In the end we just extended the Pinax blog engine with a few widgets and that was good enough. Anyway, recently I started to look at those again as viable options.
However, one more option presented itself. Kevin Fricovsky's Mingus. It has everything I want in a blog, and also seems to closely follow what I would like to think I would have done in my blog. That is, to say, he fetched bits and pieces from all over the Django ecosphere and assembled them into one universal whole. Yup, I like it a lot.
So my plan is over the next week or so is to set it up on a Webfaction account and start blogging from there.
24 more posts to go! (I'm behind on days but plan to make it up with posts)
Recently though on twitter I've been getting a few dings about using python to host my blog. And since I've now captured pydanny.com and pydanny.net it makes even more sense. I toyed a few times with writing my own blog engine but while I've done it for my job, I never wanted to do it for myself.
So I've been shopping around for what I consider the best blog engine for me. I had a lot of great options thanks to a blog engine query asked in April. In the end we just extended the Pinax blog engine with a few widgets and that was good enough. Anyway, recently I started to look at those again as viable options.
However, one more option presented itself. Kevin Fricovsky's Mingus. It has everything I want in a blog, and also seems to closely follow what I would like to think I would have done in my blog. That is, to say, he fetched bits and pieces from all over the Django ecosphere and assembled them into one universal whole. Yup, I like it a lot.
So my plan is over the next week or so is to set it up on a Webfaction account and start blogging from there.
24 more posts to go! (I'm behind on days but plan to make it up with posts)
Thursday, November 5, 2009
Foxpro
In the 1990s I was working for a small company doing a mix of help desk support, system administration, and development. I hated the help desk work, didn't like navigating Windows for system administration, but liked development. Even though development was Foxpro.
Yup, Foxpro. All of my Foxpro work was on Foxpro 2.6 for DOS. A few people in the office were working with Visual Foxpro 5 and 6, which meant a Visual Basic style IDE and whatever object model Foxpro adopted. But I was working in the DOS shell and that seemed easier. At the time I thought a fancy IDE was better, and wasn't until around 2003 that I changed my mind on that subject.
So anyway Foxpro was on the decrease even back in the 1990s. It took a bit of work and some luck to get out of the Foxpro closet. Fortunately I made it out. Yet I still have a soft spot for the language and too. My guess is that it is merely nostalgia for a different time in my life, and if I actually looked at Foxpro I would feel ill.
25 more days to go!
Yup, Foxpro. All of my Foxpro work was on Foxpro 2.6 for DOS. A few people in the office were working with Visual Foxpro 5 and 6, which meant a Visual Basic style IDE and whatever object model Foxpro adopted. But I was working in the DOS shell and that seemed easier. At the time I thought a fancy IDE was better, and wasn't until around 2003 that I changed my mind on that subject.
So anyway Foxpro was on the decrease even back in the 1990s. It took a bit of work and some luck to get out of the Foxpro closet. Fortunately I made it out. Yet I still have a soft spot for the language and too. My guess is that it is merely nostalgia for a different time in my life, and if I actually looked at Foxpro I would feel ill.
25 more days to go!
Wednesday, November 4, 2009
Crashing is fun
When we code we should be catching specific errors. Non-specific errors that you don't anticipate should be recorded in logs and hopefully researched. In theory, eventually you'll catch every error, right?
Today I was cycling along the Custis trail in Arlington, Virginia going around 22-23 miles an hour. Two cyclists were ahead of me and going much, much slower. As I came up to them I called out 'on your left' because on Virginia trails you always pass in the left lane. One of the cyclists then turned into the left lane. The other cyclist stayed in their lane.
Crap.
I hit my brakes but knew I couldn't slow down in time. On the left was a concrete sound barrier. On the right was a ditch several feet deep. So I went to the right. As my front wheel went off the path I unclipped my shoes and leapt off into the air. I'm not sure how fast I was going at that point so I'll say 18 miles an hour.
For decades I've practiced tumbling and falling down on various surfaces. The concept is that you'll get thrown, tripped, swept, or simply stumble and preparing for it is like catching the exception that is your own body when you lose control of your center of balance.
So when it came time for me to fall about 6 feet at about 18 miles an hour I was prepared. What could have been painful ended up being an awesome bit of fun that shocked the hell out of some other cyclists behind me. I rolled out of the fall and jumped up laughing.
My exception handling worked!
26 more posts to go!
Today I was cycling along the Custis trail in Arlington, Virginia going around 22-23 miles an hour. Two cyclists were ahead of me and going much, much slower. As I came up to them I called out 'on your left' because on Virginia trails you always pass in the left lane. One of the cyclists then turned into the left lane. The other cyclist stayed in their lane.
Crap.
I hit my brakes but knew I couldn't slow down in time. On the left was a concrete sound barrier. On the right was a ditch several feet deep. So I went to the right. As my front wheel went off the path I unclipped my shoes and leapt off into the air. I'm not sure how fast I was going at that point so I'll say 18 miles an hour.
For decades I've practiced tumbling and falling down on various surfaces. The concept is that you'll get thrown, tripped, swept, or simply stumble and preparing for it is like catching the exception that is your own body when you lose control of your center of balance.
So when it came time for me to fall about 6 feet at about 18 miles an hour I was prepared. What could have been painful ended up being an awesome bit of fun that shocked the hell out of some other cyclists behind me. I rolled out of the fall and jumped up laughing.
My exception handling worked!
26 more posts to go!
Sunday, November 1, 2009
Posting every day this month
It is customary amongst some to post something on your blog every day of November. There is at least one site for this sort of thing (http://www.nablopomo.com). I think I'm going to try out this strange custom. So that means between now and November 30th each day will see some new content added to this blog.
If you are doing the same thing (blogging each day this month), let me know and I'll link to your blog from here.
So here is to 29 more blog entries!
If you are doing the same thing (blogging each day this month), let me know and I'll link to your blog from here.
So here is to 29 more blog entries!
Subscribe to:
Posts (Atom)