Book Review

Adaptive Code in C# – Book Review

I have just finished reading Adaptive Code via C#: Agile coding with design patterns and SOLID principles – by Gary McLean Hall.

It covers ways and patterns to get more flexibility out of your code – so it can adapt better with time and requirement changes, have interchangeable components instead of awful dependencies, and so that it can actually be unit tested properly.

It also has a chapter on Scrum (the development methodology), which isn't that relevant to the theme, but still sort of applies as a general practice which allows for your software to adaptable.

It ends with a ASP.NET MVC example, which I also found useful.

I've read this as an e-book on Safari Books Online's iPad app, and the code layout proved problematic on many occasions (the end of no-so-long lines would be clipped). In the very end of the book (yeah, that is a really useful spot) there is a warning that suggests reading the book in landscape mode with the smaller font available – which I would say is pretty lame. (There is a graphical link, but the listing sometimes wasn't the exact version of the main text, and would sometimes return to beginning of the chapter instead of the right spot)  I have seen similar things in other books in Safari, so I don't know who is to blame for the problem, but still annoying.

Overall, very nice, a quite pleasant read and very instructive.

Book Review

The Pragmatic Programmer – Book Review

The Pragmatic Programmer – by David Thomas is a bit of a classic (1999).

I read it way back, when it was still somewhat new, and decided to re-read when I subscribed to SafariBooksOnline (my review of the service).

It is still pretty good still after all those years. While I do use most of the practices they suggest on much of my work, there were plenty of useful tips and reminders.

And if you haven't read it, it is very much worth for the dozens of practices you might not be using yet. It does feel a little dated, and many of the practices that were uncommon at the time are very common today. Some bits are almost funny, such as the lack of Refactoring tools outside Smalltalk, or the suggestion of using USENET private groups for communication, but these are the exception.

Overall, strongly recommended for anyone that want to be a better programmer.

Book Review

Chaos Planning + Pronto Learning – Book Review

Chaos Planning, by Sean D'Souza, covers ways to plan while considering the chaos that usually affects the best laid plans.

The Premium version also includes Pronto Learning: Insiders Tips To Speed Up Your Learning .

Both are quite short and to the point – it took me about an hour to read them while taking notes.

The main principles of Chaos Planning are interesting – add extra time to your to-do lists and plans, so that they don't crumble when the unexpected happens.

Other ideas on Chaos Planning are:

– Write down and get external pressure (such as clients, friends or other people in a forum).

– Get actually competent at stuff you regularly do, instead of blundering through. Do a daily practice of 15 minutes to learn something – starting and stopping (a problem I commonly have) makes it hard to learn. Bring it with you for when you have to wait in lines – E-book reader apps are great for this, depending on your smartphone screen, or just take a physical book with you if possible.

– Go through what you want to learn several times, at increasing interval. I have read this several times before and have seen it on Pragmatic Thinking and Learning, Learning on Steroids, and the Superlearner course , so it is very much recommended. The hard thing is getting the time for it, but having good notes (that you wrote yourself – apparently these work much better than just copy and pasting book material) helps.

– Do pre-sells to get a real deadline. They also help test viability of a product and tend to help sales, and you can e-mail (and maybe send a bonus) and do refunds if you really can't pull it through. Sean also has a pre-sell course.

– Clear distractions, such as excessive e-mail newsletters (not mine, I hope!).

Pronto Learning: Insiders Tips To Speed Up Your Learning:

– Plan to teach what you learn, even if it is just mentioning it to an spouse or colleague, or maybe doing a blog post – your mindset is different and it is easier to find the gaps in what you learned. Actually applying what you learn is even better.

– Again, the repeated learning principle, recommending a week for the first time and then months.

– Take real breaks (not just going on Facebook or random sites) – take a 20 minutes nap, go to a cafe, etc.

– 15 minute principle, if you can't understand something, or solve a problem in 15 minutes, ask for help and take a break. Or look at Google/YouTube for a tutorial.

– Use dead time: listen to workshops or audiobooks while exercising, or read a book while waiting.

– Make a list of important tools and skills and go through them.


Overall, I think they were OK, and barely covers the asking price. Sean's stuff isn't cheap, but at least it is not packed with filler and it is a quick read. It definitely has useful information, though.


Book Review

Building an App Business – Book Review

Building an App Business, by Derek Clark, is a short book (122 pages) which has as a lot of interesting advice for anyone that wants to start building apps for smartphones.

Topics include validating the market, how to monetize your apps (paid, ads, in-app-purchases, etc), how to design your app,

Well worth the price, recommended.

Book Review

Pattern-Oriented Software Architecture Volume 1: A System of Patterns – Book Review

Pattern-Oriented Software Architecture Volume 1: A System of Patterns is an interesting book on patterns, with a few patterns not in the classic GoF book (Design Patterns). 

At times, it really felt a little outdated (would love to add more details, but I procrastinated this review since the beginning of the year, when I finished reading the book).

Still, very useful and I'd recommend it for people interested in patterns.

Book Review

The Pre-sell Course – Book Review

The Pre-sell Course by Sean D'Souza is an interesting book, with plenty of useful advice in the art of Pre-Sell – how to slowly interest your potential customers in your product way before it is available, and get major sales from it.

Sean is no doubt a master of the subject, as I have bought many of his books after getting interested in his pre-sell campaigns.

While the book is good, is it US$229 good (price I actually paid – I understand it would be much more expensive now, if it was available)? Not for me – I personally asked for a refund (and promptly got it).

I believe it would be much more useful for people that actually have regular new product launches or expect to do one soon, however.

Book Review

C# 5.0 in a Nutshell – Book Review

C# 5.0 in a Nutshell: The Definitive Reference – by Joseph Albahari and Ben Albahari – cover most of the language specifics of C# 5.0, with plenty of chapters covering the new async, threading, etc.

A lot of people seem to see this as more of a reference than a tutorial, but I didn't know almost anything about C# and still found it competent as such (I do have plenty of experience in other languages, though). The use of LINQPad for quickly being able to quickly try out samples (and change them as you want) is pretty great.

It is also quite impressive how many of the newest C# features were available in Chrome back in 2005 (a pascal for .net by Remobjects, now called Oxygene).

I highly recommend the book, but keep in mind that it only covers the language, not the other framework you will probably need (such as Winforms, WPF or ASP.NET).

Product Review

The Critical Website Components – Book Review

The Critical Website Components Series, by Sean D'Souza, consists of 3 short e-books:

The About Us Page—Why You Need To Throw Away Your Brown Paper

This is an interesting view into the About Us page. Sean is clearly a big fan of personality in this page, as well as having a photo or photos here, so that customers feel more confident and are more likely to trust you.  There is a lot of interesting advice here.

The Home Page—How To Put Sparkle And Pop Into Your Home

A view into how to create your home page. A couple of general layout options as well as graphic advice (the usual – create focus on what you think is important using space, contrast and direction).

Some more interesting advice on how to present your solutions on a way that will grab the attention of your potential customer. Plenty of examples.

My package also included a video with a short case study, that I didn't feel to be very useful (I have used heatmaps on my page before, and read articles on the subject, so it had nothing new for me).

Getting To Sign Up—How To Create A Clear and Simple Route For Subscribers

I thought this would be near useless (Sign ups are a whole lot less useful when you have a bunch of unconnected niche software like me, than sites like Sean's with new products that can be sold).

However, it has plenty of interesting details on not only squeeze pages, but also on creating reports – and packaging – and also on make engaging audio or video presentations.

How  To Maximise The Power Of Bonuses

This was a bonus (ironically!) to the package, that covers why and how to make product bonuses, while making they seem as valuable as possible. Very interesting views and tips! I also like the view of avoiding discounting your products and using bonuses instead – there are several places where I will not buy unless there is a discount as I know they have them frequently.


The home page and About us books had some interesting information, but for me the Sign Up and Bonuses ebooks were the most useful. As most of Sean's e-books, all were very fun to read and quite short and to the point.
Overall, at US$49 the package value was acceptable considering the bonus e-book, but I wouldn't recommend it otherwise.

Book Review

Learning Python – Book Review

I read Learning Python, by Mark Lutz (5th Edition) a few months ago. Unfortunately, I just got around to reviewing it now.

Learning Python is a very long book at 1600 pages. It is safe to say that it covered everything that it should, but it feels like it is way too through and that a lot of it was spent in topics that were inadequate. For example, at times it mentioned that a topic would only be useful for tool writers.

Also, on many places it would go and cover a little bit of a more advanced topic where it was relevant. That is great if you are reading a specific section for all you need to know, but it also means a lot of repetition if you are reading the whole book in sequence.

Overall, I think it is pretty good, but the coverage and repetition make it longer than necessary.

Book Review

Design Patterns Explained – Book Review

I read Design Patterns Explained: A New Perspective on Object-Oriented Design – by Allan Shalloway, James R. Trott early this year.

Unfortunately, I forgot to review it till now, and I'd like to do so for the sake of completeness. Naturally, the book is no longer as fresh on my mind, so it will be a tad quicker than usual.

Overall, the book is good. I think I still prefer the original Design Patterns book, but it was much drier. This is on has slightly less information, but has some very good ideas on how to approach an analysis problem with design patterns in mind.

Recommended, specially if you couldn't get through the original Design Patterns. Otherwise it is a little redundant.