Fighting The Battle of Innovation


“Father, what we are missing in order to become saints like the ones from the past?”

St. Seraphim of Sarov

Preamble: This post is a humble addition to a comment made by someone from you. I’m sure that he knows what I’m talking about… …feel free to skip if you wish…

…On the day of the attack on Pearl Harbor (December 8, 1941, in Manila),… …Major General Douglas MacArthur was Allied commander in the Philippines. He had over eight hours warning of a possible Japanese attack on the Philippines, and express orders from Army Chief of Staff General George C. Marshall to commence operations.

MacArthur’s failure to take defensive or offensive action resulted in Japanese air superiority over the Philippines—MacArthur’s inaction during the critical hours has been given as the reason for “an enormity of loss no less than that in Hawaii”. A misplaced reliance by MacArthur on his air commander of only two months, General Lewis H. Brereton, has been offered as an explanation for his inaction by his defenders. Despite clear warnings of Japanese aggression, Brereton had not transitioned his air defenses to a war footing, and like the air commanders at Hickam Field at Pearl Harbor, failed to disperse aircraft properly in camouflaged revetments to limit damage from incoming air raids…

Nothing is more dangerous than relying on one’s own beliefs, disregarding the feedback which comes from the field. The man who is his own counselor is his own enemy. A community is much more than the sum of the parts taken separately. But we must force ourselves to get out from the cage of our own interests.

The shortest path to heresy is theory without practice.

St. Maximus the Confessor

…In the battle of Midway, even if Japanese forces were stronger and bigger, Admiral Chester W. Nimitz had one priceless asset: cryptanalysts had broken the JN-25 code. As a result, the Americans entered the battle with a very good picture of where, when, and in what strength the Japanese would appear. Nimitz was aware, for example, that the vast Japanese numerical superiority had been divided into no less than four task forces, and the escort for the Carrier Striking Force was limited to just a few fast ships. For this reason, they knew the anti-aircraft guns protecting the carriers would be limited. Nimitz thus calculated his three carrier decks, plus Midway Island, to Yamamoto’s four, gave the U.S. rough parity (especially since American carrier air groups were larger than Japanese ones). The Japanese, by contrast, remained almost totally unaware of their opponent’s true strength and dispositions even after the battle began…

…Japanese reconnaissance arrangements were flimsy, with too few aircraft to adequately cover the assigned search areas, laboring under poor weather conditions to the northeast and east of the task force. Admiral Yamamoto’s faulty dispositions had now become a serious liability…

We must know who we are. This is the humility. To know who you really are, not who you think you are. But one needs a lot of courage to do this.

We are… …how many? One million? We are capable to provide top-notch solutions for Windows – perhaps even better than others? Yes, I do think so. CIIW. We are capable to attract new users from other communities to use our tool by lowering the prices? No, I don’t think so. Sons, don’t put with Microsoft in price-against-price fight. Philip Kotler in his classical ‘Marketing Management’ says that “in order to win a frontal price battle, “the attacker must have 3 (three) times bigger sales force than the opponent”. And the opponents are Microsoft, C providers (among of them, Intel) and, in a certain degree, Java (among of Java companies – Oracle). Yes, perhaps many of us want in fact a “Greedy” edition but let us not be slaves of our desires – mind you, a small soul means a selfish soul. A big soul has a place for all the others in his heart.

…The battle of Midway has often been called “the turning point of the Pacific” However, the Japanese continued to try to advance in the South Pacific, and it was many more months before the U.S. moved from a state of naval parity to one of increasingly clear supremacy… …and this happened partially because Americans had new blood to replace the loses and reinforce their army both in number and technically. The brute force by itself doesn’t lead to a victory – we have the Vietnam war as a clear example – there is need for strategy.

The Turning Point

…The Guadalcanal Campaign, also known as the Battle of Guadalcanal, was fought between August 7, 1942 and February 9, 1943 on and around the island of Guadalcanal in the Pacific theater of World War II. Fiercely contested on the ground, at sea, and in the air, the campaign was the first major offensive launched by Allied forces against the Empire of Japan. The campaign marked the first significant strategic combined arms victory by Allied forces over the Japanese in the Pacific theater. For this reason, the Guadalcanal campaign is often referred to as a “turning point” in the war. The campaign marked the beginning of the transition by the Allies from defensive operations to the strategic offensive, while Japan was thereafter forced largely to cease strategic offensive operations and instead concentrate on strategic defense…

As you see, the ‘Turning Point’ in the Pacific World War II was The Unity. Till this point, the “allied” forces fought against Japanese forces disparately and were defeated in (almost) all situations culminating with the Bataan tragedy. In the Guadalcanal battle were involved soldiers from 6 (six) Allied armies against the Japanese forces, of course having the US Army as base. In Heaven you go together, in Hell alone.

The Strategy

However, in Guadalcanal there were a lot of casualties (more than 7000 men, 30 ships and 615 planes), a lot of time spent (7 months) for an ‘insignificant’ island lost in the Pacific Ocean. And unfortunately, each small island in the Pacific was conquered paying a very high price for a very small gain…

…till the strategy was changed.

They attacked the enemy in the places in which it doesn’t exist.

Attack him where he is unprepared, appear where you are not expected.

Sun Tzu

…In March 1943, the Joint Chiefs of Staff approved Douglas MacArthur’s plan, Operation Cartwheel, which aimed to capture the major Japanese base at Rabaul by taking strategic points to use as forward bases. During 1944 this was modified so as to bypass Rabaul and other heavily-defended Japanese bases, allowing the Japanese forces there to “wither on the vine.” Initially, the majority of MacArthur’s land forces were Australian, but increasing numbers of U.S. troops arrived in the theater, including Marines, the Sixth Army (Alamo Force), and later the Eighth Army.

