Book Review – Instant .NET 4.5 Extension Methods How-to

Packt’s ‘Instant’ Series promises short, fast, focused guides delivering immediate results. But does their Instant .NET 4.5 Extension Method How-to incarnation deliver, or leave readers wanting more?

It is indeed a short book – 52 pages, and it’s 25% before the technical content starts.

.NET 4.5 Extension Methods How-to
.NET 4.5 Extension Methods How-to

After a brief general introduction, the book follows a code sample and explanation format. Each item is labelled with a difficulty grading, with ‘must know’, ‘should now’, and ‘become an expert’.

The ‘become an expert’ items go beyond the ‘syntactic sugar’ aspects of extension methods and demonstrate their usage in modern .NET design.

Whilst the book costs just over a fiver here in the UK, I felt that it was a little lacking. I spotted a grammatical and code formatting issue, and the format of code and explanation feels a little rushed. The more advanced areas would have ideally had more explanation as to how extension methods fit into the .NET ecosystem.

Another issue is that the book offers nothing over the wealth of articles freely available on the Internet.

Pluralsight Review

Since discovering Pluralsight just over a year ago, I’ve been bowled over by its quality, value and ever increasing range of instructional videos.

I first became aware of the site when I watched a free ASP.NET MVC 3 video course, which is still available. This gave me a taste of the professionalism of the content, and having a browse around, found that there were literally hundreds of hours of videos on subjects ranging from C# to WF.

Some ten or so years ago, my source of learning was books and newsgroups. The current speed and breadth of software development evolution has made it somewhat difficult for traditional book publishers to produce books at the same pace. Pluralsight’s library is expanding at a rapid rate, and for subjects such as Knockout and Orchard, the content is of a much larger scope than for the comparable printed equivalent.

I subscribe to a monthly $29 subscription model, which entitles me to watch the library of videos on a computer or mobile device. The ‘monthly plus’ option adds in exercise files, certificates and offline viewing. Yearly options are also available and offer a typical discount over the monthly charge. Videos load quickly, and Android and iOS apps have the option of increasing playback speed up to twice the normal rate, useful in many situations.

Whilst the library is largely Microsoft-based, this emphasis is changing, as recent additions of PhoneGap, MySQL and Java exemplify. Despite this, the range of material is most likely to benefit developers who are developing with a Microsoft stack of technologies.

I should say that I’m not associated with Pluralsight in any form. You can watch the free MVC video series, and sign up for a free trial, so you can draw your own conclusion.

I love books as much as anyone, but I feel that Pluralsight is the most effective developer training resource available.

Happy learning!

Nexus 7 Quick Review from an Android/Android Tablet Virgin

I’m an iOS user. I’ve owned an iPhone for over four years. I’ve owned an iPad for about 16 months.

I’ve never used Android.

That all changed today, when my pre-ordered Nexus 7 tablet arrived in the post.

So here is literally a quick get-this-typed-out-whilst-my-thoughts-are-fresh initial thoughts on Android and the tablet. Some comparisons may be made with Apple products, and iOS; get over it.

The Packaging

  • Nobody’s claimed the Nexus 7 is expensive. The packaging starts the experience with the feel of ‘this is a premium product you have in your hands’. It doesn’t feel cheap.

The Device

  • It’s feels a little heavier in my hands than I thought it would. Not uncomfortably heavy, but solid, and that’s no bad thing.
  • I’ve enjoyed a retina-display iPhone display for a while, and whilst the DPI is lower on the ‘7’, the screen is of very high quality. Perhaps not as good as the iPhone4/4s, but considerably better than the non-retina iPad’s.
  • The screen size is fantastic, and no doubt it’ll be more comfortable to use in bed than the iPad, though it will complement my iPad rather than replace it. Though I’ll have to see how my tablet usage changes.
  • The whole thing definitely feels like a premium product. Maybe not quite, and I mean not quite, as high quality as an iPad, but really not much difference.

Software and UI

  • Opening large movies does take a second or two. Not too annoying, because you’ll spend a lot more time watching than opening, but it’s definitely slower than the equivalent opening time on the iPad.
  • Paging through PDFs with images and other non text-only content wasn’t perceptibly instant. There was a short pause. Longer than the iPad’s for the same PDF.
  • I didn’t need to use iTunes to transfer content from my computer to the device. If you’ve used iTunes, you know this is a big positive.
  • I needed a WMV player. I found one within seconds and it worked. And it was free.
  • I feel I’ll miss the range and lower priced apps of the App Store.
  • It’s a shame I can only rent movies here in the UK
  • Update –Currently no BBC iPlayer, which is a bit of a blow, but I imagine it won’t be too long before that issue is resolved.

It may only have been a couple of hours, but I really like my new tablet; I’ll obviously use it a lot over the coming days, and probably post another update on how I’m finding it.

I’ll still enjoy using my iPad, but I feel a 7 incher complements things very nicely, and I’m glad I’ll be able to evaluate Android properly before deciding whether to ditch my iPhone.

Thanks Apple, for starting something great.

Hide your Orchard ‘Edit’ links

The Orchard theme Contoso ships with rather ugly ‘Edit’ links for editing widgets. They’re convenient, but I’m not of the opinion that they need to be visible all the time.

So, I wrote this little fragment of JavaScript to hide them by default and show when the mouse enters their corresponding widget area.

This behaviour might not be to everybody’s liking, but I provide the jQuery code snippet if you fancy giving it a go:

$(function() {

  $(".manage-actions").hide();

  $(".widget-control").mouseenter(function () {
    $(".manage-actions", this).show();
  }).mouseleave(function () {
    $(".manage-actions", this).hide();
  });

});

It should be easily modified to suit your needs/theme.