Settings

Theme

Ask HN: Fastest way to get a web app from 0 to 60

4 points by v3rt 13 years ago · 8 comments · 1 min read


Hey everyone, I'm a college student in CS and aspiring startup founder. I've stumbled upon a problem I want to solve, and I believe that the best way to test this idea's feasibility is to get a v1 launched and exposed to users ASAP (most likely my college campus to get started). However, I've been focusing on coursework and ML stuff over the last few years, so the last time I did web application development, it was in raw LAMP, and I know the technology du jour has changed. Since I know Python, I've been looking a bit into using Django or Google App Engine to get a first version running (since I know Python already but not Ruby), but I'd apprecate any advice on what would be the most frictionless way to get something, anything, running. Also, does anyone have any tips on where to find/buy templates/design packages so the site looks decent without having to actually hire a designer? Thanks - any input from those more experienced is much appreciated.

argonaut 13 years ago

In what "domain" is your product idea? (without revealing too much, obviously). For example: a collaboration tool. Or an e-commerce subscription site. Etc...

I would go for Python + Django. Avoid Google App Engine. There are big gotchas with using Django and GAE. You essentially have to throw out the Django ORM because Google places restrictions on what SQL queries you can use (for scalability reasons, none of which are your concern for an MVP or even a moderately sized startup). You can avoid this using Google Cloud SQL, but then you have to use MySQL. PostgreSQL is recommended by most of the Django community. You are better off using something like Heroku (which has great documentation). You can either use Twitter Bootstrap (maybe tweak the defaults with something like Jetstrap), or use a template off themeforest or woothemes. If you use a theme, you'll have to tweak the HTML to make them work with Django's templating.

The problem with Wordpress is that unless you're doing a plain vanilla ecommerce site or some other limited choices, there are many kinds of MVPs you would not be able to build with it. Not to mention that you would be rewriting everything eventually if you use Wordpress.

Using meteor and node.js cover different product use cases (real-time apps or apps with a lot of connections). So it depends on your product. Keep in mind that meteor is not mature yet.

  • bdcravens 13 years ago

    If you're willing to spend some money on plugins, you can pretty far with WP (WP-Member, Gravity Forms, etc)

    Zapier makes it easy to wire together a bunch of services if you want to build up functionality fast.

    Myself, I'm building my MVP's these days with Bootstrap + Rails + Heroku, and when I need to step up the design a bit, I'm leaning on WrapBoostrap and Designmodo. That said, I think it's extremely possible to build an MVP (emphasis on Minimum, as it should be) and write very little code.

  • v3rtOP 13 years ago

    The app is basically a service for ordering/dispatching couriers/deliverypeople, so it's definitely real-time(ish) - the core functionality is for users to be able to order a delivery (with real-time cost estimate) and for human dispatchers to be able to process the deliveries through a private portal. At the bare minimum I could honestly just do it through a basic form that sends emails to a dispatcher account, so I might do that for an MVP (didn't know that term before), although that would be a very, very temporary solution. You guys have suggested a ton of useful options, so I'm going to have to spend some time just reading up and seeing what would be a good approach. Thank you for the help, everyone - it's been really useful information, and I'd appreciate it if anyone has more to add as well.

    • argonaut 13 years ago

      That's not really realtime. Realtime is a chat app - i.e even a delay of 10 seconds is too much. Realtime is a multiplayer game with 1000 users all at once. I'm afraid I was a little vague when I said realtime. Node.js is for concurrent realtime. Meaning it's good for a product where you have thousands of users that need to be connected all at the same time all communicating with one another.

      Your app seems like a fairly standard SaaS app. The cost estimate is only "real-time" in the sense that there is some data that is crunched on the server before it's served up to the user. Users just deal with a form and they punch in their data, and then that data is shown to couriers. That's pretty standard CRUD and you don't need anything fancy. Node.js is really cool, but you're going to be a lot more productive and you're going to have a much easier time by sticking to a standard, mature web framework like Django (or Rails).

      Are you fluent in Javascript, PHP, or Ruby? If not, that's even more of a reason to stick with Python and Django, because you can literally start learning Django and have your MVP up by Monday.

      • v3rtOP 13 years ago

        I am (or was, a couple of years ago) fluent in Javascript/AJAX and PHP so I could definitely hack something together with that, but Django sounds like a cool technology to learn as well.

bdcravens 13 years ago

I may get down-voted for this, but how about WordPress? Not for a long-term product that needs to scale and support tons of customers, but as an MVP. There are some really slick plugins that can help you create some pretty advanced functionality. Here's a 2 part podcast on that very topic:

http://productpeople.tv/2012/12/05/episode-3-building-mvp-ap... http://productpeople.tv/2012/12/12/mvp-wordpress-part2/

As for design, WordPress has a rich market for themes: themeforest.net woothemes.com and many more

Between plugins and themes and hosting, you can easily accomplish in an afternoon and a couple hundreds bucks (or less, depending on your needs) what would take you weeks to build. Get it out there, validate it, and then build it in your favorite language and framework once you know it's golden.

tharshan09 13 years ago

I think you are on the right track. If you are using python+django already the I would suggest you stick with it. The problem with python+django is that its a bit more complicated to deploy etc. So you probably do not want to mess around with things like vps, wsgi, nginx etc unless your unix skills are decent? I would suggest if you want to basically deploy your app without having to worry about the deployment details - then read the reviews on here: http://djangofriendly.com/hosts/ especially about cloud providers where all you need to maintain is a git repo etc. For templates and gettings a design up and running there are a number of options - most popular being twitter bootstrap and zurb foundation. If your design is simple then I guess designer is not needed. If you need any help let me know.

lsiebert 13 years ago

I am probably not a domain expert, but I did see a nifty demo of Meteor being used to make stuff in literally 5 minutes.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection