Archive

Archive for April, 2010

Why Apple and Microsoft can’t touch Squeak Smalltalk

April 27th, 2010 2 comments

Life in Mac / Windows

Software is hard… and buggy.  We all know that.  Unfortunately, in mainstream systems, there’s very little we can do about it, except maybe file a bug that disappears into the bureaucracy of a major corporation, probably never to be heard from again.

The Squeak Life

I’m using an application called ScriptManager to keep some simple notes.  Here’s a little screenshot:

Now as software is wont to do, as soon as I went to save a profound (and long) note, an error occurred:

“What the heck is that!?” you say.  “I can get cryptic error messages quite easily in Windows, thank you very much.”  Except, this is no ordinary error message – it’s a debugger opened on the application’s code, so I can see exactly what went wrong.  I can do this because all code – from the lowest level graphics and file libraries, to whole applications – is available to me to change as I please.  And it’s all in the same simple, revolutionary (old) language – Smalltalk.  I don’t have to chase the application’s C++ to the libraries’ C to… well what difference does it make – I would’ve given up already.

But in Squeak, within 2 minutes, I had fixed the error and recovered my note.

You see, by flipping through the call stack, the debugger showed me exactly which object had gone south.  I was able to open and inspect this object in another tool:

It was immediately obvious that a nil entry had been stored in a set, which is not allowed.  Right in the tool, I was able to delete the key:

And I was back on track – no work lost!  How does that compare to your last error in OS X or Windows?

n.b. I was using a variant of Squeak called Pharo.  All this info applies to all versions of Squeak.

Categories: Smalltalk Tags: ,

BDD in Squeak Smalltalk: An exploration

April 27th, 2010 4 comments

Coming from Ruby, I’m obsessed with Behavior Driven Development.  The community (e.g. Rspec, Cucumber) is alive, and there is a body of practices to follow.

Since TDD was born in Smalltalk, I expected to find the same energy and guidance in Squeak.  Squeak represents the most profound, empowering environment I’ve ever seen (I will never go back to C, C++, or even Ruby – which misses the boat by not being a living system).  However, the testing situation seems frozen in the early days.

My intention is to create do a series of experiments, which will lead to BDD best-practices in Squeak.  My vision is code that is pulled into existence by what matters to its users, that is easy to understand, and easy to change.

I’ll keep you posted…

Squeak 4.1 Docking Bar

April 23rd, 2010 No comments

I love that every new feature of Squeak is there… And, I love being able to turn them off!

When I’m working, I absolutely must, must, must have a blank canvas, so I don’t like backgrounds, icons, desktops, menus, or anything else to distract me.

To turn the Docking Bar on and off, there is a preference. Go to World menu -> Appearance -> Preferences, and type ‘dock’ in the search field and it will come up.

If you want to toggle the dock on and off a lot, you could save the following code and assign a keyboard shortcut to it:

TheWorldMainDockingBar showWorldMainDockingBar:
TheWorldMainDockingBar showWorldMainDockingBar not.
Categories: Uncategorized Tags:

windows 7 product key

windows 7 product key

windows 7 key generator

windows 7 key generator

free winrar download

free winrar download

winzip activation code

winzip activation code

free winrar

free winrar

winzip free download

winzip free download

winrar free download

winrar free download

winrar download free

winrar download free

winzip free download full version

winzip free download full version

windows 7 activation crack

windows7 activation crack

windows 7 crack

windows 7 crack

free winzip

free winzip
\n