Hacker News new | past | comments | ask | show | jobs | submit login
How I Create Websites: A Look Inside the Creative Process (devgrow.com)
44 points by mdolon on Nov 11, 2010 | hide | past | favorite | 4 comments



     1. Draw some ideas out on paper, and work out the minimal viable feature set.
        I try and convince all clients to do this, that way we can get something out 
        the door ASAP, and then take a breather before adding the remaining features.
        It also gives them more time to think their ideas through; the amount of
        features a client has decided against a few weeks later is pretty
        unbelievable. Before I started following the MVP way with clients, I very,
        very rarely got any requests for features to be *removed*. As a developer,
        it's just as much my job to keep the client's applications lean and
        bloat-free, as it is to actually write the code, I think.

     2. Use Balsamiq mockups to neatly replicate what I've drawn and make
        adjustments (this step could be skippable, but it only takes 10 minutes
        generally, so it's nice to have. I would get Draft for iPad or something,
        but I find it a little *too rough*, especially when working with clients.)

     3. Create the design in Photoshop, rarely pixel perfect, I just use it as a
        supped-up Balsamiq, to get a feel for the design.

     4. Create a Rails or Sinatra base, depending on the complexity of the project.
        For a Rails project, I git clone http://github.com/ashleyw/Slate

     5. Write some Cucumber features, referring to any notes or drawings I made in
        step #1

     6. Design the model structure, write some unit tests for them, and then
        implement each model until the tests pass

     7. Once I have a model basis, I move on to the controllers and views (HAML),
        going by the Cucumber features I wrote until they pass. Semantic markup is
        important here, but styling is not.

     8. Replicate the Photoshop design in CSS (or SASS)

     9. Launch

    10. Reiterate adding features which didn't fit into the initial version


these are very, very broad strokes that basically anyone who has done a single freelance project would already know. is this really HN quality?


I don't know how you define "HN" quality, but at the time of writing, the submission has 35 points. The post provides a great overview of how the author consistently succeeds at freelancing jobs that I found insightful.


I wrote the post because a friend of mine who is just starting to freelance wanted to know how I work. It's meant to be targeted at beginners and I agree, most people who have freelanced before should know most (if not all) of it. I do think they are still decent reminders, or at least I hope they are.

Anyways, I didn't expect it to hit the front page really but I guess some people are finding it somewhat useful/interesting.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: