EyeOnTech
lost in the underflow




NetNewsWire: More news, less junk. Faster

Subscribe to "EyeOnTech" in Radio UserLand.

Click to see the XML version of this web page.

Click here to send an email to the editor of this weblog.


Monday, May 6, 2002
 

Jaguar, next major Mac OS X update coming this summer. MacCentral: Jaguar will “come with Rendezvous, Apple’s proposed new industry standard for automatic discovery of computers, devices and services on IP (Ethernet, AirPort) networks. In other words, the technology will let Macs automatically recognize other computers on a wired or wireless network and share files with each other or, theoretically, with other digital devices. In his keynote, Jobs demoed streaming music files off of another Mac connected through an AirPort network.” [ranchero.com]
9:27:54 PM    

Joel on .NET.

Your friend and mine Joel Spolsky has done the impossible: he's said something I disagee with.

But I hardly ever choose a language based on syntax. Yeah, I prefer the {}; languages (C/C++/C#/Java). And I have lots of opinions as to what makes a "good" syntax. But I wouldn't accept a 20 MB runtime just to get semicolons.

You're a smart guy, Joel, so it surprises me that you think much of this 20MB redistributable (especially coming from a world with an already large redistributable). Applications today already require large things to be installed: Internet Explorer, MDAC, VB runtime, etc. As time goes on, these things tend to become baseline in the OS. Heck, way back when you used to get Microsoft Windows redistributed with applications because you couldn't assume it was there! (see: Aldus Pagemaker in the Windows 2.x days). Let's also remember that Microsoft is pushing out the .NET redistributable via Windows Update. Yeah, 20MB isn't small, but these days, it isn't large, either. We regularly download 10+MB browser upgrades, a couple megabytes here, a few megabytes there. Personaly I think you're overreacting about the size.

More importantly, though, you've really missed the key point, which is the runtime. What you get inside that little 20MB bundle of joy is so valuable to the developer (and subsequently the end user, who reaps those benefits both directly and indirectly) that it's hard to believe that you'd boil it down to a question of semicolons.

You've already spoken at length about how much easier things are with ASP.NET, and believe me, you're just scratching the surface. So I wonder, what motivated this post? Would you care to share with the group? :-)

[The .NET Guy]
9:21:46 PM    

Back and Forth We Go... :-).

Whee! Indented italics is me, non-indented italics is Justin. (Clearly I need to bring back my comments system...)

It'll be hard (politically) for companies to choose libraries that aren't in general use, because it'll be hard to find engineers that are familiar with those libraries.

So for the next few months, no one is going to use .NET because no one knows it?

You left off the part where I spoke of standards. People are learning .NET even moreso because it's Microsoft new sanctioned way to write software than they are because the libraries rock, I guarantee it.

...but really, if you have people choosing a variety of languages based on skillset...

Do you honestly see this happening?

All the time. Any company of any size is going to have software engineers with varying skills and skill levels. Very few of them are going to be capable of consistently high quality unmanaged C++.

But the original argument was the its not the language its the BCL and the productivity you gain.  I say that I am almost as productive with C++ and the right libraries as I am with .NET.  I say almost because I haven't found a good C++ library for data access.

Not all the gains in .NET are about the BCL, but many of them are. Simplifications of the platform are reflected into languages like C# (I'm not agreeing with Joel, who claimed it was "all about the syntax", either, because clearly the ability to use {} isn't a big gain in productivity). Interoperability, easier memory management, standardized libraries, and easy cross-language support are all very important to .NET.

[The .NET Guy]
9:17:18 PM    

More Joel Comments.

I agree with Sam that .NET gives you a lot for your 20MB. [...] But (you knew there was a but right?), I'm starting to see the same type of productivity increase in C++. The trick is to find class libraries and frameworks that make your life easier. [Justin Rudd's Radio Weblog]

I both agree and disagree. On the question of libraries, I do agree (partially) that you can get much of the benefit of using the BCL. However, you'll probably have to invest a lot more time "auditioning" libraries, trying to find the right fit. It'll be hard (politically) for companies to choose libraries that aren't in general use, because it'll be hard to find engineers that are familiar with those libraries (as great as Boost is, I've never seen its on a resume anywhere). Using the .NET libraries means you have this massive thing that saves you time on research, but also gives you a standard that you'll start to see on resumes.

But there are things that you just don't get in the unmanaged world that you get with .NET. I know most of the "language independent" stuff is guff, but really, if you have people choosing a variety of languages based on skillset, the integration work is a lot harder in the unmanaged world. IDispatch-based COM stuff is -- let's be honest -- hideous for us C++ people. And of course, as soon as you go cross-language in the unmanaged world, all those great C++ libraries become unavailable to the VB programmers. But perhaps the largest problem of all is that C++ (and COM) are just ludicrously complex compared to C#. You have to have extremely talented, highly productive, highly disciplined people to write great C++. In my experience, this is a pretty big deal-breaker for any large group.

So, yeah, it's possible for a small team of extremely good people to do themselves equal to the .NET world by using unmanaged C++. Hell, I used to be where you are about 18 months ago, but even as one of the largest proponents of C++ around (save perhaps Chris Sells), I still immediately recognized the value of .NET. I really don't want to have to live in the unmanaged world any longer than I have to.

Assuming we get generics soon, anyway. ;)

[The .NET Guy]
9:15:34 PM    

This is a fair history of what's happened in the NeXTstep - OpenStep - OSX world since the early 90s.

Steve Jobs and the History of Cocoa, Part One. O’Reilly: “In this first part of a two-part series, Simson Garfinkel and Michael Mahoney explain why Cocoa and Mac OS X aren’t nearly as revolutionary as they are evolutionary—and still in the process of refinement. The story begins with Apple’s genesis in the 1970s and takes you through key events up through 1993, when NeXTSTEP began to flounder.” [ranchero.com]
9:04:17 AM    



Click here to visit the Radio UserLand website. © Copyright 2003 George Herndon.
Last update: 2/27/03; 10:37:41.
May 2002
Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Apr   Jun