Board index » delphi » Re: I really hate .NET especially inside Delphi

Re: I really hate .NET especially inside Delphi


2006-10-05 11:34:08 AM
delphi44
"Nick Hodges (Borland/DTG)" <XXXX@XXXXX.COM>writes
Quote
Chad Z. Hower writes:

>We call it metadata - C# users call
>it "garbage".

One /could/ say that the C# folks need to expand their world view and
realize that there are other languages out there in the world besides
the MS ones.
To what end? Play in the same sand-box with a different syntax? Sorry,
Nick, that is not going to cut it. Because its not a reason for Visual
Studio users to change since they are already living and breathing a C#
syntax to do their work now.
You've got to give these people a reason to switch, and you aren't going to
do that within the .NET paradigm. Anders Hjielsberg (yep, probably mangled
his name, sorry) et. al. has got you snookered in terms of controlling the
sand-box chock full of features many of which were borrowed directly from
Delphi and expanded. (The CLR was borrowed from Java but we Delphites don't
need it.)
Nick, what follows is a long letter presenting my perspective:
ECO on the other hand presents an opportunity to go up one level and create
a whole new playing field. I will get to some of its drawbacks in a minute.
With ECO a whole new way of creating software can be pioneered with DevCo
firmly planting its stake in ground. Architecturally, there is no reason
why ECO needs to be tied to a single platform. Once the paradigm is
established it should be possible to offer ECO all Linux, Unix, Mac (if its
still around and not just MacTel) and Windows.
One drawback with ECO is that it was ported from Bold/Win32 to .NET. People
say that ECO could only have been implemented on .NET and I say that's
complete nonsense. The fact that it now is implemented on .NET just limits
its platform options (MONO is a red-herring in my opinion). Why is MONO a
red-herring? For the same reason that Borland/DevCo cannot officially
support it.
But back to the point I want to make: now that it is implemented on .NET you
may as well run with it and (here is the important idea) hide the .NET
implementations details from the user! that is really the point. It
shouldn't matter that ECO is implemented on ECO or Win32/64 or Linux. This
OS/Platform details should be encapsulated and dealt with, allowing the user
to go about the business of building RAD projects that will run on any
platform.
Now that ECO is a .NET creature an opportunity presents itself to port it
another platform that also has a VM runtime - J2EE, and architectural
sibling to .NET.
If ECO were ported to Java, you would then definitely have a product
representing a new Software Dev Paradigm that would run on any OS.
Now, Nick, I realize the above scenario may in fact not involve you as the
Delphi/C# product manager, since I am talking about something beyond that.
On the Delphi front the vast majority of your users are firmly tied to
Win32. Since they are Delphi Developers they have very little reason to
switch tools since .NET gives them no real benefits over what they've got
now. What these users would respond favourably to, waving cash in the air,
is a Win64 Delphi compiler. A strategy of trying to get your Delphi win32
users to "upgrade" to Delphi.NET is a strategy that will continue to fail;
because, although you will retain some of these customers (especially those
still using Delphi/Win32) I think you will lose an equal number of customers
(if not more) to Visual Studio. Because, I see know compelling reason to
use Delphi.NET, when C# is very easy to use by Delphites; and Visual Studio
represents the state of the art .NET implementation, i.e. .NET 2.0 and very
soon .NET 3.0. For those die-hard pascal syntax bigots who really have no
further need of Win32, they even have a pure Visual Studio, state of the art
.NET implementation in Chrome.
If I were DevCo, I would acquire Chrome while there is an opportunity to do so.
And NO, IMO a viable strategy is not to sink even more resources into .NET
development only to remain behind the power curve. I don't think you are
going to beat MS at the .NET game. You've got to do something different.
And the different strategy needs to be implemented asap.
The fact that you are both the C# and Delphi product manager is troubling
to me; because it says to me that your primary focus for Delphi is the same
focus as C# - .NET!! . If this wasn't the case, then the C# and Delphi
product managers would be different people.
I, personally, see no gain in offering a C# personality in BDS at all. You
aren't going to woo any Visual Studio users over to this camp when they've
already got the state-of-the-art implementation of that language. Instead,
you'll just be draining more development resources.
As long as .NET remains the primary focus for Delphi, your product
management strategy will continue to fail. I have seen the list of Win32
"enhancements" you posted awhile back and I am not impressed. When you rise
up to challenge this statement, be careful, I have already seen your "list" of
enhancements. Most of the "enhancements" that made it into Win32 were
necessitated by the requirement to have them in Delphi for .NET. So these
types of enhancments are .NET driven and .NET focused.
I think part of the problem is thinking that enhancing the IDE is a key to
getting customers to upgrade and/or retaining them as customers at all. I
don't think enhancing the IDE is the key to success. "Nice to have", maybe;
but that is all. The Delphi 7 IDE gives me all the productivity I really need.
Plus, the help works.
For my day to day choice of IDE, here is how it is for me:
Frankly, I still do almost all my coding in Delphi 7 even now. To be honest, at
this point its probably mostly inertia. Some of the reasons for using Delphi 7 in
existing projects might be Delphi 7 third party support (especially in my huge
projects); other reasons may be the slower D2006 IDE and slightly less
stability issues. The broken help system is just another nagging item that
lessens the experience. I think for all of those reasons, my subconscious
just tells me: "Got an idea for a new project? Fire up D7, you won't be
sorry".
To sum up, it sounds to me that you are staying with the exact same product
management strategy that has been in place for the last three years. What
has changed? Can you list the items that are different? I know about your
re-commitment to "releasing a quality product", IOW getting the bugs before
your customers get them first... But I am not so sure if this kind of item
should go on "The List"; but instead should go under the rubric of
"Developing software correctly".
Where on your Product Management list of priorities is a native Win64
compiler for Delphi? Can you tell us? Please don't say that "it's a
secret". That answer among other things lacks integrity. Have you begun
working on the Win64 compiler yet? When can we expect a preview? Will we
be seeing something on this front in 2007? Can some of us sign up as "early
experience" beta testers for the new Native Win64 compiler?
Perhaps its time for another Newsgroup Win64 compiler campaign? Actually,
its too late for that. We need to be hearing something positive on this
front now. Or its just too late.
And the beginning of this year I was gearing to switch over to C++ when I
heard about Delphi/Win64 on the roadmap; and unless I we hear something
about Win64 soon; I will reluctantly need to start the gears turning to make
the switch.
-d
 
 

Re: I really hate .NET especially inside Delphi

marc hoffman writes:
Quote
what then, pray tell, would you deem a "deserved" response from a
company representative towards a disgruntled customer, in such a case
as this?

me personally (but that is only my opinion, of course), i believe that
all my customers are entitled to a proper level of courtesy - even if
and when then vice concerns or even outright (and possibly bogus)
complaints...
So if I posted messages that Chrome sucks because it doesn't implement
some feature exactly the way I want or isn't identical to J#, that
would be cool?
Being a customer doesn't mean someone's opinion is automatically right.
anyone's opinions to being automatically right or that their whims will
be met. Bogus arguments and hyperbole get in the way of fixing
legitimate problems and deserve to be ignored.
I especially have problems with "customers" who think they don't have
to be professional, courteous or accurate and then cry foul when they
aren't treated with kid gloves.
Back to you. Do you have any thoughts on the namespace issue?
--
Regards,
Bruce McGee
Glooscap Software
 

Re: I really hate .NET especially inside Delphi

Dennis Landi writes:
Quote
To what end? Play in the same sand-box with a different syntax?
Sorry, Nick, that is not going to cut it. Because its not a reason
for Visual Studio users to change since they are already living and
breathing a C# syntax to do their work now.
I'm not saying they should change, I am saying they should recognize
that .NET means a sandbox where other kinds of kids can play.
Quote
Install 3rd party or open source IDE productivity add-ins and tools
to extend and customize your development environment and help you
develop even faster!
It's right there on the roadmap. What else do you want to hear?
--
Nick Hodges
Delphi/C# Product Manager - Borland DTG
blogs.borland.com/nickhodges
 

Re: I really hate .NET especially inside Delphi

Jolyon Smith writes:
Quote
(there's still some mileage left in this analogy ...)
Groan!
--
Dave Nottage [TeamB]
 

Re: I really hate .NET especially inside Delphi

"marc hoffman" writes:
Quote
John,

>I suppose it depends on one's needs. I have yet to see any actual NEED
>for anything in software development since the invention of the
>fundamental programming constructs all programming languages need to be
>of any use at all. But I have seen some very nice candy in the mean time.

right. all we /need/ to develop software is a hex editor...
Well OK, but only needed if you don't have a plug board and toggle switch
programmable computer. ;-)
 

Re: I really hate .NET especially inside Delphi

Dave Nottage [TeamB] writes:
Quote
Then it begs the question: "what is a 'properly' configured
webserver"?
Microsoft has released guidelines for this and is working heavily with
commercial hosters.
Quote
I consider mine to be properly configured, and ASP.NET apps that use
SysUtils work just fine.
Then you are allowing applications that are potentially unsafe, and
using settings that will not be common on commercial hosters in the
future.
The test server I used when Hadi had the issue was a test server at
Microsoft that we had access to specfically for such issues.
--
"Programming is an art form that fights back"
www.KudzuWorld.com/
Need a professional technical speaker at your event? See www.woo-hoo.net
 

Re: I really hate .NET especially inside Delphi

"Nick Hodges (Borland/DTG)" <XXXX@XXXXX.COM>writes
Quote

>Install 3rd party or open source IDE productivity add-ins and tools
>to extend and customize your development environment and help you
>develop even faster!

It's right there on the roadmap. What else do you want to hear?

I think you must have accidentally cut and pasted someone elses quote from a
different message.
Can you re-read message and answer some of my questions?
When can we see a first cut of a native Win64 compiler? that is the most
important question I have. Where on your schedule is development on the
native Win64 compiler supposed to begin?
-d
 

Re: I really hate .NET especially inside Delphi

I.P. Nichols writes:
Quote
"marc hoffman" writes:
>John,
>
>>I suppose it depends on one's needs. I have yet to see any actual
>>NEED for anything in software development since the invention of
>>the fundamental programming constructs all programming languages
>>need to be of any use at all. But I have seen some very nice
>>candy in the mean time.
>
>right. all we need to develop software is a hex editor...

Well OK, but only needed if you don't have a plug board and toggle
switch programmable computer. ;-)
lol :))
You are right!
--
Ingvar Nilsen
www.ingvarius.com
 

Re: I really hate .NET especially inside Delphi

"John Jacobson" <jake@j[nospam]snewsreader.com>writes
Quote
That template has been instantiated throughout software development
history
with the following pairs

MSFT Tool: Borland Tool:

Microsoft C++ Borland C++ for DOS
Visual C++ Borland C++ for Windows, then Delphi
Visual Basic Borland C++, then Delphi
VS.NET Delphi for .NET, BDS for .NET

The only real difference between now and most of the prior instantiations
of
that template is that there used to be the threat of a government
anti-trust
suit{*word*154} over MSFT that supposedly was intended to keep MSFT from
abusing
their monopoly to create the situation described by the first clause in
the
template.
The big difference now is that Delphi had significant adantages over both VB
and VC++ that have been considerably allievated with .NET. IMO, the last
real advantage over .NET that I see with Delphi is the ability to right
lean, mean and clean natively compiled exes. This, however, isn't an
advantage being exploited by DevCo as far as I can see.
So now that Delphi for .Net is a couple of years behind .Net 2.0 and and
will be (hopefully) releasing 2.0 support when MS is releasing 3.0 support
becomes an even more poignant disparity.
IMO, if you are going to play in the .NET sandbox, then I really think DevCo
needs to do whatever it takes to lessen the lag to a 6 month window and make
that a recurring milestone its customers can rely on. If that happened and
became a reliable occurence, I think a lot of the FUD around DTG chronic lag
behind VS would disappear.
-d
 

Re: I really hate .NET especially inside Delphi

"marc hoffman" <XXXX@XXXXX.COM>writes
Quote
John,

>I suppose it depends on one's needs. I have yet to see any actual NEED
>for anything in software development since the invention of the
>fundamental programming constructs all programming languages need to be
>of any use at all. But I have seen some very nice candy in the mean time.

right. all we /need/ to develop software is a hex editor...
pff, I don't need that either... I clock my opcodes in using switches...
 

Re: I really hate .NET especially inside Delphi

