Wikiposts
Search
Computer/Internet Issues & Troubleshooting Anyone with questions about the terribly complex world of computers or the internet should try here. NOT FOR REPORTING ISSUES WITH PPRuNe FORUMS! Please use the subforum "PPRuNe Problems or Queries."

Developing web applications

Thread Tools
 
Search this Thread
 
Old 29th Dec 2009, 22:24
  #1 (permalink)  
Thread Starter
 
Join Date: Apr 2000
Location: West Midlands, UK.
Age: 73
Posts: 294
Likes: 0
Received 0 Likes on 0 Posts
Developing web applications

This is a rambling question so would be grateful if you could bear with me.

I’m looking for advice regarding the development environment of choice for developing web applications. Now, I’m no web programmer. My history is in-depth Delphi for Win 32 apps, some VB and a smattering of other languages plus a pretty good knowledge of SQL.

But, it’s time to drag myself into the 21st Century and get to grips with developing web applications. I do not want to go the VB route if I can avoid it. I’m too much steeped in the style of Borland products. (Not the products themselves, the style of the products as a complete development environment)

So, the question is: which development environments (Open source hopefully) would anyone recommend which have a decent design GUI, good help systems for the coding side and a very good connectivity to open source multi-user databases (e.g. Firebird)?

I realise I’m being a bit prescriptive here so any general comments appreciated.

Regards

Cron
Cron is offline  
Old 29th Dec 2009, 22:50
  #2 (permalink)  
bnt
 
Join Date: Feb 2007
Location: Dublin, Ireland. (No, I just live here.)
Posts: 733
Received 6 Likes on 5 Posts
Well, if you're talking Open Source, then the closest to "standard" is LAMP:
Linux - optional, I supposed, since there are Windows versions of the other bits.
Apache web server
MySQL database
PHP, Perl, and/or Python

The P's are probably the more awkward: PHP is the standard, while many like Perl, though I much prefer Python. Since you're used to Delphi, the P could be made to stand for Pascal: FreePascal, which (they say) "has excellent compatibility with TP 7.0 as well as with most versions of Delphi (classes, rtti, exceptions, ansistrings, widestrings, interfaces)".
bnt is offline  
Old 30th Dec 2009, 06:43
  #3 (permalink)  
 
Join Date: Jul 2008
Location: FL390-410
Posts: 106
Likes: 0
Received 0 Likes on 0 Posts
Hi,

I develop my applications with the Wampserver --> PHP Apache MySQL avec WampServer 2 : installation PHP MySQL Apache, it's open source/freeware. For scripting I use Notepad++ and phpDesigner (~85$)

W(indows)
A(pache)
M(ySQL)
P(HP)

Very easy to handle, low performace required...

For the GUI design you should work with images and css-style-sheets but there are some tools like EXTJS with which you can design your GUI.

Regards,
Simon
Liftboy is offline  
Old 30th Dec 2009, 10:31
  #4 (permalink)  
Oh Shazbat!
 
Join Date: Feb 2004
Location: Leeds, UK
Age: 64
Posts: 239
Likes: 0
Received 0 Likes on 0 Posts
Cron,

It depends on what you want the web applications to do & what skills you want to pick up & why.

There is a lot of development around on LAMP as suggested by bnt & liftboy above, but if you want to be building skills to use elsewhere then it may be worth looking at Mono which is an open source implementation of some of the Microsoft stack including ASP.NET. By it's nature it's not the latest & greatest of the .NET stacks, but it is a useful tool if you ever wanted to transfer skills back to the Microsoft world (and it has VB.NET if you want it, I know you said "Delphi" but...). Mono is a little more difficult to set up on Linux than out of the box LAMP but it's swings & roundabouts.

The other way to look is if you simply want to do pure Web development for your own use, then Oracle Application Express is available free for personal use but you also have to get their free version of Oracle RDBMS as well. Again they run on Linux but need to be set up. There are quite a few commercial Oracle APEX sites out there so again it's something to think of if you are trying to skills build.

Whatever you do, have fun with it

batninth

Last edited by batninth; 30th Dec 2009 at 10:32. Reason: Correcting typos
batninth is offline  
Old 30th Dec 2009, 18:20
  #5 (permalink)  
Thread Starter
 
Join Date: Apr 2000
Location: West Midlands, UK.
Age: 73
Posts: 294
Likes: 0
Received 0 Likes on 0 Posts
Many thanks Chaps, I now have an informed starting point and plenty of reading.

A very good new year to you all.

Regards

Cron.
Cron is offline  
Old 1st Jan 2010, 15:32
  #6 (permalink)  
 
