Passion, a hobby or a career

I have a number of hobbies, some of them I am good at. For some of them, people have commentated on the fruits of the hobby saying that I should do it professionally. This always gives me some thoughts on what it means to do something professionally. The obvious parts are that doing something professionally means that you are expected to be paid for what you are doing in some form (whether it is for the end product or for the labor in doing something). The difficult part for these things (after, of course, the fact that I am not really that good at them) is the difference between doing something because you enjoy it and doing something to make a living. You enjoy doing both types, but only the latter involves some sacrifices/skin in the game.

I enjoy writing software and working with computers. I enjoy it a lot. I also do it professionally. It is my career and I plan on continuing to do it for a long time. I also enjoy taking photos and cooking, among many other things. Through this enjoyment, I have become decent at them. When I have cooked for other people or when others have seen some pictures, they have commented on the quality of what I have produced. It is flattering, but then they say something like:

You should open a restaurant.

I know that it is probable that they are just saying it to be nice and complementary but it still gets me thinking. What is the major difference between my work with computers and my other interests?

The biggest difference I believe is the passion I feel for the different things. For software, I am incredibly passionate and interested in it. Professional work comes with an obligation to continue working on something regardless of your mental or emotional state at the time. It means coming in and working on an off day or when you are hungover, and still being able to finish the day without hating everything you have done. There are nights I get home and don’t want to cook. But there are not days where I come into work and really don’t want to work with computers. (I do have many days where I would prefer to remain in bed and watch TV) The desire to continue to tirelessly improve yourself in your passion is what separates a hobby from a career. I want to be good at cooking but I don’t believe I can push myself very far to get good at it. Whereas I want to be good at software and I continue to push myself Monday through Friday, year after year, to do so.

It is always nice to know (or at least believe) that I have found some hobby that I can continue to enjoy doing after many, many hours and much pressure involved. Every deadline and new requirement, every big mistake or new hardship, all the undesirable parts like meetings and reviews, all of them have not stopped me from enjoying what it is that I do. It is hard to believe that would be the case for many things that I find interesting to do. I know I could not wake up every morning and cook for 8 straight hours for months on end or that I could both get good enough and manage assignments in photography to make a living off of. But with software, I can and do continue to enjoy and make a living off of what I do every day. That is thanks to to a passion I have for what I do, a fire that doesn’t go out with a little rain. Hopefully it continues to burn for a long time, otherwise I do not know what it is I would be able to do for a living.


I was thinking about how difficult it is going through a tough day at work (today was really not my day) and how so much of that comes from a generally negative and hostile attitude towards my own work there. When something goes wrong with something I have worked on, I become instantly defensive. When someone brings up a point I don’t agree with, I feel like I must defend my opinion on it.

This usually stems from the need to control the amount of work generated by optimists outside of the department (this is a constant struggle for software people). Marketing people love to promise features and due dates to make sales, but then developers are the ones who need to work through a weekend to make the promised date. Developers are also very attached to their tools and work environments. I am not really sure why this is so, but it probably stems from the amount of individuality it incorporates and the personal tweaks everyone makes for their own tastes. But when developers begin debating editors, operating systems, languages, even syntax conventions, things get really heated. All of these strong opinions increase the hostility of the environment and make any criticism or comment a bit more heated.

After my first job, I was incredibly quick to become defensive of my work. This is mostly due to the culture at that office. Every mistake was brought forward and usually got you chewed out or ridiculed publicly and every decision was picked apart and analyzed, forcing you to either defend your opinion or be treated like an idiot. Going to my current job, the team is a lot more constructive and supportive (but still plenty of hostility, especially for those of us who use Linux).

I am going to begin trying to bring more positivity to the workplace. I feel like I already do a good job of this in most of the other areas of my life. I think that being more positive can begin to break down some of the natural tension and hostility in the department. I hope that, as I get used to it, I can begin to dull some of the swords that everyone begins to brandish when a topic comes up. I am beginning to believe that having a positive mindset is probably the greatest skill for a programmer on a team. I am not sure how this will go, I will probably slowly begin to change my outlook and attitude professionally. Hopefully in a year, I will be a lot closer to ridding the hostility of the programming community.

probably should write one

I should probably write an entry as I have neglected adding one for a bit and I told myself that after I finished migrating everything over to django I would write more frequently. I have not been doing anything exciting. I am wrapping up the rewrite of the web interface I have worked on for my job and will hopefully be able to move on soon. I am not sure what is next for me, my coworker asked what was in line and I have no clue. I have had the ongoing task of helping the web side grow up into a major player rather than a side note. Now that it is much more useful (I now default to using it for checking things) and stable, I can go on to other things, but what?

The integration I worked on with a company may require that I travel to Boston to help them with it, which I actually don’t want to do that badly. I know, I should be excited to travel to Boston and get away from the office, but I just think there will be too much unpleasant things to make up for any of the good that will come of it. I will mostly be stuck troubleshooting any problems they have and trying to work around features or tasks they spur on me that I am not prepared for. Doug thought that both of us should probably go out there since we split the development pretty evenly, but I doubt that the higher ups will be pleased with that idea. So for now, I am just waiting around.

I got my sofa a few days ago and have finished mounting my shelf and the speakers to the underside so now it is very pleasant to use my computer :D. I have recently started to want to get into cooking to some degree (not like gourmet chef stuff) so that it wouldn’t be so daunting to want to make myself something to eat. I made some coconut rice last night, which turned out alright, I think that the recipe called for too much garlic and I over cooked it just a bit (not burnt but the rice in the corner of the pot was a bit brown, so a small % of the rice). I am debating trying to make some Japanese curry sometime, but I need to find places that sell all the ingredients. I would try and do these things on weekends, but I seem to be always busy on weekends, so I shall see where it goes.

I added commenting and RSS the other day, so comment away/subscribe to the feed. I may also try and incorporate some more fancy javascript through this. I have noticed an awful color discrepancy with Firefox 3.5, so I may try and fiddle with that as well.