March 2003 - Posts

C# vs. VB

Cory Smith points out a thread about VB vs C#. There is an interesting note in there:

"Clearly career-wise C# is the way to go..... most serious developers despise the bizarre and legacy-ridden basic syntax so there will be a hard push to use C#. There is much to be said for a clean slate. Also worth noting, Microsoft is standardizing on C#....must be a reason there."

This brings up a point I have rarely seen discussed. Regardless of the endless language "features" debate, C# has become the defacto standard for .NET development. If anything, .NET developers should really get to know C# for that reason alone--even if they think VB is still the greatest thing since the Apple IIe. Case and point:

http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=C%23+site%3Asourceforge.net

http://www.google.com/search?hl=en&lr=&ie=UTF-8&oe=UTF-8&q=VB.NET+site%3Asourceforge.net

SourceForge doesn't even projects to be classified as VB.NET currently. They must be mashed in with the "Visual Basic" group:

http://sourceforge.net/softwaremap/trove_list.php?form_cat=160

As long as you never have to modify or inspect anyone else's .NET code, it may be fine to ignore C# for the time being, but chances are that isn't going to be the case for very long if you want to take advantage of the rapidly growing .NET community's resources.

Posted by Jesse Ezell with 5 comment(s)

Clemens' AOP Demo

"MS Finland put up a (long, 30min.) Windows Media 9 series stream of the demo that I did in my AOP talk over in Helsinki. And Matt Powell from MSDN is so nice to mention the things I demo there in his MSDN TV episode on SoapExtensionReflectors/Importers. My demo code is here."
[Clemens]

Posted by Jesse Ezell with 2 comment(s)

Macromedia's Platform for Rich Application Development: Central

Kevin Lynch lets us in on Macromedia's new platform for Rich Apps. The whole thing looks like a cross between Windows Catalog and the MSN Dashboard.

Don't see a lot of real world value in it yet. I mean, number one on the list in their "productivity apps" section is called, "Internet App Pack: First AppPack of Fun Internet Apps," ie. games and gadgets to distract you from what you should be doing. In their little "visualize how this works" piece, they tell the story of Lisa. Here is how Lisa's day starts:

6:00 AM: Lisa gets up, checks the movie listings, weather, recipie of the day, and orders her grocieries for the day.

6:10 AM: Lisa quickly checks her email and wakes up the kids

7:50 AM: Lisa is riding the train to work. She checks the weather and looks at the movie listings.

8:30 AM: Lisa gets some coffee and buys an iPod off of eBay using Central.

9:00 AM: Lisa arrives at work and notices that her first meeting isn't for an hour, so she checks her mail and reads some blogs.

10:00 AM: Lisa goes to her meeting. What a productive day so far!

So, four hours into her day, Lisa has done absolutely nothing but surf the net. Meanwhile, the Iron Developer has already developed and deployed four rich client applications. Maybe this is why I just don't connect with Macromedia on this whole Flash is the "next generation" thing...Their definition of "productive" is a little more like an Iraqi Militiaman's than mine is.

[1] Macromedia Central
http://www.macromedia.com/software/central/

[2] Internet Applications: A New Frontier
http://www.macromedia.com/software/central/whitepaper/central_wp.pdf

[3] Macromedia Central: Screen Shot
http://www.macromedia.com/software/central/central_lg.html

Posted by Jesse Ezell with no comments

Who are These People?

"Lewis reported that commanders here say 1,200 Iraqis were killed trying to ram checkpoints or firing at U.S. soldiers.

Officers say just one U.S. soldier has died."

[MSNBC]

Sometimes I really wonder what someone must have been thinking... this is one of those times...

Posted by Jesse Ezell with 3 comment(s)

Windows Server 2003

Windows 2003 Server is RTM now. Anyone know when the RTM will be on MSDN?

Update - The RTM is available to MSDN subscribers now.

Posted by Jesse Ezell with 2 comment(s)

Stop Flashing Me

"The reason why Macromedia's idea has merit has little to do with the actual programming tools, and much more to do with it's runtime. "
[Comments from Lance]

Funny... I would say that the runtime itself is the very problem! For example:

1) It is incredibly slow.
2) There is no BCL. You have a few little built-in objects you can use, like sprite objects and xml parsers, but that is it.

As a result, it will definately only be capable of lightweight apps, definately not "smart client" applications... maybe we can call them "less dumb client" applications. If you are going to go through all the work of creating a Javascript based front end, why not just use DHTML? You get the same "everyone has it" advantages, except that you can make reusable DHTML components and encapsulate the logic in ASP.NET WebControls. In the end, the DHTML version will most likely give a better user experience as well, because Flash based UI components are so sluggish and don't blend in with the rest of the page very well.

