The need for more iOS Developer Program flexibility

Thursday, June 05, 2014

Tony Lenzi shares his experience about how the currently-available iOS Developer Program options aren’t a good fit for teaching high school students:

As an experienced iOS developer, I was troubled by something that became painfully obvious looking around at the students gathered for the event. Sure enough, there was a sea of iPhones and iPod Touch devices sitting on tables next to students. There were also a host of students working on Macs. However, most of the groups were opting to create Android applications. Many of these students did not even own an Android device, so why were they so interested in creating an Android application? […] There was something else preventing them from building an app for iOS — the lack of access to the device via the iOS Development programs made available by Apple.

Lenzi’s suggestion is an education-specific developer program that would allow students to run code on devices. I would go even further and suggest that Apple have a free ‘hobbyist’ tier for iOS development: No App Store submission, but allow hobbyists to run code on a limited number of devices.


The return of Frontier?

Thursday, June 05, 2014

Last month, Brent Simmons wrote about his time at UserLand in the late 90s/early 2000s. As a longtime reader of Brent’s blog, I was always curious to hear more about UserLand and particularly about Frontier, its primary product. As someone who was just getting online when Brent was working on Frontier, the concept of a piece of desktop software that provided an easily-malleable database that could interact with the web has always been intriguing to me, especially since my interaction with creating web content started with more traditional Windows programs like Dreamweaver and FrontPage.

Well, it looks like Brent still has back-burner ambitions to bring back Frontier as a Mac app, and I couldn’t be happier. As important as the web browser is to the internet, I think more custom applications like Frontier can make the web even more vibrant.


An app store for the electrical grid

Thursday, June 05, 2014

Rocky Mountain Institute has a news post about City of Boulder examining ways for the electric utility to change its business model in response to climate change. Given how much smart grid and renewable technologies differ from the old fossil fuel-centric approach, Boulder is considering modernizing the utility’s role:

A major breakthrough the team realized at Accelerator was the potential for the utility to provide a platform for innovation, allowing the private sector to engage in entrepreneurial actions resulting in an “energy services market.” The graphic below, developed at Accelerator, illustrates a new relationship between the utility and the private sector, similar to smartphone companies providing a platform for innovation by application developers


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)


More articles & links