Sunday, November 29, 2009

Parody: Winds of Changes

Google for: Winds of Changes by Scorpion.

Your reviewer was looking at site Wings of Wind and came with this idea that sums-up what problems Delphi has:


Can Delphi change?
There are thousands of Delphi developer wanting change...



The Delphi market is laid waste by poor and non-working versions of Delphi...



Whenever we discuss this, there would be flame wars...



Can our Arab users use it? It's too costly and they are revolting...



Can our chinese brothers use it? it costs too much... and hard to get affordable versions of Delphi...



Russian brothers are protesting Delphi is too expensive... and no jobs.



Change the DRM system, there are many people just trying to tear down the Berlin DRM wall...



Many Delphi developers are hoping for change...


See references:
1) SA Increased?
https://forums.embarcadero.com/thread.jspa?threadID=28739

2) Price of Delphi:
https://forums.embarcadero.com/thread.jspa?threadID=26778

3) Delphi too expensive:
https://forums.embarcadero.com/thread.jspa?threadID=28179


Take me to the magic of the moment
On a glory night
Where the delphi developers of tomorrow dream away
In the winds of wings

:)

Friday, November 27, 2009

Interesting Delphi alternative - RIA Ajax Gui Builder

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.


:)

Forums & Privacy

Your reviewer was looking at a pirate "forum for sale" (funny) and wondering what kind of data privacy concerns it would have (even more funnier).


Your reviewer will raise following points:

1) Your reviewer thinks this is golden opportunity. Why constantly try to hack these boards and dump the database when you can "buy" the forum, slowly by slowly cherry pick them for "follow-up action". :)

2) Yippe yIP. Since the board also contains list of IP addresses, we can find out who the uploaders are, where they come from....

Hey bro, did you see the Bait Car(tm) show?
Google for Bait Car.

Did you see the Master-Bait car?
Me neither.

:)

Thursday, November 26, 2009

Kudos

From FH, Brazil:
"Amigos, já viram este blog: http://delphihaters.blogspot.com
Vamos convir que 90% do que é falado ali é verdade..."

From J:
"Very accurate"
...

"Let me cite Delphi Hater, he is absolutely accurate regarding this problem"
(of 64-bits)

Monday, November 23, 2009

Delphi Programming Paradise

Delphi Programming Paradise?
Google for Amish Paradise. You'll find some YouTube videos

Religious Delphi Programming

As I walk through the IDE where I harvest my code
I take a look at my wife and realize she's very plain
But that's just perfect for an Amish programmer like me
You know, I shun fancy things like web-programming

At 4:30 in the morning I'm coding the Win32 app,
Jedediah tests the GUI and Jacob builds the installers... fool
And I've been coding' and testin' so long that
Even Ezekiel thinks that my mind is gone

I'm a developer in Delphi Land, I'm into discipline
Got a Bible in my hand and a beard on my chin
But if I finish all of my codes and you finish thine
Then tonight we're gonna party like it's 1995*

[*When Delphi 1 came out]

We've been spending most our lives
Living in an Delphi paradise
I've coded components once or twice
Living in an Delphi paradise
It's hard work and sacrifice
Living in an Delphi paradise
We sell applications at discount price*
Living in an Delphi paradise

[* like US$24.99]

A C++ boy kicked me in the butt last week
I just smiled at him and I turned the other cheek
I really don't care, in fact I wish him well
'Cause I'll be laughing my head off when he's burning in hell

But I ain't never punched a customer even if he deserved it
An Amish Developer with a 'tude? You know that's unheard of

I never wear Perl buttons but I got a cool (T)hat class
And my friendies agree my apps really look good in Vista, fool

If you come to visit you'll be bored to tears
We haven't even used Flash or Silverlight in 300 years
But we ain't really quaint, so please don't point and stare
We're just technologically impaired

There's no PHP, no JavaScript, no dot-Nyet*
Not a single luxury
Like Robinson Crusoe
It's as primitive as can be

[* Russian for "NO" or "Not NET".]

We've been spending most our lives
Living in an Delphi paradise
We're just plain and simple guys
Living in an Delphi paradise

There's no time for sin and vice
Living in an Delphi paradise
We don't fight, we all play nice
Living in an Delphi paradise

