views:

33

answers:

1

This will be my first attempt to build a full web application from scratch myself. I have huge gaps in my knowledge and would appreciate some advice. Please point me to a tutorial so I can learn myself, or give me pointers on where to start searching.

I do maintain a web application for a living, but work within a set environment. I am an experienced programmer, and am told I am a pretty good, but I have never developed an app from scratch, and moved from development all the way to production by myself.

I am developing a rich web application. I have just moved past the inital design and requirements phase. The front end built using technologies from php, jsp, jstl, ajax, javascript, and obviously html (I will settle on particular ones when I get there). The main business logic handled in Java, but I have been considering may other programming languages so I can learn them. I will use a relational database backend and have been leaning to MySQL (because free, powerful, and documentation but would accept any other suggestions). And I plan to purchase a domain and web hosting to support the web application and so friends can mess with it if so inclined.

I am looking for fast devolpment for this first work through, mainly to learn all the steps. I am looking for this to lead into other applications with more sophistication. (Ruby? never even used or read up on it).

Aside from the creation of the code to get the above covered I don't know how to tie everything together so it can be accessed publicly. A web server and app server are needed. Apache, or Jboss, or Tomcat or any of the many other web servers out there. I only have experience with Oracle Application Server, and even that only consists of uploading the newly created war file and restarting the application. I do NOT have my own local server (I have though of buying a tower and doing so) I plan to purchase a plan from a web hosting company for hosting the application (one of many) (is purchasing cloud support even a realistic consideration?). I think I know the least about servers.

How does the process of having an application on a purchased web hosting company work? (I mean the steps in setup and administration here, obviously transfer files by FTP or other). In many of the hosting providers I have seen they list MySQL as supported, but I never see a specific web server supported? Would I need to setup my own web server? Do I some how deploy a WAR to the web host and then from there the web hosting company configures and sets up the web server for me, or will the web host hand that configuration over to me? Do I use (should I use) the administration tools the hosting companies offer?

Aside from these questions I am at a loss of where to start. I don't know the correct places to look or the correct questions to ask (outside of those already posed).

Any help is much appreciated. (The trolls would even be appreciated to because I have yet to get a single response on this elsewhere I have posted this question :) Correct me if I am wrong or misguided as well.

Side question: has anyone else been hired into a position and feel 'boxed' into only a single technology/environment and feel trapped there because they are gaining work experience in only that technology/environment? Anyone ever feel they are lacking knowledge of important parts of technologies?

A: 

What you're mainly lacking, apparently, is practical experience with a web host. Instead of answering every possible question, you should just start to use one and see how it goes. Most of your questions will probably be answering themselves in the process. Since they're dirt cheap and pretty decent, why not use NearlyFreeSpeech.net for some testing?

The general process is that you FTP, SSH or otherwise copy your necessary files into the right location, and then do whatever you need to do for your application to run. For PHP, there's usually an Apache server running, so copying files is all you need to do. For Ruby or Java apps, you may have to SSH in and (re)start the server. They may or may not have an administration interface for various parts of the system. Look into the hosts documentation for details.

deceze
thank you for answering. You are correct that I lack some of the needed practical experience. I guess I am asking for pointing to a good tutorial for setting up my app. Some suggestions on technology to use, and any hints or further advice to get me started.
AthleticProgramer
@Athletic Well, you seem to have an understanding of what it means to write a web app, you just have never put all the pieces together at once. I'd advise you to just try it and ask more specific questions when necessary.
deceze