February 2004 - Posts

Apache (Foundation) vs .NET(ASP.NET): Final smackdown

I've had a loook at the Apache website and found their incubator program quite intriguing.


I'm quite fond of open source as a means of collaboration, fellow developers cameraderie, (academic) research and
covering overlooked niches, but not as a a political/ideological means to harm commercial companies or anticapitalism.

Cleared that up, Apache foundation comprises a whole range of technologies battling .NET or MS products.
There are groups working on Apache, the webserver, PHP ,Phyton and ultimately Java in the Jakarta project.
Apart from these majors, there are several hundreds of subprojects, including most of the leading open source frameworks
for building and testing software(Junit, Ant. Log4J etc etc). Even .NET is represented with Log4Net.

As a coalition Apache has lots of credibility, good software and the support of all ABM vendors and users.

Now, as an evangelist of MS technology - despite my regular rants - I see Apache as a formidable nemesis for
MS, but also view Apache with some envy as there is nothing comparable in the .NET world.

It would make a wise business decision for MS to clone the setup. The pros would be able to create an independent conglomerate of the top 20 openly available projects like Ghengis, OpenCF,DNN ,.Text add some of the MS magic like the Application Blocks, Project Niobe and mix with INETA, MVPs and the other technology stalwarts of the MS influence sphere.  

Scoble?

links:

http://weblogs.asp.net/sandyk/archive/2004/03/02/82914.aspx
http://weblogs.asp.net/rjacobs/archive/2004/02/09/70355.aspx
http://weblogs.asp.net/rosherove/archive/2004/02/10/70706.aspx
http://weblogs.asp.net/markcli/archive/2004/01/12/58041.aspx
http://weblogs.asp.net/jezell/archive/2004/02/10/70828.aspx
http://weblogs.asp.net/jledgard/archive/2004/03/03/83645.aspx

Why .NET developers don't grok advanced stuff

Picking up on Sam Gentile's post I completely agree that there are not many developers understanding the advanced features of .NET like Remoting, transactions, queuing, LDAP and encryption stuff. Java folks do much better being accustomed to products from enterprise vendors like SAP, IBM, Oracle.

By comparing these thesis with my own experience doing gigs in many places I put it down on 3 things:

1) DNA
Many .NET developers come from a line of business environment, web design or client server world where most programming is pretty simple as the code then resides on one or two layers , does things like validation and some data access.
 
2) Vendor education
Most articles focus on doing the simple stuff or how to do things like a datagrid pretty.

3) Toolsets
VS.NET for all it's cosiness is targeted at beginner/intermediate developer, helping with things like data access and doing simple stuff simpler. Enterprise templates are inside, just pretty well hidden.
Architectural guiding or enforcements is non-existant. The wizards to facilitate writing microcode are ok, but where are the wizards for doing the advanced stuff like Remoting, transactions, queuing, LDAP and encryption?


Anecdote: Before joining the .NET world I worked on the Oracle JDeveloper IDE. Jdeveloper allows you create queues with routing and all from DB tables or objects with a wizard generating stubs both inbound and outbound. And then
routing and stuff, all graphically like designing a DTS package in SQL Server. Where's a thing like that in VS.NET? (perhaps White Horse modelling will do that !!??)


On the architectural side, VS.NET doesn't really help for large projects unless the (experienced) developers creates the layers as projects himself. VS.NET should create the 3 or 4 layers automatically as new projects or slice in different namespaces as WebForm1.BLL.cs, WebForm1.DAL.cs,WebForm1.UI.cs in one project and then nag the user if the architecturally wrong classes(like ADO.NET) are placed in the presentation layer.

Original post
http://samgentile.com/blog/archive/2004/02/12/11304.aspx
Others
http://udidahan.weblogs.us/archives/015193.html
http://weblogs.asp.net/cosgood/archive/2003/04/23/5994.aspx
http://staff.develop.com/halloway/weblog/2003/01/23.html
http://blogs.geekdojo.net/pdbartlett/archive/2004/02/12/1007.aspx

Rebuttal

http://blogs.msdn.com/alowe/archive/2004/02/24/78878.aspx


 

Automatic updates registry hack - get your loved ones to patch and autoupdate Windows

Automatic Updates

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]
"RescheduleWaitTime"=dword:00000003
"NoAutoRebootWithLoggedOnUsers"=dword:00000000
"NoAutoUpdate"=dword:00000001
"AUOptions"=dword:00000004
"ScheduledInstallDay"=dword:00000000
"ScheduledInstallTime"=dword:0000000D

 

