Sunday, January 27, 2013

RESTful .Net by Jon Flanders Review


Title: RESTful .NET
Author: Jon Flanders
Published Year: 2009
ISBN:  978-0-596-51920-9

Publisher: O’reilly



Review:

            This is a well written and very thorough book about REST, what it is, how it works and how to use it in a .Net environment. It starts at a fairly basic level on this subject and covers every aspect of this technology in detail.

            The Preface of this book indicates that the book is for .Net Developers who are familiar with REST and WCF and recommends other books as prerequisites for those not already familiar with these.  Certainly it is true that someone completely unfamiliar with these areas would find the book difficult to follow. The book does review the basics of REST pretty well, and it is clear about the purpose and use of WCF for those who, though familiar with it, might be “rusty” or not well versed.

I have been a software developer for over 30 years, and have been working in .Net since about 2004. I have written WCF services and I have been to a few lectures on REST and “played with” RESTful interfaces from time to time, but I would not consider myself an expert on either of these subjects. I did not find this book to be an “easy read” by any means; it is a highly technical book. But I did find it to be very clearly written and well organized. The author, Jon Flanders, is obviously extremely well qualified to cover the subject and does everything possible to explain each aspect of the technologies covered; including descriptions of what each feature is for, what it is not suited for, and how to use it.

After reviewing the basics and explaining the programming models, the book eases into the subject of writing RESTful services by covering Read-Only services, which may well be as much as some programmers need to know about it. But this is not a book for every programmer who wants to write a RESTful service. Instead, it is for programmers who want to know all about REST in .NET so that they can not only make informed decisions about how and where to use it (and where not to use it), but also implement it properly and securely in their projects.

Once Read-Only services have been described, the author goes into Read/Write services, Ajax Services and how to use it with Silverlight. There is also a complete chapter on programming Feeds. It then describes how to secure and consume services.

In short, I found this to be a high quality, comprehensive book and reference on the subject of writing RESTful services in .NET. It gives comprehensive, accurate coverage and is a good reference. In spite of this, it gives a competent introduction to the subject for those who don’t need or want to be pampered about it. It is practical, useful and descriptive in contrast to the standard documentation about REST that is found online, which I personally find very difficult to work with.  I found the book to be helpful and descriptive, with just the right amount of detail. It covered quite a bit more than I need for my current project, but I like this in a book. I’m sure I’ll refer back to it as needed on future projects.

 

Friday, October 9, 2009

Small Business Is All About Niches

Being successful in a small business hinges upon finding the right niche.

If a large corporation or some other small business does the same thing that you do, why would anyone come to you? The reason people come to your business is because you provide something better, in some way, than someone else.

In some cases, it could be as simple as having the right location. If you own a small hamburger stand, maybe people come to you because you are the closest place to eat. But if MacDonald's is right next door, then your hamburgers have got to taste better or be healthier or cheaper than MacDonald's' product; otherwise, you will soon be out of business.

When I first started as a Software Consultant in 1981, it was common knowledge that the thing to do was make one's business look as large as possible. This involved designing and printing business cards and matching letterhead with envelopes, and so on. Everybody knew this was the thing to do, so this is what we did. I don't think I landed a single contract based on the "business image" I created (or tried to create) in this way.

Regardless, I soon has as much business as I could handle just from word-of-mouth contacts. In those days, it was enough just to know how to program. Writing software was a rare skill and lots of people needed programming done. At that time, my niche was simply that could program computers. There was very little competition and it was easy to get a good rate.

Long story short... in 2009, it's not like that any more.

To survive at all as an independent consultant today, you not only need to deliver very good value almost immediately, but you need to be able to convince a prospect that you can do it, make them into a customer and then deliver good products consistently.

I seem to be able to do this within my niche, which is helping businesses with software projects that quickly and economically expand and improve their products or services.

I have often worked alongside larger consulting firms, recruiting firm consultants and employee programmers. There were certainly times when I felt threatened or challenged by any of these. But in the end, when the project was over, I have nearly always performed very well within my niche.

It is extremely important to know what your niche is. Otherwise, you won't know where to look for work, or know when you have found some. This doesn't mean that your niche can't change, but it's not likely to happen overnight.

It is no longer possible to be good at everything in this field. The 80's are over! Find out what you are good at and do that!