For Whom The Bell Tolls

ForWhomTheBellTolls

Take a look to the sky just before you die
It is the last time you will…

…being from enough years now a Delphi community member. Also, I monitor and/or I’m involved in other communities. But from some time now I look at Delphi community from outside. Also my other ‘specialty’ allow me to cast a very different eye on the matters. Different from a programmer perspective. But I’ll try to bind all the puzzles…

Well, in the beginning was camaraderie. A lot. A bunch of very smart programmers, so smart that they realized that in order to gain they must ‘kill’ their own opinions, their own ways to see the future and build a tool dedicated to users. They didn’t it for money, even if money came after from the users who loved them. This was Turbo Pascal and the early version of Delphi.

The users brought success, brought glory. But also brought money. And they chose the money. And the money brought death. This was Inprise, this was Kylix, this was Delphi.NET, this was ALM. Enormous prices for something that nobody requested in that way.

Nowadays Delphi community is formed in its vast majority by experienced, skilled, programmers which do malware (btw it seems that Delphi is ‘the favorite cracker’s tool’), work in aerospace, avionics, health-care, life critical applications, government, enterprise grade economics etc. On the other hand, there are a big percentage of programmers who use Delphi for almost everything: from keeping an inventory of a grocery till building 24x7x365 distributed n-Tier systems.

But with almost each new Delphi version the number of people which use the new version is shrinking. There is a renaissance started with Delphi 2007, continued with Delphi 2009 and it has a peak with Delphi 2010, but still… isn’t what it used to be. And this is natural. Because we need new users.

Nowadays in schools the students doesn’t learn Pascal anymore. They learn Java and C#. So, what will be their language programming of choice when they’ll finish the studies?

Give very cheap (almost free) licenses in schools and universities. Learn them to build long therm, commercial projects. These licenses will expire when the holder will terminate the studies. (IOW licenses are assigned to the _university/school_ not to the person, even if any(?) student can have an installation at home). Anyway, a determined student can have a cracked version.

A kid at home can have a cracked version and nobody can track him, but if he enters in commercial (real) business he must probably will buy a license. So, the target should be as follows:

“Any youngster which will leave the school should know Delphi. If some of them will depend on Delphi due of their projects which are already in progress, so far so good.”

You must have a user base as large as it gets and then in this user base you must try to maximize the percentage of the ‘legals’. Let us not forget that this user base will produce large amounts of code and thinking culture which is crucial today for our community (truly RAD, innovation, safety feeling WRT tomorrow, jobs on the market, vocal supporters etc. – almost everything which is missing(ed) in our community). Fight for users not for money. Fight for glory not for death. …all we are riding the storm.

The roadmap says: Project X in 2010, Chromium after and after this Commodore. Most probably with one year between them. And it doesn’t matter which will be the last because Chromium most probably will be in the middle as a stabilizing edition. Having either 64bit, either cross-platform in 2012 is too late, in my humble opinion.

Well, we know that we’ll die. It’s a question of time, isn’t? At least let us die with honor.

I do think that here is needed a lot of lucidity, focus and cooperation in order to get the cross-platform and 64bit (almost) together. I do think that’s doable. Let’s take in account that Delphi is the company’s main product. If Delphi fails, everything fail.

Go and see the CodeRage 4’s schedule. Take out the Delphi sessions. What remains? And I’m pretty confident that if Delphi sessions weren’t there, then neither the other ones weren’t at least not in that proportion.

You can look at Google trends bellow: (The actual link is here.)

GoogleTrends

Well, one can argue that in ‘Delphi’ results are included also the searches about the car parts company which went bankrupt. But I highly doubt it since the Top 10 Countries ย provided by Google hasย nothing to do with the defunct company…

Anyway, if Delphi isn’t anymore then nothing is anymore. That’s why perhaps they must concentrate their efforts and borrow men from other teams, even outsourcing (not to mention product names there but you know that there are products which, oh well… can wait a little ๐Ÿ˜‰ ), import ideas from other products (3rd Rail’s UI approach for MVC pattern) and enhance your base product. Because otherwise…

And don’t look for money. Look for users. Gates was right. You must do everything to flood the market, to became a standard. (Un)fortunatelly John Sculley didn’t listen him. Perhaps then the Windows would be no more…

As the independent investment in a “standard” architecture grows, so does the momentum for that architecture. The industry has reached the point where it is now impossible for Apple to create a standard out of their innovative technology without support from, and the resulting credibility of other personal computer manufacturers. Thus, Apple must open the Macintosh architecture to have the independent support required to gain momentum and establish a standard.

Bill Gates, Jeff Raikes
June 25, 1985

Source here.

That’s why I think, the entire management team must focus on this product and allocate resources on this as early as possible because as Philippe Kahn said “Throwing resources to a late project makes it later” – also see the Fred Brook’s “Mythical Man-Month” while on the other front they must work with the community in order to keep their focus. They do it very very very good, compared with the past years. But they must do very good with the nowadays IT reality – they must pay the price for the mistakes of the past management. Because nowadays Delphi doesn’t have a distinctive appealing feature for the current IT culture in order to attract new users. And I think that native cross-platform is that feature. But we must get it right.

So, for whom the bell tolls?

For our death? For a new baby born? For the end of the war?

We don’t know. Yet. Anyway an end is a beginning, isn’t?

