Hacker News new | ask | show | jobs
Ask HN: What Programming Do I need for a Startup?
1 points by throw02082011 5617 days ago
With posts today on the youth employment crisis and "why you need a startup" I want to know what I should focus on. In high school and college I did a good bit of HTML on my own. I took C++ classes and decked out my TI-83 with calculator BASIC. I was 1 class short of a CS Minor. Not a complete noob at least.

I've played around with iPhone programming and Eclipse for Android but haven't gone full-bore. What I really want to know is if I have a few ideas, what do I need to realize them?

Say I wanted to make an Instagram clone (I don't). I'd need to know the App OS language and then MySQL or another database for the app to access? Plus a web interface of some kind to also interface with the database. And I feel like PHP or Ruby come into play.

I want to learn and have some background to build on but don't have any idea what it is I need to learn to actually go through the process.

2 comments

If I were you, I'd pick a project and then cater your learning to that project. with mobile vs web apps, we're talking about completely different languages.
This. What matters most is what you want to create. When you've decided this, it almost doesn't matter what you program it in as long as you can get it done. If you're confused about which one to pick, just pick a widely adopted language that has a lot of community support and you'll have more than enough to learn with.
edit: bcrawford covered this as I was writing. It's difficult sometimes to find a path of what steps there are...so many choices.

Ok. Really stupid question time then. I understand most of what I'm working on for the mobile app.

Am I right about MySQL as a direction for what the app talks to?

I might try another project first that doesn't need outside data to get my feet wet. I may be getting ahead of myself here.

There definitely are a lot of choices-they can be paralyzing. I agree with bcrawford on this one-pick a language to do the web services portion first. Then move on to the next level of the stack. In your case this would be either the data level (MySql) or mobile app level (iPhone).

I don't know if this helps, but if I were starting from scratch today I'd choose either Ruby or Python for the web services level. They're fun, easy to learn languages that are powerful enough to get the job done.

Sounds like a good plan of attack. Thanks!
IMHO: Don't take on learning everything at once. For instance, if you want to make a mobile app that hits a php web service with a mysql db, start with web service and its language. You can dummy data inputs that would normally come from the mobile app via CLI or GET/POSTs and instead of writing to a DB, just echo what you would be writing to a log somewhere.

To me, anyway, it's like a foreign language. If you try to learn 3 in tandem, you may end up slowing yourself down. Get to a reasonable degree of fluency in one and the others will be easier.

Also, I don't recommend having a mobile app interface with your database directly. Always expose a web service and have it interface with your db. The great part about this work is that it sets you up for exposing a public API in the future, should you decide.

Thanks. I'm trying to take it slow but have a goal that I'm working towards for the future.

App first with dummy data seems like a doable first step.