Coding with Jesse

Freelancing: First two months

It's been two months now since I announced I would start freelancing full-time, and hardly anything has gone the way I expected. Here's a little list of some of the things I've learnt or found surprising:

  1. You don't work as many hours in a day as you think

    Originally, when trying to figure out how many hours I'd be working per day, I just figured I'd do the same I did at my day job: 8 hours, from 9 to 5.

    The first time I tried to work that long, I realised it just wasn't going to happen. I discovered that it takes me about an hour of checking email, reading news, etc. to wake up enough to start working. Then, I can only work about 2 hours straight before my mind turns mushy and I have to take a break.

    I quickly realised that my prime working length was around 5 hours in a day, spread out over a period of 7 or 8 hours. But when you're billing by the hour, you really should only charge for the time worked, not the time eating lunch or surfing the web. This is a major difference between freelancing and a regular job.

  2. Scheduling can be very hard

    Scheduling is a juggling act based on a few difficult tasks: estimating how long it takes to do something, and figuring out when you'll have time to do that work. Multiply these simple looking problems by the fact that you'll occasionally be stuck waiting for something from clients. This can create these weird bubbles in time where you have nothing to do, but know that a few days from now you'll have way too many things to do.

    With web development, the size of projects can vary from an hour or less to over 400 hours of work. It's especially hard to deal with very large projects. You can say it'll take 100 hours, and that it'll take a month to work those hours. What do you do while you wait for the client to get back to you - tell everyone else who asks for work that you're all booked up? Then what happens if the project never happens? You get screwed!

    I'm starting to figure out I have to just explain my situation to my clients, tell them I don't know exactly when I'll have time, but that I should be able to finish within the next month or two. I'm also being careful not to commit more than maybe a third of my time to any one project, because anything can happen. The more flexibility I can work in, the better.

  3. Freedom isn't free

    Probably the best part of freelancing is the freedom to work when and whereever you want. While this is true in theory, when you schedule work for yourself, you have to make the commitment to actually work those hours. If you don't, well, you'll either have to work extra hours later or else deliver things late. These are the only stresses that really force you to work, but I'm glad that they're there, or else I would probably be taking off way too many days.

    Freedom also gives you the opportunity to find your own rhythm. I'm starting to think that I may work better in the evenings, though my girlfriend isn't so excited about that idea. It's actually not so easy to figure these things out, something you don't have to think about when you're told exactly which hours you have to work at.

  4. No time for blogs

    When I had a day job, and I wanted to take a little break, I just loaded up Bloglines and tried to catch up on the 200 or so feeds I subscribe to. Now, I can say I haven't read any of them since I went completely full-time. You may also have noticed that I've hardly blogged at all during this time, either.

    The reason is, now that the computer at home is where I work, when I take breaks or stop working, I want to get as far away from the computer as possible. It's like blogging and even reading blogs is a part of work that I need to schedule in or make time for, except it seems like the least important thing I have to do, so I never end up with time for it.

  5. It's not so hard to find work

    I once told a guy who worked at a web development company that I was about to start freelancing. He said, "That won't work. When will you have time to find clients?" I haven't had that problem at all.

    Okay, I do have the advantage of having this blog. Nearly all of my clients come from my Hire Me page. But I'm not scared that this will stop. I know that I can easily find more work through sites like Rent A Coder or Guru, even if it pays a bit less than I prefer. I could also step up my marketing efforts at any time (which means doing any, since right now I'm doing practically none).

    Okay, it's true, I don't have a lot of time to go find clients. But if I ever ran out of work, I'd certainly have the time to find new clients. It should balance itself out quite well.

So there's some of the things I've learned. Do any other freelancers out there have anything to add to this list?

Published on October 8th, 2006. © Jesse Skinner

Carnival of the Web #4

Welcome to the fourth Carnival of the Web.

First off, Jonathan Snook explains how to maintain an ideal source order while still displaying web site elements in the appropriate positions with Stackable CSS Columns.

Next, Joe Kissell at Interesting Thing of the Day explains just what is so unconventional about text-based ads.

Violeta of All Tips and Tricks shares her results of A personal experiment on internet traffic sources, trying to understand how social software fits in to web site marketing.

Dave Gooden wonders Am I missing something?, giving a skeptical look at the use of map mash-ups for real estate web sites.

Renata Vincoletto at A geek Family wonders what effects the internationalization of companies has on the freedom of nations to enforce their own laws, when Google has bad moments in Brazil.

Dominic Foster shares a simple checklist outlining how he set up WordPress.

And finally, Benjamin Yoskovitz helps non-designers understand the importance of choosing a look and feel of a web site, explaining How To Pick the Best Theme in WordPress For You.

