Posted on March 20, 2008 at 7:14 P.M.

PyCon 2008 has come to an end for me today, and while it was a highly different event for me this year than last year, it was more enoyable in many ways. During my flight today, I contemplated the previous week and my thoughts invariably came back to four main themes:

Formal Talks and the Controversy Surrounding Them

I was blissfully unaware of all of the controversy surrounding the conference this year until well after everyone else seemed to be. I disagree on many of the points that were brought up on the Python mailing list, but I can't help but think that a few of the points brought up there hit close to the truth.

Last year was my first PyCon, and every talk that I went to excited me, intrigued me, inspired me, and made me feel like Python was really something great. This year, I seemed to consistently pick the talk right next to the great talks--I could tell because of the laughing and cheering from the other side of the wall.

That's not to say that I didn't attend any great talks this year. The PyPy and IronPython/Silverlight talks were definitely highlights. Both projects are really thinking outside the box about traditional ways of doing things and are succeeding in implementing their crazy ideas that could never work. It's exactly that kind of conceptual evolutionary change that excites me to try new things myself, and anything that does that is a good thing.

The Django Community Thrives

Wow. The Django community is now huge. At last year's Django BoF, we were able to sit in a big circle and eat pizza and talk about Django, but this year there were way too many people for that to have been possible. The BoF was literally a mini-conference inside of PyCon this year.

It seems like everywhere I went, I'd run into somebody that I recognized from the Django community. There were even some crazy times where people actually recognized me! (Sometimes I forget that people actually read this blog.) Whenever there were Django people to be found, they were always grouped together and keeping each other company. I think that this is mostly a great thing, as long as it never turns into a reality distortion field.

No matter how you look at it, the rate of growth of the Django community, even when compared to the growth of the Python community, is staggering. At one point in Adrian Holovaty's "The State of Django" talk, he asked everyone to raise their hand if they were learning Python specifically through using Django. A large portion of the people in attendence raised their hands. How cool is that!?

Sprints

Sprints dominated my time this year. Last year I got to stay for one portion of one sprint--simply not enough to really understand what sprinting is all about. This year, however, I got to sprint a lot! The first day, I smashed through about four patches and then started working on many-to-many intermediary model support. The merging of newforms-admin is really one big barrier for this patch right now, so I was basically forced to stop working on it.

Aside from those contributions to Django itself, however, about 5 of us (who, by the way ranged in previous experience in Django from almost none to branch committer) began working on a project for the community. Unfortunately we're not yet finished with the site (we're probably sitting at about 75% complete), so I can't publicly reveal it. Rest assured that I'll blog about the site itself once it's ready.

In all actuality, however, we didn't put our noses to the grindstone on this site. Sure we got a ton of work done on it in an extremely short amount of time, but we could have gotten more done. Instead of being code monkeys, though, we really ended up taking the time to just drink some beer, make fun of each other, and get to know one another. And that's really what it's all about.

It Always Boils Down to the People

This feels like it's becoming sort of a recurring theme to my blog, but it's something that I find to be true time and time again. If PyCon had been just the talks and coding by oneself, it would not have been very fun--it really boils down to this: it's the people who make life fun. People that challenge you, trust you, people who don't match up with your expectations of them, people who make you laugh, and people who you just can't figure out.

There's never a better place to find people who fit all of the above criteria than PyCon, and in this case we all share a common interest: Python. I found myself thinking at the end about some of my fellow sprinters that we had become quite good friends. I don't know why it happened, but in only a week we really seemed to get along.

Why do I love PyCon? Because you can get into debates about computational linguistics, walk 20 blocks with arms full of beer, stay up all night coding, and groove out to some really amazing live jazz, all in one week. That's why I love PyCon.

(Note: There are no links in this post since I wrote it on a plane and posted it in-between connecting flights in an airport.)


Posted on March 13, 2008 at 8:04 P.M.

I'm currently on my way to Chicago for PyCon 2008! I've miraculously convinced two of my good friends, Tony Hauber and Chris Coudron to come along as well. They're even going to participate in the sprints.

Last year I was still 20 years old and therefore couldn't participate in any of the drinking activities, but this year it's a different story. It's going to be really fun to see that side of the conference this year.

Come talk to me about...well..anything, really. Pretty much any Django-related activity is a good bet on where to find me, otherwise hit up Twitter/Pownce, as I'll attempt to use those services to their fullest. Have a wonderful PyCon and I hope to see and talk to a lot of you there!



Posted on March 12, 2008 at 5:57 A.M.

After my last post about django-threadedcomments, there have been several new releases. We've integrated completely with comment_utils, added support for gravatar, and added some internationalization (I love that we abbreviate this as i18n) support as well. Every day more and more people seem to be adding bug reports, patches, and feature requests to the ticket tracker. This couldn't make me happier, and I hope to see it continue. But what does this have to do with ideas? It's the first programming idea that I've taken through conception, execution and all the way to support. After django-threadedcomments, I've decided to change my outlook on how to organize and deal with ideas that I get every day.

Supporting a Project

There sure is a thrill to just sitting down and quickly hammering out the solution to a problem. Who cares if it's hacky and incomplete? You just proved that your idea was doable and you did it. It instills quite the sense of accomplishment. That's the style of project that I've worked on until now (aside from work). With django-threadedcomments, however, there's a completely different feeling that's just as thrilling: people are actually using it. It gives a completely different and stronger sense of accomplishment. The reason is because I made a conscious effort to support the application after its initial release, for my own benefit and for others'.

Admittedly it can be tedious at first. I'm convinced that nobody enjoys writing test code, and writing documentation can take as long as writing the code itself (especially if you delete and re-write as much as I do), but being able to apply patches that people submit and actually ghasp re-use your own code in other projects is where the reward really lies.

Ideas

I have ideas all the time--as I think most people do. Whether it be while writing code for one project, sitting idly in class, or even eating my cereal in the morning, ideas for nifty programs or websites or APIs just sort of pop into my head. What do I do with them? Until recently, what happened is that I'd start working on it and lose interest after a while. Over the last few months, however, I've begun to form a list instead of starting on the projects.

Why make a list? Looking at my track record of starting and abandoning projects--and assuming that I'd like to do that far less often--it seems that something needs to change. The change that I've settled on is to put them on a list instead of hastily implementing them. When I attack one of these ideas, I'll attack it fully and correctly; bringing it from conception to implementation, and finally to support. The reasons for this are three-fold:

  1. It's a good incubation period. After a while, some ideas seem stupid, while others keep begging to be solved.
  2. It allows for a greater sense of accomplishment. Once you cross out a few items on your list, you'll realize that what you've done is quite a feat.
  3. You can simply remember all those crazy ideas that you have had.

What is on my List?

I'm sure many of you may be asking what, specifically, I have on my list. django-threadedcomments is on there, and my next project is django-simplestats. The latter is not ready for public consumption yet, but check it out if you'd like to see a sneak peek. There are also several other items, but I'm not going to talk about them because it would take all the fun away from me! Honestly though, don't ask me for my list. Come up with your own and work through it for yourself.

And You

Enough about me in this rambling post, what about you--how do you deal with ideas that you get every day? Am I crazy for actually enjoying supporting a project? Do you have any tips for me in my organizational endeavours? Please respond in the comment section below.

Search

 

Badges

  • django badge
  • apache badge
  • GeoURL
  • XFN Friendly
  • Valid HTML 4.01 Transitional