Hitchin' up the bug tracker, churnin' lots of code
Run the build on Monday, soon I'll build another
Think you're really righteous? Think you're pure in heart?

Well, I know I'm a million times as humble as thou art
I'm the pious guy the little Amlettes wanna be like
On my knees day and night scorin' points for the afterlife
So don't be vain and don't be whiny
Or else, my brother, I might have to get medieval on the code-review hiney :)

We've been spending most our lives
Living in an Delphi paradise
We're all crazy Delphi'lites
Living in an Delphi paradise
There's no Semaphores or memory leaks
Living in an Delphi paradise
But you'd probably think it bites
Living in an Delphi paradise
Ahahahahahahahahahahahahah yech


:)

[corrections made on incorrect year]

Saturday, November 14, 2009

Delphi Ultimatum

The most lovely Delphi message posted.

I had the most weirdest dream...

What would DelphiHater do, if he was in charge of Delphi and wanted to make Delphi successful?

First thing, DelphiHater would let many old timers leave Embarcadero. The kind of bad behavior on the newsgroups and antics would make many new customers uncomfortable with them.

Second, get rid of the blowhard Delphi fans. Sure, we like them, but when you call newcomers "idiots", "morons", and other expletives on the newsgroups, they have to go, or get warnings. So what if they are idiots? At least they asked for help. Get rid of all the troll-crossings so the new comers feel at home and ready to ask questions. At least that was the idea of Joel Spoolsky's StackOverflow.com

Third, cut-off the NNTP supply to google and then host it in-house, so that all the Adsense money can come into Embcardero, not some Usenet site. DelphiHater might consider suing some of the upstream providers that suck on Embcardero's Usenet for Adsense revenues and copyright (since they also provide extra services, like free downloads of copyrighted materials)

Forth, hire some more Quality Assurance and documentation. Why not ask some whitehouse interns to do Quality Assurance and Documentation? They seem to make sure the President gets quality service and kept upto-date on state of affairs.

Fifth, give money to fix bugs. If US$20 was given to fix all the damn bugs in Delphi, it would cost US$2,000,000 to fix (approx 100,000 bugs) Delphi, which would be cheaper than the US$100,000,000 a year Borland used to lose on Delphi. At least it would keep Andy J (of the Delphi Speedup Fame) and other hackers interested in Delphi.

Sixth, DelphiHater would consider buying over GExperts or CNPack, or even Castalia and free it from the GPL license and then build these features into the IDE.

Seventh, DelphiHater would make peace with Mark Miller of CodeRush and give him what he wants rather than some half-dead Editor Integration. BTW, get rid of that customized TXControl nonsense editor. There are plenty of Syntax-based Editor that Embcardero can use that is extensive, integrated and works with Delphi.

Eight, DelphiHater would hire fresh blood for the DCG (Delphi Code Generator) back-end. If the people from Borlando and CodeGearo cannot understand I64, then if new people can, get them to make a fresh decent DCC64.EXE that actually works. Maybe hire some people from QUT (Queensland University of Technology), the people who made that Pascal-clone in NET. I'm sure there are plenty of students who would be thrilled to make exciting career.

Nine, DelphiHater would tell Indy Pit Crew and team to stop this nonsense on newsgroups and get paid people to fix all those annoying bugs in Indy. Either way, either you give decent working Indy code, or just drop the whole Indy and get something decent, like beefing up ICS or RemObjects Soap or some TCP/IP library that actually works 100% during run-time, instead of crashing sometimes or working half-the-time.

Ten, DelphiHater would call to tender for another VCL Library for Internet. or even Scripted Delphi that works with IIS. Euro 600 per person for IntraWeb is waay too expensive.

Eleven, Make that spirit of Delphi award give money. A little money goes a long way to oil the wheels of Delphi...

Twelve, ask what happened to Team Spirit Nevrona. Their Rave report-writer is starting to smell. Either they start to maintain it, or FastReports included with Delphi sounds nice.

Thirteen, the Database drivers. Either open-source code, or give paid access (hint: Payment + NDA) to developers interested in the source codes for the Database Drivers or even BDE. Maybe someone will come up with something better than the Bullshit Database Engine (BDE) or even fix all those damn bugs in it.

