Reinventing Delphi for the masses.

Reinventing Delphi for the masses.
(A spinoff from the post by Colin Johnsun)
This might appall some, and appeal to others. Keep an open mind as this is just a brain fart from yours truly.

EMBT continues to offer the current versions as before, but adds a new offering:  You get the tool free of charge with an attached account in the "Embarcadero App Store" where you can give away or sell your app on various platforms. Or, you pay $xx/year for extended services such as hosted VCS, product forums and issue trackers. 

In fact, you don't even compile locally - but in the cloud, directly to your app store and to the various platforms. This will give EMBT a wealth of info on reproducable internal errors, and the compiler can be upgraded with zero deployment cost.  In theory, a simplfied IDE might even be web hosted, and debugging done on platform emulators in the cloud.

The app store can have mechanisms for allowing access to test versions for test users and release versions for regular customers. If you sell your app, EMBT get the customary 25-30% of the income.  EMBT may even offer access to cloud DB services for your apps for a price, either paid by you - or by the end-user.

Surely, I am not the first to think along these lines, Marco Cantù?

Comments

  1. I can see the benefits of this model in that EMBT can make their revenue from selling "Apps" on their app store. This will encourage more developers to give Delphi a try with minimal outlay on their part. The other benefit is that it will increase the number of programmers that "know" Delphi which may make it easier to introduce Delphi in their working environments. Very similar to how objective-c got embedded into the programmer mindset in the last few years :-)

    ReplyDelete
  2. I don't know if Google/Apple/MS have APIs for commiting apps to Google Play/Apple Store/Windows Store - but that could be a possible feature as well.  Imagine being on your tablet, and fixing a bug and recompiling your 500k lines app before rolling it out to the app stores, all while on the bus :)

    ReplyDelete
  3. This idea has some merit, but it is not terribly easy to implement. A remote compiler implies committing changes (relatively fast), compile remotely (could be fast, depending on current load), download the code and the symbol tables locally for debugging (very very slow, as these are generally large files).

    So the overall idea of cloud based services and code could even be realistic, but not having a local compiler is a severe issue. Also, if you debug locally, you can generally also deploy... although there might be ways around it.

    My personal opinion, of course.

    ReplyDelete
  4. Marco Cantù  It's not even necessary to have a remote compiler to accomplish the same idea. Embarcadero has the technology in place already with their All-Access license. You'd need some way to have it phone home from time to time, but wouldn't need to do all the work in the cloud. It's just a way to make sure that free  doesn't erode your paying customer base.

    ReplyDelete
  5. As soon as I mention Cloud Computing to my customers , their eyes glaze over and they look lovingly at their desktop and local area network. If there is to be a movement then it needs to begin by educating customers that the Cloud is really is a safe place to be.

    ReplyDelete
  6. (Core) Competence matters! Doesn't it?

    Their core competence should be building a Delphi Compiler, RTL and Debugger that works as expected. They are working since unbelieve long time on a new Delphi compiler (four years) and you want them to do stuff they haven't done yet.

    ReplyDelete
  7. Uwe, reality is not pretty. ;-)  I really don't want them distracted from their core competency. I may really want to update someday, and I would prefer that the product be as solid as D7 or DXE. Recent comments on issues in XE2 and XE3 have been disturbing, and the added features are of no great value to me at present, Even less, if they are not well implemented.

    ReplyDelete
  8. Naturally, this is a pie in the sky project, Uwe Schuster - but the idea behind it is to look at possible ways to make Delphi a mainstream tool again.  

    Marco Cantù - If the target is mobile devices, you would already be looking at debugging on an emulator or a number of emulators with different form factors.  It doesn't sound overly complicated to remote a debugging UX - keeping the source, binaries and symbol files in an emulator entirely in the cloud .

    FWIW, I hereby donate the ideas free of charge to whom it may concern (I'm looking at you, Jørn Einar Angeltveit ;)).

    ReplyDelete
  9. I agree with Graeme, there are myriad security issues which have not been resolved, and may never be, with respect to the cloud. Moreover, this would be a huge diversion from what is really needed: for EMBT to get back to a deep commitment to core competencies. Product excellence should be the top priority. Without it, I will keep on using XE.

    ReplyDelete
  10. Bill Meyer - The first thing I pointed out was that EMBT would NOT be abandoning the regular SKUs.  

    This solution is not targeted at corporate devs.  It is something meant for a wide audience that want to do apps for mobile (and desktops), easily and cheaply.  
    It is a means to make Delphi a widely known language, and to have this tool as an entry point to a heavier range of products!

    We are already in the "cloud district" with Google+/GMail/GDrive/name some online Git/SVN repository and App Store.  Sufficient security is entirely possible.   

    Google, eBay, Amazon, Facebook, Instagram, Pinterest and numerous other services are banking on cloud for their mere existence.  

    Should we do mobile apps the way we've done desktop apps up until now?  IMO, they need to be thinner and lighter, and apps for mobile can very well work on a touch based desktop as well.

    As for EMBT looking at your source code and stealing your ideas?  Yeah - lawyers would love that, wouldn't they.  This is why contracts exists.  This is why there is such a thing as client trust.

    This would not be a revolution. This does not need to happen next year.  This would be a long term effort - perhaps even one that could be a community effort.  It doesn't even need to limit itself to a single programming language.

    Dare to dream aloud! Suggest the extreme.
    More ideas = more failed ideas + more working ideas.

    ReplyDelete
  11. How about a remote debugging of 3D games, video conversion utilities and a musical software? :) To debug I need a direct access to Windows system, and virtual machine with Apache remotelly installed. :)

    ReplyDelete
  12. Of course, one could make the observation that FreePascal.org already provides a pretty solid, free, cross-platform environment if you want to get people into Pascal. It doesn't help Embarcadero with the cool tools in XE and higher, but does cover the basics. If Embarcadero wanted to get the benefits of free and open source without actually undermining their paying products, they could support and promote Free Pascal and Lazarus as the entry level...maybe help them get to look a bit more like the new IDE (please, if you love the Delphi 7 IDE, don't start in...that ship has sailed).
    There would be a free version of Pascal, promoted in schools, for newb developers (I've suggested it to friends who are exploring the idea of developing) and companies that want the backing and enterprise quality of Embarcadero could and would then pay for the privilege.
    I was considering dropping off the Delphi annual support train, but I'm at Enterprise and I make enough in the Delphi world to pay for my tools...and I like the direction that Embarcadero is taking. Could I get along without it? Yeah, sure. I also make enough in the "free" world to skip Delphi entirely, and RemObjects has some nice options in their cross platform implementation of Oxygene to satisfy what I need...but...in the end my answer has come back "all of the above". I am SUCH a geek.

    ReplyDelete
  13. Dmitry Filimonov - If onlive.com can remote host 3D games, surely it is possible to remote the debugging of them as well?

    ReplyDelete
  14. Again - we can list all the things such a platform cannot do.
    Or - we can dream up the things that it can do.

    ReplyDelete
  15. Graeme Geldenhuys - So, perhaps you are not in the target group.  Can you envision this as an option for the open source community?

    ReplyDelete
  16. Lars Fosdal Yes, sufficient security is possible in theory, but it is not yet in place, that much is clear. 

    As to any abandonment of existing SKUs, I never suggested that. I did, however, express concern for the core products, which currently seem to be in need of attention, and perhaps more manpower. Fragmenting efforts doesn't make sense, from that perspective.

    ReplyDelete
  17. Are there any particular events that lead you to say that sufficient security is not in place within the cloud?  Are those events actually connected to cloud services, or is it a proprietary solution for a proprietary product?

    What will the current efforts be worth, if the product lacks longevity? People are not upgrading because they don't see improvements, or expansion into modern platforms and solutions.  Independent developers are not adopting Delphi due to price and the previous mentioned issues.  What needs to be done to ensure that EMBT is not bound by the current single pillar of income for the RAD platform? How do you capture more users and a broader adoption of the platform?

    Seen from a Delphi developed product owner's perspective - the decreasing number of developers for the platform is a potentially bigger threat than issues with the platform itself.

    And if OUR clients don't want Delphi, EMBT has a major problem.

    ReplyDelete
  18. The cloud's a fad , just like the internet.  :)

    ReplyDelete
  19. There's no reason for your code to be solely hosted on the "cloud". Look at GitHub for example. I have a local repository which sits on my local hard drive but at the same time I have a remote repository on GitHub as well as bitbucket for the same code.

    If the cloud does disappears, you still have your own code. Also, the code is just plain Delphi code. Whether it is being compiled on a cloud-hosted server or on your own local copy of Delphi, it should be the same.

    Instead of the privilege of paying for you own copy of Delphi, why not get a free one which cannot produce standalone executables. Instead, you can send your code to be compiled on the cloud-hosted "app store" compiler which will create a standalone exe that can be sold via this app store.

    It's a win-win situation. Any developer (student, indie, hobbyist, corporate or pro) can get a free edition of Delphi with the proviso that all standalone executables will be distributed through the App store. You can still run your app in debug mode in your IDE but you can't build a standalone. EMBT still has a revenue stream via apps released through its app store. Community wins with more Delphi developers in the wild. Employers win because there are now more knowledgeable Delphi developers.

    What hurts Delphi is that there are a lot of developers (and IT managers) who are not aware of what Delphi can do and will casually dismiss it without giving it a proper look in. Even Delphi devs who are solely using older versions of Delphi would be absolutely surprised what the latest Delphi is capable of doing and the productivity gains in the language as well as the IDE since Delphi 7.

    What holds Delphi back is that people are unwilling to spend large amounts of cash just to learn the product or even upgrade because the risk is too great for that amount in expenditure. EMBT needs to reduce that risk by making it dead easy to get into Delphi. Once developers and companies see how productive the latest version of Delphi is, then the step to pay for a full version is so much easier because EMBT won't need to spend the effort to convince them.

    ReplyDelete
  20. To be honest, I don't like the idea of desktop app stores... That's just my opinion of course. It certainly has advantages and the model works great for mobile devices, but on a desktop platform I don't see why someone would choose to use it. At least for regular applications, for games, it does seem to be a great model as Valve has demonstrated.

    ReplyDelete
  21. Graeme Geldenhuys - Good luck getting the same exposure as an app store can offer.  If you can sell 300 at 30€, or 3000 at 20€ - which is the most profitable? (Those 300x30 also have to cover your own store front hosting)

    ReplyDelete
  22. Graeme Geldenhuys Who says you have to use App Store? It's there for your convenience if you prefer not to set up your own site and ecommerce setup. Besides, if you want to avoid the app store just use a fully paid version of Delphi rather than the proposed free version (or in your case, stick to FPC :-) )

    I guess the whole point of this is trying to find a justified reason that allows EMBT to give away a free version of Delphi. The ultimate point is finding a way to make object pascal a mainstream language again. Is that a problem worth solving?

    ReplyDelete
  23. The app store is entirely optional, but I'd love to see one.  One thing I'd love even more: A component store!

    ReplyDelete
  24. Simon Stuart - Sorry, what closed beta?

    ReplyDelete
  25. This is a pretty good article on pros and cons of using an App Store or rolling your own.  http://mattgemmell.com/2012/08/24/releasing-outside-the-app-store/
    Bottom line - both options are entirely feasible.

    ReplyDelete

Post a Comment