Monday, January 07, 2008

One of Dell's selling points for its new Vostro line is a lack of trial-ware.  In fact, Dell's website makes the following claim on the Vostro homepage:

No trialware.
Customers said they hated trialware, so we took it away. Vostro systems come without annoying trialware pre-installed. You only get the software you want.

If only it were true that you only got the software you want.  Remember these machines are designed and priced for small offices, 1-25 employees.  You know the kinds of offices these are--they're the ones without IT, and are subject to the whims of their vendors.  We recently purchased three Vostros (two Vostro 200 slim towers to expand the POS in my wife's flower shop, and one Vostro 1500 laptop for myself), and I was dismayed to find software I didn't really want on all three:

1) Google Toolbar is preinstalled with IE.  Google recently seems to have changed its motto from "don't be evil" to "total world domination", and I understand they pay a bounty to Dell for preinstallation of their toolbar.  In case you've missed out, Google's been involved in a couple of privacy flaps lately.  The toolbar remembers where you go and what you do, which has probably been a reason for some of these unsecured data exposures on the Internet--the file location was sent to Google after being accessed by an unsuspecting user, and Google indexed it.  Yes, the business was stupid to not secure the data, but Google is the one who indexed the data and made it public, so I hold both complicit.

2) Google Desktop.  This one is worse than the toolbar, IMHO.  Again, it's my understanding a bounty is paid for each installation.  And again, there are privacy issues, especially since it opens (automatically, BTW) with default settings.  If the user doesn't know the software is installed and is indexing their documents, they might be surprised to see them show up in their searches.  While usually pretty secure, Google's various properties have been subject to exploits recently, and there is the chance sensitive data can be compromised because of the Google desktop.  Additionally, Google Desktop introduces unexpected keyboard behaviors (e.g., double control brings up a search box), and for unknowledgeable users, this software makes their computer a thing of surprise.

3) The Dell Search Redirector.  Oh how this one works my main nerve!  If you goof a website's address in IE, you're transported to a Dell/Google cobranded page of "suggested results" and (drum roll please) AdWords ads.  The standard "Internet Explorer couldn't find the website you're looking for" page has been totally replaced.

4) Dell Network Assistant.  Yet another replacement for Window's built in network connection utilities.  Granted, the user-friendliness of Windows XP's network management is really low, but the Dell NA takes forever to find the preferred network and connect.  How slow is it?  I can boot, open Thunderbird and have it searching for my e-mail servers, and it's still another minute or so before DNA connects.

5) Dell Support Assistant.  I feel bad for people who agree to use this one.  You get the annoying toasts saying there's some update for your PC somewhere, but the UI is confusing and uninformative.  If there's an alert, I should be taken right to it when I open the tool.  Plus, we don't need the staff freaking out that something is wrong with the new PCs just because an unexpected notice pops up.  That's disruptive to the day's work, and takes them out of their flow if they're taking an order and one of these messages appears.

Now, you can turn off and uninstall all of these options, but that's not very friendly.  It should be that I can turn on anything I want, not have to turn off what I don't.  Except for the Dell Network Assistant, all of the others have been removed from our PCs.

kick it on DotNetKicks.com

Monday, January 07, 2008 10:19:56 AM (Eastern Standard Time, UTC-05:00)
 Thursday, January 03, 2008

A little birdie just told me Pittsburgh Code Camp 2008 is confirmed for April 12 at Pitt's Sennott Square (Department of Computer Science).  Watch the Pgh .NET website for more information.

Thursday, January 03, 2008 4:28:07 PM (Eastern Standard Time, UTC-05:00)
 Wednesday, December 26, 2007

My latest ASP Alliance article has been published:

Easy SQL to XML with LINQ and Visual Basic 2008

In this article, I demonstrate how to create an XML file from a SQL Server 2005 database using LINQ. He provides a detailed explanation of the relevant steps with the help of source code and screenshots captured from Visual Basic 2008 Express Edition. At the end of the article, he also gives a few references where you can learn more regarding the techniques involved with LINQ.

If you're looking for a super quick intro to using Linq to SQL and Linq to XML using Visual Basic, this might be what you're looking for.  I've added links to a couple other useful references, too.

Wednesday, December 26, 2007 2:19:40 PM (Eastern Standard Time, UTC-05:00)
 Tuesday, December 18, 2007

If you've ever listened to Hanselminutes, you've no doubt heard Scott mention "code smell" or "pretty code".  The new language features in VB9, including LINQ and XML being a native type, make XML generation not only easy, but beautiful.  Aside from the color scheme, look at how smooth this code snippet is.

Dim _order As New XElement(<Order>
    <ShipperRef><%= h.UniqueRef %></ShipperRef>
    <UniqueRef><%= IIf(h.CustomerPo <> "", h.CustomerPo, h.JdeNumber) %></UniqueRef>
    <Comments><%= _orderComments %></Comments>
    <OrderType><%= h.OrderType %></OrderType>
    <Workflow><%= h.Workflow %></Workflow>
    <RORRelationship><%= h.RORRelationship %></RORRelationship>
    <Supplier><%= h.SupplierNumber.ToString %></Supplier>
    <Customer><%= h.Customer.ToString %></Customer>
    <FreightBillableParty><%= h.FreightBillableParty %></FreightBillableParty>
    <MethodOfPayment>Prepay</MethodOfPayment>
    <HAZMAT><%= h.Hazmat %></HAZMAT>
    <GroupAssignment><%= SetGroupAssignment(h.GroupAssignment) %></GroupAssignment>
    <Weight><%= _orderWeight.ToString %></Weight>
    <Volume><%= _orderCube.ToString %></Volume>
    <OrderContact><%= h.PrimaryContactAssignment %></OrderContact>
    <ShipmentContact><%= h.PrimaryContactAssignment %></ShipmentContact>
    </Order>)