Fourteen, pay people to answer question. Redeem points for prizes or free copies of Delphi. Then those lonely posts on the newsgroups will feel some love.

Fifteen, start to question suppliers who supplied the third-party found in Delphi, to make sure they are accountable for their work. It's no use giving out a Partner CD with nearly/almost useless products. BTW. Did someone do QA on the Partner CD?

Sixteen, instead of subscriptions, consider alternative licensing methods. Since the Chinese and Iranians use unpaid copies of Delphi, here's an interesting model. License by usage (checked by on-line activation). For example, pay US$2,000 and get a US$1,000 refund for license compliance.

Seventeen, there are already license managers that can detect Virtual Machine and usage. Since those license managers can activate and deactivate inside VMs, then why don't Delphi's license manager do same?

Eighteen, the Borland Certification is almost useless. It confers no benefits, no additional statuses and people who go for it, get no benefits. Either scrap it, or go for community model where people pass competency tests, or make the course-ware very public so more people get interested to learn Delphi.

Nineteen, Java has J2EE server. Delphi should have the same. Anyone for Delphi version of TomCat that serves Pascal script-lets? or Pascal scripts that bind to SOAP? Maybe Delphi JMI or Delphi ODBC adapters.

Twenty, ensure interoperability with basic standards, like SOAP, JMI, JSON and basic working XML parser that actually works. At least, upgrade Jeff Rafter's / Defined XML wrappers to work in Delphi 2009, get StreaSec II to work in Delphi 2009. or at least get unicode encryption to work, or so it produces same results as in NET and Java.

Twenty-one, put some power into the TurboPower-failure. There is plenty of code that still uses legacy TurboPower things.

Twenty-two, reward customer support staff based on feedback. Too many bad support calls, fire them. Maybe they are actually paid to do disservice?

Twenty-three. Buy over TMS or LMD, at least there will be 300 new components. Why not buy DevExpress and FastReports. There will be excellent grid, working report writer and decent edit controls.

Twenty-four. Buy over a working Profiler or Memory manager that actually works. Right now you cannot exactly profile without paying loads of cash, and you cannot check OLE string leaks, errors, or resource leaks...

Twenty-five. Fix the dumb Borland C++ Builder so that with more C++ compliance similar to Gnu C++ or Microsoft C++, people would say that's stupid, but read Andy J's blog how he hates C++ Builder. Then at least DelphiHater can use more C++ libraries than buy wrappers from Yunqua (The Delphi Inspiration).

Twenty-six. Where is BOLD? Why is it not available since Delphi 2007 Arch. had it and disappeared in Delphi 2009 Unicode version? When would a low-cost version be available for this?



The Delphi Ultimatum is really about business improvements.
Is Embcardero listening?

Q: What killed Delphi? A: Greed.

Your reviewer was looking at the Delphi economy and wondered what was wrong.

Delphi Economics 101
The idea was this, there are consumers (Delphi programmers), producers (Third-party vendors or "3rd party"), distributors (shops). The producers ("3rd party") provide products ("components", "libraries") and services ("programming services") to consumers. All of this ecosystem, is bound by Borland/DevCo/CodeGear/Embarcadero.

Delphi Market
The Delphi Market is unique that all the players produce code for Delphi/C++Builder. The market is dominated by few players who provide all-in-one libraries (e.g., TMS, LMD, DevExpress) and must-have libraries in specialized areas.

In an ideal market (so it goes) everyone should be earning money, the consumers should be making killer apps, making good database apps, the producers should be doing cutting-edge research and development to make the next generation of components, the shops should be selling plenty of products. Borland/DevCo/CodeGear/Embcarcadero should be earning millions, if not billions of dollars and reporting gains every year...

The cash cow?
It is interesting to note or seem that nobody is earning money...

- At the top, Borland was bleeding money and making millions of dollars of losses, the producers (3rd party) vendors were losing money.

- If you have access to, say, BS1 private forums, you can see BS/1 Trevor Davis total sales, or DevExpress private forums and see Julian Bucknall lament about poor sales, ditto for TurboPower private newsgroups before it crashed and burned.

- The shops say that Delphi stays on the shelf for many months before it is brought...

- The consumers complain about high costs, poor service, poorly made products.

