how to create a web application

think2

Senior member
Dec 29, 2009
250
3
81
Suppose I want to create a website that has a "make an appointment" widget that allows customers to browse available appointments and book an appointment and maybe also have their login and personal notes.

What options are there for doing this, apart from buying an expensive tool like dreamweaver?

I don't like the look of php. Is there any easier way than doing it all in javascript? I don't want the client browser to have to have Java enabled but I don't mind writing the software in Java if that's the most efficient way.

Supposing I used google app engine - would that be quicker than writing it all in javascript at the expense of being locked into google?

TIA
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
I don't have any real advice for you, but wanted to mention that JavaScript and Java aren't even close to the same thing. Most webpages use JavaScript for client-side scripting and a JRE/JVM never comes into play.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
You're going to find it difficult to achieve a modern look and feel to the application without requiring javascript, nevertheless a framework like jQuery/jQueryUI makes it fairly easy to achieve at least a base functionality. Web applications consist of a front-end component, a web server-based middle tier, and a database. On the front-end the only real choices are html+javascript, Flash, and Silverlight. The latter two require the user to have a plug-in installed.

The middle tier processes data from the back end and generates the front end for the user. Your choices here are many, from Microsoft's ASP.Net stack, to LAMP, Python+Django, etc. Lots of choices. On the back end you'll typically work with MySql or SQL Server for Microsoft solutions, but you can also store data in XML or delimited flat files.
 

think2

Senior member
Dec 29, 2009
250
3
81
ok, thanks. My comment about java and javascript was a bit misleading. I know they're quite different.

So with asp.net, do I write my code in C#? From reading on wikipedia about asp.net, it seems this is possible. Would my C# code then be considered the front end? Do I need to write any javascript if I use asp.net?

If I use django, do I write my code in python or do I need to write javascript to use django?

I want my web app to be portable? Do asp.net or django require a large several-hundred-megabyte host-dependent infrastructure on the web server or can I create a 2 -3 MB standalone web app like I can with a desktop app, with widgets like grids and checkboxes?
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
ok, thanks. My comment about java and javascript was a bit misleading. I know they're quite different.

So with asp.net, do I write my code in C#? From reading on wikipedia about asp.net, it seems this is possible. Would my C# code then be considered the front end? Do I need to write any javascript if I use asp.net?

If I use django, do I write my code in python or do I need to write javascript to use django?

I want my web app to be portable? Do asp.net or django require a large several-hundred-megabyte host-dependent infrastructure on the web server or can I create a 2 -3 MB standalone web app like I can with a desktop app, with widgets like grids and checkboxes?

If you use ASP.Net the back-end can be any language that .Net supports like C#, VB.Net, etc. The front-end will still be HTML+JS since that's what browsers understand. The same is true for django, mod_perl, cgi in any language, etc. And obviously in order to use ASP.Net, django, mod_perl, etc you'll also need the runtime for that particular language on the server. Even with the size of .Net, I doubt any of them qualify as "several-hundred-megabyte" but they will be significant size and host-dependent.
 

Red Squirrel

No Lifer
May 24, 2003
69,756
13,362
126
www.betteroff.ca
php/mysql is the way to go. You can have a php/mysql/apache/linux server running in less than an hour and it is very easy to manage, backup etc not to mention, there is zero cost and no licensing or other crap like that to worry about.

PHP is also server side (like ASP) so the only thing the client will see is html and possibly javascript if you use any.

I've delt with both ASP and PHP, and I just found ASP a pain in the butt, but some people do swear by it, so try both and see what you like better. you can also take a look at HTML5, which is, from my understanding, just an extension of javascript and some new html tags. IE does not support it though as it's fairly new, but every other browser will.
 

Cogman

Lifer
Sep 19, 2000
10,284
138
106
php/mysql is the way to go. You can have a php/mysql/apache/linux server running in less than an hour and it is very easy to manage, backup etc not to mention, there is zero cost and no licensing or other crap like that to worry about.

PHP is also server side (like ASP) so the only thing the client will see is html and possibly javascript if you use any.

I've delt with both ASP and PHP, and I just found ASP a pain in the butt, but some people do swear by it, so try both and see what you like better. you can also take a look at HTML5, which is, from my understanding, just an extension of javascript and some new html tags. IE does not support it though as it's fairly new, but every other browser will.

IE9 has HTML5 support.

ASP has its ups and downs. ASP MVC is pretty well thought out. ASP web forms usually generate code that looks like garbage.