My VS 2008 theme is DesertNights, and the code was copied with CopySourceAsHtml.

 |  |  | 
Tuesday, December 18, 2007 12:41:21 PM (Eastern Standard Time, UTC-05:00)
 Tuesday, December 11, 2007

Tip: Install one of the Express editions before you go.

Visual Studio 2008 Installfests are going on around the country.  We had ours in Pittsburgh today, and the place was packed.  It was fun just to tinker with a bunch of other developers around.

Most people brought laptops, which means there were varying degrees of success with the installation (usually due to incomplete removal of beta bits).  One of the longest parts of the process is the installation of the .NET 3.5 Framework.

My installation was flawless and quick.  Just after VS 2008 shipped, I installed VB.NET express, which included the lengthy framework installation.  Since I already had he framework, my installation was complete a great deal of time before anyone else's, and I had time to bang out a quick Linq demo.

In some towns, there are little programming or example contests for swag.  The extra time could do you some good.

Tuesday, December 11, 2007 7:12:48 PM (Eastern Standard Time, UTC-05:00)
 Wednesday, November 28, 2007

December 11, 2-4 pm, or 5-7 pm (two sessions). 

Tuesday, December 11, 2007 (EST) - Visual Studio 2008 Community Launch Party

location: Microsoft Offices

Join us for the Visual Studio 2008 community launch party at Microsoft! We're having 2 sessions: 2-4 pm and 5-7 pm, with lots of giveaways, including 125 full Visual Studio 2008 licenses!

Join the Pittsburgh .NET User's Group on Tuesday, December 11th for
our Visual Studio 2008 Launch Event.  Danilo "Dani" Diaz, Microsoft
Developer Evangelist for Microsoft's Mid-Atlantic Region will be our
featured speaker.  Dani will be demonstrating the new features of
Visual Studio 2008 along with the new features of the .NET Framework
3.5.  Bring your laptop as we'll be providing trial editions of VS2008
for you to install and try out new features as Dani discusses them.
We'll also have a coding competition to see who can utilize the new
VS2008 features the best in creating a killer app; winners of the
local coding competition will be entered into a regional competition
where the stakes (and prizes) definitely increase!  All attendees (up
to a max of 125) will receive, via email, a free license to Visual
Studio 2008 Professional.
 
Due to the expected turnout for the event, we will be having two
sessions for our launch event.  Both will be held at Microsoft's
offices on the North Shore.  The sessions will be held from 2-4 PM and
from 5-7 PM on Tuesday, December 11th.  We'll also have lots of
give-aways at both events.  So come to the December .NET User's Group
on Tuesday, December 11th, and kick your holidays off to a good start.

 
Full info and RSVP link at http://pghdotnet.org/Events/430.aspx.

Wednesday, November 28, 2007 11:55:21 AM (Eastern Standard Time, UTC-05:00)
 Wednesday, November 21, 2007

You may receive this error if:

  1. you created a project in a pre-release Visual Studio 2008, and
  2. your project contains DBML files (created by database designer, like when using LINQ), and
  3. This is the first time you're opening the project in VS2008 RTM.

Fortunately, the answer is simple.  In the code view of the DBML file, you need to change the encoding from utf-16 to utf-8.

Thanks to Julie Lerman for the solution.  Some additional information at Converting web site projects from Visual Studio 2008 Beta 2 to Visual Studio 2008 RTM.

Wednesday, November 21, 2007 3:39:31 PM (Eastern Standard Time, UTC-05:00)
 Tuesday, November 20, 2007

You need to get out waaaaayy more if I'm the one telling you Visual Studio 2008 has shipped for MSDN subscribers.  It's available for download as of yesterday from the MSDN Subscribers Download.

Kudos to the Visual Studio team this time--uninstillation of beta 2 and installation of the RTM bits is so much smoother this time.  Not everything you need to uninstall is removed when you remove beta 2, so you have to go through the add/remove programs and get the stragglers.  Use the list at http://www.microsoft.com/express/support/uninstall/ for guidance.  But, some of the names on the list vary slightly (Crystal Reports 2007 was listed in my Add/Remove as Crystal Reports for Visual Studio 2008), but they're easy to match up.  Also, some of the items on the list (e.g., Microsoft .NET Framework 3.5) are removed by the beta 2 uninstaller, so you may see them in Add/Remove, and get an error when you try to uninstall them.  They clean up with the next reboot.  Expect 2-3 hours of uninstallation, manual clean up and reinstallation.

All in all, though, so much better than with VS 2005.

Tuesday, November 20, 2007 5:26:00 PM (Eastern Standard Time, UTC-05:00)

The ACE Team (Application Consulting and Engineering) has released a beta version of their tool to scan managed code and detect potential vulnerabilities to cross-site scripting.  XSSDetect runs as a visual studio plug-in.

From their blog:

One of the biggest, constant problems we've seen our enterprise customers deal with and we here at Microsoft have to also contend with is that of the XSS (Cross Site Scripting) bug.  It's very common and unfortunately, still an issue we have to deal with in many web applications.  Internally, the ACE Team has been working on several projects to help mitigate and fix these issues, as well as detect them in the code bases that we review so that they can be fixed before going live.

They also have a follow-up post which discusses using XSSDetect to scan large applications.  For very large applications, you may run into an "out of memory" error.  Besides bigger and badder hardware, the suggestion is to analyze binaries in smaller chunks.

Tuesday, November 20, 2007 12:37:16 PM (Eastern Standard Time, UTC-05:00)