
Ask HN: Freelance web dev best practices... - oldmanstan
I just started doing freelance web dev and design. But I'm inexperienced. I've been starting everything from scratch, just blank textwrangler and photoshop.<p>What are some best practices to get fast and efficient? (For instance, should I be developing on WordPress, using custom form templates, etc?)<p>Thanks.
======
kaisdavis
Hey, Oldmanstan.

I do freelance web development, project management, and (some) design. Here's
a few thoughts I have on my process. These are things I'm doing to stay fast
and efficient. Best of luck to you in your work.

# Optimize for Efficiency

When you have a chose of a tool (platform, application, business practice),
optimize to the tool that takes you less time to use. If you're thinking about
how to develop sites and you're debating between using a CMS like Wordpress or
maintaining static HTML files, I default to picking the tool that will save me
more time in the long run. In my case, I use Wordpress for 99.9% of my
projects because I know it saves me time in building, deploying, and
maintaining websites for customers. There was invested time up front, but now
I don't have to worry about how much time it will take to add 1 link to the
navigation on a 30 page site coded in static HTML. (Hint: Too long.)

The same holds for business practices. If you're thinking about how to market
yourself, pick something that has the highest return on your time. A few
months ago I was debating marketing strategies to find my next paying
customer. I narrowed the list down to:

* Launch a website * Email Chamber of Commerce Members * Go to Networking Events * Call up prospects

I then estimated how much time each activity would take and the expected
number of customers I could expect to acquire. I chose to focus on the
strategy that I felt would have the biggest probability of success: directly
calling up prospects.

# Tools

Here's a few tools that I recommend. They help me stay fast and efficient on
the projects I do:

* Basecamp

Cloud based project management software. I just started using this a few weeks
ago on a new project and I'm immensely happy. It's removed all the friction of
multiple emails and forgotten todos on the client's side. Basecamp acts as a
one-stop repository on what needs to be done, the project status, and any
resources that you need to take note of.

Do yourself the favor of registering for their free plan and playing around
with it. By no means do you have to use this, but keep it in mind if you ever
end up with a 57 email chain in Gmail with a client over todos they need to
take care of.

* CloudApp

Simple file, image, and link sharing. I use CloudApp to manage sharing
screenshots and files with clients. Take a screenshot in OSX, the screenshot
is uploaded to cloud's web server and a URL is placed in your clipboard.
Simply paste the URL into an email and - boom - your client doesn't have to
worry about downloading an attachment. Better yet? Analytics show you when the
URL was clicked. Best yet? Just drag files or links to the CloudApp menubar
icon and it gives you a short url to send to a client for the client to access
the files.

* SimpleNote

Super-awesome cloud based notepad. Syncs to iPhone / iPad devices. Great for
jotting down notes or reminders and syncing information across multiple
computers / devices. This is my preferred digital scratch pad.

* Wordpress and Wordpress Themes

I love Wordpress because it's powerful enough to do what I want and simple
enough so clients don't get confused. I have 5 standard Wordpress themes that
I use for 99% of my development work - offering clients a choice between 5
different themes makes it easy to have a balanced discussion about what they
want and - bonus - is more efficient.

Ask a client what they want and you get a confusing, hand-wavy response. Show
a client 5 example themes, ask questions to isolate what they need / want
(what their explicit problem is), and build on the existing themes and you'll
save yourself a lot of headache.

One of my first projects was an RFP for the University. The spec and design I
submitted won the contract, but the time it took to get on the same page with
the client killed my per-hour. Now, when working with clients, we can start
with a concrete base design and build up.

* DropBox

I always introduce Dropbox to my non-technical friends as a backup / storage
mechanism. Simply put, save the files you're working on in Dropbox. They'll
automatically be backed up to the cloud. Accidentally delete something? You
can restore the file from the Dropbox website. Hard drive crash? Dropbox has
backed up everything to the cloud and you can install Dropbox on another
computer and have all your files back.

On the road? Access any file in your Dropbox via the dropbox website.

Using Dropbox is a great time saver if you run into a system performance or a
missing file. I was talking to a coworker at my day job on Friday and I
insisted that I couldn't work without Dropbox - it's such a part of my project
management workflow that I'd be lost without it.

* Freshbooks

Freshbooks takes the hassle out of invoicing. There are a ton of different
invoicing apps out there, but I like Freshbooks because it is clean and simple
to use. They have a free plan that you can use with up to 3 clients, so don't
be worried about spending money at the start.

I love Freshbooks because it makes it easy to prepare a professional invoice /
bill for clients. Don't waste time mucking around with templates or desktop
apps - just use freshbooks and get it done and get paid in a few minutes.

* Mailchimp

I don't know if your clients have need for email marketing solutions, but if
they do I highly recommend Mailchimp. There's a bunch of different email
marketing platforms out there - so more hip than others - but I find the
Dropbox examples and templates top notch, the support staff super helpful, and
the learning curve very low. If you're working with larger lists (personally
or for clients), it might not be the best solution, but for beginning
freelance web dev and design, it should be fine.

# Books You Should Read

