Whats up with Stored Procedures these days?

Day 2 at DevConnections 2008

21. April 2008 18:56 by Scott in   //  Tags: , , , ,   //   Comments (4)

The second day at DevConnections was a bit more exciting than the first. On the first day, we had just basic keynote addresses from some pretty popular people.  On the second were a bit more hardcore and real sessions.  I was happy with the sessions I took, but clearly some developers cannot present well.  Before I talk about these sessions, please understand that these are my unique views and no one else's.  I know I will be giving a harsh critic on one presenter.

Sessions Taken:

A Lap around Visual Studio Team System:  Taught by Neelesh Kamkolkar, which is the Senior Project manager for Team System.  This is the only harsh critic I will give in this post and I am sorry for doing so, but in order for Microsoft to give better sessions, they must learn from their mistakes.  Neelesh spoke about the ins and outs of Team System.  He spoke in an extremely general topic which was dissatisfying.  It seemed to me that Neelesh wasn't prepared at all for this session.  Every test or application he tried to run, failed on him and not only did he NOT try to work on the problem and get it fixed so he can show us a working example, but every time he failed; he said okay lets move on to something else because of time.  I was just upset that we didn't see Team System work at all.  This to me was a very poor planned session and I hope Microsoft sees that he is a better manager than a presenter.  I do want to give him the benefit of the doubt seeing that he said he traveled to three different parts of the world in 7 days, but I imagine he can test app's on his laptop while on the plane. Am I correct?  The only true thing he got done was getting advice from one of his friends in the back (probably a developer at Microsoft) to tell him what to do on Team System.  It almost seemed to me that he had less than 20 hours on the actual application.  I would have rather had the person in crowd that was helping him present and fix his mistakes than him up there as the project manager.  Hopefully Microsoft will learn.

LINQ Deep Dives and Best Practices: This session was taught by Colin Meek.  Now let me tell you about an extremely intelligent programmer at such a young age.  This is your man.  He presented LINQ which didn't hold very many best practices actually he used bad practices, but I must say that he forewarned us that this is not a session on best practices.  The idea behind the session was to take about 15 lines of code to query a database and shorten it down to only 2.  Quiet an impressive goal if I may say and what's awesome is that he did it even with parameters for the query.  He started out going into pretty complex stuff which was a bit beyond me having not come from a CS background, but with a CE background.  He demonstrated what they do to get LINQ to actually work and example code of how they create LINQ. He then went on to actually show us a very basic LINQ query which if you used LINQ at all, you would have done these types of queries.  One thing I did take away from the Session if nothing else, was the point he made was the reason why they switched up the "from and select" syntax in LINQ from SQL. He said it was because they can't actually help you with intellisense against the query if they have the "select" first.  If the "from" is first, they can pull the information from the database and have it work with intellisense.  Pretty smart move if I must say so. Overall, I liked it a lot.

Introduction to the New ASP.NET MVC Framework: Taught by the one and only Scott Guthrie which many consider is an icon in to software industry.  From his keynotes, I saw people trying to get pictures with him and saying that he was a big talking point around the office.  As VP of Microsoft and in charge of ASP.NET, Silverlight, WPF, WCF, MVC and a few other off the top of my head, he is the man to talk to if you want a developers prospective.  At the session he discussed the things MVC framework has in store for developers.  He compared it to a "Car v.s. a Motorcycle" and he truly believed in that. Some people like the car and some like the motorcycle. he said, By no way do we need to switch over from webforms.  I saw only 2 truly real advantages over webforms.  MVC currently can be used for that avid testing bed of developers. It also has URL Re-writing built into it.  He said that ASP.NET will be implementing URL re-writing in the coming future so then the only difference will be the fact that it is easier to test in. That's it ladies and gents, that's the gist of it.  I hope you take that to heart, because that is the only difference.  I for one am glad to know that MVC will not be a new type of language I will have to continue in.