Prices kept artificially high...
Since everyone make "losses", they justify that prices have to be kept high to prevent more losses from happening. Would you pay thousands for virtually worthless goods, or a subscription to nothing you can enjoy?

Dunn & Bradstreet Credit Reports, Equifax Credit Reports, and others
While Borland's, TurboPower's, Sybase (Advantage Database) balance sheet is available publicly, getting information about private companies is hard to get.

Your reviewer DelphiHater was shocked at what he found... Most companies were reporting profits year after year, companies that just sold components and no updates were earning average US$80,000 profits on US$200,0000 gross earnings (40%) (btw, very good profits for very little or no work), respected companies were doing US$500,000 to US$4,000,000 gross earnings a year with average 30%-60% profits. Your reviewer started to wonder...

Prices kept very high to report high profits
Your reviewer was surprised by those credit reports, the obscene profit margins - you cannot say you are losing money, when you make high profits.

Delphi the black hole cash cow
It is very evident that Delphi is starting to become the cash-cow to be milked to the last dollar... The consumers are already forced to buy additional copies of Delphi for no reason (yearly SAs), the producers would be changing sales tactics to get as much money as possible by changing models to annual subscriptions, the shops would be going by region (e.g., a seller who just sells to BElgium-(something)-NEtherlands area) to protect their turf.

In traditional economics, with high prices, big profits margins, such market would be bound for severe correction soon...

Greed, Excesses
The problem is, with all that additional money, there should be plenty of Research and Development (R&D) money, but there is very little to show. DevExpress VCL has no report writer (it was promised but...), TMS only new libraries are mostly bug-fixes and re-hash of older components, LMD Pack and ElPack have just be mostly bug-fixing... ModelMaker just mostly bug-fixes too...

Corrections
Sooner or later, the consumers will revolt and refuse to pay, this is evident in this week's newsgroup posting, when Daniel T., the owner of RealThinClient * discounted his product 90% and then nobody wants to pay for next year's Euro (whatever) subscription fees.

The consumers who pay for Delphi got really put-off with Delphi's registration model and shoddy on-line activation system.

The producers who make libraries suddenly get unhappy customers wanting not to pay by using non-legal products (you know...)

[*See: https://forums.embarcadero.com/thread.jspa?threadID=28054]

Conclusions
Is the glass half empty, or half-full? Maybe the best answer is, don't kill the cash cow by denying it grass to eat, and don't over-milk the cow that it dies...

But wait, maybe the cow is nearly dead because the cow is over-milked and even though there is new grass, nothing will stop it's demise.

There can be two places left to go:
- Either the Delphi Ecosystem will have to undergo severe correction with massive price discounts, or lower prices for attracting new blood,

- Everything remains the same... and ...

"I recently switched to 64-bit Windows and dumped TotalCommander for 64-bit alternative, used my own private PHP 64-bit web-based email client on my 64-bit web-server, I started to move everything to 64-bit native applications..."

"Delphi-based apps? There's no 64-bit Delphi, and nothing new. Just paying more and more unwanted bills every year"

"There's a big list of great (expensive) applications made with Delphi, but Websites made with Delphi? That would be mostly empty list"

If there was the day after the fall, it would be, Delphi has priced itself into oblivion, with C#, NET, Python, PHP and others, who cares?

Maybe your reviewer might, those who use Delphi might care, but you know what?

Maybe the grass is greener at the other side, that PHP jobs, Java Jobs, and VB jobs pay more money, and all the money for Delphi is gone before the first dime is made...

:)

Last notes
This article will be very hard to challenge without getting the Dunn & Bradstreet, Equifax and other credit report data. By the way, why not take the challenge? You'll be surprised at what you see.

Friday, November 13, 2009

Fan Mail: Responses to Dark Humour

Your reviewer got responses to this post.

You can see some proof for yourself...

See:
1) https://forums.embarcadero.com/thread.jspa?messageID=105119

2) SVCom annual licenses
https://forums.embarcadero.com/thread.jspa?threadID=27612

do I need also to write about DevExpress annual subscriptions, RemObjects... zzz...

:)

Wednesday, November 11, 2009

How not to teach Delphi

Your reviewer, DelphiHater was looking at some syllabus or course overview for teaching software development 101.

Computer Sciences 101

