This interview with ASP.NET MVC Succinctly author Nick Harrison is part of a series of Q&A blog posts with our Succinctly series authors.
Why write a book for Syncfusion?
I love the idea behind the Succinctly books. It is often very difficult to filter through the hype and misinformation when learning a new technology. It is also often very frustrating to have to wade through a ton of background information that you already know just to learn what makes a new framework or a new technology different. When I first saw the Succinctly series I thought it solved both of these problems nicely. When I start working with a technology or I have a question about one that I am currently using, I check to see if there is a Succinctly book on that topic. Writing for Syncfusion is my way of helping them continue contributing to the community.
Are these books your first technical manuals?
I have a passion for training and mentoring. Writing is a great way to share what you know and hopefully help someone else along the way. I am also active with running the Columbia Developers Guild in Columbia, South Carolina, which provides networking and training opportunities for developers in the Columbia area, and I am a frequent speaker at area code camps which also provide excellent training opportunities.
What is your favorite outdated technology?
I don’t know that I really have a favorite outdated technology. I tend to look to the future in eager anticipation for the next great thing.
Probably the outdated technology that I am most grateful to have outdated would be the 3.5-inch floppy disks. I remember lugging those little rectangles of plastic around that could hold at most 1.44 MB. Amazing to think how far we have come.
Funny that even today the outdated floppy is still used as the universal icon for Save.
I remember the outrage when computers first started shipping without a floppy drive. Just a few years later you would be hard pressed to find a computer that can even read them. Meanwhile many people walk around with a USB drive on their key chains that can easily hold the equivalent of tens of thousands floppy disks.
Progress is exciting but change is often met with fear. Especially with technology, change happens at a dizzying rate.
What have you learned since writing this e-book?
I often tell people that if you really want to understand something, prepare to give a presentation on it. The same goes for writing a book on the topic or even an article. Many times while going through your daily job you can use a piece of technology without truly understanding how it works. Usually as soon as you get something working you have to move on the next task. Rarely do you get the chance to bend and twist and stretch it to discover every way you can make it break and how to put it back together.
When you write a book on a topic, you have to try to discover every way you can make it break because given enough readers, someone is likely to stumble on each of them. You need to identify as many as you can to warn and guide readers around these potential problems.
In your daily job, a lot can get swept under the rug of “it just works.” This goes back to having to immediately move on to the next task. Once you get a form to post back to an action with a fully populated model, you are off to the next form. You probably don’t have time to investigate how the model binder works. If everything is working for you, you don’t have time to investigate which filters and attributes can be used to influence the router. When writing a book, you have to pull back these covers and be prepared to explain the magic behind the scenes or at least be aware of what this magic shows.
I learned a lot during the tech review process about how much detail to include, and when to exclude details that might detract from the point being made or not relevant to the book as a whole. I also learned a great deal about some of the subtle nuances to model binding and routing that I had always taken at face value and never investigated further.
Do you have another reference that you would recommend to people interested in MVC?
MVC is a huge topic. Learning it can be complicated by having to know which framework version a reference you are using is based on. With MVC, there are many cases where a tutorial targeting one version can be outdated or irrelevant in the next. Often times something that caused problems or confusion in one version is resolved or completely restructured in the next. Sometimes a clever solution posted on a blog as a work-around for one version is now a core feature in the next version.
There is no easy way around this problem. When you read a blog or an article, if the framework version is not explicitly stated, check the date, which sadly may not always be prominent on some blogs.
I worked with the folks at Simple Talk to help set up a curated guide to MVC that tried to put some of the best content found on key MVC topics in context. It can be found at http://webdev.simple-talk.com/.
Succinctly series author Nick Harrison