My name is Edward Tanguay. I'm an American software and web developer living and working in Berlin, Germany.
yesterday: Inspiring ted talk: Sugata Mitra: The child-driven education: "any teacher who can be replaced by a machine, should be": http://is.gd/eZRvi.
yesterday: Always so painful to look up the German article of a borrowed IT word: der Framework or das Framework? LEO won't tell me: http://is.gd/eZMeU.
yesterday: I know what podcast I'm listening to tomorrow on my way to work: John Resig on technometria: http://is.gd/eZJfq.
yesterday: C# CODE EXAMPLE: Extension method to sort a generic collection of objects: http://is.gd/eZG6n.
yesterday: C# CODE EXAMPLE: A simple class that represents a matching quiz item: http://is.gd/eZFZV.
yesterday: After-work 13K, two 5Ks under sub-four marathon pace: 23:27, 27:27, legs feel great: http://tanguay.info/run.
2 days ago: 6 yr old daughter's last 2 questions before falling asleep tonight: 1) Why are there humans? 2) Is there anything that doesn't have a name?
3 days ago: If you are a developer in Berlin and need to improve your English, I'm looking for groups to teach after work: http://tanguay.info/itenglish.
3 days ago: As far as I'm concerned, the singularity is already here, every time I wake up twitter tells me something amazing was created while I slept.
3 days ago: We're not suffering from information overload, we're suffering from faulty filtering.
3 days ago: Classic literature for free as nicely formatted 1-page or 2-page PDF downloads: http://www.planetebook.com/free-ebooks.asp.
WPF CODE EXAMPLE created on Thursday, February 25, 2010 permalink
Extension method to remove preceding and succeeding blank lines on a List<string>
This extension method TrimBlankLines() does to a List<string> what Trim() does to string.
using System;
using System.Collections.Generic;

namespace TestLines8833
{
    class Program
    {
        static void Main(string[] args)
        {
            List<string> lines = new List<string>();
            lines.Add("");
            lines.Add("one");
            lines.Add("two");
            lines.Add("");
            lines.Add("");
            lines.Add("five");
            lines.Add("");
            lines.Add("");

            lines.TrimBlankLines();

            for (int i = 0; i < lines.Count; i++)
            {
                Console.WriteLine("{0}: {1}", i + 1, lines[i]);
            }
            Console.ReadLine();
        }
    }

    public static class Helpers
    {
        public static void TrimBlankLines(this List<string> list)
        {
            while (list.Count != 0 && string.IsNullOrEmpty(list[0]))
            {
                list.RemoveAt(0);
            }
            while (list.Count != 0 && string.IsNullOrEmpty(list[list.Count - 1]))
            {
                list.RemoveAt(list.Count - 1);
            }
        }
    }
}
need markup?