Computer programming starts off with learning basic concepts, such as 2^ compliments, what AND, OR, NOT, NAND, NOR, XOR can be easily taught without learning programming language. What hexadecimal, octal, binary, decimal is, what signed and unsigned binary coded digits are, 2^s complement addition, subtraction, division and multiplication are to create digital circuits (such as using your 4001, 4002 chips). timers (the traditional 555 timer), capacitors and resistors.

Computer studies students should also be expected to learn basic statistics and calculus, along with either healthy dose of principles of accounting or business (human resources).

then, learning about Windows, DOS, how to use Access*, Word, PowerPoint and Excel.

(used to be DBase before Borland brought Ashton-Tate and trashed DBase)

Wearing the Computer Science Lecturer's Hat

In order to learn about software development, you have to pick a language to learn. As the computer science lecturer, you would need to pick 2GL, 3GL, 4GL language.

2GL

For 2GL language, it would be basic assembly knowledge. Since Delphi only does Win32 assembly, more suitable language such as Microsoft Assembler with reference to Ralf Brown's Interrupt list.

Explain why using serial port under real-mode / or protected mode assembly is important in embedded systems development.

Do you consider a smart telephone as an embedded system with TI (Texas Instrument) DSP (Digital Sound processor), DTMF pad (Dial Tone Modulation Frequencies) a specialized computer?

Make students interested in why assembly is important to learn. For example, making those cool gameboy games, Sony PSP portable requires deep knowledge of assembly.

(While your reviewer has seen Free Pascal Gameboy compiler, I doubt Nintendo would allow unlicensed materials into their Gameboy system. Did anyone see Action 52, the unlicensed NES game?)

3GL - Choices

For 3GL, there is choice of Basic, C++ and... Pascal.

While some people are quick to dismiss Basic (the Delphi people call it Visual Bullshit), there is Free Basic, which seems to be better than Free Pascal, DarkBasic, which makes Kickass games (show me one good Delphi Game SDK), Real Basic which seems to do Linux better, PowerBasic the step-child of TurboPascal abandoned by Borland.