Join Date: Jan 2008
Location: LONDON
Age: 51
Posts: 525
Likes: 0
Received 0 Likes on 0 Posts
Cron,

It all depends what you want to accomplish, what hardware you want to target on the server side and also which browsers you want to target on the client side.

Also a big question is whether you want to hand write your website from scratch or are happy with generated content.

If you wish to connect to a database backend you will need to decide which one fairly early on as you will need to make sure your chosen language has the appropriate drivers for it.

One final consideration is once you have developed your website where are you going to host it ? - Last time I looked hosting on Windows based webservers was slightly more expensive due to the licennsing costs involved - so if this is actually going to be a 24/7 website make sure you check out the cost of hosting as part of making your decision.

For home based projects the open source options are usually preferred due to startup costs....

e.g.

WebServer: Apache
Pre-Processor: PHP
Database: MySQL

The above have versions for both Windows and Linux, so you can develop on your home machine and then host on a cheaper linux hosting platform.

Things to be weary about is that PHP has gone through itterations that are not backward compatible so there is no guarantee you wont be stuck with that as a platform should they alter sytnax again. PHP is based upon PERL so if you have any knowledge of this it may help.

In a commercial environment is use MS Internet Information Server (IIS) and ASP.Net, this is typically dictated to me by the fact that it is the clients preference as there is lots of development resource out there etc...

If you wish to look at IIS then you probably have it already, go to control panel/programs and settings or Add/Remove Programs and select the windows features option and turn on IIS.

You can then download free versions of Microsofts development tools e.g. Visual Web Developer 2008 Express Edition and as a database you can get SQLServer Express Edition free.

These all have constraints but are a good way of playing about and learning.

It is worth noting you can get IIS to run PHP as a processor also, so you dont have to have apache and you can have PHP and ASP.Net exist side by side etc...

If you do use ASP.Net you will be restricted to the Windows Platform.

Without knowing what your trying to achieve its pretty hard to give some specific advice, but the above are some considerations.

Cheers
Jofm5 is offline  
Old 1st Jan 2010, 18:43
  #7 (permalink)  
Thread Starter
 
Join Date: Apr 2000
Location: West Midlands, UK.
Age: 73
Posts: 294
Likes: 0
Received 0 Likes on 0 Posts
Thanks J, you seem to have explained well the the fix I'm in - all those choices!

Good comment about what am I trying to achieve, which database and which browser.

Well, I can be more specific on that score.

1. I definitely want to target the Firebird open source database - I have experience with it and know the tools.

2. I.E will be the browser - if it runs in others it will be a bonus.

3. The application is a timetabling program (currently written in Delphi for Win 32): it is very graphics intensive (not video) with drag and drop of shapes, right click pop up menus etc - in fact all the things that Windoes apps have aplenty and seem very clunky in browsers.

Many thanks for the advice.

Cron
Cron is offline  
Old 6th Jan 2010, 17:29
  #8 (permalink)  
 
Join Date: Aug 2002
Location: Earth
Posts: 3,663
Likes: 0
Received 0 Likes on 0 Posts
which browsers you want to target on the client side
You know what, I've got to bite on that one.

One of the most annoying things I come accross on the web is sites written by "browser blind" developers who only ever look at the world through IE and use all sorts of IE specific hacks on their website.

Cron, if you are only developing this website for yourself, then fine, IE it is. But if there's going to ever be any remote chance you are going to let someone else use your application, then do yourself a favour and write for cross browser compatability .... it's not difficult !!!!

n a commercial environment is use MS Internet Information Server (IIS) and ASP.Net,
Avoid the security risks like the plague.....real commercial environments use J2EE
mixture is offline  
Old 6th Jan 2010, 19:31
  #9 (permalink)  
Thread Starter
 
Join Date: Apr 2000
Location: West Midlands, UK.
Age: 73
Posts: 294
Likes: 0
Received 0 Likes on 0 Posts
Thanks Mixture - sounds like sense.

Cron
Cron is offline  
Old 7th Jan 2010, 06:11
  #10 (permalink)  
 
Join Date: Jan 2008
Location: LONDON
Age: 51
Posts: 525
Likes: 0
Received 0 Likes on 0 Posts
Avoid the security risks like the plague.....real commercial environments use J2EE
Feel free to have your say but I am wholly surprised you recommend the java enterprise environment as a solution as its not browser specific, it works in most - and as such the weakneses are equally exposed.

Not only is it that J2EE is not suited to the discussion but it requires development skills way above what has been discussed.

You may be peeved by browser blind developers, but I would say I am peeved by a browser blinded users who do not understand the differences. - Just cause its J2EE does not mean MS browsers are excluded or exempt from any flaws in it.