copy the Automatic Updates snippet above and save as .reg (Registry file) . Mail it to all your loved ones.

It will download and install patches automatically at 1 PM everyday

DISCLAIMER:  This applies only to versions of Windows which have automatic updates installe like W2K SP2 + SUS, W2K SP3+ and XP SP1+. I deny all responsability, liability etc etc ...

some posts about automatic updates

http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/05/07/13102.aspx
http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/05/11/13358.aspx

 

 

.NET esoterica

unusual .NET stuff at steve maine's blog

Will Yukon be idiot proof ? A tale of a forgotten DB

In one of the last gigs I stumbled upon an orphaned SQL Server db.Everybody used it, but nobody managed it. It had hummed along non stop over a full year on a cluster, without giving problems. A minimal maintainance plan had been setup  when it was created, then it was "forgotten" by the admins. It had reached the size of about 70 GB without anybody noticing, filling up 4x36 GB RAID disks. Now diskspace was no more. And it started throwing fits.
The users noticed, the technical people were called. And then they noticed.Nobody had tenderly cared this "little" app since it was born, not even to notify by mail, pager or net send of incumbing problems.

The question: will Yukon force the creator of a db to create some minimal monitoring alerts/auto-partitioning/auto-indexing?

Software Development Process Automation

Reading Scott Hanselman's blog  about Validation some thoughts came up.

What do you do when you want to avoid tedious repetitive manual tasks?   Automation
What do you do when you want to avoid tedious repetitive manual tasks in Software Development?  Complain


One of the things I learned - I have to give due to a former mentor - is to automate some tasks I find extremely tedious and time consuming. I am willing to spend an extraordinary amount each time a new technology comes up to adapt an existing piece of code (Application Blocks) or build my own.


Some of the things that come to mind are:

Validation - www.peterblum.com has a nifty package
Data Access
Look and Feel

here and here I wrote soem more about software dev

 

Where is MS marketing? (SmartPhone, but no smart marketing)

I went in search of a Motorola MPX 200, which runs Windows Mobile 2002, here in Italy. In most shops they have it, but there is no branding in the windows display, NO fact that it runs Windows, no funky accessories, nothing at all.

Why Windows patching sucks (part 1)

1) no easy way to detect missing patches
2) no API to detect missing patches
3) no webservice with patching config info (well, hfnetchk has the xml file)
4) tools(like MBSA or URLSCAN) not bundled into popular downloads like IE, WMP, IM
5) no download manager to allow easy downloading

Other posts I about windows configuration/patching

http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/05/07/13102.aspx
http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/02/10/6974.aspx
http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/02/09/6877.aspx

windows code post-leak opinion

The website www.microsoft-watch.com posted some suggestions of what MS shall do.
It suggests that MS realease ALL the NT4/W2K code as open source so that windows compatible programs would run on any *ix based OS, creating even more demand.
What a hogwash.
What would make sense for a market follower does not make sense for a market leader with 90+ % of a market. For the extra 10 % they would give away 90%? OK, if anyone gives me 90 bucks, I' ll return 10. Any takers?

One Thing although would be nice: if MS could give all the "good" guys out there the (semi)automatic legal permission to hold copies of the leaked code. That way any academic,public institutions, partners and security firms could help with fixing things very fast without getting embroiled in the legal wrangle.

Vulnerability Alert: man or machine?

Just a consideration, 80% of system vulnerabilities are due to misconfigurations ... no blame on system admins then :) 

about patching vulnerabilities

http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/05/07/13102.aspx
http://dotnetjunkies.com/WebLog/stefandemetz/archive/2004/05/11/13358.aspx

Clueless hardware bigots and code optimization

I often came across situations where business managers where absolut happy to spend their budgets on supa hardware then made a big fuss about getting a code profiler/refactoring tool. So there were situations where badly written stored procedures with cursors strangled 64-way boxes or the code went into deadlocks and killed reliability.

Thorny issue: To release or not to release Audit/Security/Hacking tool ?

I' ve coded up a tool to audit a web site for script injection checking following things:

  • Input on form
  • Querystring
  • URL(I know, URLSCAN partially does it)
  • CSS : cross site script injection
  •  SQL injection tring to change SP, launch extended SP (send mail), grant user rights, delete stuff

 

Now I am undecided if I should release it without being another John Lam

The weakest link of .NET

One of my beefs with .NET is the declassing of MSMQ to a second class technology within .NET. I know that Longhorn - Indigo will get this type of tech up to par again.

What's you vote for the weakest link in .NET?