You might say, "well, flash is cross-browser and cross-platform, so it is easier to support multiple devices than with DHTML". However, you must realize that a lot of cool Flash sites and apps require IE 5.5 running on top of Windows anyway, because the player isn't as really cross-browser as Macromedia would have you believe! So, given that your users are going to require high end graphics cards to view your site, and that you may end up having to require IE 5.5 on Windows or at least restrict to later version of IE and Netscape anyway, Flash may actually limit the audience instead of broadening it (the 98% proliferation is just the computers that have the plugin installed, not that will actually be able to run your app...and for Flash MX, the proliferation is only at 71.7% currently, and MX is required to do anything cool, so the numbers aren't that great). If you stick to DHTML, the DOM is pretty stable now in the browsers and there are plenty of js libraries to abstract the differences for you, so you are in a pretty safe place.

[1] Revamped Macromedia site irks customers
http://news.zdnet.co.uk/story/0,,t269-s2131698,00.html

PS: I used to be a big Flash fan. I wrote the SWFSource SDK, which enables Flash SWF support in third party applications and is generally considered the best choice if you are looking for an SDK for creating flash enabled applications (even before Macromedia discontinued their own SDK, we helped plenty of companies move their code from Macromedia's SDK to ours). So, I know a bit about the internals of the Flash format and have been around the block a few times. I still think Flash is a pretty cool tool, but Macromedia needs to make serious changes if they ever want to make any progress in the application development market.

Posted by Jesse Ezell with 1 comment(s)

Google News: Blogger, IPO, etc.

Jeremy Allaire (who left MM to work for a VC company) has posted details of a recent interview with the co-founder of Google.

"Esther had a great interview with Sergey Brin, co-founder and President of technology for Google.  First I should say I was generally very impressed with Sergey -- his demeanor, energy and clarity of thinking was refreshing.  Details on the interview follow..."
[Jeremy Allaire]

Posted by Jesse Ezell with no comments

Speak of the Devil

I just mentioned that Macromedia was throwing the idea around that Flash could be used for desktop apps a few days ago. Seems that ZDNET has picked up on it as well:

"...Macromedia Central will create an environment where Flash applications can run independent of the browser. Along with providing the client software--a free addition to the free Flash player--Macromedia plans to sell a wealth of downloadable Flash applications created by third-party developers. Macromedia will take 20 percent of any software sales, with the rest going to developers..."

"...Lancaster said one potentially significant market for Central is the corporate sector. Central could be incorporated into commonly used parts of corporate portals, such as employee directories, to make them available when a worker is away from the office and offline..."
[ZDNET]

I still stand by my original remarks. Why do I want to write a rich client app in Javascript (Flash's ActionScript is based off of JavaScript for those who don't know), when I can create it ten times faster, make it ten times as powerful, and have ten times the flexibility with a .NET rich client? As an experiment, try creating a rss aggregator like RSS Bandit in .NET and then try creating it in Flash. My guess is that:

1) The .NET one will take maybe an hour or two.
2) You will give up before finishing the Flash one.

If someone is up for it, I'd love to see a comparison of the time it takes someone to do this in each of the two environments. I am sure the results would illustrate my point quite nicely.

Posted by Jesse Ezell with 3 comment(s)

WebService Results

"So, in the previous example, you decide to submit a strongly-typed DataSet of rows back via the WebService when synchronizing. You then enumerate the rows of the DataSet table and create instances of the custom business objects. On each business object you call its Save() method. What does your WebMethod return? Does it return:

  • A) True to indicate atomic success, False to indicate atomic failure.
  • B) A DataSet of errors. If the DataSet is empty then no errors occurred.
  • C) An enum representing the status of the operation.
  • D) Other? "

[Darren Neimke]

D. Don't return anything. If there is an error updating, you should throw an exception, which will be returned in a SoapFault tag. The SoapFault tag has a Detail property that can be used to return application specific error information (like which rows failed or whatever you think might be useful to the consumer).

Posted by Jesse Ezell with 1 comment(s)

The Kind of Nation We Are

"Far from being the Great Satan, I would say that we are the Great Protector. We have sent men and women from the armed forces of the United States to other parts of the world throughout the past century to put down oppression. We defeated Fascism. We defeated Communism. We saved Europe in World War I and World War II.

And when all those conflicts were over, what did we do? Did we stay and conquer? Did we say, "Okay, we defeated Germany. Now Germany belongs to us? We defeated Japan, so Japan belongs to us"? No. What did we do? We built them up. We gave them democratic systems which they have embraced totally to their soul.

And did we ask for any land? No, the only land we ever asked for was enough land to bury our dead.

And that is the kind of nation we are."

--Colin Powell

[1] Grouchy Old Cripple
http://www.grouchyoldcripple.com/archives/000271.html

Posted by Jesse Ezell with 5 comment(s)
More Posts Next page »