SQL Reporting Services: Advanced Report Design: Taught by Jason Carlson (Doesn't have a online profile).   This is one of the best sessions I have been to so far except for the MVC with Scott Guthrie.  I still think I am taking more from this session than any session so far.  Jason took a DEEP dive into Reporting Services and showed us how to create some pretty good looking reports which I am extremely happy with what I have taken back from this session because the reports I currently have on my application smell like a bad woman's perfume.  I could not say thank you more for showing me the light on reporting services.  I wish I could explain the depth we took, but it is too much information to be explained in one short paragraph.  Maybe later.

Things I learned today outside the sessions:

  1. MySpace.com runs completely on ASP.NET and has now for two years - Confirmed by Scott Guthrie after chatting with him for a few minutes, MySpace still has the CFM tags, but they made the switch over to ASP.NET 2 years ago. Scott told me to email him about a case study they did on the MySpace switch over so I did and will post that valuable information on my blog once I get it.  For a Stat, MySpace saw a 500% reduction of server resources when they switched over from ColdFusion to ASP.NET.  I was happy to hear that because its hard to find any facts on ColdFusion v.s. ASP.NET. This stat is comes from Scott Guthrie.
  2. ASP.NET, Silverlight, MVC, XAML and all the new technologies Scott's Team is coming out with are INTERCHANGEABLE! - What does this mean?  I can upgrade to ASP.NET 3.5 and already have a fully fledged application in production and I can add a XAML page developed in Expression Blend, a full Silverlight page and a complete MVC page running all on the same application with ASP.NET 3.5.  This is Impressive!  I can run all the developer technologies and integrate every single one, into one application that is already in production.
  3. http://memorabilia.hardrock.com/ is a MUST visit site for an awesome Silverlight application! - Hard Rock wanted to categorize all their memorabilia they had collected over the years so they brought it all together for a photo shoot using a 500MP Camera!  I ask you to just go check this site out.  When you Zoom in on the pictures, Really Zoom IN and when you zoom out, really zoom OUT. It is extremely impressive with what they did. I hope you enjoy it for I know I did.

Free Stuff:

  1. Everyone received a free copy of Visual Studio Standard.
  2. AT&T had a developer party and people walked away with LCD big screen TVs, AT&T Tilts and shirts along with free beer and food.

I think that's it and I hope I helped you out with what happened today at DEV Connections 2008.

Scott.
kick it on DotNetKicks.com

If you liked this post, please be sure to subscribe to my RSS Feed.

First day of DevConnections 2008

21. April 2008 12:18 by Scott in   //  Tags: , , ,   //   Comments (0)

I thought I would tell you what the first day was like.  I am writing this at 1:30 am (too much fun and just kind of happened with the amount of knowledge obtained tonight).

I arrived around 5:30pm, running a little late doing errands and saying goodbye to my girlfriend before I left.  I arrived at one of the largest and finest hotels I have seen in my life I think.  On the shuttle from the parking garage to the hotel, I was told that this is the biggest Marriott in the world complete with 7 pools and a water slide.

From there, I checked in and got settled for about 10 minutes until I had to go downstairs for the keynote speaker of the night.  A guy named Norman (forget the last name) spoke on Visual Studio Team system.  I listened to these things and it is more like they are trying to sell you something than educate you on things, but they did provide some great examples.  If you can, imagine one company with a few hundred software applications currently in development and production.  Visual Studio Team System can bring together and allow for the Developers, Managers, Customers, Designers, etc access to each and every application that comes out of the company.  So like the project I am working on, I would be developing in Visual Studio and the customer and my boss would login to a web based portal and review the current bugs, changes, updates, check-in's, nightly builds etc and see what I am accomplishing.  At Microsoft, the Team system they are using is greatly expanding month by month and they have well over 11,000 users with over 1,000 software projects being built.  If my boss wanted to look at my project and see how it is coming along, all he would have to do is log into this web portal and review every intricate detail in my application.  He wouldn't log out either, he would stay logged in and visit another application in the company and see how it is coming along at the same time.  And then the customer would log in, and submit a change request.  That means no more time spent on developing an SCC workflow for change request from the customer!  From there, Team system dives into the testing the application.  Team System can record movements with the mouse and key strokes to have a live maintainable test.  This allows for automated tests to be completed with a save.  So let’s say I build a workflow and it runs for 5 years, but then I make a software change. Instead of making a new test, I would run the old test over night and see if it passes or fails.  Team system then has the intelligence to tell you all the tests that failed and succeeded over night.  It also has an amazing bug tracking tool that can only be built on.  (Getting more tired)

From there, Scott Rizzo came up and talked about SharePoint.  I have only used it as a web portal application, but it has the ability to create a web application with very little development time.  It blew my mind that I could be up and running with a intranet site in minutes that could be flexed out to thousands of users.  SharePoint definitely should be looked into by all companies more.  This one has the power and development turnaround time to beat out all the other intranet portals that have been built throughout the years.  I was impressed.

Free stuff:  So like I said, If I win the Harley, I will give it to my boss.  I have kept up my end of the bargain and so after the key notes we had to visit about 50 booths and get a card stamped to enter it for the Harley. Sure was interesting, because it actually made people stop and look at each product which I must say is pretty impressive.  80% of the floor was taken up by SharePoint add-ons and the other spots were taken by asp.net guys that have some awesome controls.

I have about 100 business cards, a free backpack with registration, a few cozies for bottled beverages, a bunch of hand outs, a bobble head that AT&T was giving out (by the way they are throwing a developers party tomorrow night and are pushing big for teaching developers to develop for the AT&T mobile apps), two note taking binders, and I think that is it so far.  Also, I had a chance to win a Wii, but of course I am unlucky.

At the end of the night, a free beer with a ticket and after some pie; I headed over to the computer lab and met a guy named Jason Carlson.  He is speaking about SQL Reporting services which I do fully intend on attending.
So far, I have had a blast and kind of wished there would have been some hard core software guys playing around in the lobby tonight, but I was wrong.  Instead I found a bunch of Microsoft guys to hang out with. (I guess I am somewhat of a farm boy "Fan boy")

Internet is $15.00 a day here also, so Instead I decided to just hook my laptop up to my phone and use its Internet so I don't waste money, therefore I don't think I will be online that much but still will see email on my phone after checking it periodically.  Hope you guys are having as much fun reading as I did type.  Later!

Scott Pio
kick it on DotNetKicks.com

If you liked this post, please be sure to subscribe to my RSS Feed.

Malicious Code in 2007

13. April 2008 23:50 by scott in   //  Tags: , , , ,   //   Comments (0)

Whenever I surf the web, I try to look for things to learn from. I try my best not to go to anything that can’t be learned from. I read news articles, I listen to audio books and some of my favorite movies are things that can be used in the real world. I specifically like the movie The Boondock Saints. But this blog isn’t about the Saints. Its about what I learn about the world and wish to share with others.

Today I found a white paper published by Symantec, the virus ware company. They listed off one of the most detailed papers about the overall Internet security threats that we were exposed to in 2007. I for one wasn’t going to read over the entire 105 page document. I just don’t have enough time in the day with all the other projects I am currently working on along with the countless hours of community service I try to do.

I did skim over it and pulled out the graphs (I love Graphs, Visual representations are amazing) which are represented below.

Below shows the amount of malicious activity by country which is extremely interesting. Not because United States is up on top, but because China which has the Great Firewall is second. It surprises me that a country that regulates an extremely large amount of Internet for its people isn’t able to hold back the amount of activity it produces. You would think that a web site that has malicious code on it would be blocked by the firewall, but from what these records show, is that hackers and phishers are thriving in this environment

Untitled-1

Below shows the malicious activity per subscriber to broadband. This shows that the countries shown above on the top echelon that are on the bottom echelon of the image below have allot of open connections and are privy to wireless attacks. The countries above have a limited amount of Internet and the ones below have it spread throughout the country i.e. United States.

Untitled-2

Below shows how much each person is worth on the black market, which if you think about it, its not much money when someone sells an email list. It is almost disgustingly low. Am I only worth $15.00 to capture my social security number and other information (row three)?

Untitled-4

Patch Development

Below shows a breakdown of operating systems and how fast they can push a patch out. I am not going to argue for a particular operating system, but I am very happy to see with the amount of money Microsoft has, they do push out patches extremely fast compared to Apple, Red Hat and HP. I always knew that Apple had a large amount of vulnerabilities, but this graph shows that Apple can be vulnerable for an average of 79 days, which gives hackers a huge window to develop farms or computers from a large amount of user base. If they get control of these computers, they can then distrbute on going updates to their code which would allow them never to be detected.

Untitled-5

Below shows browser vulnerabilities which is an awesome display of how fast companies work. Even though Internet explorer is so high on the list of days, 11 days is still a pretty quick turn around. But of course I do surf with Mozilla Firefox, so I am better off than most.

Untitled-6

How many vulnerabilities were there in the past 6 months or a year? Looks like Firefox is high on the list, but I imagine they are getting a larger user base over the past 6 months and therefore are being exported allot more.

Untitled-7

Plugins are not the best thing to run on your site unless required by a customer who shows a specific user community. Active X is definitely the worst in this case and that is enough said.

Untitled-8

Below shows the amount of vulnerabilities in general for the passed year, which I am happy to say that they look like there overall decreasing.

Untitled-9

Below is the graph showing that the code being written for malicious purposes is growing and not on a small scale. It looks like it is growing by 100% every 6 months. That is huge, and it also shows that more and more countries are coming online and creating more user communities that destroy and manipulate.

Untitled-11

Below shows what kind of code is being written for malicious attacks.

Trojan - is a piece of software which appears to perform a certain action but in fact performs another such as a Computer Virus. Wikipedia.
Back Door - is a method of bypassing normal authentication, securing remote access to a computer, obtaining access to plaintext, and so on, while attempting to remain undetected. Wikipedia
Worm - is a self-replicating computer program. It uses a network to send copies of itself to other nodes (computer terminals on the network) and it may do so without any user intervention. Unlike a virus, it does not need to attach itself to an existing program. Wikipedia
Virus - is a computer program that can copy itself and infect a computer without permission or knowledge of the user. Wikipedia.

Untitled-12

How do things propagate and spread to other systems? Well the answer is file sharing with executables or .EXE files. Most likely done through P2P systems that download and upload software along with other highly wanted software. A user could accidentally open a piece of software and never know it was a virus until it was too late.

Untitled-13

For those P2P people out there who like sharing files, well I sure hope that you keep the directories closed and only share files through torrents. I know WinMX is still alive and kicking, but it has a hopefully robust detection system.

Untitled-14

Who deals with advertising on P2C systems like Google or Yahoo? I know I am a publisher as seen on the side of the page, but there are Trojans out there that automate it for people allowing them to rake in allot of money. I know I used to be a part of a group that practiced in this activity when I was around 14 or 15 years old. I surfed the net while having banners displayed on my desktop, but during that time I was able to get around it because of a group of Angels I was associated with. I have left all that behind now after taking in a large amount of money and putting those companies into bankruptcy. I look back on it now and wish that I hadn’t.

Untitled-15

On the last graph, I am also curious to see that China is one of the highest Phishing domains out there, but how is this possible with the Great Firewall?

Untitled-16

I hope you now have a better understanding as I do of the problems with the net these days and the top contributors to malicious technology.

Window Panels in Visual Studio 2008 (Dang-it, stop it!)

10. April 2008 23:30 by scott in   //  Tags: , ,   //   Comments (5)

There is a small feature that is just wasting little seconds that add up! I started using Visual Studio 2008 and started to notice it as soon as I started making new projects.

So, what is my problem, well I will tell you. The windows in my Visual Studio keep closing when ‘the pin is not pushed’. Let’s say I want to put a bunch of new controls onto the ‘deck’ from the toolbox. I have to first ‘push the pin’ and then start moving them over to the deck. I can’t just keep the ‘pin un-pushed’ and drag over the items. It should at least stay open for a second or two, and if it gets a user action to grab another item or at least put the mouse inside the window it shouldn’t move away so fast.

clip_image002

I have even tried grabbing really fast when the window closes and I can barely even get my mouse inside the window before it closes. I know it sounds like it was built for the keyboard operator more, but sometimes I get controlling and want to use my mouse.

One more problem with the windows, if you open a CSS file via the Solution Explorer, the window stays open for eternity. I often find my self having to Alt + Tab or open another window before it closes. This is a design flaw that I have had to deal with for a little while.

Dear Scott Guthrie:

Since you have some sway at Microsoft, can you please put this on a future release or even something in the options that you can set? I would love to have the option to either close quickly or close after 2 seconds so it lets the user open multiple items in the window. Please help. How about releasing a quick fix? That would be awesome!

Respectfully a .NET guru.

Scott Pio

One more reason why GoDaddy is Awesome!

9. April 2008 00:13 by scott in   //  Tags: ,   //   Comments (0)

Today, I have a problem with my "Quotes of the Day" Widget by nyveldt. I received an error today with my BlogEngine.Net blog. I was at work and couldn’t get home to fix it and I didn’t want to lose my user base. So I went into GoDaddy and clicked on the File Manager tab.

I then tried to download the Web.config file from GoDaddy which didn't seem to work. I then checked mark the file and clicked Edit. GoDaddy actually pulled up the source code of the file. WOW! I was impressed. I changed the Debug Errors to Off so I can view the problem at work. I then went to the XML file it have a problem with and again, clicked edit and it opened the file right up. I changed the problems and it fixed right away. Wow. I was impressed that I could edit the files right on GoDaddy. That is one more reason I love GoDaddy. Thanks to the GoDaddy developers, I got my page right back up and running.

RSS Add-in for BlogEngine.Net that reminds readers to sign up to RSS

6. April 2008 23:08 by scott in   //  Tags: , ,   //   Comments (0)

I was reading along blog posts and saw a reminder at the bottom of the post to sign up to the RSS.  I debated with my self for a few seconds and decided against it because its just some ploy to get you to sign up.  Heh.  So I created my own ploy.  I created an extension that sits at the bottom of every post and reminds the user with the text you prescribe and the RSS link you prescribe.

It was something small that only took like an hour, but I think it will be a good constant reminder to readers that they can and should (hehe) sign up to the blog because they enjoyed your post.

So here it is.

Basically, you just drop it into the folder BlogEngine/App_Code/Extensions.  It is a nice little feature that you can see, I have already installed.

I currently have one glitch in the code that I can't figure out.  If you use another theme except for mine, you will end up with a space after the link for the RSS.  Why, well I have deduced that it is the little picture that sits next to links that shows it will open in a new window.  For some reason though, the picture doesn't actually show up.  Hmm.  So if you can fix this glitch, I will give you credit both in the Extension and this Blog.

Thanks Guys and Happy Blogging

kick it on DotNetKicks.com

Building a Linq Query gives me a question.

3. April 2008 23:12 by scott in   //  Tags: , , ,   //   Comments (5)

So here I am building a new site that will estimate around 500,000 page views and 50,000 database transactions DAILY.  I am currently working on a simple query that selects ONE row[column] from a database and returns the value to the rest of the methods.  I have a simple thought or question I would like answered and thought this would be a place to bring it up.

Is the foreach loop required even if I know I will receive only 1 record back from the database?

That's it and to give you an example:

        CS_Code.DataContext db = new CS_Code.DataContext(SQLStatementsCS.ConnectionStringID());
        var query = from RN in db.Province
                    where RN.Name == Name
                    select RN.uid;

        int value;
        foreach (var uid in query)
        { value = uid; }


I think it is kind of pointless to create a foreach loop and use 3 lines of code to just get an ID out of the database. So let me know in the comments section if this is the only answer and I will point out the answer and give you a link back to a site of your choice.

Thanks guys and dolls.

kick it on DotNetKicks.com

My Bill of Rights as a Programmer

2. April 2008 02:53 by Scott in   //  Tags: , ,   //   Comments (15)

I have seen many lists of requirements programmers wish to obtain before they start the job.  I am no different for my company.  I have my own requirements before I start a new job and I wish to create a dynamic list of my rights as a programmer.

  1. Every Programmer shall have a quiet working environment.
    • This is essential in order to think.  If the employer cannot provide a quiet working environment, see Bill of Rights #2.
  2. Every Programmer shall have the right to listen to music.
    • The essential need for a quiet working environment or to be able just throw on music to down out the background noise is essential.  We as programmers work on brain power so therefore we as programmers need to concentrate.
  3. Every Programmer shall have a fast PC.
    • Developers are required to run a lot of software that requires tons of memory and speed to get the job done faster.  The Fast PC only ensures that the programmer is able to research on the Internet while developing code and upgrading the database all at the same time while keeping up on the essential work email.
  4. Every Programmer has their choice of both Keyboard and Mouse.
    • The mouse and keyboard will only allow them to develop faster and become skilled at both shortcut keys and mouse techniques.
  5. Every Programmer shall have a fast Internet connection.
    • This is the mother of them all.  The ability to research faster is required for faster development.
  6. Every Programmer shall have two or more monitors.
    • The research done on having two monitors (here, here, here and here) far outweighs the time spent on only having one.  So even before I get offered a job, one of my first questions is will I have at least two monitors?
  7. Every Programmer shall have a high back comfortable chair.
    • This is another question I ask before going any farther with interviewing.  It not only makes the developer happier, but it helps with poster and is good for the body.
  8. Every programmer shall have access to the right tools.
    • Would you rather develop in FoxPro or Visual Studio?  Would you rather develop on Dreamweaver that Visual Studio for .net Development?  Would you rather use SQL management 2000 or use SQL Management 2005?  IT is a requirement that the company be up to date on software development.
  9. Every programmer shall have the right to have admin access on the PC.
    • There is no need for a programmer to be in restrictions of IT experience because most programmers have more experience with PC's than most IT folks.
  10. Every programmer shall be allowed to attend a developers conference once a year.
    • If companies are willing to pay 60k-100k a year for programmers, they can fork over the other 2k needed for the conference.

All things listed here are the basic needs of a programmer.  They are the movers and shakers that make companies faster with both commerce and day to day operations.  Companies are expected to follow most of the these requirements.  If you are not getting the rights you deserve, ask for more or find another place to work.

kick it on DotNetKicks.com

If you liked this post, please be sure to subscribe to my RSS Feed.

What else do companies have to do to keep Software Engineers?

30. March 2008 22:09 by Scott in   //  Tags: , , , ,   //   Comments (9)

A few days ago, I read a great article about creating a Great Place to work for software engineers.

It covers the newly tried and successful 4-day work week, Working from home on Flexible time, profit sharing, and overtime.  I do have a few thoughts on this though.  The 4-day work week is an amzing feature, I love the idea of this and would hope that all companies would either implement the 4-day work week or the 20% Google Time. I would love either one to be implemented. The work from home and Flex time is an amazing feature and I have personally written to my companies Vice President for a request on this one along with the 20% time.  She only said that she forwarded to HR.  This makes me sad.  Profit sharing and overtime, I agree that there should be no profit sharing, because this income only allows the company to grow and push out into more fields of their prospective market.

I would like to add two more requirements to the list.

1. Two monitors that measure at 19" or bigger.
2. A very comfortable High Back chair.  The current chair I would in is high back, but it doesn't support my back the way it needs to. I honestly think very little research went into these kinds of chairs.

Before I would ever get hired by another company, these two things would be requirements on my part.

Scott Pio

Why do I document Code?

28. March 2008 00:23 by Scott in   //  Tags: , , , , ,   //   Comments (2)

batflw

Hello and welcome to another session of why do I document code.  Today's contestants are:

1. The Software Requirements Document otherwise known as the SRD - This valuable little document tells the developer what to develop.  Is was started by the Carnegie Mellon.  It is used as a contract document between the developers and the customer.  The customer starts the document by what they expect the program to do.  Everyone knows that the customer always changes their mind, well if you use the SRD, they are held by a legally binding contract that specifically states what to develop.  You as a developer don't develop anything else except for what this document states.  Therefore if the customer changes their minds, well you can either point back to the SRD or decide to charge them more money.

2. The Database Maintenance Manual otherwise known as the DMM - This handy dandy contestant describes every little feature about your applications database.  IT describes the tables, the columns, the attributes of the columns, the generated script of the entire database, the user logins, the ways too install and upgrade the database on another machine, the DTS and last but not lease etc...  This basic manual describes in detail every single part of the database.  The reason for this is if you had a total hardware melt down and nothing works, well you now have a copy of the database that can be recreated using the script that was generated and put inside the file.

3. The Software Design Document also known as the SDD - This massive document describes all the methods, namespaces and functionality of the Code.  IT also describes the developers thoughts and opinions to why they code the application one way compared to another.  When I say everything, I mean everything. This document has all the developers thoughts and opinions when they were designing and developing the code.  Thank god most comments can be extracted via an XML parser.  The XML parsed comments can even put it into a nice little help file just like MSDN.com.  Where can you learn how to write one, well let me tell you.  Our good friends(Not really at all) at Bit Formation has made a great tutorial on how to write one.

4. The User Guide -  The user guide plain and simple is the thing users use to get around the application.  Every little thing that was EVER created by man has some sort of user guide attached to it.  These are a no-brainer, but long and tedious to write just like the other documents listed here today!

Now that you know our contestants, lets find out why you would do such a thing.

Alright, enough with the game show. I thought it would be a good starter.  I completely agree that all the documents though rather tedious and considered a time waster by developers is a necessary part of life.  Developers need to both COMMMENT CODE and write documentation.  That is the way it should be and should end up.  Documents are there in case you as the developer get into some kind of horrific accident and are no longer able to continue on.  They must find someone else to keep going.  Sorry, but that's the way life is.  You are writing the documentation incase you have to be replaced.  I currently work on a 20 year application and I know for a fact that I will not be working on this same application for another 20 years.  I just won't do it.  It is too boring and mundane.  I do know that some day, they will hire another guy or girl who will have to continue my work and when that day comes, the documents are there.

Ladies and gents, just think of documents as another day in the life of a developer. Things must be documented.

Scott P.

kick it on DotNetKicks.com