Showing posts with label General. Show all posts
Showing posts with label General. Show all posts

Saturday, December 15, 2007

You know the fun Restart Now/Restart Later Windows pop-up that shows up when you have updates that you need to install? The one where if you click later it will just pop up again in a few minutes? I'm term serv'ed into a server that I don't have administrator rights on and it popped up. Only since I don't have shutdown/restart rights the restart button is grayed out. Since I have no choice in the matter why does the freakin thing even show up?

So I just drag the little window off to the edge of the screen where it will sit quietly and not bother anyone anymore.

Thursday, December 13, 2007

Creating Something Beautiful

I was catching up Joel Spolsky's blog earlier and he had a series of posts containing the transcription of a talk he gave at Yale (part 1, part 2, and part 3). The posts are long but I thought they were worth reading. In particular there were two things he touched on that I thought were interesting.

Testing
In part 1 he talks about testing and the fact that there's no realistic way you could have automated tests cover everything. He argues that at the very core the only thing you can do is check to ensure that one program behaves like another or according to a set of tests. Those tests however can't possibly cover everything that needs testing.

He gives an example of the move at Microsoft to more of an automated test process and the rumored laying off of testers who don't know how to code to bring in SDETs who can program those automated tests. He points out that those tests can't test a number of things that require someone actually look at the product such as whether thing were laid out in an orderly and logical fashion and whether the product has a feeling of continuity.

You can test a lot of things through automated testing but there's always going to be a need for someone with a sharp eye to go through and make sure everything is ship shape.

In-House Programming
In part 2 he writes about why an in-house programmer sucks. He gave three reasons and they are all very good but the one that really struck me was the second:

"So, the number two reason product work is better than in-house work is that you get to make beautiful things."

Numbers 1 and 3 are that you never get to do things the right way and that at a software company your business is software so there's more incentive for the company to treat developers like rock stars (and who doesn't want to be treated like a rock star now and again).

Number 2 stood out to me because it struck a chord somewhere and reminded me why I started getting interested in programming. I wanted to create something cool and useful and beautiful.

I played guitar for a long time and I didn't do it to pick up chicks (though I may have used it in that way a time or two), I did it because I wanted to create something. I wanted to write something that would touch someone or cause someone to open up their eyes to a new perspective or challenge an existing perspective. I wanted to create something beautiful. I used to sit and play for hours, now I only play around on the guitar here and there when my son (who is 18 months old on Saturday) points to it and either wants to watch me play and dance a bit here and there or wants to sit in the case after I've pulled the guitar out.

Currently I'm working on various small (on a scale of all development undertakings) projects. Some of them are pretty cool (like the one I'm working on now that I'll post about once it launches) and some of them aren't as cool (like forms). Though I can still work towards creating flexible and elegant solutions. In the grand scheme of things they may not be groundbreaking or hugely significant but they're still opportunities for elegance.

Someday I'd like to create something beautiful and significant. And I will.

Tuesday, September 18, 2007

Catching Up

I've found myself wanting to post fairly often lately. Typically it's about some technical aspect that's either irritating me or making me really happy. It's not very often that I'm working with something and I sit back and reflect on how much I love n technology because n technology makes my life easier or is just plain cool. I've gone through and made draft posts containing nothing more than a title and a brief description for some of them and at some point I may come back to them.

I need software that automatically extracts a topic along with my feelings towards and knowledge of that topic from my mind with minimal effort on my part. It would then take the randomness floating around in my head and structure it in a rational way, write up a few paragraphs, and post it to my blog. That way when I say to myself "wow, this is really cool" or "holy hell this is such a pain to work with" I can just hit a button and a post automagically appears on this blog (or whichever blog I choose).

Tuesday, September 11, 2007

Restructuring

I've decided to change things up a little bit. From now on I will be trying to post a lot more often and on a larger variety of topics. I can only post about the struggles and triumphs of working from home so much. This doesn't mean I'll be posting pictures of my cat (I don't own a cat but I could always post photos of the neighbor's cat) or what I had for dinner tonight. From this point forward there will be more variety which will likely include little technical snippets, some details regarding what I'm working on, and my take on living with a kidlet.

Oh, and we're expecting kidlet #2. Good times.

Tuesday, August 7, 2007

Home Again

