CodeBetter.Com
CodeBetter.Com
RSS 2.0 via Feedburner
           Do you Twitter? Follow us @CodeBetter

Mark DiGiovanni

Software Development and Supporting Technologies

November 2003 - Posts

  • Integrity of the Microsoft Certification Program

    The integrity of the certification program is important.  People who obtain certifications by cheating only hurts those who honestly put forth the effort to obtain their certifications.

    Here is an expert from the certification program guidelines:

    “NON-DISCLOSURE AGREEMENT. All Microsoft certification exams, including the content and wording of exam questions, constitute confidential Microsoft information protected by trade secret law. Anyone obtaining access to MCP exams is obligated to maintain the confidentiality of this information. If an individual is caught violating the Non-Disclosure Agreement to which all examinees must agree before beginning an MCP exam, the candidate will be permanently ineligible for any Microsoft certification. The following shows the text of this agreement:

    NON-DISCLOSURE AGREEMENT AND GENERAL TERMS OF USE FOR EXAMS DEVELOPED FOR THE MICROSOFT CERTIFIED PROFESSIONAL PROGRAM

    This exam is Microsoft confidential and is protected by trade secret law. It is made available to you, the examinee, solely for the purpose of becoming certified in the technical area referenced in the title of this exam. You are expressly prohibited from disclosing, publishing, reproducing, or transmitting this exam, in whole or in part, in any form or by any means, verbal or written, electronic or mechanical, for any purpose, without the prior express written permission of Microsoft Corporation. If you, the examinee, fail to comply with the above regulations you shall be permanently ineligible for any further certification. Furthermore, you, the examinee, shall also be decertified from the Microsoft Certified Professional Program and all current certifications associated with it.“

    Besides the fact that you're breaking this agreement by posting exam questions, you are in-fact hurting all of us who have certifications.

    Please take your blog posts down.

  • Wronghorn?

    Tony McCune, Director of Business Development at CrossLogic, wrote the following article:

    Five myths about 'Wronghorn'

    After reading this “unbiased” article, and visiting his website, I can understand why he wrote this completely impartial and objective commentary.

    Excerpt from the article:

    “Microsoft is planning three new versions of Visual Studio .NET: Widby in 2004, Oracas in 2005 and the Longhorn version of Visual Studio in 2006. Each version has a new framework that cannot be used with previous versions. Developers must continually update their skills, which costs customers time and money.“

    Notice the misspellings of the two future releases of Visual Studio.NET... notice the highlighted text in red.

    -----
    This article is a better read and ZDNet's own review.

    Comments from Sebastien Lambla:
    http://thetechnologist.is-a-geek.com/blog/PermaLink.aspx?guid=977c0757-73fd-4b9a-88cb-dfe60f8dc62b

     

  • Open-source fight on the 'wrong battleground'

    Andrew Colley writes:

    Proponents of open-source and proprietary software are exchanging blows "on the wrong battleground" said Gartner Research vice president Andrea Di Maio today.

    Di Maio argued that while open-source disciples have arranged themselves on a front encircling Microsoft and its widely used operating systems, they should instead be pitching their battle in the application arena.

    -----

    Interesting...
    This paper, “A Group Is Its Own Worst Enemy”, written by Clay Shirky, is relevant to this subject.  Scroll down to about the sixteenth paragraph of part one.  The section starts with “ The second basic pattern that Bion detailed”.  Courtesy of Darrell Norton.

  • Old habits resurface

    After browsing the source code for the project I am currently on, I stumbled upon the following statement within a method:  On Error Resume Next.

    Private Sub SubNameChanged()

    On Error Resume Next
    'Some code that may fail here

    End Sub

    A more structured way to handle an exception (error) is to wrap your code in a Try/Catch.

    Private Sub SubNameChanged()

    Try
    'Some code that may fail here
    Catch
    'Code here to handle exception
    End Try

    End Sub

    To better guard against this from happening, remove the Microsoft Visual Basic compatibility library from your project and turn on option explicit, option strict.  This library is good to help VB 6 developers transition to VB.NET.  However, it soon becomes an excuse not to code "the .NET way." 

    Personally I found the transition to .NET easier by starting off in C#.  It forced a complete mental shift.  This is not a knock on VB.NET.  I think it makes good business sense to be able to write in multiple .NET languages.

     

  • Steve Ballmer makes a funny

    Quote taken from  Microsoft, EU square off behind closed doors , Reuters.

    Michael Hausfeld, who has brought U.S. class actions against Microsoft on behalf of consumers, said he will show a videotaped deposition of Microsoft Chief Executive Steve Ballmer to illustrate the company's culture.

    "We asked him (Ballmer)--this is after Microsoft has undergone four investigations and one trial (on) two continents--if he has any understanding of the word monopoly," Hausfeld, who practices in Washington, D.C., told reporters as he entered the building.

    "He actually laughed and said, 'Yes, I play it with my children'," Hausfeld said. "I don't think that's an indication of someone who takes his obligations seriously."

    -----

    Do you ever think the day will come when governments stop harassing Microsoft?

    Comments?

  • Give me your money or your website gets it!

    This is interesting; in Crime gangs extort money with hacking threat , Chris Nuttall writes: 

    Evidence of a new type of international extortion racket emerged on Tuesday with revelations that blackmailers have been exploiting computer hacking techniques to threaten the ability of companies to conduct business online.”

  • Outlook for the future...

    In the article “Firms should be cleaning the desktopAndy McCue writes:

    Steve Prentice, chief of research at Gartner, said in a statement: "By 2004, web services will represent the dominant mode of deployment for new application solutions for Fortune 2000 companies. Advanced, secure web services will be a reality by 2005."

    Other interesting info as well.

  • Excel automation (interop) with the .NET Framework

    ***********************************************************************
    UPDATE: 12/10/2003:
    Related article: http://codebetter.com/blogs/mark.digiovanni/archive/2003/12/03/4199.aspx

    Sample Code: http://www.weprogram.net/Materials/OfficeInterop.zip
    ***********************************************************************

    I haven't found much information out there that addresses Excel automation for my needs.  Here is the scenario:

    Standard reports that currently exist in Excel will need to be reused when migrating to the new .NET application.  My goal is to allow new reports to be added to the system without having to make any changes to the Excel output engine that I am creating.  If the customer later decides to add a report, all they should have to do is create it in Excel, name the cells, and add the Excel spreadsheet to the database.  Then call the report from wherever they decide.

    The data database will have a table of report names and associated information and a related table to hold the cell names and the location of the cell's value.  The engine will take the spreadsheet name as a parameter, pull the spreadsheet information from the database, get the data to populate the sheet, and either output the results or maintain the results to output later after several spreadsheets are produced and inserted into a single workbook.

    Here is my solution:

    First, download the Office PIA's and set a reference in the project.  Then use the following code:

    Imports msE = Microsoft.Office.Interop

    Public Class OutputEngine

        Public Sub AutomationSample(ByVal spreadSheetName As String)

            Dim excelApp As New msE.Excel.ApplicationClass()

            'Get the workbook that contains the sheet to work with.
            'Change the Open method to point to the location of the spreadsheet
            excelApp.Workbooks.Open("C:\Projects\ExcelTest\testNamed.xls", System.Reflection.Missing.Value, _
            System.Reflection.Missing.Value, System.Reflection.Missing.Value, System.Reflection.Missing.Value, _
            System.Reflection.Missing.Value, System.Reflection.Missing.Value, System.Reflection.Missing.Value, _
            System.Reflection.Missing.Value, System.Reflection.Missing.Value, System.Reflection.Missing.Value, _
            System.Reflection.Missing.Value, System.Reflection.Missing.Value, System.Reflection.Missing.Value, _
            System.Reflection.Missing.Value)

            Dim wkbook As msE.Excel.WorkbookClass = excelApp.Workbooks(1)
            'Open the first worksheet.
            Dim wksheet As msE.Excel.Worksheet
            wksheet = wkbook.Sheets.Item(1)

           'Assuming that the cells are properly named, set the their values to their numerical equivalent.
           'The below code will be replaced with code to retrieve the data to place in the named cells.
            wksheet.Range("NamedCell1").Value = 1
            wksheet.Range("NamedCell2").Value = 2
            wksheet.Range("NamedCell3").Value = 3

            'Delete row 17 because we can :)
            wksheet.Rows(17).Delete(msE.Excel.XlDeleteShiftDirection.xlShiftUp)

            'This will launch the workbook into Excel.  Saving of the spreadsheet will have to be done
            'manually if the user decides to save it.
            excelApp.Visible = True

        End Sub
    End Class

    This allows the most flexibility when making changes to the spreadsheet or adding a new one to the system.  The customer can change the font, column width, etc. without the need of a developer on hand.

     

  • University of Tennessee in Iraq

    This is too funny not to post...

    An army officer decided to paint a water tower in Iraq the colors of UT... how funny is that!

    See the links below:

    http://www.metropulse.com/dir_zine/dir_2003/1337/t_cover4.html

    http://web.utk.edu/~agroves/archives/00000022.html

    http://www.themannings.org/soapbox_archive/000391.html

     

  • Microsoft sets up virus-hunting fund

    http://zdnet.com.com/2100-1105_2-5102485.html?tag=zdfd.newsfeed

    Will this really work?

    Law enforcement has had success with programs like Crime Stoppers and Fox's TV show America's Most Wanted...  I think this program could have an impact on the “teenage hacker” or the programmer who writes this stuff for kicks.  I do not think this program will be yield any results if it is a government responsible for releasing viruses.

  • CodeSmith Presented at WeProgram.NET's November user group meeting

    Mark Bonafe presented CodeSmith, Eric J. Smith's code gen tool to the WeProgram.NET users group.  Mark has been working with CodeSmith for some time now and delivered an outstanding presentation on this tool's capabilities.  This is a must have tool.  Mark's samples will be available here as soon as they become available.

  • To tax or not to tax... or not to tax yet.

    After reading and thinking about the questions posed in this article by Declan McCullagh, I offer the following thoughts:

    It is inevitable that the government will find a way to tax the internet.  Whether it is a tax on our connection, purchases, etc., the government will find a way.  Collecting taxes on purchases made from a company that currently does business in the state where the purchase is being made is reasonable, considering you would pay taxes on the item if you walked into the store to make the purchase.

    The internet is still in its youth, at least the internet as we know it today.  It has revolutionized the way we do business, travel, educate, and entertain and has the potential to continue to do so.  The list of benefits could go on and on.  My bread and butter is web development and has been for the last five years.

    Anything that will stifle innovation is a bad thing, such as a tax on the Internet right now.  Here is an example.  Recently I signed up for Verizon's DSL combo package.  I get DSL service for $35 and unlimited local/long distance for $49.99 per month.  My average bill is far higher than the expected $84.99 + disclosed taxes.  There are hidden taxes and fees that were lumped together that totaled more than $23 dollars (I do not have the exact figure in front of me).  When I called Verizon and asked them why this information was not disclosed, they could not give me an answer other than it was additional government imposed taxes and fees.  Had I known about these additional taxes and fees, I would have rethought the combo package and might have stuck with the service I had.

    Tacking another tax (probably will join the non-disclosed group) on to the above example could influence a consumers decision when selecting dial-up or high speed service.  Web applications are continuously increasing connection requirements.  What if consumers decide to stick with a slow internet connection to avoid the additional taxes?  The bandwidth craving web applications would be slow and would ultimately affect the user’s web experience and possibly online purchases.

    You might say that consumers should just suck it up and get a fast connection if they wish to enjoy the internet.  I think technology will eventually force people in that direction, but taxes will surely slow things down.

    What do you think?  I'm sure I opened up a can of worms here...

More Posts

Our Sponsors

This Blog

Syndication

News