Review of “Applied Cyber Security and the Smart Grid” by Eric D. Knapp and Raj Samani, Elsevier / Syngress

Thursday, September 05, 2013

I review for the O'Reilly Blogger Review Program

For this review, I should say upfront that I am not in the energy or security field, so I cannot comment on the technical accuracy or usefulness of the information in this book for the professionals who are implementing smart grid technology as their day-to-day work. My background is in environmental policy, where the term ‘smart grid’ is an oft-used buzzword. Having been to several conferences with smart grid sessions that were big on ideas but short on details, my hope with reading Applied Cyber Security and the Smart Grid was to learn enough about how the smart grid is implemented so I can have more informed conversations with friends and colleagues about the role that policy could play in facilitating the deployment of smart grid technologies and addressing some of the concerns that the authors raise.

Overall, the book fulfilled my needs by providing a more detailed explanation of the services a smart grid can provide as well as some of the security challenges such a grid faces. As someone who is outside the energy/security field, the information in the more technical chapters went over my head, but the authors do provide a higher-level survey of security concerns in earlier chapters, which I feel should be enough for me to help frame future conversations that would be more policy-focused. I was also encouraged to see privacy given its own chapter, and although I wish the authors spent a bit more time discussing the various privacy issues that come with the smart grid (the chapter is only 11 pages long), to see professionals in the field acknowledging privacy as a serious concern is encouraging.

Unfortunately, substandard writing quality in several areas of the book takes away from the important messages the authors are trying to convey. While the writing quality varies greatly from chapter to chapter, chapters 1 and 4 in particular suffer from awkward sentence construction as well as many serious grammatical errors (multiple instances of comma splices, sentence fragments, improper or inconsistent punctuation usage, etc.). Although criticisms about grammar may sound nit-picky, the prevalence and severity of the errors in these two chapters are such that a second printing addressing these grammatical issues would make for a much stronger book and a much better reading experience.


Review of “Absolute OpenBSD” by Michael W. Lucas, No Starch Press

Friday, August 30, 2013

I review for the O'Reilly Blogger Review Program

With the ever-increasing variety of cloud-based web application platforms, the likelihood of a developer needing to deploy and administer a full-fledged server or VPS seems to be getting smaller all the time. However, situations still arise when running your own hardware is advantageous for your application. Absolute OpenBSD by Michael W. Lucas is a great way for someone who is a ‘geek-but-not-yet-sysadmin’ to get acquainted with the ins and outs of administering an OpenBSD installation.

Lucas’s writing is very cogent and informative: throughout the book I either felt like a) I understood what he was talking about, or b) if my lack of experience kept me from understanding particular section, I knew what man pages or other resources I could utilize to better familiarize myself with a particular concept. I found the chapters on pre-installation planning, disk partitioning, group accounts, and configuring sudo to be especially useful in enhancing my own understanding of how OpenBSD works. The two chapters on PF also helped me wrap my head around OpenBSD’s packet filtering system and even include some discussion about bandwidth management (one of reasons I originally wanted to look into PF).

My objective for reading Absolute OpenBSD was to familiarize myself with the various installation, configuration, and maintenance tasks required to run an OpenBSD system, and for me it has served as a very good resource in this regard.


Review of “Programming iOS 6” by Matt Neuburg, O'Reilly Media

Sunday, July 21, 2013

I review for the O'Reilly Blogger Review Program

With developers currently busy updating their apps for iOS 7, it may be tempting to conclude that a book on iOS 6 is already outdated. However, even though iOS 7 represents a major visual departure from previous iOS versions, Programming iOS 6 by Matt Neuburg is still a great reference.

For existing programmers coming from a different language or development environment, the introductory sections on C/Objective-C, Xcode, and Cocoa should be all you need to get up and running. Those new to programming in general should pick up an introductory text (Aaron Hillegass’s Objective-C Programming worked for me) before diving into the specifics of iOS APIs, which is where Programming iOS 6 excels.