Quote
Delphi is a /different/ language from all the other .NET languages, and
thus it is assemblies will appear different. I don't think that is a bad
thing -- .NET is supposed to be all about allowing different languages
into the game.
My idea about having diffrent langues in the .Net framework is that they all
have their own syntax and funky little features to make the language
unique...
But after the compiler is done with it all assemblies should be the same,
there should be NO trace of the original language left in there...
Vb.net, C# and Chrome are capable of doing this, and they are syntacticly
huge differences between thoose languages...
Best Regards,
Jeroen Vandezande
 

Re: I really hate .NET especially inside Delphi

Bruce McGee writes:
Quote

So if I posted messages that Chrome sucks because it doesn't implement
some feature exactly the way I want or isn't identical to J#, that
would be cool?

Actually, if someone would like a language to behave identical to J#, I guess he'd need a doctor, that kind of doctor with a
couch. ;-)
J# might produce even more bloat and forces you not just to reference a Borland.Delphi.dll, but the whole J# redist. ;-)
And yes, I had my "moments" with Marc, but until now I have yet to experience a discussion with him about his product where
we couldn't find some understanding.
Quote

Bogus arguments and hyperbole get in the way of fixing
legitimate problems and deserve to be ignored.

Well, it wasn't ignored, right?
Quote

I especially have problems with "customers" who think they don't have
to be professional, courteous or accurate and then cry foul when they
aren't treated with kid gloves.

When did I "cry foul"?
Quote

Back to you. Do you have any thoughts on the namespace issue?

Maybe this? blogs.remobjects.com/blogs/mh/
 

Re: I really hate .NET especially inside Delphi

"Nick Hodges (Borland/DTG)" <XXXX@XXXXX.COM>writes
Quote
Rick Beerendonk writes:

>he also showed he disliked pure .NET solutions.

Rick -- forgive me, but this is not a fair comment. I really like
"pure .NET solutions". that is why I like to use Delphi for .NET when
writing .NET stuff.
:(
Quote
The conversation -- at least as I see it -- is about why people think
Delphi /isn't/ a pure .Net solution. I understand that you and other
don't think Delphi is "pure .Net", but since I believe it is, I'm
trying to find out why you and others don't think so.
All .net languages out there inherited their classes from System.Object...
Somehow Borland had todo something funcky to allow the use of TObject... why
?
I don't need a .Create constructors in my objects... what if a C# or VB.net
class has a Create method in there?
Strings... all net sting fucntions are using a zero-based index... but
Delphi.net strings are still using a one-based index...
Unit initialisers, finalizers.... that makes every class in your app JITet
at the startup of the application...
I use .net only for new projects... so I don't need all that backward
compatibility stuff, I want a clean cool OP...
Best regards,
Jeroen Vandezande
 

Re: I really hate .NET especially inside Delphi

Dennis Landi writes:
Quote

When can we see a first cut of a native Win64 compiler?
I can not answer that.
Quote
That's the
most important question I have. Where on your schedule is
development on the native Win64 compiler supposed to begin?
I can not answer that either. I can tell you it is on the schedule and
we are planning on releasing it in 2008.
--
Nick Hodges
Delphi/C# Product Manager - Borland DTG
blogs.borland.com/nickhodges
 

Re: I really hate .NET especially inside Delphi

Hi Tim,
Quote
Robert Giesecke writes:
><snip>
>You cannot use the namespace inside a D.Net assembly:

Ok, maybe I misunderstood what we were talking about, because I thought
the crux of the issue was the generated IL and how the class appeared
in the assembly and it being "non-conformist".

Jepp, that is the main problem. But another point is, that D.Net gives the developer some disadvantages.
When asked why I pointed out these unit "things".
Quote

Note the reason for the above is because of the class attribute
[TUnitName('RobertsTest.Unit1')] it is not because of the signature of
the namespace, you could still reflect over it in exactly the same way
as C#, I confess that I don't know why the attribute is required, I
haven't really had reason to enquire about it.

I know that from a namespace POV there is no real problem consuming D.Net assemblies by other languages.
But, this attribute is defined in Borland.Delphi.dll. So you *have* to reference it, even if you didn't use anything of that
lib it in your code.
Imagine this was a BDS2006-compiled assembly and you referenced it in your C#/Chrome app.
Now try to reference a BDS2005-compiled assembly. Or try to reference a BDS2005-compiled assembly in BDS2006 or vice-versa.