93 thoughts on “For Whom The Bell Tolls

  1. I’m completely agree with you.
    Delphi need new users, Embarcadero (Dev Tools side) need new users.
    IMHO having either 64bit, either cross-platform in 2012 is too late.
    Delphi *MUST* be the native alternative to .NET and JAVA. This is the way and
    still 3 years to become this could be too mutch time!

    IMHO this should be the macro features of New Delphi:
    + richer language
    + Lambda expression
    + Extensions
    + Interface for standard types like map, list and so on
    + type inference
    + design by contract
    + var declaration inside procedure, not only in the var section
    + richer rtl
    + more generics datatypes
    + more libraries in the box (VCL for PHP is a nice example)
    + HIGLY Optimized compiler
    + FAST *NATIVE* VCL
    + Modern “way to do things” with MVC, MVP, DataMapper, DataBinding and so on
    + Specific CPU optimizations

    My 2 cents

    • You wish Delphi just to ape other tools. IMHO Delphi must choose its own way – and it could be to be a “friendlier C++”.
      Just adding features from this and that because they are fashionable today it’s the wrong way to develop a language. It should have a longer term target.
      For example I see lots of people wanting to declare variables everywhere – IMHO they have a issue – they’re functions/procedures/methods are getting too long… that’s not a language issue ๐Ÿ™‚
      If Delphi wants to cover the native area its competitors aren’t C# or Java, nor PHP, Pyhton or Ruby. It’s C/C++. They have to convince C/C++ programmers that Delphi could be a more productive tool (especially for GUIs) without losing power and speed, and convince C# or Java programmers they can code good, faster native applications without the need to learn and use the more complex C/C++.
      IMHO, the biggest mistake Borland ever made was to target Delphi at Visual Basic users. Delphi was too difficult and too powerful for the average VB user. He looked for simplicity, not power. They were never able to position Delphi properly, and that lead to some strange adventures, from Inprise to the fruitless attempts to make Delphi a web applications tool (who codes web sites in C/C++?), from Kyilix to Delphi.NET. Every time chasing the actual, fashionable, colorful butterfly. And that still goes on. “64 bit? Yes, of course, no wait, now there’s .NET, so cool? Oooops, .NET didn’t work, wait, look at those Apple machines, soooo coooool….”
      Too many ex-Borland employees accomplices of this situations are still there, while some of the better technical minds are not. I am not saying current technical guys are not up to the task, I am saying most of those who took the wrong decisions in the past ten years are still there and still taking bad decisions. It looks it wasn’t Yocam or Fuller or Nielsen, there are big problems in lower management too. IMHO it’s time someone retires and someone “look for other opportunities”. Delphi needs new blood.

    • I agree with you completely. The language needs to change if we want to attract new developers. Delphi needs to become very easy to learn and use.

      Frankly speaking it is not easy to learn and use. It feel very length at times compared to say for example C#.

      • If there’s a language that is clear, easy to learn and use, that’s Pascal. Learning C and any of its derivates is much harder. Of course if you already know C, C# or Java are surely easier – they’re almost the same. Turning Delphi Pascal into another C/C++ clone would be useless.

        • I learned (and liked) C long before I used Delphi. Later on, I picked up (and liked) Java and then C#, which I continue to use. I still prefer Pascal.

          So I agree with you about not turning Pascal into a C/C++ clone.

        • May be for you but after conducting a short survey locally among about 1000 students I can say that most of them did not know what is Delphi and those who did know felt that Pascal is very restrictive.

          The very ideas of declaring a Function/Procedure at on place and then coding at another place itself is a pain in the ….. for most of them.

          Almost all students preferred VS 2005/2008 and most felt themselves at home with C# compared to Pascal.

          This is just for your info.

          • I’m an example of someone who didn’t start with Pascal but still came to prefer it, mostly from just using it. I just spent (too much) time tracking down a bun in a long c# method ( that I didn’t write it) with inline variables declared all over the place. It sure helps me appreciate Delphi’s var section.

          • Also, I felt once upon a time at home with Commodore Basic compared with Pascal.
            Also, I felt once upon a time much more powerful with machine code compared with Pascal.
            I never understood why one must declare variables before using them.
            Till the first bug.
            Till the first maintenance issue.

          • “Pascal is very restrictive.”

            Never said that Pascal didn’t got a bad reputation due to many missrepresenting it. Delphi Pascal is less restrictive than C# or Java (you get pointers, at least). Sure, BorCodeDero had and has its fault – as allowing pointers arithmetic only from 2009 onwards due to its silly attempt to aim it at VB users.

            “The very ideas of declaring a Function/Procedure at on place and then coding at another place itself is a pain in the …”

            Until they start to code real, complex application and find very useful to have a declarations in a compact form at the beginning of each file instead of trying to extract them from a lot of code… or non existing documentation ๐Ÿ™‚ Or managing both header and c files….

            • “Delphi is less restrictive that C#”?

              Trying declaring two classes that contain references to each other in seperate files – you can do that in C#, you cannot in Delphi.

              Try declaring variables in several places in a function. You can do that in C#, you cannot in Delphi.

              • There are work arounds for circular references, but they are work arounds, so I wouldn’t mind these working better in Delphi.

                As for your second point, yuck. I’m spending some time in C# code where the author loves to do this, and it makes the code difficult to follow, especially if a consistent (read: sane) naming convention is used. Advantage: Delphi.

            • I have see many large projects developed in C# and they have that declaration of variables littered around in their code but I have observed that a C# developer is immediately at home with such code and debugging is easy as he is thinking in the same manner. Those who have used Pascal/Delphi will surely scream at such code and may probably pull all their hair out also ๐Ÿ˜‰ .

              There is a large project in C# that I know of as I have played and important role in its making.

              Check out Kixzo @ http://www.futurefiling.com/

              This software (Kixzo) is approx 100,000+ lines in pure C#. There are many third party libs also use and I have to say that some of the libs used are in pure 100 managed code. The OCR part is developed partially in managed C++ and partially in unmanaged C++. The protection part is handled by a managed lib. This company that provides this protection lib is not interested in giving out source nor is it interested in releasing for any other languages except .NET based languages.

              • Thanks for the input. Not to be against your post but generally the number of LOC is a very misleading metric. That’s why, while we have several projects which ranges between 600.000 and 900.000+ LOC we aren’t very proud because of how many LOC we have, except of course, when we must pretend this because we have a ‘marketing speak’ with someone. Anyway, thanks once again for the link.

              • The guy who wrote some of the code I have to fix now got along just fine with variable declarations littered all over the place, too. It’s still buggy and difficult to follow.

                I also got (and get) along just fine with case sensitivity in C, Java and C#. I still prefer case insensitive Pascal. Imagine debugging code with multiple identifiers that vary only by case.

                There’s no reason to turn Pascal into C.

  2. Perhaps add ‘Pascal’ as an extra trend your analysis? – it does something to counteract Delphi as a car parts company being the substantial reason for the sharp downturn. The labelled points (A, B, C etc.) all refer the the car parts company.

    • “The labelled points (A, B, C etc.) all refer the the car parts company.”
      That’s why I mentioned the countries. Even the points are as you say, you see that the bulk of searches comes from our Delphi. OTOH, I also thought that your opinion is somewhat valid but nobody searches for ‘Delphi Pascal’ or ‘Delphi programming’ (try to see). Also, Pascal alone give very wrong results (various sportsmen etc.). While not perfect ‘Delphi’ alone is the best solution with which I could come. But I’m open for suggestions.

  3. Beatifull blog today.

    Another important question is the trial version of Delphi (30 days)

    Microsoft is giving 120 days for any of their products (including the top versions)

    • Why 30 days for such a complex product?
      It’s a total mystery for me. I would say “give it as much as you can, leave them to see what it can be done, leave them to build a project in order to depend on it and then the users will buy it.”
      Afraid of cracking? Guys, come down on Earth.

      • And think last year it was only 14! When I installed the 2009 trial it expired before I could build a test application with it ๐Ÿ™‚
        As I said, there are people there still who really don’t understand actual market and competitors.
        Add a nag screen, add a “built with a trial version of Delphi” in each form title, have application expires, do what you need but allow at least 60 days for the trial – especially when “breaking” changes like Unicode are introduced – let user test the porting effort – especially for actual customers – release them longer activation keys.
        If they are really afraid of cracking, they should realize that someone with such a short trial period may look for a cracked version just to be able to test for longer… really stupid.

  4. Google Trends is fun!
    Try this one: borland, inprise, codegear, embarcadero
    http://www.google.com/trends?q=borland%2C+inprise%2C+codegear%2C+embarcadero&ctab=0&geo=all&date=all&sort=0
    Looks it would stille be a smart choice for Embarcadero to acquire the name Borland.
    Also, try this one: delphi 7, delphi 2007, delphi 2009, delphi 2010
    http://www.google.com/trends?q=delphi+7%2C+delphi+2007%2C+delphi+2009%2C+delphi+2010&ctab=0&geo=all&date=all&sort=0
    Looks like it is still hard for newer versions to beat Delphi 7!

    • Yep, very nice ones. ๐Ÿ™‚ We’ll see now with D2010 what will happen.
      About Borland? Sure, but I don’t see it happen.

  5. Why should a “new” user stick to Delphi?

    If you’re a developer that has lots of legacy code/apps that need maintenance – you are somehow locked in to Delphi.
    But if you’re not going to develop some hacker tools, then why should you start using Delphi – here some of my cons:

    – .NET, Java, Scripting language (Ruby etc.) are the future, not Win32
    – Delphi is way to expensive! Even compared to VS, not to mention all the “free” stuff like Ruby, Rails etc. (ok, there is no serious IDE)

    I used to use Delphi from 1.0 to 7.0 as my main development tool and also introduced it to several companies as the main development environment… which was no challenge because crappy VB (until 6.0) was the main competitor in RAD development… no serious competitor!
    But nowadays many large Companies have a 100% Windows environment and MSDN subscriptions where also VS200x is included… why then spend big bucks to buy Delphi 2010?

    I really would like to buy RAD Studio 2010 (used to always have the biggest edition of D1.0 – RAD Studio 2007), but honestly: even upgrade prices are way too expensive for me!

    Unfortunately my *personal* future is: “bye bye Delphi” :-((

    Levend.

  6. Just clarifying that mention as 2010 for cross platform. I looked back at the Roadmap as I didn’t recall ANY dates in there and I still can’t see any. It is a very reasonable assumption that 2010 will be cross platformm 2011 chromium and 2012 Commodore, but it is not a certainty. Embarcadero specifically won’t commit to a timeline, no matter how many times I ask them!

    As they say though, if it looks like a dog, barks like a dog, then it is a dog…

    The prospect of waiting until 2012 for a 64bit release really doesn’t bear thinking about though. So we won’t.

    The one thing that this roadmap has done is determine that our planning cannot be linked to Embarcaderos plans. So we are no longer waiting for the elusive 64bit that has always been just around the corner.

  7. I couldn’t agree with you more.

    In France most young developpers see Delphi as an old and defunct tool to create GUI for DB application.

    If Embarcadero didn’t give Delphi for free for students (like MS already do… for years), the whole Delphi communauty will slooowly die. Really, there is nothing more to do than replicate the “MSDN Academic Alliance” partnership created by MS.

    That’s really simple :
    – Java and Java tools are free.
    – I can do C#, C++ or VB.NET using VS express, which is free.
    As a student, I can even download VS professionnal which comes with MSDN Academic Alliance.
    As a student, why would I choose Delphi, which has a ridiculous small trial time and which costs me money?

    Unfortunately I think that’s already to late. We asked Borland, Codegear and now Embarcadero for years without any positive answer. There is no future for Delphi, that’s sad, but that’s life.

    • May be you are right but we die hard developers will live long to push Delphi here and there so that it is noticed by some of your new comers!

      • So do I. But even with all our passion and our dedication to the Delphi cause, without any official commitment of Embarcadero that won’t change *anything*.

    • @Adrien,

      Being French do you know of WinDev. It is a programming tool released by a French company called PCSoft.

      I am currently playing with its Express edition which is free. But to tell the truth I like what I have seen and tried out thus far.

      The more I play with it the more I feel that the features provided in it should be provided in Delphi.

      And in spite of providing so many features in the IDE it very fast on my old PC with 512 MB RAM.

      You may be wondering on its features.

      Let me not a few that I am personally interested in:
      – UML Diagram,
      – Business Logic mappping
      – RAD Patterns (not fully working but something is better than nothing)
      – Bug Tracking
      – Project Management
      – Unit Testing
      – Source Code version management (automatically or manually)
      – One code base for Desktop, Mobile as well as Web Apps (if you have WinDev for Mobile – express edition available for free and WebDev)

      Check it.

      http://www.pcsoft.com or http://www.windev.com

      HTH

    • Pete – oh dear, still upset are we? And indeed, still incapable of seeing the difference between the utterances, ‘such-and-so of Delphi is rubbish’, and ‘such-and-so of Delphi is rubbish, so I’ve left the whole thing behind for a competitor – aren’t I clever?’, especially when the context is a post on a forum owned and maintained by Delphi’s owners?

  8. I strongly agree that Embarcadero needs to expand Delphi’s market share. For all I know, market share has been growing since the release of Delphi 2007, but there is still an impression that usage is falling.

    There’s still the question of how to convince teachers/students/developers that Delphi (and more broadly, Pascal) is useful or even relevant.

    One of the original advantages still holds true. Delphi produces native code that doesn’t require an additional runtime, whether it’s vbrun*.exe, or the Java or .Net runtimes, which you can’t guarantee are installed on user machines.

    If you’re talking about Pascal in general, portability is strong feature. Delphi produces executables that work on older versions of Windows that are notsupported by .Net 3.0 and above. If you like .Net, Delphi Prism is as viable as VB.Net and C# and even supports some features that they don’t (unmanaged exports. Yay!). Native support for Linux and Mac is on the roadmap (such that it is), as is native 64 bit. If you’re a fan of Free Pascal/Lazarus, all of these platforms and more are supported right now.

    Not to mention’s Delphi’s main portability claim to fame; source code. Since Delphi 1, moving source code to a new version has been almost seamless. You have to be more careful going the other way, but even that’s pretty easy. Even the move to Unicode in Delphi 2009, which caused some uproar, was pretty straight forward, with almost all of the problems being in code that made assumptions about the size of a character. Moving from Delphi 2009 to 2010 was trivial. Compare that to being a Visual Basic developer through the forward-only migration with the breaking changes between versions up to 6, and then the the introduction of what some developers called “Visual Fred”.

    There are still some strong arguments to be made in favour of Pascal in general and Delphi in particular. Embarcadero just has to start making these arguments to the right people, including schools.

      • Fair point.

        The command line compiler is. Don’t know if you can use it with one of the free .Net IDEs or not.

        Free Pascal is (not surprisingly) free.

        Visual Studio has a couple of free SKUs, but they’re limited, so I opted for the Professional edition.

        Turbo Explorer was free, and I had really high hopes for it, but it was closer to the Delphi Pro SKU and didn’t let you install more than one personality at a time.

        RAD Studio Architect isn’t free (SA helps mitigate the upgrade costs), but there aren’t many tools out there that will let me do the same things (Have you seen ER/Studio?), so my ROI is pretty good, and I can supplement with other tools for the things that are missing (which isn’t much).

  9. Lazarus is growing ervery year… it has 64-bit and a cross VCL (LCL). Any questions? Was there .net version of Lazarus??? No! The Emba management should think about it…

    • Lazarus along with FPC is in on my short list for cross platform dev tools. So far I have Lazarus installed on a Mac, Windows and Linux. In addition I have FPC installed on a QNAP device and I had it on my now defunct Linksys NSLU-2 both which are/were running Debian Linux.

  10. I really agree with this post. Embr is not making money with those that can not pay anyway, but can profit with them in the long term.

    I think Delphi Language (OO Pascal) is a good language and maybe some minor enhancements are needed.
    But what is more important is the surrondings of the tool:
    – Architectures: MVC, Persitency, Patterns, Remoting, Web (and multiplatform)
    – Ecosystem: Customers (free for students and schools, very cheap for hobbyst, and paid for the rest), Partners, Community
    – IDE plugins, Wizard, addons

    I think this could be achieved faster with the help of the community.
    Let’s say Embr has a Community Projects site (or EDN) with hosted open source projects that will be included in next Delphi versions, much like Eclipse (or Jedi), with thinks like Debugger Visualizers, Patterns, Linq4Delphi, Wizards, Addons and more

  11. In my opinion:

    Delphi is stronger than ever. Delphi 2010 new features like attributes, json support, gestures etc will change the way we make applications in the near future.

    Embarcadero is not Borland as we can see in only one year. I like what they are doing and how they care about Delphi.

    About .Net, We can remember the times where Microsoft was saying “.Net is the only way to the future and also we will never release a new win32 api” and some months ago we could see how Direct2D api is released for Win32 and also there will not be a .net version because in Microsoft words “direct2d is for professional applications (as you know c++ delphi or anything native )”

    About Macs & linux they are the 10% of the pcs in the world if you want a big market, make a Delphi for Symbiam and you will take access to the mayor phone market in the world. iPhone and those machines are cool but their market is not relevant (but very hot of course).

    Thinking now we have the product and the company, we need now the customers, and those need to be new to Delphi (not ex delphi 3-5-7 users) and this can’t be done with a 30 days trial period, we need people in the schools & universities to put their hands on Delphi all they can.

    Regards.

  12. I am a former Delphi developer who’s switched to C++/C#

    Delphi is just too expensive nowadays. I can get QtCreator for free and it lets me program for Windows, Mac, Linux.

    On the RAD side there’s .NET, and again, everything’s free there.
    For the web, PHP, Python, Ruby and Perl are free.

    Delphi need to become cheaper soon or else it will die.

    • It’s not a matter of price only – it’s a matter of features\price ratio. When you’re a professional developer you know you have to invest some money – and you expect a return. If an IDE makes you more productive, if libraries allow you to code state-of-the-art applications with great native GUIs, and if the code produced is high quality and fast, the return may be much higher than the investment. Of course if the IDE gets buggy, compiler and library becomes old, new technologies like 64 bit are unsupported for years, you start to ask yourself if the return still justify the price.
      I too believe the actual price is not justified by available features – I prefer more features than a lower price.

      • As a C programmer, I bought Delphi version 1 out of interest.

        I didn’t buy it because of the user base (there wasn’t one!) but because it was affordable (I don’t remember exactly the price, but certainly under a ยฃ100) and looked interesting.

        I think Delphi needs some new interesting features (cross-platform?, perhaps gesture support is already one of them) and an entry level price to allow people to become interested and upgrade.

        Although I would rather have 64-bit, I can see that native cross-platform tools could spark a new generation of interest – but only if the pricing structure allows people to investigate at an entry level.

  13. Well, look at that! I live in Belo Horizonte, so… Third city in google trends??? NICE ๐Ÿ™‚

    BTW: I don’t want a C++, C#, Java, whatever clone. If I want to write C-like code, I would choose a C-like language!

    Best regards

  14. 1. Free student Delphi version is a must.
    2. Enterprise Studio price is OK only for SA. Upgrade is really expensive for individuals. So having Studio Pro I cannot upgrade to enterprise+SA – it’s not affordable. If I only had a way to jump to Ent+SA…
    3. Delphi is crying for standartization like Java JSR. Changing library from one vendor to another shoudn’t require to redesign entire application.

    And Delphi still could become the only native cross-platform tool.

  15. What I really would like see is stats showing the developerโ€™s age and the Delphi version he/she is using. Is the share of the younger folks growing?wing?

    • That would indeed be interesting! Maybe if in addition to the actual age group and Delphi version you also asked for how long one’s been using Delphi overall… otherwise it’d probably be hard to read any kind of trend into the results…

      I was already pleasantly surprised at the large number of people that identified themselves as “first-timers” at this year’s Delphi-Tage event in Germany. And most of them were pretty young indeed.

      For future polls I’d still be very very interested in seeing the number representing the sample size. Waiting until the poll reaches Gaussian distribution is all fine and well but it’d still be good to see that number just to get a better feel for the relevance of these polls.

  16. Great post, great blog. Thanks ‘Wings of Wind’, whatever you are ๐Ÿ™‚
    As a student I can say that 1 year ago students of our university studied Delphi, but now we study C#. And Delphi community lost few hundreds of potential members this year. You will never make a student, who studied C# for 4 years in university, write program in Delphi. And vice versa.

    But there is also one thing. When a rich man wants a good software, often he is asked: “What programming language/framework you want us to use?”. And he spends few minutes in Google and says: Java! (or C#!). Delphi community needs well-known HUGE software, so you can look at it and say: “Wow, this is really good thing written in a really good programming language”

    Regards and sorry 4 my bad english,
    Alex. Ukraine.

    P.S. Metallica Rocks! ๐Ÿ™‚

  17. Good post there Wings ๐Ÿ™‚

    However, google trends are saying rubbish things. Do you really belive that Algiera is the 2nd place with strongest Delphi user – base? ๐Ÿ˜‰ (according to the charts you’ve presented it is).

    It seems that everyone knows that Delphi needs a free version to increase user base. Everyone besides Embarcadero. This is crazy.
    I agree that Delphi 2010 is nice but they wasted all the positive buzz it generated. They could come with some free version along.

    I am very sad to see that Delphi ship is sinkig…

    • Let’s start with the end: Delphi isn’t sinking (anymore). If you go to Google Trends and display only the year 2009 (from dropdown box on the left) you’ll see that the tendency is stabilized.
      Good catch about Algeria. I don’t know exactly, but it seems that because of its geographic position, many servers are there (click on it) and you’ll see that the first language is English and not arabic. Perhaps a big ISP has some backbone(s) there. Also if you’ll look at the main screen you’ll see that the ‘Arabic’ language isn’t present in the Top 10. Again, the algorithm to count the searches for each keyword is very simple (as you might image) whereas the actual geographic location is very tricky sometimes (Satelite connections etc.)

      That said, well, nobody can be sure about the precision of Google Trends’s results. ๐Ÿ™‚

      • Let’s be very careful, and don’t “sell the bear’s skin before catching it” – especially if based on questionable statistics. It is true that the actual state of Delphi is somewhat better than a few years ago, but to say issues are in the past and there can be only a bright future from now on i’s just self indulgence, and very dangerous. There’s still a lot to do. Maybe Delphi “Pearl Harbor” is in the past, but we are still after a Coral Sea battle – the “enemy” maybe can’t advance more in the near future, but there wasn’t a Midway yet to change a “defensive” position to an “aggressive” one – and the new “weapons” aren’t delivered still.
        Delphi needs a clear position in the market, and Embarcadero still struggles to find it – the strange “roadmap” they released clearly shows there are some ideas but still there are no release plans – at least good enough to tell customers.
        IMHO Embarcadero should 1) stop customers drain 2) acquire new ones. I don’t believe it’s possible now to achieve 2) without 1), unless someone explains me why someone should buy a tool that can’t retain its actual customers.
        They partially achived 1) with 2009 and 2010, but they are still late in many areas, and competitors are not still. The emphasis they put on a new Datasnap solution that offers less than the previous, ten years old one, clearly shows how much late they are, and the wrong approach they have to overcome it – ignoring actual development needs and acting like “snake oil” sellers.
        I am afraid they don’t understand it. Like a poker player who lost too much, they are raising the bet very much, even if the card they have may not be very good, hoping to revert the bad look at once – xplatform is such a bet – and one day they’ll have to show the cards – and if it was a bluff they may pay it dearly – and those using Delphi too.
        I do not know how many wrong decisions Delphi could sustain still. It survived many of them, thanks to its good technology and loyal user base, but people who make a living writing software may be forced to look elsewhere, if the gap widens.

        • “issues are in the past and there can be only a bright future from now on”
          If this were true, I would delete this blog right away. The questionable (imho) bright future is the main reason of this blog’s existence.
          Nice analogy with the WWII Pacific battle. But this needs another post. Stay tuned.

  18. I just want to clear some points and answer few questions.

    Q1 Are current tech guys, and guys in charge are up to the task?
    A1 No they are not. Most high position guys must be fired long time ago.

    Q2 Can you ignore demands to make free and cheap versions?
    A2 You can, but product will be vanished.

    Q3 Can cheaper Academic edition save Delphi?
    A3 No way. You need to provide each student special free edition. Today they don’t do much work at university.

    Q4 D2009 and D2010 are steps in right direction, right?
    A4 No, they are steps in wrong direction. This direction howether are now not at 180 degrees to right direction ๐Ÿ™‚ We still see NET crap in IDE. Still bad help in idiotic DExplorer format. Installer is no good.

    Q5 You can produce only english and few other language versions, right?
    A5 No, you can not. You need fully localized versions for top five countries in this list. Seriously. Your user base in USA and UK almost vanished.

    Q6. And 64bit is of course not so important if compared to great idea of Apple applications?
    A6. All this bullshit about Apple and Lunix and Kylix revival is very bad thing. To be short – we’ll never see really working product.

    Q7. May be they could make fast and good working 64bit compiler?
    A7. I don’t believe in this. Look at D2010 and its gimmicks. They spent on them amazing amount of time, and jet no movement to 64bit. Best solution is open whole compiler part and let community to improve it. Compiler projects are quite ok in open source. At least we could see some real speed improvements and 64bit support without lectures from Nick and alikes.

      • 1) Portable (runnable from USB flash) and NET crap free IDE.
        2) Real Unicode (as was said – UTF-8 and Wide strings separated)
        3) Fast optimizing(!) compiler with 64bits support. Today it is too slow for demos, scientific and game development.

        • 1. Done. Delphi D2010 Update 1 (released several days ago) does just that – a portable Delphi. They call it ‘Instant On’. About ‘NET crap IDE’ you can Google for it. There are several ways to remove that. In fact there are several packages which must be removed from registry. Someone else asked me this already and I answered it there. Sorry, but now I’m in a hurry and I cannot find the link for you.

          2. Done. From Delphi 2009 onwards you have ‘String’ which is UTF-16, UTF8String which is UTF8, WideString which is the classical COM wide string etc. Also you can have your custom encodings like string(1251); //russian ๐Ÿ˜‰

          3. You got me (or rather them ๐Ÿ™‚ ) on this one.

          • 1. I don’t think so. It is not real portable version. And it can’t be until it requires NET and J# on each machine. If you read https://forums.codegear.com/thread.jspa?threadID=25413 thread you could notice amazing words by Nick Hodges. They keep all crap just because it works ๐Ÿ™‚ They just never saw their ide without it ๐Ÿ™‚
            And I really don’t know any way to remove NET drom IDE since D2007. It won’t start without it. And I know many professional guys who checked it.
            My portable Turbo Delphi start in 5 seconds each time and works blazingly fast and pretty stable (no virtual boxes, just simple registry magic that works even under restricted accounts). All ide gimmicks could be easeally replaced by thirdparty packages that are either free or quite cheap.

            2. Not done. I want String to be UTF-8 string (and even that to be switchable by compiler directive). And UTF-16 must be other thing. And I really don’t need custom encodings.

            3. Good compiler is true core of whole product and we don’t have one. This could be reason why we see so many “throw me out” database developments around Delphi.

    • “Q2 Can you ignore demands to make free and cheap versions?
      A2 You can, but product will be vanished”

      The product won’t vanish as long as enough people pay for it. The less people pay for it, the more probable the development team is shut down, and the product vanishes. What’s your plan to pay for Delphi development if the free/cheap versions impact too much on needed revenues? Are you sure it won’t happen?

      “Q3 Can cheaper Academic edition save Delphi?
      A3 No way. You need to provide each student special free edition. Today they donโ€™t do much work at university. ”

      A student can get an academic edition outside the university. You just have to qualify as a student to purchase. You just can’t develop commercial software. But you are a student who just want to learn, right?

      “Q5 You can produce only english and few other language versions, right?
      A5 No, you can not. You need fully localized versions for top five countries in this list. ”

      Why spending time in localizing? Any good developer IMHO has to be able to work with an English version. Just develop it and take rid of localizations – I am Italian and I working with English versions since TP1, and never missed an Italian localization.

      • I am not student ๐Ÿ™‚
        I just spent some time talking with four Codegear representatives some time ago and didn’t find any solutions for my classes.
        And “Any good developer IMHO has to be able to work with an English version” is idiocy! New young developers much prefer to see IDE and especially help in their own language. I also prefer help in my native language.
        And don’t even try to compare perfect(at that time) help from Turbo Pascal with current D2010 trial crap help (and D2007 is even much worse). You must be language lover and user and not cheap technical writer working for words-per-minute, to make good help.

        P.S. I see you going to various blogs to post Embarcadero official position. What a shame!

        • “some time ago and didnโ€™t find any solutions for my classes”
          If you’re a teacher o f a qualified institution you qualify anyway – although I do not know if in each country Embarcadero offers the same academic licenses – if they don’t shame on them ๐Ÿ™‚

          “new young developers much prefer to see IDE and especially help in their own language”

          Well, they won’t go far as developers then. The sooner they learn to read English the sooner they become better developers. Most books, documentation, web site and examples are in English – you may like it or not, but that’s how IT works, and ensure exchanges all over the world. What if Marco Cantรน wrote is books and articles in Italian only? Or Swart in his own language? Or Hejlsberg released Turbo Pascal in Danish only?

          And how should they choose in what language translate? A commercial company probably would choose the languages that sells more copies, not the one where people want free versions.

          And believe me, the more languages must be mantained. the more the help will be a crap. And if you expect users and language lovers to spend their time writing help I guess you’ll have to wait for a long time.

          “P.S. I see you going to various blogs to post Embarcadero official position. What a shame! ”

          I do not second any official position. If you read some other posts of mine you’ll see I may be very critic about what Embarcadero does. Just I believe too many people are asking for unfeasible free/cheap edition of Delphi suiting their own egoistic needs without any attempt to understand and demonstrate if they are commercially feasible for a company such Embarcadero – not MS, IBM or Google.

  19. Pingback: Te Waka o Delphi · The Economics of “Free”

  20. Pingback: Joe White’s Blog » Blog Archive » Kinda wishing I could keep using Delphi

  21. I have spent 30 years coding in machine code, assembler, pascal, C, C++, PHP, Java, Jscript and many other languages.

    Only recently have I come to Delphi (2009) and I can’t believe anybody would choose to use it.

    I’m working on a web interface to the company’s database system and am required to use Delphi.

    It’s absolutely useless and my productivity is at best a third of what it would be were I able to use PHP.

    Sorry to be a killjoy, but there it is…

    • @Tim,

      Being productive with any tool is relative to the kind of experience one has in past.

      If you are used to procedure programming then you will find yourself at home in such programming languages like for example PHP, old time Pascal.

      I for one find myself at home only and only with VB6. I use Delphi because it is needed at my place of work. I personally am more productive in VB6 and PureBasic compared to any other programming environment/languages.

      In short I don’t think you can blame Delphi for not being productive with it. I agree the IDE is a pain in the neck most of the time and is a memory hog & most of the features are implemented in such a way that they are counter productive almost all time unless it is the only thing you are ever using for development. Even on a new high speed PC with 3GB RAM I seems to take ages in loading itself. Compared to it Visual Studion 2008 loads faster on my old Celeron based lap top which just has 1 MB RAM.

      • I admit to ranting a little but it is so frustrating. I have only been using it for a few weeks so I do hope to improve, but… one major dislike is the help. Anything I look up provides a description which would only make sense if I knew all the other procedures/components mentioned. I’ve not found a single slice of example code in the help which is more of an aid than a thousand words of description.

        So, I go on-line and pose my question in various forums and blogs. Eventually I get a response that provides some source code and sure enough I realise that had I known a little more it would have been obvious. I implement the code, it doesn’t work, then I’m told it’s a bug in Delphi 2009.

        I’m not known for losing my cool but I’m a top programmer in my industry and am looking like a novice so I feel justified :ยฌ)

        • I understand your frustration. Even after having extensive experience of 5 years with Delphi I still find the need to get help on so many things…

          It is natural to seek help and I agree with you that Help available in Delphi is just pathetic at best. The writers of help seems to be C++ developers with a wage understanding as to who are really going to refer to help… the real Delphi developers who are either migrating from other development tools or are fresehers wanting to learn and use Delphi. Like .NET almost all help is more suitable for a developer migrating from C++ to Delphi.

          The best way to learn and utilize Delphi to the max I would suggest you to collect as many books on Delphi as possible. Even books for older version of Delphi will do.

          For reference generally every Delphi developer will suggest you Marco Cantu’s books but I will suggest you to keep away for them at this time as he seems to cover material that will interest only seasoned Delphi developers. His Mastering Delphi 3 seems to be the only book that really teaches and exposes Delphi’s language. Another one that I like is Using Delphi 2006.

          • Hi Yogi.

            Well, I may whine and winge but I have no choice but to stick with it, so…

            I’ll definitely take your advice regarding books (thanks).

            I have a problem with a TWebRequest application in that I cannot get access to any files uploaded via POST. I’ve been unable to get a satisfactory answer from anywhere (the suggestion that it was a bug seems to be unfounded). Any suggestions where I might get some sensible answers?

            • I gave you some resources in one of my previous posts. For Q&A the places in which you will most likely find an answer are the Embarcadero’s forums and StackOverflow.com (see the links in my prev answer). The trick in the Embarcadero’s forums is to post first to .delphi.non-technical forum because even if somebody (perhaps) will redirect you, there are the most eyeballs and hence your question is ‘advertised’ properly.

              HTH

            • Hi Yogi.

              I’ve just been advised that I MUST use a WebSnap application as WebBroker does not provide POST file support.

              I’ll try WebSnap :ยฌ)

              Thanks for your support and I’ll let you know how I get on after the weekend.

              • I created a WebSnap App and the File POST worked instantly. I was trรฉs happy until I discovered that the POST data now didn’t work :ยฌ(

                I played around for a while and got it going, but it’s strange that code implemented in WebBroker works, yet using the same code in WebSnap fails. Not good!

                Anyway, when I’ve got to grips with it in a few months I’ll come back and let you know how smart/stupid I have become :ยฌ)

                Thanks for all your help.

        • Yes, the help was a problem in D2009 timeframe. They issues several updates (in several formats) – see here. Also, you have the on-line help here with many code snippets here. Also, you can have a look at the Delphi’s demos which ship OOTB (Start Menu | Delphi 2009 | Demos…)

          Also, you can post questions on Delphi’s forums (search them here) and/or on StackOverflow – a famous site where it seems that Delphi is one of the strongest languages there (see here) – just label your questions with ‘delphi’ and many guys are ready to help you.

          “Iโ€™m a top programmer in my industry and am looking like a novice” – ๐Ÿ™‚ Try to keep this feeling. Pride is the worst enemy of any programmer. And yes, I know that’s hard. ๐Ÿ™‚

      • Visual Studio loads the things incrementally. Hence even if you have a faster startup time, VS is more sluggish in day-by-day work. And I greatly prefer to have a faster IDE experience (which is all day long) rather than a faster startup time (which is approx. once / day). Also, let us not forget that Galilleo (RAD Studio’s IDE) has more functionality compared with VS.

        • May be you are right to an extent but the fact is that VS 2008 runs on a PC with just 1 GM RAM without a hitch with all features and still there is space for other software to run well!

          The best thing that I like of VS and hate of Delphi is that: VS does not try to load all the packages/components that may be present in the system unless an until the user adds/refers them to a project. Against that Delphi is hell bent on loading all packages/components installed whether one requires them or not! What a waster of time (for loading all of them) and memory for keeping them loaded!

          I know you will say, why not just unselect them from Install Packages. But why all these unnecessary steps. Why not just give users a facility to select as to what they want, when they want instead of forcing them to live with this.

          As I am using VS quite a bit I have to say that the code editor is better than what is provided in Delphi. I truly wish I could replace the damn editor in Delphi.

    • “Only recently have I come to Delphi (2009) and I canโ€™t believe anybody would choose to use it.”
      It seems that worldwide are approx. 1.5 – 2 millions of Delphi users. ๐Ÿ™‚
      …but I understand your frustration. PHP has a very different philosophy than Delphi. We can talk a lot about this, but for a jumpstart take the following (please do not see it as marketing-speak, neither as at necessary-better-than-PHP (or whatever)): Delphi’s design goals were/are: safe(r) programming, code maintenance with ease, rapid application development (even if these are achieved by other means than in PHP).
      Of course, Delphi is #1 development choice for Windows desktop applications. So, try to see your web application like a Desktop one (of course, I’m assuming that you use VCL for the Web). If yes, you can ask some questions in AtoZed‘s forums.

      As an aside, in Delphi community the most popular for of support is the newsgroup through NNTP. Most Delphi forums have also an NNTP interface which will provide you the best experience via your favorite newsreader. Also, when you’re asking try to be verbose. You will surely get an answer.

      HTH

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s