Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

General Discussion

Nikolaos Papathanassopoulos
Nikolaos Papathanassopoulos
10,322 Points

How to approach a website project?

Hey Guys, I was wondering if there's a "professional" way to begin a website project. Assuming there is, what would it be? Is there a strict order one should stick to?.

IMHO i think at start there must be any kind of concept, but after that?

Would you rather code the complete website in html and css, than add js and jquery or php step by step? Or is it more effective / efficient to build freely? (To mix everything as it comes to mind?) Can you recommend a "normal" Workflow?

Let me know your (professional) opinions on this,

Best Regards, Nikos.

7 Answers

Casey Hodgson
Casey Hodgson
2,092 Points

I too am interested in knowing people's website building approaches. I've always gone with just going with it, but I always end up kinda lost half way through.

I purchased some software called 'The Brain' and it's brilliant for projects like designing a website.

It's just like having a virtual brain to quickly and efficiently add thoughts and ideas as you go and then look back when you need too, or add more as well.

It's increased my productivity work flow and made creating websites less stressful! :-)

Great video on the modern workflow:

http://www.youtube.com/watch?v=vsTrAfJFLXI

How would you write a song? You could start with the melody, or the chords, or the rhythms, but in the end, does it matter about the order that the rest of the parts came the be included in the song? Nope. Just matters if the final song really can touch the audience.

Spen Taylor
Spen Taylor
13,027 Points

I've not built a full website / program as of yet, but to me I'd start with figuring out the main functions and features. Once I knew how I would display these functions I'd start structuring the rest of the content around the features in some sort of logical way.

Next I'd think about how the user will get around from one page to another and start either sketching out layouts on paper or in illustrator (so that I could easily play with sizes/ composition) and once happy with the layout I'd start adding detail and colour.

Then I'd hopefully be ready to start actually coding/ building the site!

I might be way off the mark, like i said I've still not gone from start to finish yet! :P

Michael Guerra
Michael Guerra
558 Points

My workflow is generally something like this:

  • Content strategy / planning
  • Design
  • Front-end:
    • HTML
    • CSS (mobile first responsive of course!)
    • JavaScript / jQuery
  • Backend:
    • PHP / mySQL
    • .htaccess / robots.txt
  • Testing / Cross-Browser / Device
  • Final checks / Additional SEO / Deployment

Of course, it changes depending on the project, but that's pretty much it in a nutshell.

I would go with a workflow similar to Michael's post. I would test as I develop the frontend to make errors easier to identify. Then do more robust testing after implementing the backend.

Michael Guerra
Michael Guerra
558 Points

Exactly, you kind of mix all the pieces as you go, but set up a specific time to really focus on each section you're on. For example, you'll want to test you're responsive design while you're working on the layout, and test your scripting and PHP as you're working on behaviors, then retest all the pieces, as well as everything as a whole at the end. Thanks for pointing that out William!