To be fair, ask any Delphi developer to make good game using Delphi, or Linux application, or MacOSX application. Two things will happen - the person will just quit (maybe I'll hire someone else instead) or lame around the Borland newsgroup asking for answers.

None of the Delphi developers can ever put up with the Basic, but yet, if you look closely, do you see close-minded individuals unable to learn more than just Delphi? At least some people started "getting ideas" that other languages were much better and make more money.

C/C++

While Delphi people hate C++, your reviewer will cover why it is important to learn C++.

Other than the curly braces issue, semantic (begin/end), newsgroup wars, there is scripted C (Python), interpreted C (Java, C#, NET), native-compiler (Visual C++, GNU C++).

The common denominator is the amount of money you make from C/C++. Let's take for example, an average Visual C++ job and Delphi Job.

The most stunning examples is in mobile, embedded and financial markets. The latest iPhone apps are written in Objective C, which seem to produce 100,000 independent applications for the iPhone, yet Borland/CodeGear/Embcardero could not, over the years, bother with Windows Mobile or Palm.

In embedded market, the value is in the hardware and software combination. While most Delphi programmers will moan about a dongle or USB copy-protection, what about hardware-based MP3 players, USB peripherals, cartridge-based games? Then the Delphi programmer who tried to make a basic Windows-MP3 player, or connect his app to USB, or make a ROM-based Win32 application would probably earn US$0 (zero) dollars.

[Okay, to be fair, show me one good Win32-based Media Player made in Delphi, and I will show you 10 Media Players written in C++, let's not even talk about hardware based devices (e.g., MP3 players selling for US$200 a pop) and 64-bit compatible Media players]

For cartridges, ROM-based applications, your reviewer played some good games, such as Mario, Sonic, Wario, etc. Those still make money.

[Show me one good gaming SDK to make gameboy games using FreePascal, you can google around for plenty of GameBoy-compatible, PSP-compatible C/C++ SDKs around]

Back to the review

The usual tirade of computer concepts - stacks, queues, trees, graphs, inverted tables, indexes.

[While your reviewer thinks Julian Bucknall would be fond of them, sadly, few people buy his book.]

Coming to books. Which book would be suitable for students to learn Delphi? with this Delphi book economy-collapse, it would be much wiser to teach C/C++, Java, or even PHP.

4GL would be SAP/ABAP (if your school is a certified SAP/R3 school), SQL, Mathematica.

Delphi as a teaching choice

Let's say for example, your reviewer selects to teach Delphi to students.

The first obstacle is licensing. Your reviewer had very negative experiences with former Borlanders:

- Suppose you want to tell your students to post to the internet, and then to learn how to use UseNet, then google around, and then find old 1980's usenet personal flame wars and stupid insults posted against your lecturer. How would the lecturer feel? Yet, this flaming and insults continues to this very day.

- How do you tell students that Borland newsgroup is mostly not moderated and any stupid post with student's name becomes an embarrassing part of their education?

- How do you tell students not to confront such person nicknamed Troll or Schmuck
who feels Delphi is superior to all languages, yet few jobs exists?

- How to tell to "ignore" anti-islamic posts frequently posted which are inflammatory to Muslims? (See Off-topic)

They are no easy answers.

Book Choices

Your reviewer looked at several books, but sadly, most are out of print. Most publishers will not even publish Delphi books anymore, because they are unprofitable.

Career Choices

Your reviewer does not wish for others to repeat the same poor career choices to his students. Once is enough.

Suitability

Your reviewer, looking at Delphi, wonders if the same concepts that are in C/C++ can be taught.

Someone on certain forum said it nicely:

----------------------
Quoted:
Obviously you are one of the guys programming an image editor like this:

1. Drop a FileLoader component on your form
2. Drop a PhotoShop component on your form
3. Drop a DevExpress multi mega component on your form
4. Drop a FileSaver component on your form
5. Tell your client the project is finished.

Wake up man, real life doesn't work that way ...
----------------------

The danger is when you wake up, you don't learn anything. The students will be forever dependent on "others" for parts of their work and end result is wanna-be work with little or no value-adding.

Conclusions

Your reviewer, wearing the Computer Science Lecturer hat, took hard look at Delphi and wonders...

If your reviewer teaches Delphi to students, my students will be doomed to the same bad career, poor work, get fired, and all sorts of things education was supposed to prevent.

Don't take my word for it. Those who don't learn from the mistakes of the past are destined to repeat them.

Friday, November 6, 2009

Dark Humor: Delphi Loans

There's a new savings & loan company - EmbarLoanero

(Quoted from some forum)
I installed RAD Studio 2010 and activate by using (Doctor[1] Al's Patch).

but when I click on RAD Studio or Delphi 2010 or C++ Builder 2010 Icons to open Web Page Showed and Nothing Runs !!

The product goes to this page:
http://www.embarcadero.com/products/how-to-buy-map


Q: How do you buy Delphi?
A: You start by taking the "Professional" loan. This will cost you US$75 per month or approx US$900 a year.

You can also take the "Enterprise" loan. This will cost you US$210 per month or US$2,520 a year.

You can also roll-over ("upgrade") your existing loan plan to the next year at US$35 per month or US$420 a year.

Q: How will these Delphi loans help me?
A: It depends on what you do:

- You can be kind soul and help as many people out, but remember, when the times comes to pay, you must pay or else your Delphi stops working!

- You can work very hard, working day and night. and then deduct the money from your payroll (or your employee's payroll).

Q: Can I get good job after getting a Delphi loan?
A: Google for "Delphi Jobs" there are plenty of jobs! (Yeah, right).

Q: What happens if I break the Delphi license?
A: Each IP address can be traced back to the company who leased the IP address (your company name or your employer's name is on that IP block), and eventually someone will call the lawyers and sue the employer or company for money.

It's really nice because I heard someone paid US$20,000 for 1 box of Delphi. Bill me later!

Q: What happens if I refuse to pay for Delphi?
A: The Feds comes and arrest you. Have you not heard? Not paying for what you buy is against the law?

Hey bro! How are you? Long time no see? Where have you been?
Oh! errr. I've been in jail for four years.
Are you okay? you look really tired!
Ohh, I'm feeling sickly and I've got HIV+
Err.. see you later...

Q: How can I stop this loan?
A: You can stop the loan anytime by not using Delphi anymore.

Think about it... ** Free your Mind **

[1] Doctor or General Practitioner (GP)