Amazon.com Widgets A Bunch of Stuff I’d Like to See Embarcadero Do

A Bunch of Stuff I’d Like to See Embarcadero Do

By Nick at July 05, 2011 22:22
Filed Under: Delphi, Tech Stuff, TechBiz

There are a bunch of things that I’d like to see Embarcadero do.  I’ve listed and discussed some of them below.  I’ll probably think of more later.  Winking smile  They are in no particular order, and they are not grouped in any particular way.  They are a bit random, and range from business decisions to minor technological decisions. Where it makes sense, I’ve linked the titles to the entries on http://delphi.uservoice.com/ so that you can vote for the items if you see fit.

I’d like to see Embarcadero:

  1. Provide an Enterprise-level MVC web framework for Delphi.  This almost seems like a no brainer to me. Ruby on Rails has had a profound impact on web development and development in general.   In the .Net world, MVC has become the leading ASP.NET development method,winning over hearts and minds from WinForms.  The general idea of MVC is becoming the norm for much of the development world – separate those concerns!. Delphi’s new RTTI capabilities would actually make this kind of framework very, very possible and very, very cool.  And Delphi already has a very powerful and capable web infrastructure to build on:  good, old, and venerable WebBroker.  There are even existing frameworks out there that could be leveraged, including the G Framework.   There is a business opportunity here for Embarcadero, if not for an enterprising third-party Delphi developer.  A native, ISAPI based MVC framework in Delphi?  That would be very, very sweet.
  2. Stop trying to do other stuff and invest in Delphi.  This one has been one of my huge frustrations over the years.  Delphi is a profitable product, but no matter who owns or runs the show,  the profits always seem to get skimmed off to fund other “next big thing” projects of, well, questionable benefit at best.   Remember “SDO” taking the market by storm? Yeah, me neither. AppWave seems to be interesting and have a lot going for it, but I personally would rather have seen that effort invested back into Delphi.  I hate to think about where Delphi might be today if it hadn’t been used to fund other projects and instead been allowed to use it’s profits for it’s own development.  Delphi could use a year or two of un-distracted attention from its owner. 
  3. Create a Javascript/HTML development tool.  I’ve always said “As assembler is to the Intel chip, so Javascript is to the browser”.  James Governor has it right:  “Learning Javascript used to mean you weren't a "serious software developer". Today, not learning Javascript means the same thing.”  A powerful, feature rich RAD development tool for Javascript and JQuery would be really cool and a great new product for Embarcadero.  Maybe RADPHP could be steered in that direction?
  4. Make Dependency Injection part of the RTL: If you haven’t figured it out yet, I’m a big believer in Dependency Injection.  So much so, that I think that if you aren’t doing Dependency Injection, then you are doing it wrong.  Incorporating a DI Container into the Delphi RTL would be very cool.  Again, Generics, anonymous methods, and the new RTTI makes is very easy and powerful, and there are open source projects to leverage and build on (like my favorite, Delphi Spring).
  5. Do one thing at a time and do it really well:  This is the one that I wish they would do the most:  Take the product forward one step at a time. For instance, the next release should have as it’s main focus 64-bit Delphi and only 64-bit Delphi. That’s it.  Other improvements can be made, of course, but clearly that should be the “big one”, and it should be the only “big one”.  Don’t try to do two or three “big ones” in a single release. Make each release focused on a big, single step forward, executed thoroughly and solidly.  The product will be fine as long as it shows steady, sustained improvement.  Many large improvements executed all at once is not what the market wants.  Focus and deliberately move forward.

That’s all for now – I’ll probably have more as I think of them, but that ought to be food for thought for while

Comments (15) -

7/5/2011 11:27:25 PM #

Craig

I agree with you on AppWave. I can't see how this can be successful, I can't visualise a business plan that will work. One thing that seems to be happening in the last 5-10 years is that products are released but never get to version 2 or 3 without being killed. It's as if they are building a product on speculation hoping it takes off, but if it doesn't it gets killed within 12 months. Almost a VC method of business development.