Although I’ve not had an opportunity to read through the entire 1100+ page text, I have been referring to this book throughout a recent real-world project. I usually consult the book whenever I need to get up to speed on a new topic where the official Apple documentation may be less than perfect in doing so. In particular, I found Neuburg’s explanations of Auto Layout, views, and music selection/playback to be especially useful as I worked on my own project. Neuburg’s prose is great in all the sections I’ve read through so far, striking proper levels of pace, information density, and detail.

Apple’s documentation is often good, but when you need a more nuanced explanation of a particular framework, chances are Matt Neuburg has it covered in Programming iOS 6.

Note: I received this book for free through the O'Reilly Blogger Review Program


Review of “iOS 6 Programming Cookbook„ by Vandad Nahavandipoor, O'Reilly Media

Sunday, March 31, 2013

I review for the O'Reilly Blogger Review Program

While the ‘cookbook’ genre of technical books may seem increasingly outdated in a world with Google and Stack Overflow, it’s still nice to consult a discrete resource where you know someone put time into presenting a range of topics about a given subject in a logical manner. The iOS 6 Programming Cookbook by Vandad Nahavandipoor is a good example of this philosophy in action.

Given the size of the iOS SDK, it’s impossible to provide examples that cover every situation. Nahavandipoor does a good job in deciding what ‘problems’ the cookbook examples should cover: The focus of the sample code is on getting people started with a particular framework or concept. While the examples are presented in isolation from the greater whole of a real-world app, just seeing a particular method in action is useful when one is just starting to learn a concept. This approach helped me in the case of an Auto Layout method; just being able to see example code used properly helped address some misunderstandings I had about the parameters expected by that method. As far as my own needs, I found the chapters on Auto Layout and Networking to be the most useful for providing a good overview on how to proceed with using these frameworks in my own app.

As useful as the book is, the language can be a bit awkward at times (keeping track of copy for a 900+ page book is no doubt a daunting task). The description of MVC seemed a bit odd (“think of a model as a virtual copy of your application, without a face”), but then again, conveying the essence of MVC is tangential to the purpose of book. Still, there are places where the author could be more succinct, or added some sentences or phrases that seemed to break with the character of a cookbook-style text. For the most part these are minor stylistic criticisms, but the example code is also affected from time to time (an early example project has the reader edit the interface for a class named Creating_and_Using_Switches_with_UISwitchViewController). This verbosity could distract newer developers from the real information being conveyed.

Criticisms aside, I did find many parts of the book useful for familiarizing myself with various areas of the iOS SDK. Cookbooks like these certainly still have their place as a first-stop reference.

Note: I received this book for free through the O'Reilly Blogger Review Program


SourceTree 1.5.8

Monday, March 25, 2013

Recently, I’ve been using SourceTree as a git front-end because of its built-in support for git-flow. Now that the latest update brings much-needed keyboard shortcuts for initiating commits and pushes, I’m even happier with the app.

(Another hidden shortcut to keep you at the keyboard: ⌘-Enter will submit a commit from the dropdown sheet)


Quicksilver 1.0

Monday, March 25, 2013

It’s here!


Convert 'winmail.dat' attachments on your Mac

Sunday, March 24, 2013

If you’re on a Mac and regularly communicate with users of Microsoft Outlook, there’s a good chance that you will receive a file called “winmail.dat” instead of a readable attachment. This is due to the proprietary TNEF format that Outlook uses when the message is composed in RTF. The best way to avoid this situation is to have the Outlook user choose plain text or HTML for the message format instead of RTF, which will cause attachments to get sent normally. However, if you already have a winmail.dat file you’d like to open, this open-source utility lets you do so.


Rumors about Jonathan Ive's influence over UI

Saturday, March 23, 2013

In light of the recent update to Apple’s Podcast app, there is some more discussion about whether Jonathan Ive’s new responsibility over user interface is starting to take effect.


More articles & links