Like I said, I use what is dictated, it does not mean by default it is flawed. Many banks do and we dont have a small problem let alone a huge one - if you have personal preference then fine, just dont try pass it off as a technical reason.

The day you rely on your non MS website being secure is the day you get bit in the ass as it has already happened many times.

If you think j2ee is secure, then lets compare notes.

Last edited by Jofm5; 7th Jan 2010 at 06:30.
Jofm5 is offline  
Old 7th Jan 2010, 10:17
  #11 (permalink)  
 
Join Date: May 2001
Posts: 10,815
Likes: 0
Received 0 Likes on 0 Posts
I will state now that I am no a developer I am mearly a grunt that used to keep the servers ticking over.

Persoanlly I wouldn't go for the java option either purely because its a hog on the CPU's and its a pain in the arse to admin. In the brief time we had one to play with it wasn't very stable and needed patching almost weekly and seemed to throw a syntax fit daily.

Apache never had a problem with it.

Our guys used to use pearl and a sysbase DB (which you can get for free for development)

It was predominately for document control and software testing recording and software build control, and involved a distributed moving DB enterprise.

Apart from bandwidth issues when it was time for the live DB to move to another country the whole thing was impressively stable.

The web servers were on a intel platform with redhat linux installed and the sysbase was on a solaris box. And one intel test platform with both sysbase and apache on it.

From a sys admin point of view it was brillant the solaris box needed no special attention the linux boxs needed a visit every 2 weeks, ours was the master and the replication to the local ones worked a treat. The apache was taken care of by the web master, and the sysbase was done remotely.

I don't know how this setup limits your development options but from my point of view it was a stable solution which just kept working away with minimal admin.
mad_jock is offline  
Old 7th Jan 2010, 11:42
  #12 (permalink)  
 
Join Date: Aug 2002
Location: Earth
Posts: 3,663
Likes: 0
Received 0 Likes on 0 Posts
Morning Jofm5,

Alright, let's first clear up my stance on security :

I don't care what platform you are running, I don't care whether your developers have coded in Ruby, PHP, .NET, Java or C++.

Nothing beats a propper battery by a suitably experienced pentest team. Given your average development project, a good team will pick up a number of things you or your ops team missed !

Now, back to your questions/points :

I'm surprised that you say a J2EE platform is browser specific. I don't seem to have any problem conducting online banking on a Mac or PC, using whatever browser .... the apps I've used behave and looks the same.

Ref. MS development ..... how much work does it take to harden a MS environment vs a *nix/*nux one ? It requires a lot of work during setup and a lot of work to keep it all patched up ! Sure MS are taking steps to address this in newer OSs etc., but there's still a long way to go .... still a lot of legacy code and dependencies lurking behind the fancy new GUI......

Also, I'm no .NET guru, but I do believe .NET provides an easier ability to run unmanaged code by calling OS APIs. In Java you can only call sytem resources and native code when using trusted signed code. Futher authentication tends to be more flexible in J2EE.

J2EE probably still remains far more widespread than .NET and Java JVM has been around a lot longer and hence benefits from extra maturity.

"Early" .NET adopters are having their fair share of teething troubles, some quite serious and high profile (LSE ) .... there are still many things I would have a lot of sleepness nights on if I signed-off a MS stack based solution.

Both architectures have their strengths and weaknesses ..... but its the severity and risks associated with the potential and inherent weaknesses of .NET and its associated infrastructure that worry me at the present time.


Finally, coming back to Cron's original post ....

By the sounds of things, both .NET and J2EE would be overkill for him (plus too much of a learning curve). A higher level scripting language such as ColdFusion or PHP would probably suit his immediate needs much better.

Last edited by mixture; 7th Jan 2010 at 12:13.
mixture is offline  
Old 27th Dec 2010, 18:12
  #13 (permalink)  
Thread Starter
 
Join Date: Apr 2000
Location: West Midlands, UK.
Age: 73
Posts: 294
Likes: 0
Received 0 Likes on 0 Posts
I took your advice Mixture and we looked at PHP and AJAX and we are back to where we started.

However, along the way Flash has reared its head and so has Javascript. Now we are sitting around scratching our heads again.

May I have another go at defining our requirements (much simplified now)?

Any input gratefully received.

1. We want a server side script to draw shapes in a browser.
2. We want the user to be able to move and resize these shapes with the mouse (no screen redraw)
3. Most importantly we want the coordinates of the shapes stored in a database server side.

Thanks

Cron
Cron is offline  

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off



Contact Us - Archive - Advertising - Cookie Policy - Privacy Statement - Terms of Service

Copyright © 2024 MH Sub I, LLC dba Internet Brands. All rights reserved. Use of this site indicates your consent to the Terms of Use.