ASP.NET News from Blogger: K. Scott Allen   Get the feed of: K. Scott Allen

Total News: 442

Premack’s Principle Applied To Software

Wikipedia lays out David Premacks principle in laymens terms: Premack's Principle suggests that if a student wants to perform a given activity, the student will perform a less desirable activity t...

What’s Wrong With This Code #24

Sometimes the simplest solution introduces a bug. Lets say there is a ListBox in WPF (or Silverlight) displaying bowlers* and their bowling scores: <ListBox ItemsSource="{Binding Bowlers}" &...

Upcoming Events

Here are some events Ill be speaking at over the next couple months: DevTeach Toronto / Mississauga March 8-12. DevTeach stands for Developers Teaching. Its a conference done by developers for deve...

Thoughts on an MVVM Rant

I stumbled across A vent abount MVVM Development thanks to a tweet from @peterbromberg. Excerpt: What really irritates me is that I am forced to waste so much time on how to try and figure out how...

Wrapping about Collections

Mark Needhams Thoughts On Software Development is a great collection of blog posts. Last year Mark wrote Coding: The primitive obsession, and challenged the idea that the primitive obsession anti-patt...

KISS Your ASP.NET MVC Routes

A little bit of thinking and compromise can remove unnecessary complexity from the routes in an MVC application. For example: Morgans web site has authenticated users,and Morgan decides the URLs fo...

Silverlight and ASP.NET MVC Don’t Serve the Same Master

Im flipping between MVC and Silverlight projects when a startling contrast starts to emerge. Its not the obvious contrast between stateful and stateless. Its a subtler contrast in design. If you po...

Drop-down Lists and ASP.NET MVC