ISS and even the webdev tools are free to download (though, somewhat limited). The cost of initial setup is the same as a linux box (assuming you already own windows). However, running it from your local machine is really not recommended. Whatever option you choose, having someone else host it is generally the way to go. Less headaches and less hassle.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
However, running it from your local machine is really not recommended. Whatever option you choose, having someone else host it is generally the way to go. Less headaches and less hassle.

You mean for production, I assume? We used the integrated development http server for local testing, and then use the publish tool to push to the production or test servers as needed. With VS2010 you get some nice new tools for managing the .configs across different servers that makes it even easier.
 

Cogman

Lifer
Sep 19, 2000
10,284
138
106
You mean for production, I assume? We used the integrated development http server for local testing, and then use the publish tool to push to the production or test servers as needed. With VS2010 you get some nice new tools for managing the .configs across different servers that makes it even easier.

Correct. I run ISS and apache from my machine all the time during development.
 

YoungGun21

Platinum Member
Aug 17, 2006
2,546
1
81
Another vote for ASP.NET and Visual Studio 2010 right here. Myself and two friends started using it a week ago (knowing nothing about C#) and we are well on our way to getting a website created. Our task is a little more complicated than most websites, so it will take us a while. Yours sounds fairly simple, and Visual Studio even provides you with a login system template which is fully functional when you start a new Web Application project. It wouldn't take long at all if you know HTML and are willing to read a few tutorials on C#.
 

hooflung

Golden Member
Dec 31, 2004
1,190
1
0
Visual Studio is a mixed bag. If you use it for strictly web development there are better options. Hell, MonoDevelop is a better option and the better 'free' option and it isn't tied into Windows. Got mac? There you go.

I find VS best suited for .NET companies and for personal experience since versions 2k3+ I hate all the garbage it installs on my PC just to run the program. It puts about 10 applications on your PC that are all interdependant. Bleh.

Virtual Machine for you sir Visual Studio. Where you don't sully my native box's OS.

But I don't think .NET is the way to go starting out. I don't think Java is either, and I am a J2EE dev. Best do PHP and do something like CodeIgniter. You can run Netbeans 7 for php developers and you won't find a better FREE environment for php since Eclipse PDT isn't really maintained anymore. If you want something more php centric, and you don't mind paying, you might want to look at PHPDesigner which is a fan-freaking-tastic php IDE.

Komodo Edit and Komodo IDE are also great choices.

But if you cannot demand javascript as a prerequisite for your webapp then you are already screwed. You won't be able to do anything without refreshing the screen because of the stateless nature of HTML. Ajax or go home for applications especially if you want mobile visibility.

Nothing wrong with doing PHP/HTML/JavaScript. Use Jquery and you'll be set. Use CodeIgniter framework for php and you are on the fast track to a great application.
 
Last edited:

AyashiKaibutsu

Diamond Member
Jan 24, 2004
9,306
4
81
I use asp.net/C# with VS2008 and think it's pretty good, but I don't have experience with other languages for webapps.
 

think2

Senior member
Dec 29, 2009
250
3
81
But if you cannot demand javascript as a prerequisite for your webapp then you are already screwed. You won't be able to do anything without refreshing the screen because of the stateless nature of HTML.

I didn't mean that javascript couldn't be used at all. I was just trying to find out if there is a more RAD kind of way to create a dynamic web page or what the choices and best way is. I'm going to learn some javascript and html/css to start with, then think about it again.
 

hooflung

Golden Member
Dec 31, 2004
1,190
1
0
I didn't mean that javascript couldn't be used at all. I was just trying to find out if there is a more RAD kind of way to create a dynamic web page or what the choices and best way is. I'm going to learn some javascript and html/css to start with, then think about it again.

http://snook.ca/archives/javascript/javascript_pass

You need to understand the basics of JavaScript. Its flaws. Its successes.

http://www.crockford.com/javascript/inheritance.html

Also consider this. JSON stands for Javascript Object Notation. However, that is very misleading. Javascript object notation is also a pattern to follow, usually referred to as Object Notation. O.N. is the way to declare a Singleton in Javascript. A Singleton is an object that has only 1 instance.

This is very powerful in application development. You can also build regular objects that can have parent-child relationships. You can even add functions to regular objects after they've already been declared. Hense prototypal inheritance.

Have fun and enjoy.
 

blackdogdeek

Lifer
Mar 14, 2003
14,453
10
81
have you looked into grails and groovy? you can install grails in a few minutes and in another few minutes you can have a website with basic CRUD functionality of your objects (appointment, user, etc).