Oh man, I had a great weekend. The wedding I went to was quite a departure from the standard wedding one typically goes to and was much more of a weekend party with friends than anything else. It was a lot of fun but an exhausting weekend made worse by the exhausting trips down and back. Something about being in a car for an extended period of time, even if you aren't driving, is just plain tiring. I drove about 10 hours yesterday (SF to Washington) so that wasn't helping either. Today I feel like a bit of a zombie and am having a hell of a time actually getting any work done.

It's continually surprising to me how much I miss my wife and son when I'm away from them for more than a day or so. This whole marriage and fatherhood (married last November '05 and our son was born June '06) thing is still kind of new to me and I'm often surprised when I realize something like this even if it's something that is expected or the norm.

When I got home last night around 11pm my wife and son were still up (apparently he was just starting to go to sleep while they watched a movie) which was really nice. When they heard me come in they came down and met me and our son did his little happy full body shake thing. It's good to be home.

Saturday, June 30, 2007

Getting Started

On June 29th 2007 I left my 9 - 5 wage slave programming job to take advantage of an opportunity to go freelance. This blog is intended to chronicle that transition and the challenges and issues that will inevitably come up along the way.

First, a little background. I finished school about 5 years ago and have spent that time doing software development work for a couple different companies. In that time I also got married, had a baby, and bought a house. My wife hasn't had a day job since our son was born and we don't anticipate that changing any time soon. She tends to always be working on some project or another and keeps herself busy, I don't mean to make her out to look like a slacker. Though taking care of a one year old full time is work enough if you ask me. Over the past 6 to 9 months my day job had been becoming more and more of a stressful, draining place to be and I was quickly losing motivation. I was dreading going to work and I didn't feel like I was getting anywhere in an environment where I was pushed to learn and make things better.

I've done some freelance work with my evenings for a company of a friend of mine. There's been work when I want it and have the time, however due to my having a day job (and a wife and son), I wasn't able to dedicate a great deal of time to those projects. The fact that there was enough work to keep me busy full time had come up however I had never really given it the consideration that perhaps it deserved. About a month ago a fairly large project came in and he offered me a chunk of the work if I was interested. The scope and time frame of the project wouldn't be conducive to holding down a day job AND taking on the project. In addition my friend has a fair amount of work both internal to his company and customer facing lined up at this time and more work has and will be coming in. After a fair amount of discussion with him and even more discussion with my wife the decision was made to go ahead and give it a try.

Some of the key factors that have played into this decision are flexibility, incentive, and potential:

- I'm going to be working from home for the time being however with this type of work I have the flexibility to work from pretty much anywhere I can plug a laptop in with a wireless connection. My son recently turned one and I'm really looking forward to having the chance to spend more time at home with him. Granted moving to freelance will probably mean working longer hours but for the most part I can dictate when those hours take place.

- Working on the projects I choose means I have additional incentive to take projects and bust my ass when that's called for. This will be a tremendous learning opportunity, if I want to learn a new technology then I do it and it's a marketable skill. I don't need to try to convince a group of managers that moving to some technology will greatly improve performance, lower overhead, or improve employee productivity. Because I'm working on projects (at least for the time being) and will typically be getting paid per project I can work my ass of to make a nice chunk of change in a hurry and then take a couple weeks off to go take a road trip to visit family or travel abroad. That's just not going to happen at a day job where you have a set amount of vacation and if you work extra extra hard for a period of time you might get a bonus (or a company branded clock in the case of my last company) and maybe they'll even give you extra time off but that's not the norm. If you up your output because you're working 60 hours weeks they're going to wonder what happened when you decrease to 40-ish hours a week. Working 60 hours a week just because doesn't sound that good to me.

- The simple action of leaving my day job has created a great deal of potential not only financially but also in regards to life experiences. Now that I'm no longer chained to working on making money for someone else's company I can work on creating my own if I want. The goal of an employer in most cases is not to make you rich and give you the freedom to take time off whenever you want (NOTE: If any of you want to hire me and make me rich while allowing me the freedom to take time off spur of the moment and work odd hours let me know). If you're producing well it's in your employer's best interest to provide you additional incentives to stay with their company but ultimately it's about whatever is in THEIR best interest.

I'm not sure how this will play out but I have high hopes. Stay tuned, we're off to the beach for a week but I'll be getting started July 9th.