TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN:Becoming a application developer from a scientific programming background?

10 pointsby aditiyaa1about 13 years ago
I have a graduate and under-graduate degrees in engineering with a good amount of experience in scientific programming in C++ and python. I have ideas for a few web and stand alone apps that I would like to implement. But I am not sure whether I have the necessary skills to go ahead with them. For example I have no idea about Operations System theory or concepts like continuous integration. If you can point out to a list of subjects and concepts/topics that one need to know before jumping into full-fledged projects, I think it would be helpful to me and others who are in a similar situation.

5 comments

fruiappsabout 13 years ago
I was exactly in the same position few years back. I was a non computer science grad, but i had decent amount of coding experience and algorithm design, but only that. No theory courses in Networking, Operating System or even DBMS. I wanted to make web apps, and wanted it hard. So the few things i learnt were: you need to know basic HTML, CSS. Server Side Scripting: PHP/Python/Ruby Client Side Scripting: Javascript(jQuery is the new JavaScript) You should also know the terms like DNS, CNAME etc. so that you can put your content on a web server to start of with a shared hosting from any provider would be good.<p>But the above will only let you make very basic apps. If you want to make slightly more complex things, there are Content Management Solutions like Wordpress, Joomla or Drupal. (these are amongst the most popular ones, they have readymade plugins so if your only motive is to get a site up and running, they will serve the purpose.)<p>If you want more customization you might have to learn MVC frameworks. Here(<a href="http://blog.fruiapps.com/2012/04/Understanding-MVC-Architecture-with-a-simple-example" rel="nofollow">http://blog.fruiapps.com/2012/04/Understanding-MVC-Architect...</a>) i have written a basic tutorial on MVC. The popular frameworks are Ruby on Rails Django (Python) CodeIgnitor(PHP) BackBone (JS) My rule of thumb for deciding is: Get a hang of a server side scripting language(PHP/Python/Ruby), choose the framework in that particular language.<p>Another most important rule that you should keep in mind is: All that you want to do has been done, you need to assemble it your way!! Learn to copy, modify and paste to suit your needs. Don't be afraid of any implementation it will be out somewhere there. Thats it, hope it helps.
评论 #3936287 未加载
kracekumarabout 13 years ago
I learnt web programming, web application development on my own during college days started with PHP, settled with Python and tried ruby.<p>How did I learn?<p>I started with PHP first, writing small scripts and spending time IRC and reading official docs. I attended PHP conference which had prominent minds like creator framwework, Drupal Users etc ...<p>I created Mini ERP for schools as startup and never launched it.<p>Then I tried Ruby on Rails and cloned a open source project and modified the source code and fixed bugs (never bothered to submit).<p>Then I tried Django but wasn't impressed, then I tried Flask and I liked it very much and tried Pylons. Now I am settled with Flask and hacking brubeck occasionally.<p>Sites I have built: 1. www.sachintweets.in 2. www.iplsaga.in 2. www.pylive.codespeaks.in(currently down)<p>Web Apps: 1. Gummi - multi user chat room with Flask + Redis 2. Blaze - Static file generator<p>Source code: <a href="https://github.com/kracekumar" rel="nofollow">https://github.com/kracekumar</a><p>Takeaway 1. Choose a language and start researching on available web frameworks 2. Attend Conferences. 3. Follow hackers in twitters 4. Subscribe to subreddit 5. Join Mailing list. 6. Use Github and bitbucket.<p>By creating stuffs which interests you, will answer the question.
xackpotabout 13 years ago
You need to be hellbent upon learning. This is how I started a few years ago. I was into C/C++ programming, but knew nothing of javascript/java/php/ etc. I didn't even know if there was any difference between java and javascript as these were not my domain. And then I just had to make this website for myself. I spend nights to learn and code (started using GWT as it was the easiest for me to pick up coming from C++ background). But later I realized it could be easier to code using jquery where I can use the object oriented programming concepts. So here is my list to get up to speed: 1. Start learning javascript (codeacademy.com is a good place to start with) and then you can go on to learn jquery. 2. PHP. 3. Read about MVC/MPV architecture. 4. HTML/CSS 5. Install WAMP/MAMP or any other such server on your computer and play with it. 6. Google any problem where you get stuck. I realized there is absolutely no problem that you can't solve. Some will be easy to solve, and some will take all the energy out of you. But the key is patience. Have patience and be persistent, you will get all the solutions you need. Same is for learning. Have patience and be persistent.
leenyabout 13 years ago
It may be worth finding a company you admire and working there for a year to get a feel for things like source control, the dynamics of many people working on one code base, design patterns, why people make the architectural decisions that they do, how systems scale, what makes a team work well together, etc.<p>None of this stuff is as easy to pick up on your own. Then, after you get a feel for how others do things, you can make informed decisions about how to run your own projects.
factorialboyabout 13 years ago
You'll be fine, it's really very simple.<p>I'd say pick a stack (JavaScript, Python, Ruby or whatever) and jump right into it.