MacArthur’s advancement of land forces westward along the 1,500 mile (2,400 km) northern coast of New Guinea was sequenced specifically for terrain selected on the basis of its ability to be made into landing strips for tactical support aircraft. By advancing in leaps always within the range of his fighter-bombers (typically P-38 Lightnings), he could maintain air superiority over his land operations. This provided critical close air support and also denied the enemy sea and airborne resupply, effectively cutting the Japanese forces off as they were under attack. MacArthur’s strategy of maneuver, offensive air-strikes, and force avoidance would eventually pay off: unlike the ground forces in the Central Pacific theater, infantry troops in operations under MacArthur’s command consistently suffered fewer casualties…

In order to be successful you must cover the needs of your user base, not to catch-up in a dog fight. We will implement what the competitors have because our user base says so, not because the others say so. But our main focus is the innovation which comes from our emerging needs, not a “me too” strategy. We must be different from the others because our needs are different. And this difference will bring up reinforcements – there are many others which have the same needs. Giving a “me too” product isn’t going to grab anything from outside.

But for this we need innovation first, and as an auxiliary weapon, adjusting the prices.

We are a skilled community. We are an old community. We do our needs with Delphi (mostly) as is. And because we already engraved some thinking paths in our brain we forget that it might be a better road. We have a great idea of ourselves so we are merciful with ourselves, and hence we have big expectations from the others. Usually we don’t accept a proposal if this isn’t something like a ‘Holly Grail’ for programmers. But today is still viable what Fred Brooks said many years ago “No silver bullet”. Any new feature is good in certain use cases and contraindicated in another ones. What we should strive is to find features which has a greater coverage and to allow to do the good things easy and to do bad things hard.

And ultimately this killed Borland:

But if there’s anything I’ve learned from my years in the tech world is that companies don’t get killed by competition, they usually find creative ways to commit suicide. Office 2010 will be the end of Zoho, if we stop innovating, stop being nimble and flexible in our business model. Then again, if we stop all that, Zoho will die anyway, no Office 2010 needed to do the job. There are numerous examples in the technology industry to illustrate this. Consider two companies of similar vintage, both of whom faced Microsoft: Borland and Intuit. Which company has done better? Does that have to do with their competition with Microsoft or their own ability to innovate and adapt?

(full post here)

And we should start to innovate together from today. Now. Right Foot. First step, left foot, 2nd step…

Or do we have suicidal tendencies?