Working with drop-down lists in ASP.NET MVC has some confusing aspects, so lets look at an example. Imagine the goal is to edit a song (not the music and lyrics of a song just the boring data piece...

T4MVC in MSDN Magazine

The January 2010 issue of MSDN Magazine is online with my article covering T4MVC: Microsoft Visual Studio includes a code generation engine known as T4 (which is short for Text Template Transform...

Of Web Browsers and Humanity

Douglas Crockford posted an interesting topic for discussion on his site (look for the Discussion Topic section at the bottom of the page): If a web browser is defective, causing errors in the dis...

Don’t Let Your Code Marry An Axe Murderer

Its a lesson I learned from the school of hard knocks: be careful about the shady characters you let into your software. There are lots of software frameworks, components, and tools in the world a...

More On The Death of If-Else

Aaron Feng posted recently on The death of if-else, if, and else. In the post Aaron rewrote some JavaScript conditional checks using a dispatch table type approach. Following along with Aarons post ...

Your Abomination Is My Clever Hack

In the MvcContrib project there is an HTML helper for putting data into a <table>. The syntax looks like this: <%= Html.Grid(item.Addresses) .Columns(column => ...

What’s The First Thing To Learn About ASP.NET MVC?

If you are an ASP.NET Web Forms programmer making the switch to ASP.NET MVC whats the first thing you should learn? There are lots of candidates for the number one spot. Some people will say the fir...

CSS Resets

Every web browser has a default style sheet it uses when rendering content, and every web browser uses slightly different defaults. Perhaps a button will use an extra 2 pixels of width in one browser,...

Is Microsoft Taking Dynamic Languages Seriously?

Specifically IronPython and IronRuby. Consider this IronPython got underway in July of 2004. Five years later it appears IronPython is still not a candidate to be a first class language in the ...

Keeping CSS Files DRY with .less

It was just a few weeks ago when I heard of LESS for Ruby, and now there a port for .NET developers: .less (dot less). One of the frustrating aspects of working with CSS (one of many, actually) is t...

Improving JavaScript Skills

A few people have asked me how to improve their JavaScript ability. Not just learn about syntax and crazy stuff like closures, but how to apply the same design skills they have in their primary langua...

BitLocker To Go

I had some data on a Cruzer flash drive I wanted to protect, and I just discovered how easy it use to use BitLocker on a flash drive (thanks to Hanselman, who pointed this out in one sentence at the e...

MVC or Web Forms? A Dying Question

Everyone who talks about ASP.NET MVC gets asked the question: Should I use MVC or Web Forms? Theres been quite a bit of debate on this topic, but in a couple years I dont think it will matter. 10...

Using T4 Templates for Simple DTOs

Im looking at 5-7 files of data in CSV format. The columns and format can change every 3 to 6 months. What I wanted was a strongly type wrapper / data transfer object for all the CSV file formats I ha...

Visual Studio 2010 Extension Manager

One of the features I think will be a big hit in Visual Studio 2010 is the Extension Manager. As of Beta 2, you can find the Extension Manager under the Tools menu. The Extension Manager allows y...

Where is C# in the Programming Language Lifecycle?

Seven years ago, Robin Sharp divided the lifecycle of a programming language into 7 phases: Conception Adoption Acceptance Maturation Inefficiency Deprecation Decay I think Rob...

What’s Wrong With This Code (#23)

Keith Dahlby started a discussion with his post Is Functional Abstraction Too Clever? Read Keiths post for the background, but I would agree with all the comments Ive read so far and I say the functio...

Road Show – Fall 2009

After a long stretch of quietly hacking at home, Im getting out to speak at some events again: Stack Overflow DevDays in Washington D.C. on October 26th. The event is SOLD OUT with talks on Python, ...

Experimenting with MongoDB from C#

Ive often felt that we treat relational databases as a hammer to use with every kind of nail, screw, bolt, rivet, metric nut, and wall anchor we encounter in software development. The modern relationa...

ASP.NET MVC2 Preview 2: Areas and Routes

In ASP.NET web forms Ive used the sub-web project trick to break apart large web applications. It has some downsides, but generally works. ASP.NET MVC 2 will include built-in support for breaking apar...

Health Monitoring and ASP.NET MVC

Health monitoring has been available in ASP.NET since v 2.0, and the health monitoring features can give you information you cant find anywhere else. I was troubleshooting an MVC application recently ...

What’s Wrong With This Code? (#22)

Its a bug youve probably learned to avoid in .NET programming, its just not as obvious now. var cities = new List<string> { "Baltimore", "Munich", "Copenhagen" }; v...

Programmer Symbology

Have you ever taken a step back and looked at all the funny characters we use in programming computers? I did this yesterday. Sometimes, when you look at familiar things in just the right light, they...

Inspirational Books In Software Development

A few weeks ago I was asking people if theyve ever read an inspiring book about software development. There are many great books that are educational books. They show you how to build the latest whizz...

Private Extension Methods

I spent a few hours on a failed experiment recently, but one concept that outlived the spike was how to make use of private extension methods. By private I mean the extension methods have a private ac...

Using Seadragon with ASP.NET MVC

Seadragon is one of the new controls in the AJAX Control Toolkit. It gives you all the goodness of Deep Zoom using only JavaScript. The control toolkit is designed to work with Web Forms, but the unde...

Special Folders You Won't See in ASP.NET 4.0

App_Data, App_Code, App_Themes, and App_GlobalResources weve come to love them over the years. I was hoping the team could add a few more special folders to ASP.NET, but I don't think these will mak...

Lower Case URLs and ASP.NET MVC

It sounds like an easy question - How do I make my ASP.NET MVC application generate lowercase URLs? Using lowercase URLs is an SEO best practice, and something you can easily enforce with a tool lik...

Lower Case URLs and ASP.NET MVC

It sounds like an easy question - How do I make my ASP.NET MVC application generate lowercase URLs? Using lowercase URLs is an SEO best practice, and something you can easily enforce with a tool lik...

Death to .NET Events

When .NET arrived on the scene it promoted the use of events and delegates to decouple code. Chris Sells had one of the best early stories on how it all works (.NET Delegates:A C# Bedtime Story)*: On...

Death to .NET Events

When .NET arrived on the scene it promoted the use of events and delegates to decouple code. Chris Sells had one of the best early stories on how it all works (.NET Delegates:A C# Bedtime Story)*: On...

SEO with ASP.NET 4 and Visual Studio 2010

My latest article for MSDN Magazine appeared online and in print a few weeks ago. This article is about search engine optimization with the latest and soon-to-be released tools. It wasnt so long ago ...

SEO with ASP.NET 4 and Visual Studio 2010

My latest article for MSDN Magazine appeared online and in print a few weeks ago. This article is about search engine optimization with the latest and soon-to-be released tools. It wasnt so long ago ...

Victory In Software Development

I wrote the following prose in preparation for my fireside keynote at Concept Camp 2009. Concept Camp arrived at a time when I was asking questions about the software Ive created over the years. I was...

Victory In Software Development

I wrote the following prose in preparation for my fireside keynote at Concept Camp 2009. Concept Camp arrived at a time when I was asking questions about the software Ive created over the years. I was...

Stockholm

During the last week of August I was in Stockholm, Sweden to deliver two of the twelve workshops at redev's Progressive .NET Days. The workshops were split across 3 tracks and covered prevailing softw...

Stockholm

During the last week of August I was in Stockholm, Sweden to deliver two of the twelve workshops at redev's Progressive .NET Days. The workshops were split across 3 tracks and covered  prevailing...

Resource Files and ASP.NET MVC Projects

If you try some of the traditional ASP.NET approaches to localization and internationalization in an MVC application youre likely to run into a couple interesting* obstacles. Resx Files In App_Global...

Resource Files and ASP.NET MVC Projects

If you try some of the traditional ASP.NET approaches to localization and internationalization in an MVC application youre likely to run into a couple interesting* obstacles. Resx Files In App_Global...

Geeky Places to Visit In & Near Maryland

Maryland has a number of geek attractions inside and around its borders. Heres a sampling: National Air & Space Museum There are two locations to visit. The museum on the National Mall is in the h...

Event Aggregation with jQuery

As the write less, do more library, jQuery garners lots of love for its terseness. The terseness, combined with a rich ecosystem of plug-ins, means I can display my OdeToCode twitter feed on a web pag...

Pretty Code #1 Building SelectListItems

In ASP.NET MVC, you can use a collection of SelectListItems to help build an HTML <select>. Just watch out for the HTML helper overloads. The question is what is the prettiest code that can cha...

Three IIS Concepts ASP.NET Developers Should Know

Its possible to do a lot of work with ASP.NET and not know anything about IIS, particularly if you work with a large team where IT specialists keep the riff-raff away from pro...

View Other bloggers

Product Spotlight