Products that I think have been a total waste of time are Blackfish, 3rdRail, DelphiPHP, AppWave, C#Builder. Kylix and Delphi.NET were marginal.

Craig Australia |

7/6/2011 1:58:03 AM #

Vincent Parrett

As much as I like DI and the spring framework, I'd rather not see Embarcadero work on DI, I'd much rather they focused on the Compiler, Language and UI frameworks, ie work on the stuff only they can do.

The compiler really needs some investment in optimisation and better codegen. The language could use some of the features that are in (or comming soon for) Prisim, like Lamdas, duck typing etc. Even better would be a garbage collector and a rooted type system, class operators on classes, forward declaration of record types.. I'm sure there are plenty of other areas of the language that could be modernised without ruining it.  

I'd also like to see more frequent service packs.. it seems we get one or two and then that's it.. but most of us don't upgrade to every release, I'm still using 2010, but in the last week I found 2 huge bugs that were fixed in XE that are damned near impossible to work around when using runtime packages. IMHO, they should change to a subscription only service, and still issue updates/bugfixes to earlier for at least a year or two after release.

As for Appwave.... yawn. I still haven't quite figured it out, the webpage is just high level marketing spin, there's no detail.. that sort of BS just turns me off.

Vincent Parrett Australia |

7/6/2011 8:35:23 AM #

nick

Vince ---

Good stuff.  I strongly agree with the sentiment.  My only comment is that the compiler team and the RTL team are two different teams, and so doing something in the RTL doesn't preclude improving the language.

I totally agree on the subscription model --- sadly, making that transition would require a revenue hit for the transition period that would be really hard to make.

nick United States |

7/6/2011 12:47:23 PM #

peter

Nice post. All Embarcadero managers should read it.
I like javascript IDE idea. It should not be so hard to develop it. ...Some JS library just like ExtJS (Ext designer).

peter Slovakia |

7/6/2011 2:54:08 PM #

Michael Thuma

Vincent - see the Appwave as your Appstore you run. I think this is maybe obvious to EMB but not for the users. Delphi is already on a supscription RAD Studio SA is priced at price of the MSDN SA.

>they should change to a subscription only service

But in order to achieve this there must be one time something that works and Nick is right, I say it in other words - The strategy of moving forward the whole bunch is enormous challenging. Having something for everyone every year is nice ... but a billy-goat is nice too. Delphi is running at risk to become a bloated billi-goat in the meanwhile, looks nice, works well but every year horray a new surprise absence of perfection is well documented.

Also if things are getting better. I understand Nicks position ... Delphi had good times when it was possible to make something on Windows that was different, especially with a solid offering in the area of vector GUI also if this is a separate path beside the VCL from my experince two years ago, one can develop cool stuff on an OS you find around every corner still. From the priorities perspective. If this what one can do with Delphi it's ok. Staying beside M$ Ministry of Silly Walks is worth a fee every year. If one runs this strategy then things must rock.

It is no longer accpeted that things break. So XE with the numerous patches on 32bit was the better decision.

When all this works, then go and write an IDE for the Mac that evolves with the Mac. Also if it is a comfortable C/C++ IDE. Kylix was perfect when it offered C/C++ from the perspecitve of providing what was a demand.

In the early days of a new product maybe tablets when nothing is decided and things are under evolution it is better to go with what the vendor of the technology provides and not a Delphi here and Delphi there. The device vendors did realize that if they don't provide their own development environments they never get good content, so they will do. No one expects something different.

Henry Ford: If I'd asked people what they wanted, they would have said a faster horse.

One thing, I have the impression that EMB marketing thinks that Delphi developers are something like nice little dumb RAD tinkering people, this is not case. To me it looks like this or the whole presentation of the Website is trageting Enterprise ITs.

Michael Thuma Austria |

7/6/2011 3:12:26 PM #

Tapper

