Author Topic: How to Start a Website/Web App  (Read 2485 times)

IanVS

  • 5 O'Clock Shadow
  • *
  • Posts: 8
How to Start a Website/Web App
« on: March 03, 2014, 10:32:14 AM »
Hello Mustachians,

Because many Mustachians tend to be fairly adventurous and entrepreneurial, I'm hoping some of you might have good advice for me.  If a thread like this already exists, I apologize but I couldn't find it.  My wife and I are in the process of starting a website and are a little uncertain as to the best way to go about it.  Through being naturally frugal and discovering MMM a while back, we've saved up a little money to invest in the project and we want it to look professional, but we want to stretch those dollars of course.  I'm an engineer and fairly handy with Python, but not a web designer or developer so while it would be fun to learn, we've decided to hire others to do the heavy lifting. 

From what I can tell, there are web developers and there are web designers.  Developers write the databases, javascript, Ruby on Rails, back-end code, and HTTP that makes the website function, and designers create the look and feel for the site with photoshop files and CSS.  In an effort to keep costs low, we have ruled out all-in-one design firms that take care of the whole process and are leaning more towards freelancers (Freelancer.com, oDesk, 99designs, Crowdspring, etc.).  But it seems like the design and development needs to occur simultaneously, or don't they?  What is the "right" order to do things in?  We have created a set of basic wireframes and database schema/architecture, but is there anything else we should plan on providing in order to maximize our results and minimize our cost?  Have any of you been through this process and have any insights to share?  We would be very grateful for any hints or tips from those who have "gone before."


P.S. I just sold my Acura RL and bought an older Pontiac Vibe, thanks in large part to this blog making me think long and hard about the money I spend on automobiles.  The money I made by "upgrading" will help finance this website project, which will hopefully in turn bring some income.  A double win! 

Khao

  • Stubble
  • **
  • Posts: 185
  • Age: 29
  • Location: Montreal - Canada
Re: How to Start a Website/Web App
« Reply #1 on: March 03, 2014, 10:48:39 AM »
It also depends how complicated your website is. Blogs or normal online stores can be taken care of by only paying a small fee to host your content on an already existing platform (like Wordpress for blogs, Shopify for stores). The advantage of those services if you only need to do the design and css, all the programming is taken care of for you. If your website is something that requires its own system, then it gets more complicated and expensive. Maybe we could help you out if you told us a bit more about what the website will be for?

I'm a software developer so if you need any more help I'd be happy to help you out.

the fixer

  • Handlebar Stache
  • *****
  • Posts: 1037
  • Location: Seattle, WA
Re: How to Start a Website/Web App
« Reply #2 on: March 03, 2014, 10:55:23 AM »
This is a giant question, so I'll just address one aspect: the order in which to design versus develop. It's not a simple "one then the other."

Take this very common scenario: you hire a designer who comes up with a bunch of great ideas for your website. But designers are not developers; they do not know what's possible or how much it will actually cost to implement their designs. You could take their design and hand it to a developer only to get into some serious problems with the project: either the developer bills tons of hours doing something very complex, makes something up that isn't what you want, does all the easy work first only to leave you with an 80% complete project that will be very expensive to finish, etc.

Some tactics that can avoid this problem:
  • Have the developer and designer work together closely from the beginning. Bounce the designer's iterations off the developer to determine feasibility and get level of effort estimates. After design is finished, you may still need to bring the designer back in to help deal with other problems that crop up: I've never seen a designer plan out every interaction/edge case of a web app from the beginning. The developer should be able to get started on some low-level backend setup while the frontend design bakes.
  • Hire a developer who has some UI design talent to do the frontend. This choice probably will not eliminate the need for a dedicated designer for some things, but it can help with the minor details that can get expensive to engage the designer on repeatedly.
  • Make sure you hire people who are good communicators, and aren't going to run into problems but not tell you about it. As a freelancer I can tell you this is difficult from our end, because you're hiring us to be the experts and know all the answers. It's important for us to balance this with a willingness to admit when we need help.
  • If you don't have much experience managing technical projects, you should try finding a technical lead who can manage all the pieces and get the project done. Much of the above would be their responsibility to figure out.
