Smile. You’re on candid camera.
Heck, these are good for any presidential candidate.
Excellent poem that points out some absurdities in the English language.
Thirty years ago when I started programming professionally, online programming meant CICS on a mainframe somewhere. I worked with CICS and IMS for the first few years of my career as a COBOL programmer. I also dabbled a bit with an early 4GL called Nomad. What distinguished these early applications was an utter lack of graphical interface. Everything was text based. Usually the bottom two lines of the terminal display (which may have had only 24 or maybe 40 lines total) was devoted to a legend that told the user which function key performed what activity.
And we walked uphill both ways to the raised-floor, Halon fire-suppressed machine rooms to run our programs too.
In the early 1990s I did a tiny bit of client-server application development using PowerBuilder 3. On my own I toyed around with [VisualBasic](http://en.wikipedia.org/wiki/Visual_Basic “VisualBasic) 1.0. VB was the first development platform I bought for my self to use.
In 1996 I started working with a distributed object-oriented platform called Forte. In 1999 Forte was purchased Sun Microsystems. The power of Forte, and its language, TOOL, was having a complete end-to-end solution. You wrote serve components and client applications in the same IDE, and they communicated through Forte’s middleware. What doomed Forte was its expense and that it was proprietary.
Both PowerBuilder and Forte produced Windows applications, client-server applications that ran on the end-users computer and communicated to backend processes over the network. A graphical tool was employed to build these applications, one that allowed you to position various UI elements on the screen and then wire them to functions.
Creating the interface was something tangible in a way. You assembled windows from component parts. There were buttons and drop-down lists and multi-select lists, radio buttons and check boxes, text areas and labels.
Starting in about 2004 I began to work exclusively with Java-based systems, and HTML applications. While Java the language has great similarity to TOOL, creating applications with HTML is nothing at all like PowerBuilder or Forte. CSS and Javascript have come a tremendous way - in the hands of skilled people wonderful interfaces can be realized. Conceiving the interface and figuring out how to conjure it up from HTML and CSS and Javascript is an artform.
I am moderately capable at building small webpages. This site has largely been handcrafted by yours truly. And I have built and maintain Sibylle’s piano completely by hand. Creating true web applications is something I’ve never done, either professionally or personally.
Today I think I figured out one reason why I’ve never had the drive to build web applications. The process lacks the tangibility that creating client-server apps had. In the end the web app can look and act like a native application, but getting there is a vastly different process.
In the last week or so I’ve been playing around with iOS and I am loving every minute of it. This afternoon, while watching a pair of co-workers discuss visual changes to a web app, I had an epiphany: I like iOS development because it has the same tangibility as Forte had. You build your applications interface with buttons, and labels and so on.
In a way I feel like working iOS is like coming home. Conceptually, stateless applications haven’t changed much in 30 years. The paradigms I used in CICS and IMS worked in client-server applications, just as they work in web applications and in native iOS or Android applications. But the added immediacy of building the interface in iOS adds something I’ve missed in development work for a long, long time.
Climbing has always fascinated me. The overhang on this ascent is wicked.
Straight from the horse’s mouth, these six titles cover Cocoa fundamentals, Objective-C, and the famed Human Interface Guidelines. A little light reading for your weekend.
As a part of following the Stanford iPhone Development course I upgraded my XCode installation to the latest version, 4.2.1 (Build 4D502). However after the update I wasn’t able to access any of the documentation.
Turns out it isn’t automatically downloaded and installed for you. To set it up do this:
After the documentation downloads, hold down the option key and single-click objects, classes, or methods to see popup documentation window, or option-double-click to open the XCode Organizer Documentation tab, with a full listing about the selected item.
The first week of December 2005 I bought and installed Mint to track visitors to my site. In the six years since then I’ve had 120,032 page views from 63,608 unique visits. Not huge numbers but satisfying ones to me.
Each year has seen a steady increase in the number of visitors with the past twelve months having just over 36,000 visits.
The twist on this story is what happened yesterday, and is still happening this morning. A four year old posting of mine, on the difference between an acronym and a set of initials was linked to from Reddit’s TIL sub-reddit.
A normal hour on my site sees anywhere from 2 to 10 page views, with a typical day weighing in at around 80-120 visits. A big week might see something in the upper 800s for a total. Yesterday I had 795 page views on 734 visits. Already today I’ve had 167 page views on 155 visits. I have no idea how long the surge will last, but I’m enjoying watching it immensely.
Since the number of page views is basically a 1:1 ratio with the number of visits I know that most people are looking at the posting linked to from Reddit and then moving on to something else. I don’t think I am gaining too many new repeat readers. What I am most curious to see is the long-term effect of yesterday’s link to my site.