* Spin Selling: [http://www.amazon.com/SPIN-Selling-Neil-Rackham/dp/007051113...](http://www.amazon.com/SPIN-Selling-Neil-Rackham/dp/0070511136)

This is the best book on selling you'll ever read. It's targeted to people
working with larger organizations, but the sales strategies it advocates are
must-knows. After reading it, I was able to negotiate a $16,000 raise at my
day job.

* Influence and the Psychology of Persuasion: [http://www.amazon.com/Influence-Psychology-Persuasion-Robert...](http://www.amazon.com/Influence-Psychology-Persuasion-Robert-Cialdini/dp/0688128165)

An amazing book on psychology. It's a great read if you'll be doing marketing
and copywriting work and will help you land clients.

# Get Out of the Office

Steve Blank has a wonderful quote (<http://ka1.us/eGONiQ>) about getting out
of the building and meeting customers.

> As I got up to leave the room, the CEO said, “I want you out of the building
> talking to customers; find out who they are, how they > work, and what we
> need to do to sell them lots of these new computers.” Motioning to our VP of
> Sales, he ordered: “Go with him and > get him in front of customers, and
> both of you don’t come back until you can tell us something we don’t know.”

Take the same approach. You don't know what your customers need - only your
customers know what they need. If you want to work with small business owners,
drop in on 12 of them and have a short (5-20) minute conversation about their
needs.

I landed a customer recently just by walking into her shop, having a
conversation with her, learning she wanted to do email marketing, and telling
her that I had experience marketing to customers through email. In total, I
spent 20 minutes of my time talking to a potential customer, learning about
her business, and landing a $1,000 project.

# Outsource Meaningless Tasks

Aggressively use your network or online resources to outsource parts of the
project.

Need a logo? Go to 99designs.com Need a voiceover? Check out fiverr.com Need a
theme for a site? Check out woothemes.com, themeforest.net, or
elegantthemes.com Need a photograph? Search flickr's creative commons

# Ignore Entrepreneurial Porn

You don't need business cards. You don't need a website. You don't need a
detailed contract. You don't need a logo. You don't need a brochure.

You need customers. Each of those activities stand between you and a paying
customer. Take the time to get out and talk to the people you want to work
for. Directly ask them what their problems are. What do they wish they were
able to do? Isolate what you can do to make their lives easier and then talk
to them about how you can help them.

Get out and talk to customers and you'll find customers fast. There's a place
for business cards, websites, and logos down the line, but not now. Be
aggressive with the things that directly lead to acquiring new customers.

# Closing Thoughts

I hope these suggestions plant a seed in your mind and help you down the road.
If you have any questions at all, feel free to ping me on skype (kaisdavis),
twitter (@kaisdavis), or by email (kai@kaisdavis.com).

Best of luck in your freelancing!

~~~
PonyGumbo
Great points, but I differ on a few:

>You don't need a website.

I may be the exception, but I would be extremely reluctant to hire a contract
web developer who did not have a website.

>You don't need a detailed contract.

Agreed in the sense that you don't need 30 pages of "...heretofore referred to
as The Client...", but you do need to explicitly spell out a project timeline
and payment schedule. I also strongly suggest requiring a 50% deposit up-
front.

~~~
kaisdavis
Hi PonyGumbo

> Contract

I completely agree. _DO_ have a document outlining cost, payment, timeline,
and what you charge per-hour for support / over-time work.

 _Don't_ overthink it and write out a detailed contract before you even have
customer #1.

> Website

I've never put up a website for my work / business, and never had a client
ask. What purpose would the site have? I don't think it would be cost/time-
effective in terms of lead generation, so it would just be a listing of the
skills I have and examples of other work.

I'd rather spend the 1/10/100 hours I'll spend on the site meeting with
potential customers and learning about their problems.

Maybe it's the different audiences. I'm working with small business owners on
marketing campaigns. You or the submitter my be working with a different
audiences who places a lot of value on a website. Me? I think I'd spend 50
hours 'optimizing' it and never get a lead, so I nixed the site and just
talked to customers instead.

------
pacomerh
Get really good at the basics first, HTML, CSS and Javascript, those are a
must. Then choose a back end language, php, python, ruby, etc, and learn them
very well. Identify what your best area of development is, back end, front
end. Focus on one area and try to delegate the other part. It also really
depends on the type of person that you are (creative, technical..etc), what
kind of programming do you like to do the most?. What is your ideal situation
as a programmer, what would you like to be doing the most. Master a couple of
languages and get jobs on that area. If you're gonna go for WordPress get
really good at it, don't just customize themes, get to build plugins, filters,
hooks, etc.

------
gexla
Freelance web dev is a wide open landscape (and getting wider all the time
with the addition of things like mobile apps, platforms such as Facebook,
etc.) Couldn't even begin to tell you unless you were to be more specific. I
suggest you focus on front end or back end. Take a look at the work out there
and decide where you want to go. Sometimes the decisions are made for you
(looking for a Wordpress developer and sometimes you have full decision making
power.)

------
4midori
Planning.

<http://versastudio.com/guide/ycombinator>