Published on September 17th, 2006. © Jesse Skinner

How to make a web site for cheap

Even though I'm a web developer for hire, I'm not really interested in making really simple web sites. I believe most people could do it themselves, if they just learn a few things. I'd rather spend my time coding web communities or Ajax enhancements or whatever.

So your aunt or some of your clients are bugging you for a free web site (and you don't want anything to do with it), then think about passing these tips along.

  1. Get a free web design

    There are a bunch of sites out there with free web designs available to the public. The Internet is so big, it really doesn't matter if you have a one-of-a-kind unique web design. Check out Open Source Web Design, Free Site Templates, or just search Google for free web design.

  2. Find really cheap (or free) web hosting

    There's a bunch of places that offer free web hosting, but a lot of them won't let you get your own domain name, or they might put a banner on your site or whatever. Plus, you'll want to have hosted email, and the only way to get that is by paying for it. Web hosting is the only thing you really have to pay for.

    The good news is, web hosting is pretty cheap. DreamHost, only charges $9.95/month ($7.95 if you pay for 2 years in advance). Plus, you get to register your domain name for free. There are other companies out there that are even cheaper and offer different things as well, so if you shop around you can find a good deal.

  3. Create the web pages yourself

    Get a copy of Dreamweaver or Microsoft Expression or something similar. This way you can put in your content yourself. You can even learn a bit of HTML and CSS and get your hands dirty. HTML is really easy to learn, and there are thousands of books and free web sites that can get you started.

Ten years ago, the only web sites out there were ones people made for themselves. Nowadays, with so many web companies out there, most people think they have to pay big bucks to get a web site. There is so much free information on the Internet that really anyone can learn how to make a web site, and it only takes a few hours for people to learn how to do it themselves.

Published on September 9th, 2006. © Jesse Skinner

Running both Internet Explorer 6 and 7

When the first beta of Internet Explorer 7 came out, the biggest complaint was that there was no easy way to have it run as a standalone browser. You're pretty much forced to upgrade your whole system to use it.

I took the plunge anyway, deciding I'd rather run IE7, but I ran into all sorts of situations where I really needed IE6 for debugging.

There are a lot of hacks and instructions for taking apart the IE7 beta so that you can run it standalone. I've decided that the extremely easier solution is to just install IE7, then download the standalone of IE6.

Now that the Release Candidate is out, you probably don't want IE6 to be your main browser anymore, right? So why not just have it around for the few times when you really need it?

Published on September 5th, 2006. © Jesse Skinner

5 Basic Search Engine Optimization Tips

Search Engine Optimization (SEO) has grown into an entire industry. There are tons of companies who do nothing except help web sites rank high on Google or get lots of search engine traffic. Most of these companies charge a lot for their services. I'm going to outline a few simple things you can do to your own site for free. This isn't a complete list of things you can do, but you can do very well on search engines by following all of these.

  1. Use a strong title

    Probably the most important place on the page for search engines is the <title>. Rather than cram a thousand keywords in your titles, try to keep them simple and to the point. Describe the contents of the page in plain language. For example, I titled this page "5 Basic Search Engine Optimization Tips" rather than "SEO For Dummies" or something else tricky.

  2. Pay attention to the URL

    The worst URLs for search engines are like "http://site.com/index.php?c=34&d=43". It's much better to use "http://site.com/my-web-page-title". Do everything you can to get the same keywords into the actual URL of your page. Also, make sure you separate the words by a dash "-" instead of an underscore "_". Google sees a dash as a space but sees words attached with an underscore as one big word.

  3. Use header tags appropriately

    Use <h1>, <h2>, etc. whenever you can. Don't use them to increase the font size, use them to mark your titles. Doing so tells search engines that these words describe the page or section of the page. So be sure to put good descriptive keywords into these tags. This will increase the page's relevance to those keywords.

  4. Keep all the words in the HTML

    A lot of sites have titles and navigation made up of image buttons and links. It's better to just use plain text with a background image. If you really want to put words into images, make sure you at least use the alt attribute. Also, try to put the same words in the HTML, hidden by CSS if necessary.

  5. Write good content

    This is an obvious one, yet usually forgotten. Good content will have a lot of keywords relating to the topic. By using lots of synonyms and clear descriptions, you'll give more words and phrase for the search engines to find. Even having user-generated content such as comments or reviews will give more opporunities for searchers finding the page.

Hopefully following these simple tips will help you get some more traffic. There are a hundred tips and tricks out there, but the best tip of all is to just write lots of great content and make good web pages which are useful and easy to read. The rest should come naturally.

Published on September 3rd, 2006. © Jesse Skinner
<< older posts newer posts >> All posts