July 5th, 2009 at 10:46 pm
If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!
How to lose customers in 15 months
We’ve been Sky subscribers since February 2008. We moved to Sky because the reception from Freeview was (and still is) frankly appalling – it was great for many months during 2007…then had a bad period after summer 2007…then was great over Christmas 2007…then it was plain useless in January 2008. Naturally I tried a few options: a new aerial, checked the transmitter information and tried a different receiver unit. Nothing worked well enough to rely on. Sky seemed to be the solution to our problems. However it wasn’t without sacrifice, or so I thought…
The sacrifice: I was paying Zen Internet £29.99 per month for their 0.5MB broadband package – yes, that was perhaps a tad expensive, however it just worked, perfectly. After doing my sums, it looked like I could get Sky TV for £16 per month, plus £5 for their “Mid” broadband package (offering a 40GB per month cap). Add in a couple of “mixes” for a £1 a pop and I was up at £23 per month. The apparent win: TV and Internet for a £6.99 per month saving. What could go wrong?
Indeed, what could go wrong? Broadband speeds had increased to from 0.5MB up to 2MB+, a win! And all those Sky TV channels too, a huge win! And more episodes of Star Trek than I’ll ever have time to watch, huge win, for me at least! However, the winning was short-lived. The broadband connection has suffered from a lot of downtime – that green Skype icon went grey all too often. I had no such problems with Zen Internet. The TV subscription wasn’t without its problems too, as we’ll see later in this rant.
Well, in November 2009 Sky wrote to me advising that the price of their Broadband Mid package was to double. The cost was £5, it was going up to £10. I hadn’t even been with them a full nine months and they hit me with a price rise of 100%. Utterly scandalous. However, in the grand scheme of things, and this is something that Sky presumably knew, £10 is still reasonably good value for a 40GB monthly package. I did complain to Mark Anderson (Mark.Anderson@bskyb.com) – granted I did get an e-mail back from some sort of ‘escalated help desk’, but it rather lamely asked me for my postal address.
Sent: Tue 02/12/2008 21:49
Dear Mr Anderson
Thank you for your letter of November 2008 advising me of a £5 or 100% rise in the cost of Sky Broadband.
I realise that £5 is very competitive and that was one of the two reasons we switched to your TV and Broadband services.
However, in the 10 months that we’ve been customers, the cost of the TV service has risen and now the cost of the broadband provision is rising.
Further, I record a lot of Star Trek on the Sky+ unit, however it won’t let me use the COPY option to move the episodes to DVD – because 80GB of personal space is not nearly enough. With no means of recording the episodes for watching later, it really means I personally don’t have much use for the Sky+ box…I don’t have time to watch what I’ve recorded and I can’t move the recorded content to DVD overnight…there is no point in recording anything.
If memory serves me, it’s a 12 month contract that I’m signed up for. Sending out a 100% price hike notification at this stage in the contract is just plain crazy.
Please be advised that I will be re-considering my options at the end of January 2009…you would be surprised how many friends and colleagues are telling me how good FreeSat is…Humax do wonderful HDD recorders too…
…and I’ve been chatting to other Sky “Mid” users, they haven’t received their 100% price hike notification yet…I do hope that you’ve not been selective about who is being subjected to the price hike?
Rgs
–Craig
To make matters worse, during November 2008 there was the great copy protection fiasco, which severely limited my use of the Sky+ service. I was not at all happy about that, so much so, The Guardian picked up on it and quoted a large chunk of that blog entry.
Last week, at the end of June 2009, Sky’s Mark Anderson wrote to me again. This time he was advising of ANOTHER price hike. In a nutshell, my Sky TV subscription was about to rise, making a total of £30 per month. Again, a scandalous mid-contract price rise. Of secondary concern, the font size used in Sky letters is very small – I can still read it with ease, however I’m sure that some subscribers might struggle. The letter itself makes no mention what changes to expect, but refers to an “enclosed leaflet”. Clever. Very clever. And utterly scandalous.
The leaflet that accompanied the letter was titled: “Sky Broadband now even better”, “All for the same low price”. Here’s a snapshot of what it looked like:

Looks like it’s just a re-branding, nothing to worry about…
…until you look closer. The 40GB monthly cap Sky Mid package is being re-branded to Everyday…with a monthly cap of 10GB.

