Your reviewer was looking at doing his next Delphi-IntraWeb based app and was wondering what was around.
Costs
Let's say you have 5 people working on this project:
Price Proposal #1:
- Delphi 2010 enterprise * 5 = US$2499 * 5 = US$12,495
- TMS IntraWeb studio * 1 team license = US$1300
- MadExcept * 5 = US$99 = US$495
Others:
- Arcanatech Open-source
Total price for Delphi solution = US$14,290
- Possibly throw in RemObjects SDK, AnyDac, DataAbstract?, UniDac, PaxScript.
- Alternate would be kbmMW or Real-Thin-Client solution.
Price Proposal #2:
- WaveMaker community * 5 = US$0
- Apache = US$0
- (did not use anything else)
IntraWeb Alternatives
Your reviewer was looking around for credible alternatives to IntraWeb. Few days later, your reviewer found WaveMaker - www.wavemaker.com
There are several GUIs for JavaSript - ExtJS (commercial), Tibco General Interface, IBM WebSphere Mash, Aptana, SmartClient.com and WaveFusion.
For commercial solutions:
- ExtJs has bindings to Delphi (search around Torry's Delphi Pages),
- TibCo General Interface can communicate via SOAP (if you have RemObjects SOAP SDK) or Ajax/Json via DoJo.
[ExtJS is free if you are doing GPL work, like adding extra GPL code to your Delphi project and expecting nobody to find out about it. (smile)]
[TibCo, you have call them up for alternate payment methods, unless you want to get more frequent miles points on your credit card.]
Free offerings:
- Java/Eclipse have Ajax Toolkit you might want to look at
- IBM WebSphere assumes you use Java, the SOAP builder is interesting.
IBM WebSphere was impressive because it has Javascript GUI builder. TIBCO was also professionally done.
Aptana have embedded Javascript-server, the kind that could challenge IntraWeb into building stand-alone EXE files. It was very tastefully done. Your reviewer was impressed by DoJo and WaveMaker.
Problem #1: Learning many languages
The "problem" with Website development is, it's either using FireFox/XPCOM interface /FireBug with tedious coding with PHP/Java/Python/Perl.
That is:
- you can make a good site with Perl, to make "damn" good site with Perl, you would need very good Perl knowledge, JavaScript, DBI and so on.
- you can make a good site with PHP, to make "damn" good site with PHP, you need to learn PHP, PHP database interfaces, PHP Classes and so on.
- Ditto with Python, C#, NET, ColdFusion and Delphi/IntraWeb.
- The lingua franca you always had to learn were IE DOM Model, Firefox DOM Model, JavaScript and CSS.
There's also some Photoshop work. Your reviewer found free older versions of Corel Paintshop somewhere on Corel's website.
Problem #2: Desktop, Website?
The Win32 client does not play well with Web-based development tools. The familiar Delphi has IntraWeb (so long as you can pay for it), Visual C++ have ISAPI (Server-side), NET has two different classes, WebForms and WinForms.
People had to use embedded Cassini, mini-Java TomCat server (btw, most Java solutions have it, like Eclipse). The PHP folks have Apache/PHP stack (LAMP) under Windows if they wanted to serve-up "web-based Destkops"
Both Desktop programming and Web-based development are two different things.
Have you seen any successful IntraWeb EXE files lately? Me neither.
Problem #3: New protocols, open-standards
The Win32 client with Delphi, you have to use Indy (there's always the occasional Indy bashing going in the Borland newsgroups) or ICS or RemObjects (if you can see their HTTP server sources). If you have money, you can use the not-very-Clever components, which have not been updated for 2 years (to be fair, they updated it only for Delphi 2009 compatibility) in their history list. right.
There's JSON Ajax calls, any VCL for that?, or JMS?
(To be fair, there's Michael Justin's betasoft for JMS, with paid "trial").
It's pay, pay and pay to get involved into Web for Delphi.
Problem #4: GUI Builder?
This is where What you see is not what you get. With PHP, it would be constantly refreshing browser, emitting PHP + JavaScript, learning good PHP (server-side valiation) also means learning JavaScript, along with getting good IDE (such as UltraEdit or SlickEdit) that have Intellisense as well.
With Perl, there are those hard-core Perl-monk (:
I'm a Perl monk, I use Linux command-line, either VI or VIM, Emacs, :! to bash and then run Perl with stdin my Perl scripts and emit HTML on-scren, read it with lynx (text-based) HTML browser and program my way from there. Use Visual Studio? That would be way too tempting and over my head"
The problem is POST needs to parse data, GET needs to have pre-filled-in data or dynamic HTML web-pages, session needs to be handled, JavaScript needs to be emitted, and so on.
There is ASP.NET, JSF (Java Server Faces) which have direct GUI builders, until recently...
Your reviewer looked at IBM WebSphere, TibCo General Interface, SmartClient, ExtJS GUI builder, DoJo Bok(something) (by some Uncle on a blog).
DeskDrive WaveMaker
Your reviewer looked at Delphi 2010 and wondered if he should get this (and waste his Christmas bonus) or look at WaveMaker
The community was friendly, even so much your reviewer got assistance in hours. (Try posting on Embarcadero's forum and wait days for response).
The cost was free, as in US$0/- for community edition,
- the SOAP was working (did you try Delphi 2006, 2007, 2008, 2009's WSDL import only to plunk down a thousand more for RemObject's SDK?)
- the JSon was working correctly (why are there no examples to use JavaScript YUL (Yahoo Library) or DoJo toolkit with Delphi-back-end?)
- the speed was fast (did anyone try loading 1000 records?)
- the GUI looks amazing (did anyone making nice GUI in IntraWeb?)
- instant connections to databases (with Delphi, you plonk down more cash for this)
- plays well with C# (with DoJo.NET), Java, Perl and PHP.
There is really no need to play well with Delphi-socket-servers, since Delphi socket-server uses blocking code (hint: Indy), no ability to emit SOAP *with* serving JSon, HTTP or let alone connect to database or use scripting (what scripting?), without paying so much money.
The Love-Hate affair
This lead to a heated arguement here at DelphiHater's place:
DelphiLover: I need US$6,000 to buy RemObjects for the team, probably DataAbstract, or maybe RealThinClient or maybe AnyDac/or UniDac/ and some third-party to make HTTP server.
DelphiHater: How about I take US$6,000 from your bonus instead? :)
DelphiLover: We need a socket server and custom HTTP library.
DelphiHater: How about you use C#/NET or Java? There's Glassfish (Java stack) or IIS stack. You can even download Eclipse for free, Glassfish for free and use it. Visual Studio Lite is free, and you can build web-services that don't crash and burn.
DelphiLover: You really hate Delphi right?
DelphiHater: No, I don't hate Delphi, read what I wrote again, if I'm gonna make an RIA application, I need *reliable* products, things that work (24/7), things that perform as expected, things that play well with others. DelphiDeveloper, I can get you all these libraries, but if you cannot deliver results, whose fault is it?
DelphiLover: Why don't you just gimme the cash and I deliver results?
DelphiHater: After I give US$6000 (and pay for your salary) to the vendors, how long will it take for you to code the solution, make sure everything is tested, and then deliver results?
DelphiLover: humm...
DelphiHater: Did you see anyone else who made what you did? Did anyone see production sites for IntraWeb or Socket server successes? Why is it other people are successful using C# and Java and we're so behind in this game?
DelphiLover: Can we still develop a Win32 client?
DelphiHater: If the RIA client works well, customer is happy, there is really no need to use Delphi anymore.
Take these as words of wisdom.
:)
Costs
Let's say you have 5 people working on this project:
Price Proposal #1:
- Delphi 2010 enterprise * 5 = US$2499 * 5 = US$12,495
- TMS IntraWeb studio * 1 team license = US$1300
- MadExcept * 5 = US$99 = US$495
Others:
- Arcanatech Open-source
Total price for Delphi solution = US$14,290
- Possibly throw in RemObjects SDK, AnyDac, DataAbstract?, UniDac, PaxScript.
- Alternate would be kbmMW or Real-Thin-Client solution.
Price Proposal #2:
- WaveMaker community * 5 = US$0
- Apache = US$0
- (did not use anything else)
IntraWeb Alternatives
Your reviewer was looking around for credible alternatives to IntraWeb. Few days later, your reviewer found WaveMaker - www.wavemaker.com
There are several GUIs for JavaSript - ExtJS (commercial), Tibco General Interface, IBM WebSphere Mash, Aptana, SmartClient.com and WaveFusion.
For commercial solutions:
- ExtJs has bindings to Delphi (search around Torry's Delphi Pages),
- TibCo General Interface can communicate via SOAP (if you have RemObjects SOAP SDK) or Ajax/Json via DoJo.
[ExtJS is free if you are doing GPL work, like adding extra GPL code to your Delphi project and expecting nobody to find out about it. (smile)]
[TibCo, you have call them up for alternate payment methods, unless you want to get more frequent miles points on your credit card.]
Free offerings:
- Java/Eclipse have Ajax Toolkit you might want to look at
- IBM WebSphere assumes you use Java, the SOAP builder is interesting.
IBM WebSphere was impressive because it has Javascript GUI builder. TIBCO was also professionally done.
Aptana have embedded Javascript-server, the kind that could challenge IntraWeb into building stand-alone EXE files. It was very tastefully done. Your reviewer was impressed by DoJo and WaveMaker.
Problem #1: Learning many languages
The "problem" with Website development is, it's either using FireFox/XPCOM interface /FireBug with tedious coding with PHP/Java/Python/Perl.
That is:
- you can make a good site with Perl, to make "damn" good site with Perl, you would need very good Perl knowledge, JavaScript, DBI and so on.
- you can make a good site with PHP, to make "damn" good site with PHP, you need to learn PHP, PHP database interfaces, PHP Classes and so on.
- Ditto with Python, C#, NET, ColdFusion and Delphi/IntraWeb.
- The lingua franca you always had to learn were IE DOM Model, Firefox DOM Model, JavaScript and CSS.
There's also some Photoshop work. Your reviewer found free older versions of Corel Paintshop somewhere on Corel's website.
Problem #2: Desktop, Website?
The Win32 client does not play well with Web-based development tools. The familiar Delphi has IntraWeb (so long as you can pay for it), Visual C++ have ISAPI (Server-side), NET has two different classes, WebForms and WinForms.
People had to use embedded Cassini, mini-Java TomCat server (btw, most Java solutions have it, like Eclipse). The PHP folks have Apache/PHP stack (LAMP) under Windows if they wanted to serve-up "web-based Destkops"
Both Desktop programming and Web-based development are two different things.
Have you seen any successful IntraWeb EXE files lately? Me neither.
Problem #3: New protocols, open-standards
The Win32 client with Delphi, you have to use Indy (there's always the occasional Indy bashing going in the Borland newsgroups) or ICS or RemObjects (if you can see their HTTP server sources). If you have money, you can use the not-very-Clever components, which have not been updated for 2 years (to be fair, they updated it only for Delphi 2009 compatibility) in their history list. right.
There's JSON Ajax calls, any VCL for that?, or JMS?
(To be fair, there's Michael Justin's betasoft for JMS, with paid "trial").
It's pay, pay and pay to get involved into Web for Delphi.
Problem #4: GUI Builder?
This is where What you see is not what you get. With PHP, it would be constantly refreshing browser, emitting PHP + JavaScript, learning good PHP (server-side valiation) also means learning JavaScript, along with getting good IDE (such as UltraEdit or SlickEdit) that have Intellisense as well.
With Perl, there are those hard-core Perl-monk (:
I'm a Perl monk, I use Linux command-line, either VI or VIM, Emacs, :! to bash and then run Perl with stdin my Perl scripts and emit HTML on-scren, read it with lynx (text-based) HTML browser and program my way from there. Use Visual Studio? That would be way too tempting and over my head"
The problem is POST needs to parse data, GET needs to have pre-filled-in data or dynamic HTML web-pages, session needs to be handled, JavaScript needs to be emitted, and so on.
There is ASP.NET, JSF (Java Server Faces) which have direct GUI builders, until recently...
Your reviewer looked at IBM WebSphere, TibCo General Interface, SmartClient, ExtJS GUI builder, DoJo Bok(something) (by some Uncle on a blog).
DeskDrive WaveMaker
Your reviewer looked at Delphi 2010 and wondered if he should get this (and waste his Christmas bonus) or look at WaveMaker
The community was friendly, even so much your reviewer got assistance in hours. (Try posting on Embarcadero's forum and wait days for response).
The cost was free, as in US$0/- for community edition,
- the SOAP was working (did you try Delphi 2006, 2007, 2008, 2009's WSDL import only to plunk down a thousand more for RemObject's SDK?)
- the JSon was working correctly (why are there no examples to use JavaScript YUL (Yahoo Library) or DoJo toolkit with Delphi-back-end?)
- the speed was fast (did anyone try loading 1000 records?)
- the GUI looks amazing (did anyone making nice GUI in IntraWeb?)
- instant connections to databases (with Delphi, you plonk down more cash for this)
- plays well with C# (with DoJo.NET), Java, Perl and PHP.
There is really no need to play well with Delphi-socket-servers, since Delphi socket-server uses blocking code (hint: Indy), no ability to emit SOAP *with* serving JSon, HTTP or let alone connect to database or use scripting (what scripting?), without paying so much money.
The Love-Hate affair
This lead to a heated arguement here at DelphiHater's place:
DelphiLover: I need US$6,000 to buy RemObjects for the team, probably DataAbstract, or maybe RealThinClient or maybe AnyDac/or UniDac/ and some third-party to make HTTP server.
DelphiHater: How about I take US$6,000 from your bonus instead? :)
DelphiLover: We need a socket server and custom HTTP library.
DelphiHater: How about you use C#/NET or Java? There's Glassfish (Java stack) or IIS stack. You can even download Eclipse for free, Glassfish for free and use it. Visual Studio Lite is free, and you can build web-services that don't crash and burn.
DelphiLover: You really hate Delphi right?
DelphiHater: No, I don't hate Delphi, read what I wrote again, if I'm gonna make an RIA application, I need *reliable* products, things that work (24/7), things that perform as expected, things that play well with others. DelphiDeveloper, I can get you all these libraries, but if you cannot deliver results, whose fault is it?
DelphiLover: Why don't you just gimme the cash and I deliver results?
DelphiHater: After I give US$6000 (and pay for your salary) to the vendors, how long will it take for you to code the solution, make sure everything is tested, and then deliver results?
DelphiLover: humm...
DelphiHater: Did you see anyone else who made what you did? Did anyone see production sites for IntraWeb or Socket server successes? Why is it other people are successful using C# and Java and we're so behind in this game?
DelphiLover: Can we still develop a Win32 client?
DelphiHater: If the RIA client works well, customer is happy, there is really no need to use Delphi anymore.
Take these as words of wisdom.
:)