Seeking System 0.97

Lately, I have been dabbling with retro-computing (actually as part of co-adivsing a student group).  One of the old machines in my collection is an original Macintosh from 1984. For the sake of authenticity, I have been looking for the version of system software that shipped on release day – Jan 24, 1984.

That early in the Macintosh era, there were no official version numbers on the system disks, but the System and Finder files each had their own version number.  Various accounts indicate that I’m looking for System 0.97/Finder 1.0.  After a lot of searching I’ve turned up several candidate disk images, but each seems to have been modified over time.  Here’s one very common version:

sys097There are several problems with this version.  Most obviously, the version of the System font (Chicago-12) used here is quite different from the version seen in other system versions.  This includes the versions seen in pre-release publicity photos.  All of those other versions  used a more familiar looking variant.  Furthermore, the version of Chicago-10 included does match the more traditional version.  Other, more obvious problems exist. The SysVersion program is actually from 1986, and contemporary accounts indicate that Font Mover was included on the second disk, not the main system disk.  I believe this disk was created at a later date and does not represent what shipped with the first Macs.

The obvious thing to do it to go to the source.  Unfortunately, Apple no longer makes those early versions of the System software available on their website.  But various developer CDs have included System Software over the years.  One of the earliest was, Phil and Dave’s Excellent CD.

P&D filesJackpot! This developer disk lists versions of the System Software all the way back to v0.1.  Sadly, booting up the 0.1 System Tools image reveals that it’s really System 1.1/Finder 1.1g.

Screen Shot 2014-06-05 at 11.33.15 AMIn fact, looking at each version in turn, we get:

File Actual Version
0.1 System Tools System 1.1/Finder 1.1g
0.3 System Tools System 2.0/Finder 4.1
0.5 System Disk System 2.0/Finder 4.1
0.7 System Tools System 3.0/Finder 5.1 (800k image)
1.0 System Tools 512 & 128 System 3.2/Finder 5.3

I didn’t bother checking the rest of the disk images, since they were clearly >400K disks.  For the record, I’ve also checked the Apple Legacy Software CD and the September 1994 Service Software Restoration CD with similar results.

The hunt for a valid copy of System 0.97 continues…

New Laptop: Asus Zenbook Prime

I hadn’t really thought about the long-term ramifications of teaching a Malware course, but it appears that I will be teaching it annually for the foreseeable future.  Since I don’t think it’s the wisest idea to mess with live malware on my day-to-day system, I bought a “new” laptop last week.  It’s actually a used laptop from eBay, an Asus Zenbook Prime.  While similar laptops are occasionally available from as refurbs, careful auction hunting  netted it for less.

Here’s the exact specs:

Asus Zenbook UX31A-DH51

Asus Zenbook Prime

  • 13.3″ 1920×1080 IPS LCD screen
  • Intel Core i5-3317U 1.7GHz
  • 4 GB DDR3 RAM
  • 128 GB Solid-State Disk
  • Intel HD Graphics 4000


Since I wanted a computer that could be setup as an example for the students, I didn’t buy another Apple Macintosh.  The Asus is pretty comparable to a mid-level Macbook Air, and this used one cost me about 33% as much.  The new laptop has a ding or two, and didn’t come with all the accessories, but it works and fits my needs.  The speed at which Windows-compatibles lose their market-value is surprising to a long-time Mac owner (and a topic for another post).

I immediately blew away Windows 8, and replaced it with Elementary OS (Luna).  All things considered, installation went pretty smoothly.

Evil is as Evil Does

(logo from Scroogled and TechRepublic’s GeekEnd)

Google’s slogan used to be “Don’t be evil.”, but whether by accident or design Google’s new privacy policy — really a “you have no privacy” policy — is evil. Giving Google information had been acceptable, because they did not aggregate all of the bits of knowledge we entrusted them with into a single profile.

On March 1, 2012 that all ends. Google is modifying their policies to allow them to use every scintilla of information they have on their users for their own purposes. Let’s be clear, Google isn’t promising to make our lives better, they’re promising to make more money. You might not call that “Evil”, but it sure is not “Good”.

So I just went through Google Dashboard, and scrubbed everything I could. I don’t use Android (and won’t start now), so nothing lost there. I changed every privacy setting, cleared histories, removed profile information, etc. You won’t find me on Google+ or Orkut any longer. I’ve removed deleted contacts, profile pictures, and personal information from every product I could stand to give up. Unless a Google product makes my life significantly better, it’s history. I’m somewhat surprised at how much information Google has lying around about me.

Primarily, I have kept Search (with history turned off), Gmail, Google Reader, and Google Groups. I’ve pared down which groups I belong to, and tried to obliterate any identifying information from the profiles. Finally, I’ve logged out of my Google account, and will only log in for specific purposes. Gmail I mostly handle using dedicated mail clients, so that’s partitioned from my web surfing. Reader and Groups are the two products that will leak information about me, but I’m committed to minimizing my use of Reader going forward. Sadly, I don’t know of a way to really ditch Groups since I don’t control the selection of that product, and I really want to stay in touch with the communities that do use it.

Am I being paranoid — probably. But I’d like to try to hang onto the appearance of privacy a bit longer. Besides, if any rogue player manages to obtain Google’s data, I’d rather be safe(r) than sorry. I hear Google has decided to implement these changes to compete more effectively with the growing Facebook juggernaut. Good for them, but in my case, they’ve just lost some of my viewership and become less central to my Internet life.