1. Integrated source control that can be used by 90% of us who don't use SVN. (Although I've gotten so used to using the native client for our source control that this really doesn't matter anymore.)

2. Ability to add SQL objects to my .dpr. And link them to my TDatasets.

3. Visual inheritence that actually works. Try dropping a TFrame on tabsheet that's on a TFrame and watch all your controls move to far-off and mysterious places.

4. If a product is released with a feature that is broken, it needs to be fixed. No QC voting, no farting around waiting for the next version. Fix it and release it. (I'm looking at you Datasnap)

Tapper United States |

7/7/2011 9:22:41 AM #

nick

Tapper --

You guys aren't still running VSS are you?  Wink

The Version Insight is advancing as an open source project and includes support for Hg and git:

http://sourceforge.net/projects/radstudioverins/

nick United States |

7/7/2011 9:56:10 AM #

Tapper

No, thanksfully. We're using Surround by Seapine. It's pretty good and it integrates nicely with their bug tracking tool. (Great for SOX compliance) I've been keeping my eye on Version Insight and it looks very nice. I just don't understand the reluctance to support the MSSCC api.

Tapper United States |

7/7/2011 11:57:31 AM #

Stefan Glienke

I would like to have some compiler switch called "f*** off backwards compatibility crap" and let me use shiny new features like lambdas, interface helpers (or better extension methods without hearing that "we can't do that because..." excuse.

I would very much like to see some mature kind of framework out of the box that gently forces you into writing clean code without letting you stuff things into forms and events and bake everything into some giant clusterf*** of application that is impossible to maintain over the years.

Stefan Glienke Germany |

7/16/2011 9:20:58 AM #

Aleksey Timohin

+million
Oh, how I wish the compiler had that magic switch.

Aleksey Timohin Latvia |

7/7/2011 5:12:30 PM #

François

Hmm, IMHO your points 2 and 3 kinda contradict themselves. If they invest time and money into a new JavaScript product, they're likely to preempt Delphi resources to do it.
And if the product is not successful, then you have another waste...
But I strongly agree with the "Do 1 thing properly instead of a lot poorly".

François United States |

7/7/2011 9:02:21 PM #

François

about JavaScript/JQuery IDE: marketplace.eclipse.org/.../vjet-javascript-ide
Seems interesting...

François United States |

7/10/2011 2:14:31 PM #

Markus Kinzler

@Stefan Glienke:
Use Oxygene ( Prism or Cooper).
In my opinion it would be no wise descion to cut of compatibility of delphi to older versions.

Markus Kinzler Germany |

7/10/2011 6:27:04 PM #

nick

Francois --

Yeah, you are right about #'s 2 and 3.  Wink

nick United States |

7/14/2011 5:10:29 AM #

pda

> Provide an Enterprise-level MVC web framework for Delphi

Agree. And not only for the web. The VCL is killing Object Pascal, both Delphi and Free Pascal. "Drop a button on a form, double click it and write a code". It's not a good way to make the big applications. However it's the only way now, because standard controls like buttons, edit, comboboxes can not be controlled by actions.

pda Russia |

Comments are closed

A Little About Me

Hey, I'm Nick.  I'm interested in Software Development, Leadership, and Basketball.  I'm a big fan of Delphi, but love all cool programming languages.

A Pithy Quote for You

"Everybody is a genius. But if you judge a fish by its ability to climb a tree, it will live its whole life believing that it is stupid."    –  Albert Einstein

Little Buttons and Stuff

Nick Hodges

Create Your Badge
View Nick Hodges's profile on LinkedIn
profile for Nick Hodges on Stack Exchange, a network of free, community-driven Q&A sites
Powered by DiscountASP.net
Join Dropbox

General Disclaimer

The views I express here are entirely my own and not necessarily those of any other rational person or organization.  However, I strongly recommend that you agree with pretty much everything I say because, well, I'm right.  Most of the time. Except when I'm not, in which case, you shouldn't agree with me.

Book Stuff

Earn Free Stuff

Search & Win