| Alan Kay's talk at O'Reilly Emerging Technology Conference 2003
|
|
25 Sep 04 |
|
[print
link
all
] |
|
(Source: Cory Doctorow) Notes from "Daddy, Are We There Yet?"
The last 20 years of the PC have been boring. PC vendors aim at
businesses, who aren’t creative in their tool-use. They’re
adults: they learn a system and stick to it. We should think about
children. The printing revoltuion didn’t happen in Gutenberg’s
day, it happened 150 years later, long after Gutenberg was dead, when all
the pople alive had grown up with the press.
A small minority of Gutenberg’s contemporaries got the
printing press, but it wasn’t until they were dead that the children
who grew up with the press were able to put the ideas into practice.
James Licklieder: in a couple of years, human brains and computers will be
coupled. It hasn’t happened yet. Except in science, where scientists
and computers are indeed thinking as no human brain has ever thought
before. .. craphound.com/kayetcon2003
|
| Using the right hammer ..
|
|
25 Sep 04 |
|
[print
link
all
] |
|
(Source: Robert Martin (UncleBob) in the pragprog-list) As a contractor you
must do the best job you can for your client. This includes picking the
best language for the situation. I agree that there are situations in which
Ruby might be the best technical solution, but the worst political
solution. In that case, you cannot use Ruby — you must use a
technically inferior, but politically preferable language. There are other
situations — more and more of them — in which Ruby is
politically acceptable, and technically superior.
|
| DE: Squeak Artikel C't
|
|
25 Sep 04 |
|
[print
link
all
] |
|
In der C’t 7/2004 erschien ein Artikel ueber Squeak. Programmieren
lernen mit Squeak: Von kleinen und grossen Erfindern. pdf
|
| Smalltalk isKindOfLike: Yogurt
|
|
25 Sep 04 |
|
[print
link
all
] |
|
(Source: Stefan, comp.lang.smalltalk) Smalltalk is like an Apache
hellicopter. Java is like a B52 bomber with pretty heavy duty jet engines.
Smalltalk is very well thought out, extremely well engineered, very
flexible, and generally gives quite good performance in a multitude of
situations. It’s very adaptable to many different situations, and has
lots of tricks up it’s sleeve. Driving it is a bit of a paradigm
shift from driving your average plane, it has some new fancy controls, but
once you get the hang of it, it can be totally amazing and really fun. Even
if you don’t totally know what you’re doing you can still get
yourself out of a jam. Given that you’ve got a good pilot you can
launch off to a quick start and really do some very heavy and impressive
damage in a very short time. It also tends to perform quite impressively if
you’ve got a few of them around, and easier to coordinate an army of
them.
Java is pretty difficult to drive, and once you get it going in a certain
direction it’s pretty hard to get it going somewhere else. It has a
few turbo buttons on it so that if you really know when and where to use
it, it can fly pretty well. You can surely get it going really fast if you
fly it high enough and then point it straight into the ground. It’s
generally not very flexible and often a real pain to deal with, but overall
once you’ve got a flightplan fixed in stone you can fly it reasonably
well and run it reasonably efficiently. If you are meticulous in your
planning and implementation, it can really deliver the goods. If you make
some mistakes, things can go very wrong that may become almost impossible
to correct. Don’t count on any big changes, quick maneuvers, or any
sort of fancy tricks that just might save the day, and leave yourself a
good bit of time for planning and implementation before you expect to be
able to deliver the goods. If you come accross any surprise attacks or come
up against an Apache hellicopter, you could be doomed.
|
| Ruby 1.6.x/1.7.x to Ruby 1.8
|
|
25 Sep 04 |
|
[print
link
all
] |
|
Simon Standgaard posted these two links for the curious Ruby coders to
ruby-talk. www.rubygarden.org/ruby?ProgrammingRubyTwo
www.rubygarden.org/ruby?MovingFrom_1_6_To_1_8
|
| Squeak is a toy - so ?
|
|
25 Sep 04 |
|
[print
link
all
] |
(source: email from Martin Drautzburg to stx-users ML; Oct, 22, 2003)
> PPS:
> I remember working for a company, where it took the make utility3/4 of
> an hour to figure out *what* to compile, and the compilers a day to
> compile- it was a C++ project b.t.w. which was canceled and replaced by
> a Smalltalk program after they spent 50man-years on a non-working
> program - so much for non-toy languages !
Yeah and I just spent 3 days in an inhouse J2EE workshop held by one of our
chief architects. We spent most of our time fighting with the tools.
Changed setting over and over. The goal of the workshop was to demonstrate
how to insert a row into an oracle table. At the end of the 2 days the
table was still empty. Another non-toy language.
I have written two small apps (apx 5000 LOC) one in squak and one in stx.
It was a dream. Got up in the morning and fixed two or three bugs before
breakfast. You can only do this with a real cool environment.
|
| A Little Ruby, A Lot of Objects
|
|
25 Sep 04 |
|
[print
link
all
] |
|
This is a draft book titled A Little Ruby, A Lot of Objects. It’s in
the style of Friedman and Felleisen’s wonderful The Little Lisper,
but on a different topic.
Welcome to my little book. In it, my goal is to teach you a way to think
about computation, to show you how far you can take a simple idea: that all
computation consists of sending messages to objects. Object-oriented
programming is no longer unusual, but taking it to the extreme - making
everything an object - is still supported by only a few programming
languages.
Can I justify this book in practical terms? Will reading it make you a
better programmer, even if you never use "call with current
continuation" or indulge in "metaclass hackery"? I think it
might, but perhaps only if you’re the sort of person who would read
this sort of book even if it had no practical value.
The real reason for reading this book is that the ideas in it are neat.
There’s an intellectual heritage here, a history of people building
idea upon idea. It’s an academic heritage, but not in the fussy
sense. It’s more a joyous heritage of tinkerers, of people
buttonholing their friends and saying, "You know, if I take that and
think about it like this, look what I can do!"
link
|
| Smalltalk must be dead because ...
|
|
25 Sep 04 |
|
[print
link
all
] |
|
Donald Raab posted this goodie to the st-mailinglist.
It’s probably because in order to post in the Java ng he has to be
10x as verbose as in the Smalltalk ng.
He probably has to declare himself, cast himself, wrap himself in a try
catch block, bubble up any exceptions, use some external iterators,
implement some interfaces, and wrap up his primitives in real objects.
Maybe after auto-boxing and generics are supported, he’ll only have
to post 7 or 8x as often.
Don’t worry James, we appreciate and understand your terseness over
here. ;-)
|
| YAPV: yet another pickaxe version
|
|
25 Sep 04 |
|
[print
link
all
] |
|
phrogz.net/ProgrammingRuby/
is ‘done’. Enjoy!
|
| ANN: Lafcadio 0.4.0
|
|
25 Sep 04 |
|
[print
link
all
] |
|
Lafcadio is an object-relational mapping layer for Ruby and MySQL. It lets
you treat database rows like first-class Ruby objects, minimizing the
amount of time you have to spend thinking about MySQL vagaries so you can
spend more time thinking about your program’s logic.
Its features include:
- A test-centric design that allows you extensively unit test any program
that runs on top of Lafcadio. It comes with a MockObjectStore, which mimics
the database and allows you to test database interactions without all the
annoying setup code of a real database-driven test.
- A block-driven querying language that will cover 99% of the ad-hoc queries
you have to do. These queries look like: child_users =
object_store.getUsers { |user| user.age.lt( 18 ) }
These queries can be run against the MockObjectStore, meaning they can be
unit-tested.
- In-Ruby triggers that can be written per domain class. These triggers can
be tested, too!
- Lafcadio makes very few assumptions of how your database was setup, and
comes complete with a lot of hooks to allow you to fit your pre-existing
database. Because programming’s a messy job, and we’re always
cleaning up after somebody’s mistakes (even if they were our own).
Lafcadio is production-ready and runs a number of websites, including
Rhizome.org, which more than 3 million hits a month.
link
|
|
|