75 thoughts on “Fighting The Battle of Innovation

  1. Military analogies are tempting. But the software world has changed. Delphi no longer has one-to-one direct competitors in the sense of Watcom, etc. Yes, Microsoft also has development tools that compete, but M$ surely does not see Embi as serious competition. Microsoft possibly even welcomes an excellent future for Delphi.

    Consider this: All languages targeted at specific problem areas have grown to be very similar to each other. This evolution occurred as vendors learned (also from each other) how to best solve the problems in their domain. In our corner, the visual object model has proved to be best practice. Compare C# with Delphi Pascal and you will find they have more in common than, say, classic BASIC vs. COBOL vs. LISP vs. PROLOG vs. PL1 had 15-20 years ago.

    What we need to do now is make lists of what best-practices have been distilled and integrated by other tool vendors. Speak to experienced users of those tools. Find out what techniques really work (and, most importantly, why. Just hearing that, say, “unit testing” is good and throwing something together isn’t helpful.)

    When Anders Hejlsberg created C#, he took all he’d learned from TurboPascal/Delphi, J++ and foundation classes and built something excellent.

    There is no shame in benchmarking the competition, integrating the best concepts and building a best-of-breed development tool.

    And there is a lot to be gained by offering a tool that is familiar and welcoming enough to anyone tempted to step over from the Java/C#/VB/C++ worlds and wanting to try out Delphi.

    • “Delphi no longer has one-to-one direct competitors in the sense of Watcom, etc.”
      Watcom never had any interest in RAD. They were very focused on performance. Today, if they weren’t open source they would compete mainly with Intel and PathScale.
      Yes, Microsoft also has development tools that compete, but M$ surely does not see Embi as serious competition.
      Are you sure? Can you give some facts for this? Their lack of cooperation in the problem of .NET designer both for Windows .NET and mobile with Borland (don’t know if you know details) and ‘borrowing’ some features in C# lately (extension methods etc.) shows that they are very aware of #1 tool in native development on their primary platform. And of course they should be. That’s why, as you say, “C# with Delphi Pascal and you will find they have more in common”
      “What we need to do now is make lists of what best-practices have been distilled and integrated by other tool vendors.” and the other things on the same idea. Sure, but our community (together with the Team) must say what are these best practices and also how they must adapted. Innovation doesn’t mean at all a ‘splendid isolation’ attitude, sitting isolated in a corner and doing something original for the sake of it. You must borrow from other cultures, adapt and enhance it for your culture.
      But you miss something: If we follow Microsoft, what’s the point to use Delphi? Use C# instead. Microsoft has a much more “trustworthy” name for a manager, isn’t it?

      Btw, can you give 3 “best practices” / features which you would like to see in the next Delphi?

      • Just add the introduction of Dynamic Methods in C# 4.0: that sounds do the ‘automated’ keyword Delphi 3 (or maybe even earlier) and Variants.

        I’d be surprised if Anders Hejlsberg would like these dynamic features at all…


      • “Their lack of cooperation in the problem of .NET designer both for Windows .NET and mobile with Borland (don’t know if you know details)”

        H’m. First I’ve heard of this. But I recall when we wanted to use WinCE on our device, any “co-operation” had to be paid for. And there was a lot that needed clarification and co-operation.

        “and ‘borrowing’ some features in C# lately”

        They “borrowed” a LOT of Borland’s people, too. 🙂

        “But you miss something: If we follow Microsoft, what’s the point to use Delphi? Use C# instead.”

        Native code. This is the only reason to use Delphi. Why would anybody want to use Delphi on .NET? Delphi can never compete with C#.

        Btw, can you give 3 “best practices” / features which you would like to see in the next Delphi?”

        Not really practical in a forum like this, but I sent a mail, complete with screen shots and XML samples, to Michael Rozlog.

        • “H’m. First I’ve heard of this.”
          There was an historic thread on the old news server (now R.I.P) where they announced that they drop Delphi.NET, C# Builder, VCL.NET etc. In that thread Allen Bauer was so kind to inform us about some “untold stories” like this one. And about “borrowing” people – sure. But ultimately was the Borland management’s fault.
          “Delphi can never compete with C#.”
          You mean Embarcadero can never compete with Microsoft, right? Then we agree. Also, about ‘sending mail’ – that’s the point. To reach the feedback to them, not to me. 🙂

          • No, I mean Delphi/Pascal cannot compete with C#.

            Delphi is based on TurboPascal, which was amazing all those years ago.

            I was still programming with a simple text editor, downloading the code from the mainframe to floppy disc, compiling on the command line, then opening the error file, noting the errors, opening the code in the editor again, compiling… then linking on the command line – oh, the effort.

            At that time PCs were becoming commonplace and memory of 64k – 256k was typical. The first PC-AT came out. Really fast for their time.

            Also the compiler and linker profited from having more RAM to work with, hard drives were becoming normal and so the need for separate header/code files was cleverly done away with by the use of interface/implementation sections, and even separate compiling/linking was hidden away from the programmer.

            And the TurboPascal IDE used the growing PCs capabilities of the time. It was an eye-opener. It was revolutionary. Fantastic.

            But time has moved on. Multicore CPUs; RAM of 1GB and huge, fast hard drives are in even the cheapest notebook.

            The Delphi Interface/Implementation is no longer needed for fast compilation. Neither is the variables and types declaration section in procedures. There are many things in Delphi/Pascal that were ahead of their time 20 years ago but are an anachronism today.

            C# on the other hand started with a clean slate. Instead of using a teaching language as a basis (that is what Niklaus Wirth had in mind when he invented Pascal. It was never specified as a professional language), Anders this time used C syntax.

            Instead of BEGIN..END, in C# you just type {..}
            Instead of PROCEDURE you just declare the signature.
            Instead of FUNCTION you just include a return type.
            You can declare a variable anywhere.

            I won’t go on, you get the idea.

            Bottom line:

            Delphi/Pascal comes from another age. The basic concepts on which it is based are old and many no longer relevant. Yet Delphi must retain code compatibility, at least to some degree. And some things simply have to be there, else it wouldn’t be Pascal anymore.

            For this reason Delphi/Pascal as a language cannot ever compete with C#.

  2. I suspect the current state of the Delphi ‘army’ is like that of the German Eastern Front after the failed Kursk offensive – quality people, quality tools but not the numbers to continue anything other than a strategic retreat in the face of overwhelming odds.

    • “quality tools”? No longer enough. The German relied then on their tech superiority, but it was vanishing, and they didn’t acknowledged it enough. Russian tanks became able to counter the German ones. German steel could have been stronger, but they insisted on vertical surfaces which could become “shot-traps” – while Russian slanting armours were effective too. Russian mounted larger guns, Germans could do it with smaller ones, but the net effect when you got a shot was thes same. Suddendly, although they still had an overall better technology, it wasn’t enough to win. And they reacted too slowly – like BorCodeDero did.
      That’s what happened to Delphi – they’re still thinking what they have is still enough to fight – but it may be no longer. They should analyze competitors weak sides, and react quicly.

      • Russians have better tanks only in the first year of war with German (1941).
        Russians have T34 and German PanzerWagon III (very week) and IV.
        T34 win with every German tanks in direct battle (if only Russian have good skiled soldiers).
        Only one model of anti-air gun could destroy T34.

        Next year German develop Panther (PanzerWagon V) and Tiger (PanzerWagon VI).
        Panther has sloped surfaces.
        Tiger doesn’t have it but it have very thick steel.
        Both tanks was superior to any Russian or English or American tanks until end of war.

        And at the end of War German produce King Tiger – it was very good tank but German have a little number of it.

        Russian win with German by amount of tanks, soldier etc.
        Even in 1945 Russian in battles lost 2-7 times more soldiers and tanks then German but they have about 20-30 times more tanks/soldiers.

        • Both Panther and Tiger had important flaws. The Panther transmission could break easily, and an immobilized tank is a dead tank. It was rushed into production because the Panzer IV started to suffer the T-34, and it was used before it was actually ready (something Delphi suffered too, although luckily no one died for that).
          Tiger I was too heavy for its engine, and had problems with roads and bridges as well. Eventually it was replaced by the Tiger II that adopted the sloped armour too to increase protection agains more powerful anti-tank weapons – but it was too late.
          And soon the lack of resources due to bombing and lost territories led to inferior quality materials used too, defeating some of the technology advantages (again, something Delphi suffered too – advanced buggy software is of no use).
          But that does not change what I said – even an overall better technology and better trained people may not be enough to win if your competitor gets close enough, and has much more resources than you.
          Like Shermans, MS can afford to send four VS editions against a Delphi “Tiger” knowing it will lose three as free ones. Has Embarcadero enough resources to send more Delphi out, especially free/cheap ones, with a reasonable feature set to overcome MS? And what if Delphi finds a 64 bit bridge it can’t cross?
          “Wings of Wind” is right when he says Delphi can no longer sustain a front battle against .NET/Java. Germany has lost the war – but when people look for a high-quality car they don’t get a British, American or Russian one – they look for a Mercedes, Audi or BMW. It’s not the student cars, nor you learn to drive with one of them – but as soon as you can you get one. Why?

    • Of course, you have a point about the numbers. But it is much less significant than you think. Look at other communities, much smaller than ours which look way ‘cooler’ – there are other human factors involved – several of them I touched in my post today: determination, experience strategy etc. We must just simply start to improve things and we’ll reach in a very good position, believe me. Not that we aren’t today. But we can be much better. Also, be sure to read Luigi’s response – he happens to work in that ‘area’ btw. 😉

  3. Luigi Sandon’s classification of the proposal for a free Delphi as a “greed edition” is disingenuous at best, outright blind at worst. When you look at the people who are calling for it, it’s not the hobbyists and students who would benefit directly from not having to pay for Delphi, it’s the professional developers who make their living with Delphi and can easily afford to buy the current editions.

    In fact, the outright silence from hobbyists is probably the scariest part of all. If there were a few students chiming in saying, “Yeah, I’d love a free copy of Delphi!” I’d find it reassuring. But there aren’t. Nobody outside of the established Delphi community seems to notice or care, and that’s a very bad thing. It means that we don’t have the visibility we need. We have the best programming tool available for Windows development, but people don’t know about it, and that worries me.

    Embarcadero needs to create a free edition and market it to schools and younger developers as aggressively as possible, and they need to start yesterday, if not sooner. Otherwise, the pool of Delphi developers won’t grow, which means less new projects being started in Delphi, and less jobs available for Delphi developers. It means, among other things, that if any of us find ourselves without our present jobs in the future, it’ll be that much harder to get hired on somewhere else.

    Mr. Sandon and those trapped in his short-sighted mindset need to open their eyes. The call for a free version of Delphi has nothing to do with greed or not wanting to pay for our tools. It’s rooted in a much more basic form of self-interest: the survival instinct.

    • Do you believe that throwing free Delphi versions at school would change anything? Why should a school or anyone use Delphi instead of Java or C# or even PHP when everywhere they look they see those are the “cool” fashionable technologies, and where jobs are? That’s naive, at best.
      We no longer have the “best programming tool available for Windows”. It has an old compiler, takes ages to support whatever was not in Windows 95 already, and does not support fully the latest Windows releases – especially the 64 bit ones.
      That’s why no student bother to ask a free version of Delphi – if they go native I guess they prefer C++ today, and I agree, why should they choose Delphi over other tools? What advantages would they have?
      If – and only if – Embarcadero will be able to make it technologically sound and appealing again, yes, there will be students asking for a free copy, or maybe they will be even ready to pay for it (and I hope they shouldn’t upgrade each year to get bug fixes).
      And how do you improve Delphi? Cutting revenues? That’s being short-sighted.
      The very fact that are professional developers asking for a free version, unluckily makes me think students/hobbyists are the finger they hide behind hoping to get a copy of Delphi for free – to be used for delivering commercial applications without investing a dime, not learning or enriching the community.

      • Those schools teaching C# and Java, and jobs using them, didn’t come from nowhere. They got there because the language creators marketed the new languages aggressively to schools, businesses and individual developers, showed people their features, and got people interested in using them. And Delphi is a better language than C# or Java, so what makes you think that that couldn’t happen in our case? You know what Einstein said about doing the same thing and expecting different results…

        I’m not sure what you mean by taking ages to support new developments that weren’t in W95. Just look at the last few releases. Delphi had support for Vista and Windows 7 before Microsoft’s own development tools did. Yes, Borland really dropped the ball on 64-bit (and just about everything else, towards the end), and we’re still hurting from that, but they’re doing a good job at the rest of it.

        if they go native I guess they prefer C++ today, and I agree, why should they choose Delphi over other tools? What advantages would they have?

        You’ve gotta be kidding me! C++ is not necessarily the worst programming language ever created, but without a doubt it’s the worst ever to be taken seriously. People use it because they have no other choice, or at least think they don’t. A lot of people don’t use Delphi because they don’t know about it. Most of the time when I tell other coders I’m a Delphi programmer, the response isn’t scorn or amusement or anything like that, it’s a blank look. “Delphi? What’s that?”

        And how do you improve Delphi? Cutting revenues?

        We’ve been over this before. Revenue would probably drop at first, but it would generate a lot more over the long term. And since Embarcadero is a privately-held corporation, they aren’t beholden to a bunch of Wall Street idiots who demand high short-term profit margins every single quarter, which means they’d actually have a chance at pulling off a long-term gambit like this.

        The very fact that are professional developers asking for a free version… makes me think … they hope to get a copy of Delphi for free – to be used for delivering commercial applications without investing a dime, not learning or enriching the community.

        Yes, because of course greed is the only true motivating factor for human behavior! Have you been reading Ayn Rand or something? Because her theories and how the real world works “ain’t exactly ever been similar,” as Jayne Cobb put it. The motivating factor here is to bring Delphi out of obscurity, and if you can’t even understand that then I’m sorry, but you have no business in this discussion.

        • > marketed the new languages aggressively to schools,
          > businesses and individual developers

          They marketed it aggressively at *businneses* and *media”. The other followed. Never saw schools or individual developers driving the market – it’s business and media setting what tools is the tools of choice, schools follow and individual developers too. But in small companies, it’s not the developer to choose the tool. It’s management, and management is influenced by media and companies representatives – not schools. I already worked for a company who almost got rid of Delphi in 1998 because Microsoft put all its weight on management to move to VB, and luckily it was VB, not C# and .NET. And it was Delphi 3, not 2005 or 2006.

          Please tell me why school should start using Delphi instead of C# or Java when it’s free. What advantages would they have? As all of you point out, there’s few jobs. Thereby why should school prepare students to find no job? Would you force your students to learn a language that won’t give them a job?

          > had support for Vista and Windows 7 before Microsoft’s own development tools did.

          Do you call it *full support*? Vista and Windows 7 are much more than transparent form borders and some touch support.

          > People use it because they have no other choice,

          People use it because they perceive it as the “ultimate” language that allows to code whatever they want (but web applications, maybe). We have people here doing kernel programming in C. How do you do it in Delphi, or any other language?

          > Revenue would probably drop at first, but it would generate a lot more over the long term

          Are you sure? I am not. Explain me why should it happen, as long as Delphi lags behind competition in term of features. It has to offer more, but that will require to invest a lot of money to improve it really. And that’s must be done soon – and it doesn’t mate well with a drop of revenues in the short term. It does not need schools pouring out more Delphi developers noone asks for, it requires business asking for Delphi developers because Delphi ensure them to reach their targets sooner and better.

          This is no longer 1995 when the landscape was far different and developers had much more manoevring space – the “golden age” is over – now other drivers dictates what tools to use.

          > The motivating factor here is to bring Delphi out of obscurity

          And “yet another free compiler” would bring it out of obscurity? C’mon! How many free tools lurk in the obscurity? Have you ever given a look to OpenWatcom? It was the leading C compiler. High end applications and games were using it because it delivered the fastest and more optimized code. But Sybase anticipated the Borland way: lack of focus, buggy releases, slow fixes, little improvements. Now it’s free. In the obscurity.

          What will bring Delphi out of obscurity? Getting back to deliver state-of-the-art technology (without taking three releases to get it right), or delivering a free version without anything new? Having media talk about it, or having small developers writing obscure applications somewhere in the world?
          And how do you get back to the leading edge? Wasting your resources in free releases, or investing them in the actual ones?

          • “Do you call it *full support*? Vista and Windows 7 are much more than transparent form borders and some touch support.”

            However you define ‘full’, the VCL got (and has got) on the train quicker than either MFC and WinForms for various Vista and Win7 bits. Admittedly, MFC and WinForms hardly make for the highest standard – at least in VS2008, WinForms still doesn’t theme everything by default I’ve found – but it’s still a reasonable one, MFC and WinForms being both the closest ‘alternative’ frameworks and from the OS maker to boot…

            Moreover, on your ‘old compiler’ jibe, I assume your referring to when the DCC source was predominantly ‘fresh’, since it doesn’t stay static from release to release (cf. If that’s the case though, then it’s a bit inconsistent to start cheeringleading for C++, even as devil’s advocate, given the age of the VC++ compiler.

            • “However you define ‘full’, the VCL got (and has got) on the train quicker than either MFC and WinForms for various Vista and Win7 bits”

              But with what tools those bits were written? Delphi? Java? Python? A C/C++ programmer is much more ready to put his hands in the API mud that most Delphi developers. And they do not need to translate headers.

              MS had adopted the standard to first release new OS versions, and VS will follow. Don’t know if they want to take advantage of being able to deliver applications exploiting the new OS first, or whatever. I guess they have a good reason to behave such way. And till now I never saw Delphi steal VS market share because it delivers some support first. I remember a comment about OS/2: “while IBM sings is jingle about its already available OS/2 3.0, Microsoft is preparing to bury them under its Windows 32 bit simphony”. It happened that way.

            • Maybe VC++ compiler is old too, but it supports x86-32, x86-64, IA-64 and ARM, targets newer processors, and outperforms any BorCodeDero compiler. I wonder if DCC32 still outputs 386 code only, or can take advantage of newer instructions and optimizations.

      • “…the finger they hide behind…” ?????

        without a level entry product for Students/hobbyists/casual developers Delphi is as good as dead!!!
        I have 2 people I know who would like to learn Delphi. How the f**** can I teach them without a cheap copy of delphi for them to use at home.
        Turbo perhaps. But its not upto date.

        I like the idea of the IDE having a single database, say firebird or Blackfish. Remove ADO etc. Reduced ability is okay. Its not for the professional developer!!

        Why Delphi? Because its easier to learn, comprehensive and very much relevent to anybody who would like to go on and learn CSharp or Java.

        • > can I teach them without a cheap copy of delphi for them to use at home.
          > Turbo perhaps. But its not upto date.

          Do you really need the latest and coolest version to teach them? IMHO there’s something wrong here. Do you need the latest Canon EOS-1D to teach someone photography, or they can use something a bit less expensive although older and less “up to date”?

          > I like the idea of the IDE having a single database, say firebird

          Oh yes. Exactly the database a lot of people use for professional development.

          • “Do you really need the latest and coolest version to teach them?”

            Well, just to say: if I am going to convince my C#-based department, I would need to learn, in reasonable detail, and be able to demonstrate, how the generics, attributes RTTI, and all the new features work.

            A free version is OK as an evaluation version with restrictions.

            But I still think a Delphi Basic version, at a price a normal person can afford with their disposable income, is important.

        • Yep, good point. Forgot ‘easier to learn’. Also, there’s a thread in .non-tech called ‘Turbo Delphi’ with a quite nice post from Mike Rozlog. Do you’re aware of it?

    • Of course, you have right, but I do think that also Luigi has right. You know, the Truth is very difficult to catch and describe. Also, most probably, you’re aware of my post in which I had somewhat the same position with you. But the fine difference which Luigi touches and I expanded in this post that this alone and especially if it is targeted to our community only will cause death in a rather small amount of time. There is NO interest in Delphi outside, and I mean NO INTEREST. Go and try to promote my blog or Embarcadero’s (if you find) to Digg, Reddit, Slashdot, Hacker News etc. and you’ll see what I mean. And this doesn’t have to do so much with the price. It has to do with the fact that Delphi (at least) at the first glance looks “similar” with many other tools today. See also Ken’s comment. Today the feature matrix rules. Nobody will try to benchmark it, to do a big project on it to see how good is in the real life (or perhaps better than ones, isn’t it?). Nobody will try to install (for free) CnPack or JEDI or whatever to see what wonders are in there. Yes, here schools would help, but you need to say from start to the decision makers (being them managers, professors, CTOs etc.) Delphi outperforms the competition in A.) B.) C.).

    • Exactly. That’s what they should have had done since a long time ago, instead of targeting VB first and .NET later.

      But you have to tempt them with power – C++0x is behind the door, and it will bring more features to C++, making the target harder. C/C++ user won’t leave their favourite language for a Pascal-based one unless they see real, big advantages.

      • “What are developers that target Win32 using?

        of course they will not go for delphi since there is already c++builder, unless we considered c++builder as part of the delphi?

        btw, MSVC compiler is far more superior than c++builder compiler if we are loooking at code optimization.

        • I venture to say (never having used it myself) that C++Builder is just another C++. So there is not much C++Builder can offer MSVC developers.

          However, having developed in C++ myself, I can tell you Delphi is better in many ways.

          That is what I mean by trying to tempt C++ developers. We can show them a better way.

          • C++ Builder offer a GUI designer VC++ lacks. although it uses Delphi VCL. But in turn it has other drawbacks – including the compiler – that almost all developers working with C/C++ prefer VC++ or the Intel compilers.

            There could be someone using C/C++ who would prefer something “easier”, but not at the price of losing many of the C/C++ features. But as said already to make Delphi or C++ Builder appealing again there’s much to be done – they have to outperform VC++ under most aspects, and that’s not easy – especially if the keep on apeing .NET and waiting for Prism. Borland C++ was able to outperform Microsoft C, and then MS didn’t sleep too much.

        • The points you made shows that the human factors plays a large role in the quality of a product. If we’d had also the technical part… (ie. better compilers). Let’s hope that the new compiler which will show up next year (I hope) will be much better than the present ones.

      • > Exactly. That’s what they should have had done since a
        > long time ago, instead of targeting VB first and .NET later.

        I’m not opposed to targeting current C++ users, although
        as others have pointed out, that will hopefully be easier
        once the new (improved?) compiler comes out.

        But right now we can target VB users.
        MS has abandoned them. Where else are they going to go?

        Certainly more of a step than moving from C++ to CB, but
        that will be true of any non-C++ developers.

    • Yes, they are one target. Against them we have ‘Safety’.
      I think that the tag line should be:
      “RAD environment which allows a Cross-platform, high performance, high quality (safe) coding”

      Continuing your way of thinking I do think that other targets would be high performance and rather unknown languages: Ada, Eiffel etc.
      Rapid development and code quality is what our industry needs today, imho.
      And as I said, we must concentrate on the present needs of our IT industry.

  4. Yadda, yadda, yadda Pops… Get to the point.

    Delphi was what others hoped to be. Delphi is what everyone else is. Delphi could once again be what others hope to become.

    Embarcadero needs to stop worrying about language features. You don’t need 15 ways to do the same thing. Some of new language features were needed because Delphi was not being maintained well. But, now it’s time for Delphi to be “innovative”. It’s time to get back to a product that let’s one developer out pace three developers using other tools.

    The components and libraries are the important parts of a visual development tool. The language makes those components and libraries possible. But, you should not spend your day coding in Delphi unless you’re creating components and libraries. Application developer’s should be using the visual tools in Delphi. Writing code to “glue” the components together.

    • Our Rich again 🙂

      Of course you have a point here. But I do think that one of the critical advantages which Embarcadero has over Microsoft is it’s team size. Being smaller it should have a better communication between them, be more agile and hence the response time should be faster. See what’s happened in Delphi 2010? The VCL and the RTL teams needed to have a language construction in order to allow the Gesture engine to work also on WinXP and the Compiler team did it (the ‘delayed’ feature). But unfortunately they didn’t ask for community approval, and hence isn’t quite the jewel which it could be. But the fact still remains: In the Microsoft’s realm this inter-cooperation cannot be done, or done way harder.
      …but I think that this matter is very important and is needed to have another post for this.

      • On the other hand, I fully expect the .NET team and the C# team co-operate closely. This is one reason why ANY vendor targeting .NET will always be at a disadvantage.

        • In such a large organization with so many people involved with so many antagonistic interests the meaning of ‘closely’ fades away. Believe me, I know what I’m saying. Also, inside of Embarcadero there are such phenomena – but they can improve the things better than Microsoft in the terms of agility, at least theoretically.

  5. There is lack of good books that really Teach Delphi and its language not only the component part.

    One can easily count books available on ones fingers. Compared to this look at number of books written for C# or VB.NET. It figure is staggering.

    Being developers most of us have looked at MSDN. Look at the amount of material available in it.

    Is there something like this available for Delphi? NOOOOOOOOOOOOOOO. That is bad thing. Almost every descent Delphi developer is screaming for good Help for so many years not but to this day it is sorely lacking.

    Instead of wasting resources for adding new features that hardly 7% to 8% of Delphi developers community is going to use why not make documentation better.

    Just the other day I visited the now touted Wiki which is said to contain lots of learning material for Delphi developers. But unfortunately it is still incomplete and there are just place holders for most of the material and in some material the information is just incomplete. M$ seems to do a beautiful job in MSDN and its content.

    I think Embarcadero also needs to take clue from M$ as to how to present technical material in their documentation.

    • Yes, the help has been a dismal feature for a long time. I have no idea how they managed to break it after D5/7. Is it better in D2010? Haven’t sprung for an upgrade yet, so I don’t know.

      On the other hand, books tend to be sourced from the community, and that is small, meaning low print runs.

      Highly recommendable is Zarko Gajic’s Delphi blog in No, it’s not comparable to MSDN by any means. But it’s pretty damn good for one guy’s efforts. It’s my go-to source for hints and tips.

      Unfortunately we have to accept the small numbers we have reduced to. This is what we have to work with.

      • “I have no idea how they managed to break it after D5/7.”
        AFAIK, they changed the internal format going from the ‘old-fashioned’ .hlp (which was IIRC at its limits) to the new one. But they skewed up the things in the conversion.
        “Is it better in D2010?” – since D7’s I think so. Even if sometimes the search returns odd results. But if you type by hand and/or you have a little imagination you get the things done.

    • The better source to learn Delphi language was its printed manuals. Of course you didn’t get them if you didn’t buy the product. It was a pity the where removede starting with Delphi 2005.
      IT books business got a very hard time from the internet and .pdf files sneaking out. Noone will start to print books if they have not a large market today. Again, books follow the spreading of a language, not viceversa.
      Anyway, how many different book do you need to learn the same language? I guess Cantù’s and Swart’s book are enough for everybody wishing to learn Delphi.

      MSDN is another matter. I guess it require a somwhat large and very dedicated team to be mantained. although MS has much more than Embarcadero to manage. Maybe it’s time the so called “Delphi community” gathers and decide to work on *one* wiki or the like instead of everybody setting up its own?

      • “The better source to learn Delphi language was its printed manuals.”

        This was very true. I still have my D5 paper manuals.

        I bought many books back in the day and discovered many were just padding and with little true substance.

        A handful of authors wrote quality books, and those I have kept. But I have heard from at least one that, even in Delphi’s heyday, the author’s efforts were poorly rewarded financially.

        A community wiki is a good idea.

      • “Maybe it’s time the so called “Delphi community” gathers and decide to work on *one* wiki or the like instead of everybody setting up its own?” – yes, but we need the change our mindset to do this. There is and now the official Delphi Wiki Help – however they don’t have the same impact in our community as it have let’s say Wikipedia reported to the entire world. And perhaps it will never have. Because we’re developers. But I do think that a proper “promotional campaign” will make the things better.

      • But the manual as provided with Delphi are truly not readable and understandable for a new programmer or an average programmer like me.

        May be Delphi’s manuals are the best but they are useless for those show cannot comprehend them.

        I hope you understand my point.

        • My two D5 manuals are the language reference and the programmers guide.

          Thinking back to when I was a newbie I remember I found the programmers guide clear, concise, without needless padding, easy-to-follow and it had examples and application suggestions.

  6. One thing that needs done first is to decide what goals this discussion is trying to attain.

    Are we trying to discuss how to get the most copies of Delphi sold?
    Are we trying to discuss how to make Delphi users successful?

    If you want to get something done it’s a good idea to first decide what you’re trying to accomplish.

    • “Are we trying to discuss how to make Delphi users successful?” this doesn’t imply “Are we trying to discuss how to get the most copies of Delphi sold?”?
      For me, yes. And don’t say “not necessarily”. 🙂 We are (or at least try to be) professionals.
      Btw, can you give 3 ideas which “will make the Delphi users successful”?

      • “Are we trying to discuss how to make Delphi users successful?” this doesn’t imply “Are we trying to discuss how to get the most copies of Delphi sold?”?
        For me, yes. And don’t say “not necessarily”. We are (or at least try to be) professionals.
        Btw, can you give 3 ideas which “will make the Delphi users successful”?

        I’m sorry Pops, I don’t understand your post.

        Are you:
        1. Discussing how to get the most copies of Delphi sold?
        2. Discussing how to make Delphi users successful?

        Three ideas to make Delphi users successful:
        1. More components, more libraries, larger frameworks.
        2. Focus on the ISVs not creating jobs.
        3. Stop sucking MS hind tit.

  7. Pascal is not cool anymore, many will even say its dead language. C++ is perceived as to complex and unproductive for average Joe Programmer. So, neither of two RAD Studio personalities is not to appealing for newcomers. On the other hand, simplified and streamlined C/C++ syntax in form of Java, JavaScript, C# … are everywhere.

    According to ‘The Future of the Delphi Compiler’ by Nick Hodges, the new 64-bit RAD Studio will have common Pascal/C++ compiler back-end and three front-ends: C++, current Pascal and new improved Pascal. As the new architecture permits multiple front-ends, I suggest another: Delphi with C-like syntax, modeled to allow translation from and back to Pascal Delphi.

    Blasphemy, impossible, ridiculous idea? Perhaps.

    • Is that not what C++Builder is? (I speak in ignorance, I have never used C++Builder)

      But with Delphi concepts, such as allowing procedures not tied to an object.

      Let me throw another wild idea into the ring: this back-end compiler will require an intermediate language (I assume?)

      Publicise that IL.

      As with .NET, allow enthusiasts to build their own favorite language front ends.

      • C++ Builder is not Delphi with C-like syntax. C++ Builder is C++ with even more complexity throwing in to allow interoperability with VCL. Delphi is elegant, easy to learn, readable, RAD-friendly, fast compiling language, unfortunately based on dying Pascal. What I suggest is to add new cool-curly-brace dialect to Delphi in a way that will not blow any of the mentioned quality. Dialect with the structure and concepts similar enough to allow translation from/to Pascal Delphi, which is another key point of this wild idea. Would that attract new customers or is that even possible? Who knows?

    • “According to ‘The Future of the Delphi Compiler’ by Nick Hodges”

      Hey, this has been around since February, at least (it isn’t dated, but the comments are).

      Very, very interesting reading. Very exciting!

      And anyone concerned about 64 bit, Nick addresses that there, too.

    • @Albert Vvbic,

      I think you are right about your statement “Pascal is not cool anymore, many will even say its dead language.”

      Pascal is facing the same problem as Latin faced and as we all know today Latin just exist to help name medicine, chemical composition, races, etc.

      I think in near future Pascal will end as being used just as reference in a few Windows programming in C++ manuals.

      To prevent Delphi/Pascal from dying the language itself has to be made a lot more easier to learn and program in as compared to what it is today.

      Please have a look at this for better understanding as to what I am saying:

      Read point # 3, 4, 5 closely.

      • If there is a language that does not need to become simpler is Delphi Pascal – simpler than this there’s only a useless language – how would you simplify it?

        The article you cite is not about Pascal language, is about IDE features, and I wonder what he means, for example, when he talks about sync edit – it’s exactly to change a block of code, it you want to rename something overall there is refactorings – they may work better, ok, but how could it change something on-the-fly if you can’t see it? Bit dangerous, to me.

    • It’s almost impossible, and it will require a deep rewrite of everything, and or it gets very far away from C standards (and therebyu little useful) or it would lose many features. One of the advantages of Delphi it’s it controls its own standards, thereby can evolve rapidly without waiting for some comitees to put them on paper.

      Python and Ruby, among others, shows that it’s not necessary to be a C-like language to be successful, although it may help.

      The “me too!” approach has already damaged Delphi enough, it’s time the start to think out of the box again.

      • “The “me too!” approach has already damaged Delphi enough, it’s time the start to think out of the box again.”

        Damn straight!!!

      • It would appear that is exactly what is planned for the 64-bit version. See the link in Albert’s first post “According to ‘The Future of the Delphi Compiler’ by Nick Hodges”.

        • I am afraid it’s not. What Hodges tells in that article is exactly the “me too!” approach. Look at what he says about GetMem, unbounded arrays and “seat belts”. That’s exactly the “me too!” approach, because .NET and Java are “safer” let’s remove the some of the most powerful Delphi features to “enapsulate” the incompetent programmer. Let’s make another “managed” language. For reasons unknonwn to me, they allowed for pointer aithmetics only in 2009 – just because they needed it to support Unicode.

          They are still scared of Delphi power, because they still aim it at the VB programmer. As far as I can see, they are planning a “lesser” Delphi. Just because of “me too!”.

          • Um. I see what you mean.

            On the one hand, he says: “Backwards compatibility is really, really important to you and it is really, really important to us.”

            Then he says “Getmem .. and all kinds of things with raw memory .. these code semantics .. can prevent us from making changes and modernizing the language.”

            But then again he emphasizes: “Let me be clear before I go any further: I’m not going to be talking about eliminating features; I’m merely talking about an issue that the language currently has. We have no plans to remove any language features or break your code. Again: we have no plans to do that.”

            It is all a bit ambivalent, I agree. But I don’t read programmer encapsulation into that, either.

            Let me also say that “me, too” doesn’t have to be bad. If a feature is implemented in a way familiar to C#/C++/Java people it will be easier to learn and gain acceptance.

            All core programming languages have adopted the object model to some degree. This is not just “me, too”. The object model really does help represent the real world inside the computer.

            • That article talks about a “classic Delphi” and a “new Delphi” language, which could cohesist in the same application where the former was for compatibility and the latter was for improvements:

              “What if we created a new compiler front end that gives you the choice between a new, non-legacy syntax and the older way of coding?”

              A situation like that is really scaring – two non compatible Delphi language, where I guess only the new one would see improvements. IMHO Hodges was fascinated by Prism. I don’t like Prism at all – IMHO its designer is to eager to add new functionalities without designing them well before. In a few iteration IMHO Prism will become a language littered of uncomfortable constructs and keywords. Delphi is a much cleaner language, and it was kept so.

              “But I don’t read programmer encapsulation into that, either”. Programmer “encapsulation” is when the language tries to hinder you to perform maybe “unsafe” operations which could be required to accomplish advanced tasks. I didn’t switch fully to C/C++ – yet – just because Delphi allows me to perform much of what I could do with them anyway. The day that power becomes “old, legacy syntax”, I’ll complete the switch.

              There have been no news about the “new Delphi” since then, and I hope – but I am not optimistic – that it was buried, although I do not know how to read Hodges change of position inside Embarcadero – hope he can’t damage Delphi where he is now.

  8. Free online casinos permit downloading the software. There is no money needed,
    so any one are welcome to join and play the game freely.
    If a player bets on a single number and wins, the costs is 35 to

  9. A new hand of 18 is a fragile palm however by cracking we have
    a excellent probability you’ll transform that will into some 17s. Whoa No deposit bonus slots australia You’ve got visualize it on TELEVISION SET.
    Become courteous to be able to those people
    all-around a person.

  10. Bluffing throughout best sports betting sites in the us and
    also in particular within Texas hold em can be a handy software, although if it’s certainly not employed properly it’s really a extremely risky software to utilize.

    The buy and sell present offering exhibitors by around the globe, the planet Compilation of
    best sports betting sites in the us Life-style Display may showcase an easy
    variety of completely new best sports betting sites in the us items, websites, books and garments.
    for parents to obtain fun. It has shown statistically.

  11. Greeting card depending was typically much easier during an video
    game since nobody had been watching people if you are usually fast to be able to
    memorize the particular minute card or perhaps create the item lower grand parker games give you a constrained period of time for you to answer with attack or even maintain.
    Keep in mind after all craps can be a activity connected with good luck!

  12. Many mixture market segments, as well as collateral marketplaces, are influenced by facts relating to these
    types of financial components and the state of
    such resources simply because they relate specifically to the all
    round economic system. Employing this tactic, in a very quick time frame,
    you possibly can experience the possibility you have chosen in the lucrative path, mainly because you used to be aware about selected movements.
    A lot of brokerages are generally benefiting from that brand
    new along with impressive technique of trading, something
    that can be performed due to international interconnectivity on the economic markets around the world.
    Your change concerning these kinds of and also standard choices is usually
    you are sure of how much an individual have to get or even shed, along
    with your gains along with losses could happen inside min’s, not really nights or even days. These go back are offered for less than $10, along with at times intended for up to $10, 000.

  13. Thus rather then buying and selling the united states market segments, you should have a look
    at Oriental marketplaces for example the NIKKEI which
    usually may enterprise complete opposite the usa, producing nighttime trading an absolute chance.
    The first thing you have to know about nighttime dealing
    along with Binary options Risks is usually that will to ensure that the actual trade to actually
    take place, this market need to be effective for the trade to essentially happen.
    The chart tend to be updated just about every couple of moments by
    using the particular Reuters site. While some other programs might make
    an effort to wow anyone with excessive affiliate
    marketor payouts along with reduced boundaries,
    simply Binary options Risks gives you the alternative to genuinely cash in on
    Binary options Risks.

  14. They were being caught, the amount of money and the personal computer were
    being confiscated. I think supplying you with
    the superior 5 explanations why dark jack is really a superior activity
    when compared with casino Online is enough proof regarding the fineness on the
    video game involving Dark-colored Jack.

  15. Among others offer to help increase or even multiple
    the tissue of the gambler. money you acknowledge with fight it out whilst your desire, actions to
    help win Before starting gambling on-line, you need to bear in mind crucial rules In fact, automated bingo is found entertaining
    by means of some people while it is quite interesting when you finally see through the
    stigma in the Sunday Social forms of video game titles normally
    regarded as set aside pertaining to old-age homes as well as community center

Leave a Reply

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

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

Google photo

You are commenting using your Google 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 )

Connecting to %s