Archives / 2007 / January
  • .netCHARGE Notes One Year Later

    About a year ago, I was setting up a new site and wanted to be able to accept credit cards via an existing Authorize.Net account.  One of my long-time partners and sponsors is DotNetEcommerce, and one of their products is .netCHARGE.  We picked up a copy of .netCharge and installed it into our site.Initially I had a small challenge because the server version of the control (which I used) expects to be installed in the GAC, and so is not configured for xcopy deployment.  However, the installation notes cover this and within a few minutes I was past this hurdle, and if you use the website-specific version of the control, it supports xcopy deployment … more

  • Samsung i730 As Laptop Modem

    I got this working once a year or so ago when I first got my phone but then haven’t messed with it since.  So recently I thought about it again and now I’m using Vista so I wasn’t sure how challenging it would be.  Turned out to be pretty painless following the instructions from this post. Go to the phone app and then press: **PATH (which is **7284) You can then select USB and then plug the i730 in to your computer. It should automatically install the Samsung USB modem drivers and you should not see activesync popup/connect. You may need to download these Samsung MCCI drivers. You then need to make a new network connection that dials: #777 with the username: … more

  • Coding Optimization Tip: Avoid Repeated FindControl() Use

    In a project I’m working on I have a recursive FindControl() which is quite useful for finding controls that are hiding inside of templates like LoginView or CreateUserWizard.  I’m working with some junior developers and trying to instill best practices into them.  This is an example of a code optimization technique I’m applying today to some code one of them wrote.Problem Code:            if ((Common.FindControl(LoginView3, "NotesTextBox")) != null)               { … more

  • Historical Perspective on Iraq and Afghanistan

    Like most of the media, my local paper tends to have a pretty strong bias against the conflict in Iraq (and, generally, any conflict) in its own editorials and those it chooses to print from national syndication, along with most Letters to the Editor.  However, last week there was a letter that made me want to just stand up and cheer "Yes! Somebody actually gets it!" and write in to the paper myself to say "Me Too!  +1!  What He Said!" in the hopes that they might realize that this is somebody who actually knows what they're talking about, unlike most of the things that are published.Since I'm not sure how permanent the links are at the Record … more

  • 24 Month Limit on Guard Reserve Active Duty Time Eliminated

    Associated Press  |  January 12, 2007WASHINGTON - The Pentagon has abandoned its limit on the time a Citizen-Soldier can be required to serve on active duty, officials said Thursday, a major change that reflects an Army stretched thin by longer-than-expected combat in Iraq.  The day after President Bush announced his plan for a deeper U.S. military commitment in Iraq, Gen. Peter Pace, chairman of the Joint Chiefs of Staff, told reporters the change in reserve policy would have been made anyway because active-duty troops already were getting too little time between their combat tours. Read the full storyThis is pretty much bullshit, but not unexpected.  I'm very happy … more

  • CodeFile or CodeBehind

    I just fixed a problem on a coworker’s machine that was quite odd in that the fix involved simply changing CodeFile to CodeBehind in a user control (.ascx) file.  The issue was that in the ASPX page I was doing a FindControl within a Repeater’s ItemDataBound event, and casting the resulting control to the type of the codebehind of the user control.  So for example if the user control was foo.ascx then in foo.ascx.cs I might have had a type Acme.Web.Foo.  The Inherits= attribute in the @Control directive was set correctly to Acme.Web.Foo, but the type cast was failing in the ASPX page.  When I debugged it, I found that the type of the thing I was getting back … more

  • Could not load file or assembly Microsoft.ReportViewer.WebForms

    Ran into this error while deploying an application to production: Configuration Error Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately. Parser Error Message: Could not load file or assembly 'Microsoft.ReportViewer.WebForms, Version=, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified. A quick search found the issue.  The server needs these three files: … more

  • Web Application Project Conversion Tips

    I upgraded a major website (Visual Studio Web Site Project) to a Web Application Project on VS2005 SP1 today.  I ran into three snags that are worth mentioning.  Before I get to those, however, make sure if you’re going to do this conversion yourself that you follow these steps.1) After conversion, I was getting errors with all of my (formerly) App_Code files.  They had been moved to Old_App_Code by the convert to web project tool, but they were not being built.  I was able to cause compile errors by adding garbage characters to the .cs files, so I thought they were being compiled, but in reality they weren’t.  After some minutes of trying to resolve … more

  • ASP.NET AJAX 1.0 Released Today

    Today, Microsoft released ASP.NET AJAX 1.0.  You can download it, as well as the latest AJAX Control Toolkit and Futures January CTP, from  Kudos to the ASP.NET team for making this happen!  I know a lot of web applications have been waiting for this day to go live with their AJAX implementations, including several of my own projects which should be upgraded in the next day or two. The ASP.NET AJAX Control Toolkit includes the following new controls: AutoComplete: The much-requested control that provides suggestions to complete input typed in a textbox Calendar: Client-side calendar control MaskedEdit: Control to enforce input entered into a text box is … more

  • Zune Wishlist

    Zunes, or some similar device, would work great with Windows Media Center.  It would be sweet if they worked as Media Center Extenders, and could use their WiFi capability to play (but not store, necessarily, except in a temporary cache) anything that was on the Media Center server.  So, for instance, I could maintain all of my music on my home Media Center appliance, and then I could use this WiFi MP3 player (perhaps a Zune descendant) to connect to the media center and listen to music from it – even if the MP3 player device had little or not storage of its own. Obviously such a device would only be useful in the house, so most likely it *would* have storage of its own, and … more

  • CodeMash Scott Guthrie LINQ Keynote

    One of the points in Scott’s keynote at CodeMash was the idea that declarative programming (saying “what I want”) has many advantages over imperative programming (“how I want to do it”).  One advantage he noted is that as we start to move more and more toward multi-core computers, rather than faster and faster single cores, the need for applications to be partitionable over multiple processors will increase.  Standard imperative algorithms used for many tasks in our apps tend to be written for single threaded, one cpu operation.  For instance, to get a list of customers from Ohio, one might get a list of all customers and then write a for … more

  • CodeMash Day One Thoughts

    Well, to start, Josh Holmes has said he’ll shave his head if Technorati has indexed at least 500 codemash blog posts by the end of the show this evening.  So, this will bring him 0.2% closer to that… I didn’t make it to CodeMash quite as early as I’d have liked, but I did have the opportunity to use the water park with my family for a little while, and then to meet up with Scott Guthrie and several others for dinner last night.  One of the topics of conversation was about Agile methodologies, and how it seems like one of the common themes that all developers at the show, regardless of the language they use.  Everyone loves Agile.  But of course, … more

  • Outlook Feature Request

    A heavy Outlook user had the following suggestion for Outlook improvement.  She’s currently using Outlook 2003 but will likely upgrade to 2007 very soon, however she’s seen Outlook 2007 and it doesn’t address this yet.One thing that I would like to see in Outlook is the ability to change folder colors.  Because Outlook has been one of my primary tools for organizing and tracking my business contacts and correspondence, I have over 200 folders.  Unfortunately, when I need to go to a particular folder (and this happens probably 100 times a day just for filing messages, given my current volume of correspondence), it is not necessarily quick to just scroll … more

  • COPY One Table Row in SQL

    I have a table with a bunch of columns in it that I wanted to be able to duplicate so that I could just change a couple of columns and not have to re-enter all of the columns and their values.  I did some searching and the closest I came to what I wanted was this.  So, working with Gregg on IM we came up with a more flexible solution that doesn’t require typing in the 20–some column names one might have (twice): ALTER PROCEDURE [dbo].[aa_widget_Copy] ( @widget_id int ) AS BEGIN declare @columns varchar(5000) select @columns = case when @columns is null then column_name else @columns + ',' + column_name end from information_schema.columns where table_name = 'aa_widget' … more

  • CCNET with MSBuild and AssemblyInfoTask

    This afternoon I embarked on a quick (hah!) task to fix a problem with my CC.NET implementation.  I’m using CC.NET running on my Team Foundation Server machine.  It checks my TFS source control to see when anything in my project has changed, and if it has, it kicks off a build using an MSBuild <exec> task pointing at a solution (.sln) file which it grabs from source control.  The problem I’m encountering is that one of the folders in this Workspace is a website.  Not a Web Application Project, just a plain old VS2005 website.  It has a /bin folder with a bunch of assemblies in it, but as it is not a Web Application Project it has no project file and … more

  • More DotNetNuke Installation Notes

    Went with the 4.4 Source this time instead of the starter kit.  Ran into an FAQ item regarding Name ‘Config’ is not declared but found the answer in this blog.  Since I’m running this on Vista it had some issue with the app pool that was being used, but it offered me the following command line to fix the issue, which worked: c:\windows\system32\inetsrv\appcmd.EXE set app “Default Web Site/DotNetNuke_2” /applicationPool:“Classic .NET AppPool” So I was able to complete the install: Yay! And I go to my portal, and it comes up (yay!) but… it’s got a critical error from some Object Reference not set to an instance of an … more

  • History of ASP.NET AJAX

    As we approach the long-awaited RTM (or RTW – Release to Web) of ASP.NET AJAX (formerly “Atlas”), here’s a brief history of the project: June 2005 – Development on what would become “Atlas” begins.  Most of the ASP.NET team is focused on delivering ASP.NET 2.0 and VS 2005, however, so the initial team is pretty small. October 2005 – First Atlas Community Tech Preview (CTP) is released. November 2005 – VS2005 and ASP.NET 2.0 ship.  More Microsoft team resources available for “Atlas” work. December 2005 – The UpdatePanel, probably the most important control in ASP.NET AJAX apart from the ScriptManager, debuts in … more

  • DotNetNuke 4 Experience

    I want to create a quick, simple club website for a club I’m in.  It’s been on my TODO list for a couple of years now and tonight I thought I’d just grab the latest DNN starter kit, set a few properties, add/remove a few modules, and throw it out there.  Here’s a recap of my experience thus far (quitting for tonight): 1) Downloading DNN.  There’s 5 different things you can download (after registering) and unfortunately no information at all on the download page as to what is or is not included in the Starter Kit.  I ended up pinging Shaun Walker directly and he was quite helpful in letting me know that the Starter Kit should work for what I … more

  • Interview with Scott Guthrie

    I had a chance to watch this interview with Scott Guthrie on Channel 9 this weekend.  It’s worth a watch.  Scott talks about some various technologies his teams are working on, but to me the more interesting parts of the interview had to do with Scott as an individual (like the time his car was towed while he was working late at Microsoft).  If you’ve never met him, he’s very approachable, down to earh, and just one of the nicest people you’ll ever meet.  Not to mention that once you learn about all the things he’s involved in, it’ll likely make your productivity seem somewhat sub-par.  Scott’s also giving a keynote at the … more

  • Real World Application Performance Tuning Example

    Many of you know that I’m very much into high performance and scalability techniques.  One thing you need to remember when applying performance tweaks is that as your application changes, your performance optimizations may need to change and evolve with it.  Let me demonstrate this with a case in point. On, a fairly busy web site with about a thousand articles and tutorials on software development, each article displays its total views and its views in the last 10 days.  Now, perhaps the ideal design for this data, from a performance standpoint, would be to schedule a job to calculate these fields and store them in the database in the Article table, and … more

  • Five Things

    Craig tagged me so now I don’t feel left out.  Oh, and Keyvan did, too, but I’m just finding it.  Sorry about that!Here’s five things you may not know about me.1. Like Scott, I’ve never had a cavity (nor even fillings to prevent cavities).  I was blessed with unusually strong teeth, though at the expense of not having a few.  I only had 3 of my 4 wisdom teeth (woot! only had to get 3 pulled!) and I was missing permanent incisors on the bottom (doh! had to get implants!).  Not sure how I lucked out on the dental front; my dad’s got strong teeth, too, but my mom and sister not so much.2. Many know this, but I’m an Army veteran.  … more

  • Alienware End Of Life - What? So Soon?

    I own an Alienware m7700 17” beast of a notebook computer.  I bought it in December of 2004 as my big splurge after returning from a tour in Iraq (my buddies were all buying cars and Harleys, so I figured a laptop for work and games was pretty conservative in comparison).  It worked as advertised, and was fabulous for playing Counterstrike and other games throughout 2005 and as a development machine (2GB of RAM helped here).  I figured when I bought it that, being top of the line, it should serve for 2–3 years as a primary machine and then could live out its days as a secondary machine to use if a friend came over to game or I needed a machine to use as a test box … more

  • CodeMash - An Ohio Tech Conference

    What's that you say?  Ohio has no tech conferences?  Well, we do now!  Register quickly for CodeMash, happening next week in Sandusky, Ohio (not too far from Michigan and Indiana).CodeMash more

  • Free Office Professional 2007 and Office Groove 2007

    Here’s an exciting announcement related to the upcoming launch events for Windows Vista and Office 2007: Receive your FREE copy of Microsoft Office Professional 2007 and Microsoft Office Groove 2007* when you attend a Windows Vista, 2007 Microsoft Office system, and Microsoft Exchange Server 2007 launch event near you! At a launch event you’ll be able to: ·         Attend breakout sessions for IT professionals and developers ·         Test drive the products and evaluate their functionality ·         Network with peers, , and … more

  • MIX07 Registration Open

    I’m planning on attending MIX this year – last year I had to miss out due to an earlier speaking commitment.  This year’s event will be held at the Venetian in Las Vegas.  Here’s some more info: Registration opened today the Microsoft MIX07. This is public news that you can blog.   This event is geared toward Web developers, designers, online advertising professionals and includes a broad set of partners and customers. Building on last year’s inaugural event, MIX will continue to explore how to build more interactive and responsive experiences that take full advantage of the capabilities of the Web. This is a great opportunity to dive deeper into … more

  • Zune Doesn't Play When Connected to PC

    [categories: zune]If you have a Zune player that won’t play music while it’s charging (connected to the PC) and instead simply says ‘Connected’ you can correct the problem very easily.  Simply close the Zune software on the PC and the Zune device will wake up and resume functioning as normal (while still charging). more

  • Zune Links

    [categories: zune]I’ve accumulated some links, mostly for video encoding stuff, for the Zune that I’d like to share here. PQDVD – commercial software for DVD ripping.  Also will do DivX and other format converting, but I haven’t used that feature because I didn’t know about it and I only bought the DVD converter.  They offer video and DVD for $39.95, and based on my experience with the DVD tool that would be worth it (to me, anyway) unless some of the free stuff below works nearly as well (which I haven’t determined yet). SUPER – Free video encoding and DVD ripping.  Haven’t used it yet but I’ve downloaded it and it was … more

  • ASP.NET Hosting Recommendation

    Recently I was asked if I could provide a reference for my hosting company, ORCS Web.  After responding, I thought it would be worth spreading the love a little via my blog as well.  So, now that I’m somewhat recovered from the holidays, here goes.  The questions below were asked by a potential customer – the answers are mine and refer to my personal experience with ORCS Web. We are looking at moving our POP3 mailboxes/system over to ORCS and wanted to get your feedback.  Below are a few questions I have and would appreciate your response.   Also I checked out your site and it looks great.  I love reading new tutorials and learning new stuff.  I … more