PS: It’s worth noting that I’m not much of a Facebook user, but I’m likely to take this opportunity to pare back my profile information there as well.

Electronics fun for the Whole Family

I’ve been struggling with how to help our 11-year old develop her attention to detail and critical thinking skills. I spent some time trying to interest her in programming, but it didn’t take. Anyway, I think I’m too close to that topic, and I don’t know that I’m the best person to teach programming to a kid. On the other hand, I have wanted to get back into electronics for a while, and I think it could make for a good geek/geekling activity.

Like any good pack-rat I still have my old Radio Shack electronics kit, which I dutifully handed down to my daughter:

Science Fair Exploring Electronics Lab - 200 Projects

Science Fair Exploring Electronics Lab - 200 Projects

A quick trip to Radio Shack, netted me a newer version to mess with for myself:

Radio Shack Electronics Learning Lab

Radio Shack Electronics Learning Lab

I should point out that the older set is still available, even though Radio Shack no longer carries them. I prefer that set for kids, since it includes lots of fun projects, but only limited explanations of how the projects work. The newer kit comes with manuals by the famous Forest M. Mims III, but the experiments are a bit more limited in scope, but are somewhat better explained. The newer kit is absolutely a great buy for geeks 16 and older, but might have more limited appeal to those younger.

So far she’s built a couple different projects/games from the old kit, including the Quick Draw II game that provided quite a bit of entertainment for the entire household. Hopefully, this is the start of a beautiful friendship…

Sierra, again.

OK, there are other things I meant to post, but I ran across the latest update on the Sierra language Kickstarter, and I really need to comment. First the update:

Update #1: Sierra to Objective C
Posted 5 days ago
I have decided that the project will first translate into Objective C
rather than having Sierra translating into C
so that software development for the iPhone and iPad can
be accelerated by 10X for each programmer and it will reduce bugs
by at least 50%.
So the funding for this project will focus on having Sierra translating
into Objective C.
Please everyone who currently codes in Objective C add your input
to the design of the Sierra language.

Oh my fracking lord! I don’t even have words for this.

I think it’s basically programming 101 that any superset of C allows for the inclusion of C. Any C-preprocessor that generates C will perforce work with any superset of C. That’s the bit that anyone with a passing familiarity with C/C-front/C++/Obj-C/Turbo-C/Tiny-C/etc. would know.

But to compound the idiocy (and that’s what we have here), the idea that Obj-C programmers would be 10x faster because of SYNTAX improvement is absurd. The majority of ideas in Sierra don’t even really make sense in the context of Objective-C.

Additionally, Sierra doesn’t even begin to address any aspect of iOS programming. Objective-C might be the language, but all the heavy lifting (and therefore the bugs) stem from the iOS frameworks. Creating new/better frameworks might be a worthy goal, but is thisthe project, or the person to undertake that task? If someone came up with a DWIM-framwork, that might make us 10x faster, maybe. I’d be skeptical even then. Heck, most iOS/MacOS programmers would be more efficient if all the existing frameworks actually worked exactly as documented.

Finally, will someone tell this guy that declaring yourself associated with the iPhone/iPad does not automatically make your idea better? This needs to go away. Now.

You can see my previous posts on Sierra: here and here.

Sierra programming language

I ran across the Sierra Programming Language yesterday on Kickstarter. First, I thought it was odd seeing an open source programming language looking for funding. Most of these projects seemed to move forwards pet projects for some programmer or another. The inventor makes some pretty bold claims (5x-6x faster programming). Then looking at it, a couple of things struck me (roughly in order of realization):

  • the inventor was initially trained in Pascal
  • he also has never seen C-front
  • why is it compiled on Google App Engine?
  • it’s case-sensitive *and* in-sensitive — because that’s easier?
  • it’s a mess — there are multiple semantic meanings to a given syntactic phrase.
  • this throws encapsulation out the window and calls it a feature
  • position matters [forehead smack], see Cobol for why this sucks
  • thinks variable aliasing is such a good idea — it’s a first-class concept

So, I now know why this project needs funding. The inventor is not a compiler person, and no self-respecting PL person would do this unless it was a job. There is a more fundamental problem at work here — the inventor thinks that the difficulty with programming is syntax. But that couldn’t be further from the truth. Some small percentage of people probably hate the rigidity of programming languages (which Sierra does little to address), it’s that most hate the lack of intelligence on the part of the computer. People want to express themselves ambiguously, and have the computer make intelligent decisions about what they really mean. Sierra thinks people want to write:

loop from 1 thru 100
write currentloop
end loop

when really they want to say is:

show all the numbers from 1 to a hundred

The first example is syntactic sugar, the second requires a system to make at least one intelligent decision (“numbers” really means “integers”), and possibly more (ie. what does “show” mean?).

Truth be told, even with significant AI involved, some people would have trouble programming. It’s just doesn’t seem to be in their nature. But even for those who have the inclination to program, Sierra doesn’t make many improvements over other languages that are already available. It mostly seems to be a mish-mash of some OK features with some known bad ones, all in the name of making C (!?!) easier.

No amount of syntax change is going to make programming faster, easier, or better, especially when it throws out features that make accessing using existing code easier (lexical scoping, independent compilation, etc). Amusingly enough, this project is apparently being written in Python — a language that is significantly nicer than the one being proposed.