I also may be able to help, depending on the details of your project. PM me if you like.

IanVS

  • 5 O'Clock Shadow
  • *
  • Posts: 8
Re: How to Start a Website/Web App
« Reply #3 on: March 03, 2014, 11:01:11 AM »
Thanks.  I don't want to give away too much about our great idea so I apologize for the vagueness :), but essentially there will need to be a way for users to log in, upload pictures and text, and we will automatically generate ebooks for them.  I don't think a Wordpress or Squarespace solution will quite fit our needs from what I can tell.  We won't be directly processing payments, so that makes things a little simpler, but there will need to be some databases and server-side code running.  Basically more of a "web app" than a static "website" if that makes any difference.

IanVS

  • 5 O'Clock Shadow
  • *
  • Posts: 8
Re: How to Start a Website/Web App
« Reply #4 on: March 03, 2014, 11:08:35 AM »
Some tactics that can avoid this problem:
  • Have the developer and designer work together closely from the beginning. Bounce the designer's iterations off the developer to determine feasibility and get level of effort estimates. After design is finished, you may still need to bring the designer back in to help deal with other problems that crop up: I've never seen a designer plan out every interaction/edge case of a web app from the beginning. The developer should be able to get started on some low-level backend setup while the frontend design bakes.
  • Hire a developer who has some UI design talent to do the frontend. This choice probably will not eliminate the need for a dedicated designer for some things, but it can help with the minor details that can get expensive to engage the designer on repeatedly.
  • Make sure you hire people who are good communicators, and aren't going to run into problems but not tell you about it. As a freelancer I can tell you this is difficult from our end, because you're hiring us to be the experts and know all the answers. It's important for us to balance this with a willingness to admit when we need help.
  • If you don't have much experience managing technical projects, you should try finding a technical lead who can manage all the pieces and get the project done. Much of the above would be their responsibility to figure out.

Great tips, that's exactly what I was looking for!  As a freelancer, do you often work together with other freelancers (designer or developer, depending on which you aren't)?  If so, how does that typically work out?  It seems like that would be the ideal situation, as long as the two can in fact work together.  (Wouldn't want to hire two people who spend their time and my money arguing back and forth.)
« Last Edit: March 03, 2014, 11:10:12 AM by IanVS »

the fixer

  • Handlebar Stache
  • *****
  • Posts: 1037
  • Location: Seattle, WA
Re: How to Start a Website/Web App
« Reply #5 on: March 03, 2014, 11:23:38 AM »
Great tips, that's exactly what I was looking for!  As a freelancer, do you often work together with other freelancers (designer or developer, depending on which you aren't)?  If so, how does that typically work out?
It depends on the project. I have one project where I'm working alone, and the business' owner occasionally gets a designer to put a page together. I'm a frontend dev that can also do some design, so I basically wrote that second tactic with me in mind; this works fine because when the designer misses a technical detail I can figure out what to do and keep the general design intact.

I've also worked on a project that involved two other developers. The project guy would just task a dev with something specific, and we could all see what everyone else was working on. Since different developers charge different rates but have different capabilities, it can help to have a "lead developer" figure out how to optimally task others on a project as complex as this.

I also worked on a very complex project as the sole developer (again with a hint of a design role) a couple years ago. The UI design was hired out and took several months, with me peripherally involved. The design phase ended up taking an enormous amount of time, and they proposed things they thought would be simple but were actually incredibly complex. I only had about two months to build the whole thing because the design schedule got pushed so far back. I was also in over my head as the sole dev. I was interfacing with a pre-existing backend that was not designed with our use in mind, and the developers in charge of it were extremely reluctant to change anything for us. I did the best I could but there were so many things I had to either redesign or spend a lot of time implementing that it wasn't pretty; the project launched several months behind schedule (after I had jumped ship) and basically blew up on the launchpad. Think "ACA healthcare exchange" botched launch to get an idea. These things happen for a variety of complex reasons in programming projects, unfortunately.