It has something to do with “bring the usage allowance in line with what the majority of customers actually use”…HELLO? Granted Sky rather wisely included a paragraph stating that we could cancel the broadband portion of the contract without charge (well, thanks for that, from the company who raise their prices mid-contract). I am an individual, I do not like be grouped into a pot and treated like the “majority of customers”. I chose the 40GB package for a reason: it was ideal for my needs. Sky, you have moved the goal posts, changed the size of the nets and made the pitch four times wider at your end. Have I told you that this is scandalous? Utterly scandalous.
[UPDATE 07/07/2007 - after checking out the speed test here: http://www.skyuser.co.uk/speedtester/, it turns out I'm not even getting the average speeds for my package. Yet "more for less".]
Given my distance from the BT exchange, it’s unlikely I’ll ever see more than 2700Kbps (via http://www.broadbandspeedchecker.co.uk/) download and 160Kbps upload speeds. Therefore, the other so-called upgrades do not appeal or apply to me.
So now I am paying 30% more than I was 15 months ago FOR LESS. A lot less as it happens: where did Sky channel 795 go? I’m trying to learn Spanish and may well have chosen to pay the extra £1 per month just for a single channel…however it has vanished from the channel line up. Scandalous, utterly scandalous. “Paying more for less”, that should be Sky’s tag line: I’m not the first person to say this, but Mark, I’m sorry to say this: you’re charlatans. [Update 06/07/2009 - Channel 795 has reappeared. However, let's not forget this thing called Sky Anytime - it takes up 80GB of my 160GB of space, it records channels that I cannot get with my subscription: more "getting less"]
“Sky Believe in better” – I will be switching broadband provider as soon as possible and will be reconsidering our TV options too – that is something you can put money on, you had better believe it. FreeSat and Freeview may cost me upfront, but at least they don’t demand money downstream. I’ll be ‘phoning 08705 515 515 to request my MAC key next week.
Sky: Paying more for less.
Tags:
BSKYB,
Charlatan,
charlatans,
downgrade,
FreeSat,
Mark Anderson,
price hike,
scam,
Sky sucks,
Sky+
June 24th, 2009 at 10:22 pm
It’s fair to say that today’s processors are getting pretty advanced. The arrival of dual core processors marked a significant change in processor design and the performance we can expect from them. Whatever your beliefs about the limitations and upper limits of Moore’s Law for single core processors, multicore processors are here to stay. And with multicore (or manycore), as developers, there’s a whole new way of programming to master: parallel programming.
Microsoft has recognised this with their Task Parallel Library (with a focus on the .NET architecture here). Indeed, Microsoft’s commitment and vision in the parallel space, particularly for developers is recognised by those on the ground and by those further up the corporate ladder: “Microsoft’s goal is to make the benefits of building software on manycore architectures simple and accessible to the broad developer community.” - S. Somasegar.
Processor manufacturers are keen to promote development for manycore. It’s easy enough to sell processors (or so I believe), however if programmers have to re-align their development techniques and thinking, writing applications that run on manycore devices is going to mean a change to the rules. Historically, programmers have shyed away from parallel and concurrent programming. The challenges of understanding and dealing with race conditions, task-to-task communication and synchronisation have played their part in chasing developers away. In the concurrent programming space, predictability, re-orderability, reconciliation and data stability cause similar concerns.
Intel are in the software library space too, they have their Intel® Parallel Studio which promises to deliver simplified, end-to-end parallelism to Microsoft Visual Studio C/C++ developers. Indeed, Intel are providing considerable support for those of us learning parallel whether it’s as a beginner or an advanced practitioner.
June 2009 saw Intel launch their own on-line TV channel: the Intel® Software Network TV. Of course, you can follow the show on Twitter: @isntv
Whilst the channel isn’t 100% dedicated to parallel programming, there are two specific shows of interest:
- Parallel Programming Talk (Every Tuesday, 8AM Pacific – 1600 in the UK)
June 30: Joe Duffy of Microsoft will discuss the Microsoft Parallel Extensions to .NET and Microsoft Task Parallel Library. Joe Duffy is the lead developer and architect for Parallel Extensions to .NET.
- Teach Parallel (Alternate Tuesdays, 10AM Pacific – 1800 in the UK)
June 30: HPC Centers can help support curricular change. Tom interviews Scott Lathrop, Blue Waters Technical Program Manager for Education & TeraGrid Area Director for Education, Outreach and Training.
I’ve been watching the shows since the June 9th launch: they’re professionally done, yet have the air of flying-by-the-seat-of-your-pants about them…which adds both realism and that little something to each show! Typically the shows are live and bring together big names either in person or over a video link. Remote presenters often appear on a laptop screen which gives the show a real sense of community. Most shows are 30 minutes long, which is good insofar as they don’t take too much time out of your working day. And they are “right-timed”, live broadcasting doesn’t start until 8AM Pacific which is 1600 London time.
So far the shows have focused on parallelism in academia. However you may have noticed that I’ve included details about the June 30 shows. I’m particularly interested in Joe Duffy’s inclusion on the agenda. Joe’s the author of a couple of very popular books:
If you are developing applications using the Microsoft tools, listening to what Joe Duffy has to say is a not-to-be-missed opportunity. Learning how to take advantage of manycore processors that are available is going to be a key skill to have (if it isn’t already). Joe’s a lead developer and architect for the Parallel Extensions to .NET. He probably works very closely with The Moth, and we know that Dan’s content is second-to-none: I’m sure we can expect the same from Joe.
See you online at Intel® Software Network TV on the 30th of June at 1600 (London time)!
References
Dealing with Concurrency: Designing Interaction Between Services and Their Agents
Parallel computing
Concurrent computing
Tags:
Intel,
Joe Duffy,
Microsoft,
Moore's Law,
Parallel,
Parallel Extensions,
Task Parallel Library,
The Moth
May 7th, 2009 at 11:00 am
Swag: that stuff given away at IT Pro and Developer conferences. Swag is typically the free stuff that conference organisers give away “willy nilly”. Expensive prizes may also be referred to as swag, but you may have to work for them (answer questions) or simply be lucky (name drawn out of a “hat”)
But what makes good swag?
For me, good swag revolves around a few key concepts:
- Usability. A pen is usable, however it’s an easy piece of swag for vendors and conference organisers to give out. How many conference pens have you got? How many are still capable of writing anything? I filled an A4 paper box with conference pens gathered over the last 10 years: none of them worked without a lot of effort. Granted pens are excellent if you need people to fill in feedback forms – having a pile of pens handy encourages folks to complete the form as they don’t have to hunt for a pen of their own. USB pen/key drives are usable, however only if they are “right sized”: 512MB is no good these days…unless it’s simply a CD replacement (devExpress gave out 512mb drives at one of the TechSummits, it contained up-to-the-minute builds of CodeRush and RefactorPro – this is when a 512MB drive is considered good swag!) For key drives, 4GB used to be an expensive option, however nowadays, 8GB and even 16GB should be deemed reachable.
- Fun. Swag has to have a reason for being, be it useful or fun. Wrox lollypops are fun, as can be seen here.
- Practical. Practical and usable are very closely related, however there is a fine line. Practical to me, means it’s not “throw away” type swag. Usable means that I might not use it daily, but I will put it somewhere that I can use it. Socks and wearables that aren’t garish are practical. For example, I have a few pairs of thick Microsoft/MSDN socks – these are practical. Branded clothing is also practical, although some folks prefer the branding to be “delicate”…I personally don’t mind branding being “in your face”. If you are thinking about producing wearables, assess your audience: how many XXL t-shirts do you see at conferences? Too many IMHO.
With those key points in mind, here are my four favourite pieces of swag:
DevExpress laptop bag. Laptop bags are emotive items. This one is perfect for 17″ laptops, whilst still providing space for other toys and chargers (when I remember to pack it!) It also has two stretchy bits at either end – ideal for a small umbrella (I live in Scotland, sometimes the rain is so heavy that a small umbrella is required) and a soft drink of some kind too.
Microsoft SharePoint thermal mug. I use this virtually every day. It’s perfect. It fits in my car’s cup holder. It works – hot drinks stay really hot for well over an hour. It doesn’t spill. I’m sure that I blagged this from @lliu during a Microsoft MVP Summit.
Office duffel bag. I have two of these. They are great for carrying camera equipment at events as well as being an excellent golf shoe bag!
I also find myself using a Microsoft .NET rucksack that was given out at MSDN Roadshows around 2000-2001. It’s almost usable as a laptop bag, but since it has little in the way of padding, care is required. Nonetheless, it’s “right sized”, not too big and not too small.
That’s not to say that the CodeZone fleece, the Microsoft MVP rugby shirt and dress shirts aren’t good swag – they are used very frequently too. Good wearables, IMHO, make good swag, especially if the vendor goes out of their way to ask you what size you are!
Bad swag manifests itself in the form of:
- Stuff that is hard to get rid off. If swag doesn’t fall into the usable or practical, folks may reject it. Conference organisers like to give swag away…they’re not so keen to take it back! Personally, I try to recover and re-use as much swag as I can: cleaners don’t want swag, they’ll simply “bin it”. It’s important to recover such swag: vendors paid for it and gave it to the conference, recovery is key. Besides, it’s only common decency to grab a box and run around the conference rooms cleaning up after you, yes?
- Breaks easily. Good swag can be delicate swag, i.e. it breaks very easily. If that happens, word gets around and you have bad swag!
- Doesn’t work. Swag that looks to be useful and practical needs to work. I’ve seen a lot of USB gizmos that were very appealing, however they simply didn’t work when plugged in.
- Good, but legacy. Think about USB devices. 1.1 is old hat now, don’t expect your audience to like you if you give them a 1.1 device that relies on a little bit of speed! Folks won’t thank you for a USB 1.1 pen drive these days!
So those are my thoughts about good/bad swag; some of them are “from the field”, i.e. from attendees at events; some are simply my observations. They’re aren’t meant to be rude in any way, so please don’t take them that way. Perhaps they’ve helped you? I would be keen to read/hear your views on this topic…
What makes good swag? What are your favourite items of swag? Please do share in the comments!




April 17th, 2009 at 11:35 pm
Earlier this week I set a Programming Challenge using an example from my first year in academia. So far it has attracted 60 or so comments and solutions!
I’m particularly impressed with the range of languages that have been used.
Regular day-to-day offerings in C# are there, C# with LINQ, PowerShell and VBScript. “Vanilla” C, C++, Perl, Ruby and Python aren’t left out; neither are Smalltalk, Haskall, Lisp, clojure, Scala, F#, T-SQL, Informix SQL, SyBase SQL, APL, APL2 and A+. 6502 machine code and Excel are in the submission pot to – extreme diamond plotting!
There are even submissions in Octave and J (references here and here)!
I’ve had offers of solutions in JavaScript and jQuery, hopefully they’ll arrive soon!
I haven’t verified it yet, but here’s one of the J solutions, stunningly terse:
It is written in Iverson’s J programming language.
3 :’(],|.@}:)(|.@}.”_1,.])(AB{~i.Y)(_2<\2#i.Y)}'' ''$~2#Y=.>:y(=i.1:)AB=.a.{~65+i.26′”0
by Tracy Harms
That won me “most cryptic” tweet from Stuart!
Naturally I’m pleased, I wasn’t expecting it to be so popular! Huge thanks to all involved so far!
For the sake of completion, I’ve scanned in the original Pascal submission. Here it is:

Oh dear: notice the scandalous indentation after the FOR loop. Cringe.
If I was to write a C# version of the Pascal code, I might end up with something similar to this:
-
using System;
-
-
namespace diamond
-
{
-
class Program
-
{
-
static void Main(string[] args)
-
{
-
char widest_char;
-
int next_char, finish_char, wide, range, direction, position, spacelength, loop;
-
-
widest_char = Console.ReadKey().KeyChar;
-
Console.WriteLine();
-
-
wide = (int)widest_char;
-
direction = 1;
-
spacelength = 1;
-
position = 1;
-
-
next_char = 66;
-
finish_char = 65;
-
-
range = 2 * (wide – finish_char);
-
-
// Calculate initial left indent
-
int mid = wide – 65 + 1;
-
-
String firstLetter = Char.ToString((char)finish_char);
-
firstLetter=firstLetter.PadLeft(mid+1);
-
Console.WriteLine(firstLetter);
-
-
for (loop = 1; loop < range; loop++)
-
{
-
Console.Write(” “.PadLeft(mid – position));
-
Console.Write((char)next_char);
-
-
Console.Write(” “.PadLeft(spacelength));
-
Console.WriteLine((char)next_char);
-
-
next_char = next_char + (1 * direction);
-
position = position + (1 * direction);
-
spacelength = spacelength + (2 * direction);
-
-
// Flip direction when the middle of the diamond is reached
-
if (next_char == wide) direction = -1;
-
}
-
-
Console.WriteLine(firstLetter);
-
-
Console.ReadLine();
-
}
-
}
-
}
Back in 1988, I was reasonably pleased with the Pascal solution. Looking at it now, there are a few things I’d probably change, however hindsight with experience is a wonderful thing.
I can’t remember how long it took me to write the Pascal version, probably not very long as I had prototyped the solution using BBC Basic V – a programming language that I had been using since I was 13…some five years before I set eyes on the diamond plotter task! I can’t recall exactly, but I’m reasonably sure that the BBC Basic version took me about an hour to get working…
Of course, throwing readability, etc. out of the window, were I thinking about writing a similar solution today in 2009, I might find myself writing something similar to this:
-
using System;
-
-
namespace ConsoleApplication5
-
{
-
class Program
-
{
-
static void Main()
-
{
-
int range = Console.ReadKey().KeyChar – 65;
-
Console.Clear();
-
-
Console.WriteLine(String.Format(“{0}A”, “”.PadLeft(range)));
-
int r = 1, dir = 1;
-
while ((r > 0) && (range>0))
-
{
-
char c = Convert.ToChar(r + 65);
-
Console.WriteLine(String.Format(“{0}{1}{2}{3}”, “”.PadLeft(range – r),
-
c, “”.PadLeft(r + (r – 1)), c));
-
if (r == range) dir = -1;
-
r = r + dir;
-
}
-
Console.WriteLine(String.Format(“{0}A”, “”.PadLeft(range)));
-
-
Console.ReadKey();
-
}
-
}
-
}
How long did it take me to write a solution today? 30 minutes. 10 minutes of which were spent strangely refactoring for fewer lines of code and terseness. It was interesting writing this version, readability and ability to follow the work-flow came through in the initial version. Then the desire to strip it back to the very basics caught up with me. It’s still not perfect, but it does the job. That said, I’m not sure my original Pascal tutor would be hugely happy with it! C’est la vie!
I’ll write another post that brings together all the submissions that I’ve received so far – keep them coming!
Tags:
BBC Basic,
C#,
challenge,
diamond,
Pascal,
programming
April 16th, 2009 at 8:02 am
Colin Mackay invites you to blog about DDD Scotland in exchange for a local delicacy:
A Tunnock’s Caramel Wafer* to anyone who blogs about Developer Day Scotland between now and 20th April 2009. You must send me a link to the blog post and the prize can be collected only at Developer Day Scotland on 2nd May 2009. (*Prize subject to change, but will be a Scottish food delicacy)
There’s plenty of other legalese that applies, your acceptance of this delicacy and subsequent weight gain has nothing to do with us, etc.
Leave your links in comments here at this blog, e-mail Colin or send @scottishdevs a message on Twitter!
April 15th, 2009 at 8:54 am
What:
WCF Master Class with Juval Löwy (English)
http://www.idesign.net/idesign/DesktopDefault.aspx
When:
June 29 – July 3, 2009
Where:
Zurich, Switzerland (here, to be exact!)
IDesign and John F. Martin present Master WCF in five intense days with Juval Löwy covering WCF programming, design guidelines, pitfalls, original techniques and best practices.
You will see how to take advantage of built-in features such as service hosting, instance management, asynchronous calls, synchronization, reliability, transaction management, disconnected queued calls, security and the .NET Services Bus. The material presented includes IDesign’s original techniques and utilities and goes well beyond anything you can find in conventional sources. The objective of the class is not to just make you a WCF expert, but also a better software engineer.
the cost of the class is 2995€, which includes lunch and dinner, 3495€ which also include the Hotel (excl. any tax)
***
Free session on Thursday 2nd July
Free, however registration is required: john.martin@idesign.net
What:
Energynet – The Next Boom in Software: Juval Löwy, President of IDesign Inc.
When:
Thursday, July 2, 19:00 – 20:30 PM
More detail:
The ongoing economy unraveling is the defining moment of our time. Many professional developers are fearful for their livelihood, as employers and customers cut and slash development plans, and as economic activity grinds to a halt. But not everywhere. In centers of technical excellence and innovation such as the Silicon Valley, the major players, from investors to industry leaders, are aligning themselves with the next boom in software, a field Juval Löwy calls the Energynet.
Alternative energy covers a wide range, from new cars, to micro renewal sources energy producers, infrastructure upgrades to charge stations and distribution, new power and transformation grids, and integration of billing systems, let alone commercial building and homes modification. And the key for making all that work is software. We simply cannot make the physics or the chemistry substantially better, but we can profoundly integrate systems, iron out inefficiency, automate and vertically
integrate energy trading, production and consumption; and the key to all of that is great software.
This massive new software system is the Energynet, and the analogy to the Internet is a good one? instead of packets and request the Energynet transfers watts and usage data, connecting anything and everything in the energy market. In this unique session, Juval Löwy will present the case for the next boom in software, share personal observation and perspectives, and point out the skills and expertise required of developers that want to not only survive but thrive on the next boom in software.
Tags:
Energynet,
IDesign,
John F. Martin,
Juval Lowy,
WCF
April 13th, 2009 at 2:24 pm
Twenty years ago, during my first year in academia, my Pascal tutor set us some top-notch assignments.
Your mission:
Write a program which draws a diamond of the form illustrated below. The letter which is to appear at the widest point of the figure (E in the example) is to be specified as input data.
Here’s a scan of the original hand-out:

My original Pascal solution, which I prototyped using BBC Basic V, took less than a page of fan-fold listing paper and was implemented as a console application. 50% of the listing dealt with input validation and “do you want to run the program again?” code! I will convert the example line-by-line into C# for later publication here! Of course, were I to write it today, it should look very different!
I’d be keen to see your solutions, written in your choice of programming language. Novelty value for uniqueness in your choice of programming language may well be rewarded! Procedural, object-oriented, functional, dynamic, verbose, terse…the choice is yours!
“What’s in it for me?” you might ask?
Well, nothing really, a bit of kudos and the feeling of a job well done! However, I will offer the two best/novel UK-based solutions a much-coveted DDD polo shirt (modelled here!). My decision is final, colour may vary, size might not be the same size as you, yada yada, other legalese applies, etc.
Submission by comments here on this post, by e-mail (top right About Me), or via Twitter @camurphy please!
Over to you!
UPDATE: Comments seem to mangle the code formatting, it has been suggested that code is submitted either via e-mail or via http://pastebin.com/
Tags:
challenge,
diamond,
Pascal,
programming
March 30th, 2009 at 1:41 am
What:
WebDD’09
- With all the latest stuff from MIX 09
Microsoft’s annual MIX event is where they reveal their future strategy & technology – what’s happening with Silverlight, Expression, Live, MSN and advertising.
If you are unable to go then we’ve timed WebDD’09 so we get the latest juice – some of the speakers will be at MIX 09 – and have the opportunity to see what it actually means to us in the web development community and what we can do with the announcements.
What do you get at WebDD’09?
Get an independent view of Microsoft’s new stuff
Time with other web community types – it’s run by the community for the community
Choice of two tracks of technical content running throughout the day
Good content – no fluffiness (or Marketing!)
Lunch and beverages throughout the day with choices for the vegetarian and carnivore inclined
Oh yeah and thanks to Microsoft’s sponsorship the event is TOTALLY free!
When:
April 18th 2009 – Saturday
Where:
Microsoft’s Thames Valley Park Campus, Reading
Schedule:
http://developerdeveloperdeveloper.com/webdd09/Schedule.aspx
Register:
http://developerdeveloperdeveloper.com/webdd09/Register.aspx
March 30th, 2009 at 12:06 am
During 2006 I wrote a post about C# Lists. Of course, technology moves on, C# is no exception to that rule.
Whilst the examples I used in the 2006 blog entry still work today, LINQ heralds further levels of elegance and reduced the number of lines of code required to achieve the same results.
Here are the examples updated to use LINQ:
-
using System;
-
using System.Collections.Generic;
-
using System.Linq;
-
using System.Text;
-
-
namespace ConsoleApplication1
-
{
-
class Program
-
{
-
public class Person
-
{
-
public int age;
-
public string name;
-
-
public Person(int age, string name)
-
{
-
this.age = age;
-
this.name = name;
-
}
-
}
-
-
static void Main(string[] args)
-
{
-
List<Person>people = new List<Person>();
-
-
people.Add(new Person(50, “Fred”));
-
people.Add(new Person(30, “John”));
-
people.Add(new Person(26, “Andrew”));
-
people.Add(new Person(24, “Xavier”));
-
people.Add(new Person(5, “Mark”));
-
people.Add(new Person(6, “Cameron”));
-
-
var unsorted = from p in people select p;
-
var sortedByAge = from p in people orderby p.age select p;
-
var theYoung = from p in people where p.age < 25 select p;
-
var sortedByName = from p in people orderby p.name select p;
-
-
foreach (var p1 in sortedByName)
-
Console.WriteLine(string.Format(“{0} {1}”, p1.name,p1.age));
-
-
Console.ReadLine();
-
}
-
}
-
}
On line 38, simply replace sortedByName with any of the other result sets.
The use of LINQ in this simple example does demonstrate increased readability – the LINQ expressions are easier to understand than those present in the 2006 blog entry. If lines of code are your metric (and for some they are!), the LINQ version’s conciseness does mean a reduction in the LOC count.
March 20th, 2009 at 7:55 am
.Net Developer Roles, Competitive Salary @ NetIDme Ltd.
C# 3.5, ASP.NET MVC, AGILE, TDD
East Kilbride, Scotland, UK
http://www.netidme.com
We are looking for a number of .Net developers, both senior and junior, to join our team in Scotland,UK developing exciting products in the digital identity and communications arena. You should be happy working for a cutting edge, dynamic, fast moving company.
Developers must be able to demonstrate the following skills and experience:
- Experience with C# and ASP.NET
- A strong grasp of object-oriented design
- Ability to produce quality code across all layers of a web application stack
- 3+ years development experience on commercial or open source projects
Experience in any of the following areas will prove advantageous:
Interested?
Send your CV to: recruitment@netidme.com, including an indication of your salary expectation.
Please Note: All prospective employees must undergo a Disclosure Scotland check
NO 3RD PARTY REFERRALS PLEASE
OpenID,Information Cards, CardSpace, ASP.NET MVC, TDD, nHibernate,Castle Project
Tags:
ASP.NET MVC,
CardSpace,
Castle Project,
Information Cards,
nHibernate,
OpenID,
TDD
March 11th, 2009 at 11:44 pm

Podcast feed – subscribe here!
In this show I’m talking with Matt Lacey about Windows Mobile, the devices that you might meet if you are developing for the mobile market, the challenges that present themselves and the solutions that are in place. Matt also tells us what tools we need in order to develop or target mobile devices.
This podcast: http://www.craigmurphy.com/podcasts/057-Matt-Lacey.mp3

Resources
wurfl
Matt on Twitter
Matt’s web-site
DevEvening user group

Technorati Tags: Matt Lacey, DevEvening, Windows Mobile, Windows phones
March 9th, 2009 at 1:32 am

Podcast feed – subscribe here!
In this show, I’m joined by Microsoft Academic Evangelist Paolo Barone. We talk about Paolo’s role promoting Microsoft and .net in academia, XNA, Silverlight, Twitter and close with a chat about Windows 7. You’ll also get a chance to hear my [dreadful] attempt to close the podcast in Paolo’s native language!
During our chat about Twitter and Windows 7, we noted that Steven Sinofsky was very open to community feedback…hopefully this short recording is enough to convince Steven to join us all on Twitter where feedback is almost constant, first-hand and directly addressable!
This podcast: http://www.craigmurphy.com/podcasts/056-Paolo-Barone.mp3

Resources
Paolo’s blog
Paolo on Twitter
Steven Sinofsky, Senior Vice President, Windows and Windows Live Engineering Group
Technorati Tags: Paolo Barone, Steven Sinofsky, Twitter, XNA, Windows 7, Silverlight, Moonlight
Tags:
Moonlight,
Paolo Barone,
Silverlight,
Steven Sinofsky,
Twitter,
Windows 7,
XNA