Hi
Finally the book is out.... I still does not have it in my hands but soon :). Some of you already got it.
Have fun
Stef
Here is the previous announce I sent around.
Hi
If you are a parent, an educator or a programmer having kids this is for you! After 4 years of work, my new book "Squeak: Learn programming with Robots" will be out soon
http://smallwiki.unibe.ch/botsinc/
http://www.amazon.com/exec/obidos/tg/detail/-/1590594916/ qid=1117218524/sr=1-1/ref=sr_1_1/002-5642974-5143261?v=glance&s=books With Bots Inc you will learn how to program robots in an interactive environment. Bots Inc proposes three teaching approaches: direct command of robots, scripting robots and programming robots. The book contains 24 chapters going step by step over topics with a lot of examples. Bots Inc is fun but it is not a toy, it teaches you 100% real programming in Smalltalk: a pure object-oriented programming language that has been copied by Java. Bots Inc is built on top of the rich open-source multimedia Squeak environment that you can also discover.
My goal is to explain key elementary programming concepts (such as loops, abstraction, composition, and conditionals) to novices of all ages. I believe that learning by experimenting and solving problems with fun is central to human knowledge acquisition. Therefore, I have presented programming concepts through simple but not trivial problems such as drawing golden rectangles or simulating animal behavior. The ideal reader I have in mind is an individual who wants to have fun programming. This person may be a teenager or an adult, a schoolteacher, or somebody teaching programming to children in some other organization. Such an individual does not have to be fluent in programming in any language. As a father of two young boys I also wrote this book for all the parents that want to have fun programming with their kids in a powerful interactive environment. Programming in Smalltalk is an interactive, fun but deep experience.
Testimonies
"I am using the version of the book on your web site to teach my oldest daughter Becca some programming. She absolutely loves it. We are doing the Bot graphics right. My other kids are showing interest as well. My Fall semester schedule leaves me with almost no time free but in the Spring I hope to bring Squeak and your book to our elementary school's "gifted" program." C. David Shaffer
"I'm using the Bot Lab environment for three years and found it really valuable in teaching computer science concepts for a young audience (and even less young !). The bots commanded through balloon (as in comic strips) is a very nice introduction for young children, and when this aspect is well understood, you can use the Bot Workspace to teach the notion of script, a first step in programming languages. The Micro Browser allows children to add new behavior for their bots, and have fun with their creation. This three-layers tool - Balloon, Micro Workspace, Micro Browser - offers to the teacher a fun way to introduce gently the basis of object-oriented programming concepts. With Bots Inc, learning is playing ! ;-)" Samir Saidani - University of Caen - France
"I recently started a course with 7th-graders (age about 13 years) with Stephane's book --- they love it. They all know about syntactic issues from maths --- in a way they know that an expression in a formal language must be well formed. So they easily grasp the fact such as "there must be a colon after the message-name if an argument follows". Of cause they don't really read the error-messages, they just see "there must be some error" and they remember the simple rules. Don't underestimate Smalltalk --- it's easy understandable because it has a simple and straight-forward design." Klaus Fuller - Germany
Have fun...
Stef
http://www.iam.unibe.ch/~ducasse/ "if you knew today was your last day on earth, what would you do different? ... especially if, by doing something different, today might not be your last day on earth" Calvin&Hobbes
=?ISO-8859-1?Q?St=E9phane_Ducasse?= stephane.ducasse@univ-savoie.fr wrote:
Hi
Finally the book is out....
Cool Stef! Congratulations! Sidenote: I will be speaking at a seminar in september about Squeak (in the context of education) and perhaps I could show this as one of the examples. It is always nice to be able to refer to a book that the audience can look up afterwards.
regards, Göran
If Squeak is to be accepted into the business community at large, I would say the website is way less imporant than the ability to slap down a grid, hook it up to a database, and do some sort of live interaction.
It's not really exciting--though it'd be nice to see Smalltalk principles applied--but it's fundamental.
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Just an opinion. I keep looking for places to use Squeak in a business context. Database connectivity and display is key.
On 03-Jul-05, at PM 12:09, Blake wrote:
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Do you mean something like http://www.motionobj.com/seasidefaq/CreatingATableOfRecords?
-- HweeBoon http://motionobj.com/blog/ MotionObj
On Sat, 02 Jul 2005 21:16:12 -0700, Yar Hwee Boon hboon@motionobj.com wrote:
On 03-Jul-05, at PM 12:09, Blake wrote:
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Do you mean something like http://www.motionobj.com/seasidefaq/CreatingATableOfRecords?
Cool.
That's part of it. But it's not interactive, and natively there's nothing like, say:
http://www.devexpress.com/Products/VCL/ExQuantumGrid/
Having done grids, I know they're a lot of work, and something like the link above, wheesh. But still, there's not anything like it in Squeak, even a plain grid. (Nothing that I can see.)
I have to wonder if we'll ever see anything that requires that big a time investment in Squeak.
On 03-Jul-05, at PM 12:58, Blake wrote:
On Sat, 02 Jul 2005 21:16:12 -0700, Yar Hwee Boon hboon@motionobj.com wrote:
On 03-Jul-05, at PM 12:09, Blake wrote:
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Do you mean something like http://www.motionobj.com/seasidefaq/CreatingATableOfRecords?
Cool.
That's part of it. But it's not interactive, and natively there's nothing like, say:
Ahh.. A high bar - Delphi VCL controls. They probably have the best (functioning,) looking widgets :)
Having done grids, I know they're a lot of work, and something like the link above, wheesh. But still, there's not anything like it in Squeak, even a plain grid. (Nothing that I can see.)
Are you referring to Squeak (Morphic, etc?) or Seaside? One factor might be that ExpressQuantumGrid is a commercial product and Delphi has a very strong group of developers selling controls. Will Seaside developers sustain such a group be it free or commercial?
Anyway someone is working on such a collection for Seaside. Contributions can be more easily made once the basics are there.
-- HweeBoon http://motionobj.com/blog/ MotionObj
On Sat, 02 Jul 2005 22:09:19 -0700, Yar Hwee Boon hboon@motionobj.com wrote:
Ahh.. A high bar - Delphi VCL controls. They probably have the best (functioning,) looking widgets :)
Yep. Leave it to Microsoft to turn around and say, "Time to start all over and do everything with these NEW APIs."
Are you referring to Squeak (Morphic, etc?) or Seaside?
Both. Morphic as the current graphical system, Tweak as the coming one, and Seaside as the web-based stuff. I'm optimistic about Tweak and Seaside but it's not there yet.
One factor might be that ExpressQuantumGrid is a commercial product and Delphi has a very strong group of developers selling controls. Will Seaside developers sustain such a group be it free or commercial?
Precisely. I doubt it. There's no money in it and part of the Squeak philosophy is for everything to be open and available all the time. I'm a big fan of open source, but as a user, I often don't want the source, and as a programmer I often don't want to give source away.
Anyway someone is working on such a collection for Seaside. Contributions can be more easily made once the basics are there.
That'll be good.
On 03-Jul-05, at PM 12:09, Blake wrote:
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
I would like to extend Blake's point: there are even more aspects that should be fulfilled by Squeak if its 'general acceptance' IS a target for its development team.
At the moment Squeak is a rather exotic, although sympathic environment for Smalltalk afficionadios. Although Smalltalk itself is a clean language with well-defined boundaries, the extravagancy with which Squeak handles GUI is a rip-off...
The MVC-based GUI solution seems to be a bit outdated by Morphic but Morphic is _highly_ undocumented, it has hardly any usable, general purpose and good-looking widget set. If Squeak would like to remain the secret weapon for creating interactive electronic dashboards for 4-8 year old schoolboys (no one older would really appreciate such primitive graphics in the days of alpha blending, glass effect widgets a la Tiger etc. - sorry for the hard expression), so be it. On the other side, if Squeak would like to step up and earn some limelight in the general programmers' population, definitive steps should be undertaken to make its graphical subsystem on par with (or at least approaching to) e.g. Qt, wx or Java foundation classes.
wxSqueak is a heroic effort (kudos Rob Gayvert !!!) but it has inherent weaknesses in the deployment area: Squeak has by-nature a HUGE footprint base system (by 'base' I do not mean barely usable ;-) which could be done by shrinking the image into only 3-4 MBs), wx libraries may add a factor of two to overall package size, not to count the mixed licensing situation.
A modern, native GUI subsystem would be great in Squeak, as well as a fine-tunable shrinking system which clears the deployment image on a per-module basis.
I would really like to see Squeak growing and taking the right direction in the future!
Cheers, Geza
On 7/3/05, Geza Lakner MD geza67@freestart.hu wrote:
wxSqueak is a heroic effort (kudos Rob Gayvert !!!) but it has inherent weaknesses in the deployment area: Squeak has by-nature a HUGE footprint base system (by 'base' I do not mean barely usable ;-) which could be done by shrinking the image into only 3-4 MBs), wx libraries may add a factor of two to overall package size, not to count the mixed licensing situation.
Hmm.. Huge? Our application ends up inside an NSIS installer of less than 15Mb, and that's because we haven't bothered to shrink the image. 15Mb in today's broadband world isn't exactly huge, and it's easy enough to make it 5Mb.
On Mon, 04 Jul 2005 01:14:20 -0700, Cees De Groot cdegroot@gmail.com wrote:
Hmm.. Huge? Our application ends up inside an NSIS installer of less than 15Mb, and that's because we haven't bothered to shrink the image. 15Mb in today's broadband world isn't exactly huge, and it's easy enough to make it 5Mb.
It'd be nice to be able to build up rather than have to shrink down. (Is it ever a wrong time to yell "SPOOOOON!")
On 7/4/05, Blake blake@kingdomrpg.com wrote:
It'd be nice to be able to build up rather than have to shrink down. (Is it ever a wrong time to yell "SPOOOOON!")
Sure. But there's a difference between "it'd be nice" and "this is a showstopper". I don't think having to shrink is a showstopper....
On Sun, Jul 03, 2005 at 07:00:40PM +0200, Geza Lakner MD wrote:
wxSqueak is a heroic effort (kudos Rob Gayvert !!!) but it has inherent weaknesses in the deployment area: Squeak has by-nature a HUGE footprint base system (by 'base' I do not mean barely usable ;-) which could be done by shrinking the image into only 3-4 MBs), wx libraries may add a factor of two to overall package size, not to count the mixed licensing situation.
While I initially agree with the rest of the comments, I'd like to point out that this "weakness" you point out is shared by other mainstream crap. I have here a commercial java network oriented server which has a RSS of 38M just after starting, while the squeak image I'm developing on (ie, no shrinking at all) is 28M.
Bad for small apps, but still "competitive" for larger ones ;)
Ragnar Hojland Espinosa wrote:
On Sun, Jul 03, 2005 at 07:00:40PM +0200, Geza Lakner MD wrote:
wxSqueak is a heroic effort (kudos Rob Gayvert !!!) but it has inherent weaknesses in the deployment area: Squeak has by-nature a HUGE footprint base system (by 'base' I do not mean barely usable ;-) which could be done by shrinking the image into only 3-4 MBs), wx libraries may add a factor of two to overall package size, not to count the mixed licensing situation.
While I initially agree with the rest of the comments, I'd like to point out that this "weakness" you point out is shared by other mainstream crap. I have here a commercial java network oriented server which has a RSS of 38M just after starting, while the squeak image I'm developing on (ie, no shrinking at all) is 28M.
Bad for small apps, but still "competitive" for larger ones ;)
I think that depends on how one defines small apps. I often will look at the single purpose desktop apps on my computer and see what kind of resources they consume. It is often very amazing. I often see Thunderbird and Firefox in the 60-X00 megabytes. I think wow!!!
And then I am amazed again at all that I find in my full Squeak image and how little space it consumes comparatively.
Or I look at our "competition" and see how much a python/wxwidgets app consumes, or python/QT, or io/openGL... And then compare their functionality to what Squeak has. And then you have the licensing, versioning and install issues.
I think in many areas we are in excellent shape.
That said, I am still very much looking forward to Spoon, smaller images and build-up type images. They can make for a cleaner image, better factored, and not contain all the stuff I don't need.
But I do agree that a superficial look at either Squeak or its websites may give those who only give a cursory look the wrong impression. Currently Squeak appeals to those who are willing to dig a little deeper and see the beauty beneath the "different" GUI, the sometimes dated website(s) and the odd license. But I don't think for a moment that the "other" technologies have anything of value that Squeak can't have. And Squeak has much, much of value that they don't and some can't easily offer.
My 2+ cents.
Jimmie
Blake wrote:
If Squeak is to be accepted into the business community at large, I would say the website is way less imporant than the ability to slap down a grid, hook it up to a database, and do some sort of live interaction.
It's not really exciting--though it'd be nice to see Smalltalk principles applied--but it's fundamental.
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Just an opinion. I keep looking for places to use Squeak in a business context. Database connectivity and display is key.
Ironically, I started on such a project last weekend. I call it "tables", but currently its unusable. BobsUI used to be something similar.
Squeak has loads of potential and can eventually be much more powerful than what Delphi can do. Imagine:
- take an existing business system, made using Squeak tables. - Take any page, which has a Grid, some buttons etc on it. - Pop up a halo and move that button to where you really wanted it... at runtime! - Add your own button/listbox/whatever (at runtime!), and code it there and then on the live system. - Add a column to a grid (which automatically adds it to the table!). - Each item in the grid would be an object. Double-clicking on one would show a UI for that object... without explicit coding (unless you wanted that)! (i.e. invoke object>>asEditMorph). - Select a column showing a list of objects. Right-click "Show object attribute as column" and select which attribute of those objects you want to see. Voila! You've just done the equivalent of a join on two tables.
So yea. I aspire to one day do a demonstration where I build a fully functional business system to the requirements of a volunteer /during/ the 1-hour demonstration. Now that would be cool.
Mikevdg.
On Sun, 03 Jul 2005 02:48:34 -0700, Michael van der Gulik squeakml@gulik.co.nz wrote:
Ironically, I started on such a project last weekend. I call it "tables", but currently its unusable. BobsUI used to be something similar.
Yeah, there seem to be many abortive attempts at it.
Squeak has loads of potential and can eventually be much more powerful than what Delphi can do. Imagine:
I think a pure OO implementation has potential for sure, but:
- take an existing business system, made using Squeak tables.
- Take any page, which has a Grid, some buttons etc on it.
- Pop up a halo and move that button to where you really wanted it... at
runtime!
I'm not particularly enamored of this idea that runtime and designtime are the same thing. A lot of Squeak's problems stem from this (as well as many of its solutions, in fairness).
I could do all the things you list in Delphi, with the exception of giving the user the ability to code at the same level I'm coding. Sometimes that's the most workable approach. I don't, by this, mean that I subscribe to the notion of a hierarchical organization as has emerged in the programming world, or even approve of it.
So yea. I aspire to one day do a demonstration where I build a fully functional business system to the requirements of a volunteer /during/ the 1-hour demonstration. Now that would be cool.
No doubt. Have you looked into Tweak? You might be able to, uh, synergize....
On Jul 3, 2005, at 6:09 AM, Blake wrote:
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Can you elaborate on this? The point of comparison you gave was a Delphi VCL grid, which has nothing to do with reading and displaying tables on the web. So do you mean "easily done in other web environments, but not in Seaside" (in which case I'd love to hear more), or do you mean "easily done in desktop environments, but not on the web" (which is true, but not limited to Squeak)?
Cheers, Avi
On Sun, 03 Jul 2005 03:23:03 -0700, Avi Bryant avi@beta4.com wrote:
On Jul 3, 2005, at 6:09 AM, Blake wrote:
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Can you elaborate on this? The point of comparison you gave was a Delphi VCL grid, which has nothing to do with reading and displaying tables on the web. So do you mean "easily done in other web environments, but not in Seaside" (in which case I'd love to hear more), or do you mean "easily done in desktop environments, but not on the web" (which is true, but not limited to Squeak)?
Well, the example given was sort of the ne plus ultra of Win32 components, for which there is no parallel in Squeak on the desktop. The tragedy there being that Win32 is dead, replaced by .NET and WinFS, whereas had such a thing been done in Squeak, it would still be viable. (Although, I guess Borland ported the VCL well enough to where the components are still usable.)
However, yeah, reading and displaying tables on the web is a cakewalk in other environments. I wrote an article on this back in 1999, when it was a relatively big deal, but you could use dBase to do it. (The dBase Inc. site is built on dBase, as a matter of fact, and was back then!)
Then, somewhere around version 6, Delphi 6 added some controls to make it possible, but it didn't really get easy enough (at least for me to do it<s>) till about 2001, with Delphi 7 and Intraweb (atozed.com). That's actually what I'm going to do this current project in. (Actually, I started to try it out in Seaside, but it's for a PDA, and HTML 3.2, so I didn't think I'd be able to do it in the narrow time frame I have.)
The next time I did it was in 2002, using the VS.NET beta. It only took a few hours, even though I hadn't used VS since 1996, and had never touched C# before. (But C# is the ugly bastard stepchild of Delphi, so it's not that surprising.)
Recently (2004) Alpha 5 version 6 gained the capability, and made it pushbutton easy (but I still wouldn't recommend it).
In each case, we're talking about showing a grid and allowing users to directly edit the values in a table. Nothing super-fancy, just plain edits, check boxes, and combo boxes. I'll be putting up an example in the next few hours--well, probably Monday morning, since I'm close to packing it in for the night.
Blake wrote:
If Squeak is to be accepted into the business community at large, I would say the website is way less imporant than the ability to slap down a grid, hook it up to a database, and do some sort of live interaction.
It's not really exciting--though it'd be nice to see Smalltalk principles applied--but it's fundamental.
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Just an opinion. I keep looking for places to use Squeak in a business context. Database connectivity and display is key.
I'll strongly second that...
nikos
nik boretos <nicolasb <at> maich.gr> writes:
Blake wrote:
If Squeak is to be accepted into the business community at large, I would say the website is way less imporant than the ability to slap down a grid, hook it up to a database, and do some sort of live interaction.
It's not really exciting--though it'd be nice to see Smalltalk principles applied--but it's fundamental.
I have a project right now I'd like to do in seaside, but it requires me to be able to read and display a table on the web, something easily done in other environments, but not in Squeak.
Just an opinion. I keep looking for places to use Squeak in a business context. Database connectivity and display is key.
I'll strongly second that...
nikos
About databases, this may be true because relational databases are a "de-facto" standard and a programmer dealing with legacy systems must talk with DB stuff. But in Squeak is available ODBC and ODBCEnh to help with this.
But the key, IMHO, is that relational databases smell bad. Isn't natural develop a Smalltalk system + relational DB. Is a way to freeze and tie our model and withdraw flexibility to our system.
On Tue, 05 Jul 2005 03:06:55 -0700, German Arduino gsa@softhome.net wrote:
nik boretos <nicolasb <at> maich.gr> writes:
Blake wrote:
Just an opinion. I keep looking for places to use Squeak in a business context. Database connectivity and display is key.
I'll strongly second that...
nikos
About databases, this may be true because relational databases are a "de-facto" standard and a programmer dealing with legacy systems must talk with DB stuff. But in Squeak is available ODBC and ODBCEnh to help with this.
In just about any professional desktop development tool today, the process of displaying DB data in form or grid format is nigh automatic. I can do it without a line of code, and I can do it even if I've never seen the tool in my life.
You say ODBC and ODBCEnh "help with this", so I try to install ODBC and get the expected "no published package" followed by the not surprising: "Error occured during install: Not a GZipped stream". And yet, even if I could get it to install, I'm positive that generating a simple data entry form or grid would not be trivial and would most certainly require coding. Most likely it's not something I could manage in the first week of using Squeak, much less the first hour.
But the key, IMHO, is that relational databases smell bad. Isn't natural develop a Smalltalk system + relational DB. Is a way to freeze and tie our model and withdraw flexibility to our system.
I disagree. OO programming is perfectly capable of modeling an RDBMS. (I may be hallucinating but I thought I read an essay by Alan Kay embracing both RDBMS and ODBMS. If so, I hallucinated a really sensible thing.<s>)
The relational model certainly has its limits, but it also has its uses. And it's not to Squeak's credit that it makes a chore out of reaching out to other tools.
On Jul 5, 2005, at 12:39 PM, Blake wrote:
In just about any professional desktop development tool today, the process of displaying DB data in form or grid format is nigh automatic. I can do it without a line of code, and I can do it even if I've never seen the tool in my life.
And then what? I'm not challenging your statement, I'm just curious: say you use one of these tools to display a grid of DB data without a line of code. What's the process to then have a finished application? Do you have to write some code at some point? How far towards your final goal does that code-less grid take you, and how far do you have to then go with code?
In my personal experience, the tools that work best are those that either let you go all the way to where you're trying to get to without *ever* writing code (obviously this only works within a restricted domain, but it's great when it does), or those that acknowledge that you're going to have to write code at some point and so focus on making that as easy and productive as possible. Whether or not I have to write "a line of code" to achieve the first 5% of my goal tends to be vastly overshadowed by whether I have to write 1000 or 10000 or 100000 lines to accomplish the other 95%. I may have more to show in VB than Squeak after an hour, but if it's a month long project I know which one I'd want to use.
It does make for nice demos, though.
At any rate, you're certainly right that Squeak is not a "professional desktop development tool". If you're looking for one of those (and, I gather, on the Windows platform), try Dolphin.
Avi
At 06:11 AM 7/5/2005, you wrote:
On Jul 5, 2005, at 12:39 PM, Blake wrote:
In just about any professional desktop development tool today, the process of displaying DB data in form or grid format is nigh automatic. I can do it without a line of code, and I can do it even if I've never seen the tool in my life.
...... At any rate, you're certainly right that Squeak is not a "professional desktop development tool". If you're looking for one of those (and, I gather, on the Windows platform), try Dolphin.
Avi
I too strongly agree with (the other) Blake. My company settled on using Scheme instead of Squeak for these reasons plus one other. Squeak is non-reentrent making it almost useless as an extension language.
It's real cute that you can do all kinds of neat stuff with Squeak. The problem is that most people want to manipulate data. It's fun to play with at home but its hard to make real use of it if you can't use it at work. IMO, what would make Squeak a hell of a lot more useful would be:
1. Make dialogs easy to develop and use 2. Out-of-the-box and clean ODBC support 3. Make the VM re-entrent 4. Make it simple, lots of progressively complex examples
Squeak has become way too complex to use. Yea, its easy creating a new class or instantiating a collection class but just try to write a simple phone book application. I'd find it hard to find a more difficult and complex and undocumented environment.
Please don't get me wrong. I really like Smalltalk and deeply appreciate what the developers of Squeak have done. Try as I might, I can't seem to figure out Squeak and make use of it. It has just become so complex. I own the available books and they haven't been too much help - they again basically ignore business applications (dialogs and data). I'd live to see these issues resolved.
Just one opinion.
--blake (the other one)
On Tue, 05 Jul 2005 04:11:29 -0700, Avi Bryant avi.bryant@gmail.com wrote:
In just about any professional desktop development tool today, the process of displaying DB data in form or grid format is nigh automatic. I can do it without a line of code, and I can do it even if I've never seen the tool in my life.
And then what? I'm not challenging your statement,
No worries. I keep using Squeak because I love Smalltalk and Squeak has a lot of good uses and a lot more potential. There are certainly support communities wher the response would be "love it or leave it".<s>
I'm just curious: say you use one of these tools to display a grid of DB data without a line of code. What's the process to then have a finished application? Do you have to write some code at some point? How far towards your final goal does that code-less grid take you, and how far do you have to then go with code?
In some cases, pretty damn far. Some people don't want much more than an easy, slap-down, look at their data.
Personally, I've always had a problem with "data-aware" controls, in that they muddle the presentation with the data layer and often make the actual programming you have to do--the "business rules", I think is how it's currently phrased--heavily bound to both. (A lot is being done to improve this, though progress seems slow to me.)
However, it's easy to underestimate how powerful a demonstration it makes. I'm involved in a project which is based on an Access-like tool that really, really shouldn't have been. But the ease of creating and displaying data sold the people I work with. And why wouldn't it? Out of 150 screens, 120 are forms or grids based on tables or sets.
It's been disastrous precisely because the tool--which does this one thing quickly--is stuck in '80s era DOS-style programming.
In my personal experience, the tools that work best are those that either let you go all the way to where you're trying to get to without *ever* writing code (obviously this only works within a restricted domain, but it's great when it does),
I've never gotten very far with that. IBM's VisualAge Smalltalk could do that, and was pretty cool, though.
or those that acknowledge that you're going to have to write code at some point and so focus on making that as easy and productive as possible.
No disagreement.
Whether or not I have to write "a line of code" to achieve the first 5% of my goal tends to be vastly overshadowed by whether I have to write 1000 or 10000 or 100000 lines to accomplish the other 95%. I may have more to show in VB than Squeak after an hour, but if it's a month long project I know which one I'd want to use.
Yeah? You think that the absnce of a solid grid component might not eat up a bunch of that month? If not...well, what are your plans for the rest of July?<s>
It does make for nice demos, though.
Which should not be underestimated.
At any rate, you're certainly right that Squeak is not a "professional desktop development tool". If you're looking for one of those (and, I gather, on the Windows platform), try Dolphin.
Well, we were discussing "general acceptance" and, in my case, of what people come and ask of me. It's not a matter of me "looking for a professional desktop development tool". (Personally, I doubt I'd use any Windows-specific Smalltalk.) I will be looking for a replacement environment/tool soon for the abovementioned big app, and I suspect we'll end up using Java. (I'm not excited at the prospect, but it could be much worse.)
And, you know, it's =fine= if Squeak is never meant to be a "professional desktop development tool". If Squeak has a fundamental "failing" it might be that it tends to excite the desire to make it all things to all people. If I can use it to teach kids and experiment with cool things, that's cool.
It's just not "general acceptance".<s>
On Jul 6, 2005, at 12:27 AM, Blake wrote:
At any rate, you're certainly right that Squeak is not a "professional desktop development tool". If you're looking for one of those (and, I gather, on the Windows platform), try Dolphin.
Well, we were discussing "general acceptance" and, in my case, of what people come and ask of me. It's not a matter of me "looking for a professional desktop development tool". (Personally, I doubt I'd use any Windows-specific Smalltalk.) I will be looking for a replacement environment/tool soon for the abovementioned big app, and I suspect we'll end up using Java. (I'm not excited at the prospect, but it could be much worse.)
And, you know, it's =fine= if Squeak is never meant to be a "professional desktop development tool". If Squeak has a fundamental "failing" it might be that it tends to excite the desire to make it all things to all people. If I can use it to teach kids and experiment with cool things, that's cool.
It's just not "general acceptance".<s>
Teaching kids and experimenting - yes, Squeak's great for that. It's also great, IMNSHO, for doing professional web development - there are a few of us around whose companies are built around exactly that. And I suspect that, given a little time, it will also be great for doing professional desktop development - Rob's wxSqueak work is moving steadily in that direction. But personally, I don't think Squeak (or Smalltalk) ever will be "generally accepted" in the kind of sense you mean, and, yes, I'm fine with that.
Avi
On Tue, 05 Jul 2005 16:19:41 -0700, Avi Bryant avi.bryant@gmail.com wrote:
Teaching kids and experimenting - yes, Squeak's great for that.
So, we agree. Although, not so great at experimenting if you need to work with others' data.
It's also great, IMNSHO, for doing professional web development - there are a few of us around whose companies are built around exactly that.
Using Seaside, you mean? I wonder how many of those few were new to Squeak when they decided to do that.
And I suspect that, given a little time, it will also be great for doing professional desktop development - Rob's wxSqueak work is moving steadily in that direction.
Sure. And I think wxWidgets has some sort of grid control so, it may be that gluing the grid to some database connectivity is not far off. And it may come to be doable in Tweak, too.
But personally, I don't think Squeak (or Smalltalk) ever will be "generally accepted" in the kind of sense you mean, and, yes, I'm fine with that.
You've moved the target and started to sound defensive to boot. All I said was that, in my work, the ability to easy create an interface that hooks to a DBMS is considered basic. Not surprisingly, there was some agreement on that from others.
I don't care if Squeak is "generally accepted" in the kind of sense you impute to me, either. I do find it odd, though, to be disdainful of acquiring a larger audience and particularly to turn one's nose up at the suggestion of improvements to interoperability.
On Jul 6, 2005, at 3:55 AM, Blake wrote:
It's also great, IMNSHO, for doing professional web development - there are a few of us around whose companies are built around exactly that.
Using Seaside, you mean? I wonder how many of those few were new to Squeak when they decided to do that.
Of those I know? All of them. Including me. Not, obviously, that any of us decided to build our businesses around Squeak before using it for a while, but all of us started using (or writing ;) Seaside while new to Squeak and never looked back.
I'm not trying to make any particular point here, just offering information since you asked.
But personally, I don't think Squeak (or Smalltalk) ever will be "generally accepted" in the kind of sense you mean, and, yes, I'm fine with that.
I don't care if Squeak is "generally accepted" in the kind of sense you impute to me, either. I do find it odd, though, to be disdainful of acquiring a larger audience and particularly to turn one's nose up at the suggestion of improvements to interoperability.
Am I turning my nose up? I'm sorry, I genuinely didn't mean to be. Just because I don't think Squeak will ever have the mass-market appeal of Delphi certainly doesn't meant we shouldn't try to address individual concerns. And I'm hardly uninterested in the issue of connecting to relational databases - I've written, for Squeak, several tools for object/relational mapping (the most interesting of which is probably ROE), a binding for SQLite, a simple bridge to let you use JDBC drivers, etc. I actually don't think Squeak's database access story is that bad (at least from my web developer's biased view), but it could certainly be improved.
So, let's focus on the actual concerns you brought up: - it sounds like you were having trouble installing the ODBC package. It actually works fine for me; can anyone else reproduce the issue? - there's no good data grid; definitely a problem, but one several people have mentioned they're working on. - anything else?
Cheers, Avi
On 7/6/05, Avi Bryant avi.bryant@gmail.com wrote:
- there's no good data grid; definitely a problem, but one several
people have mentioned they're working on.
wxSqueak has all sorts of tables and spreadsheet-like thingies. If I'm writing a business app, I'd want the wx L&F anyway. No, it's not 'zero line coding', but hardly a lot of work, either.
On Wed, 06 Jul 2005 02:26:21 -0700, Avi Bryant avi.bryant@gmail.com wrote:
Of those I know? All of them. Including me. Not, obviously, that any of us decided to build our businesses around Squeak before using it for a while, but all of us started using (or writing ;) Seaside while new to Squeak and never looked back.
Seaside is, IMO, a good entree to Squeak, though that almost seems paradoxical. (I think it may be because it's a small but useful subset of functionality, sorta like learning to program in teletype-mode.) I came very close to using it for a project I have right now. The only thing that stopped me was that my target is PDAs.
I'm not trying to make any particular point here, just offering information since you asked.
Nor was I. And thanks.<s>
Am I turning my nose up? I'm sorry, I genuinely didn't mean to be. Just because I don't think Squeak will ever have the mass-market appeal of Delphi
Next time I'm on a Delphi board, I'm going to have to tell them they have "mass-market appeal". They'll enjoy that. (It's all perspective, eh?)
< certainly doesn't meant we shouldn't try to address individual
concerns. And I'm hardly uninterested in the issue of connecting to relational databases - I've written, for Squeak, several tools for object/relational mapping (the most interesting of which is probably ROE), a binding for SQLite, a simple bridge to let you use JDBC drivers, etc. I actually don't think Squeak's database access story is that bad (at least from my web developer's biased view), but it could certainly be improved.
I don't know if it's good or bad. I just know the bar is WAY higher than elsewhere. And that seems wrong.
- it sounds like you were having trouble installing the ODBC package.
It actually works fine for me; can anyone else reproduce the issue?
I'm using the 3.8-6665 from squeak.org. It looks like I can't install much without getting the eocd error, including Worlds of Squeak. But now it looks to me like the problem may be a connection issue. All code update servers seem to be unavailable, all squeakmap master servers are down (though the package loader itself comes up). Scamper can get ftp sites but says the unibe.ch proxy is down if I try to get an http.
- there's no good data grid; definitely a problem, but one several
people have mentioned they're working on.
Yep. I'm following a half-dozen works in progress. Have been for some time. Hoping this will all lead to contributions from me rather than just complaints.
- anything else?
There are other big issues, of course. But nothing that hasn't been hashed over a zillion times already.
Blake, that seams to be the problem just been reported (see thread "3.8 packaged with proxy server on !! "). Try evaluating "HTTPSocket stopUsingProxyServer" or download the fixed image that Marcus uploaded yesterday.
Cheers, Adrian
On Jul 6, 2005, at 1:26 PM, Blake wrote:
On Wed, 06 Jul 2005 02:26:21 -0700, Avi Bryant avi.bryant@gmail.com wrote:
Of those I know? All of them. Including me. Not, obviously, that any of us decided to build our businesses around Squeak before using it for a while, but all of us started using (or writing ;) Seaside while new to Squeak and never looked back.
Seaside is, IMO, a good entree to Squeak, though that almost seems paradoxical. (I think it may be because it's a small but useful subset of functionality, sorta like learning to program in teletype- mode.) I came very close to using it for a project I have right now. The only thing that stopped me was that my target is PDAs.
I'm not trying to make any particular point here, just offering information since you asked.
Nor was I. And thanks.<s>
Am I turning my nose up? I'm sorry, I genuinely didn't mean to be. Just because I don't think Squeak will ever have the mass- market appeal of Delphi
Next time I'm on a Delphi board, I'm going to have to tell them they have "mass-market appeal". They'll enjoy that. (It's all perspective, eh?)
< certainly doesn't meant we shouldn't try to address individual
concerns. And I'm hardly uninterested in the issue of connecting to relational databases - I've written, for Squeak, several tools for object/relational mapping (the most interesting of which is probably ROE), a binding for SQLite, a simple bridge to let you use JDBC drivers, etc. I actually don't think Squeak's database access story is that bad (at least from my web developer's biased view), but it could certainly be improved.
I don't know if it's good or bad. I just know the bar is WAY higher than elsewhere. And that seems wrong.
- it sounds like you were having trouble installing the ODBC
package. It actually works fine for me; can anyone else reproduce the issue?
I'm using the 3.8-6665 from squeak.org. It looks like I can't install much without getting the eocd error, including Worlds of Squeak. But now it looks to me like the problem may be a connection issue. All code update servers seem to be unavailable, all squeakmap master servers are down (though the package loader itself comes up). Scamper can get ftp sites but says the unibe.ch proxy is down if I try to get an http.
- there's no good data grid; definitely a problem, but one several
people have mentioned they're working on.
Yep. I'm following a half-dozen works in progress. Have been for some time. Hoping this will all lead to contributions from me rather than just complaints.
- anything else?
There are other big issues, of course. But nothing that hasn't been hashed over a zillion times already.
On Wed, 06 Jul 2005 04:56:25 -0700, Adrian Lienhard adi@netstyle.ch wrote:
HTTPSocket stopUsingProxyServer
That seems to have worked. I still get the eocd error when trying to download "Worlds of Squeak" but other stuff seems to work. (I can get ODBC to install and the Win32 fonts which were giving me trouble before. I'm not sure I like the "windows-style" overall but that's not relevant.)
On 7/5/05, Blake blake@kingdomrpg.com wrote:
On Tue, 05 Jul 2005 04:11:29 -0700, Avi Bryant avi.bryant@gmail.com wrote:
In just about any professional desktop development tool today, the process of displaying DB data in form or grid format is nigh automatic. I can do it without a line of code, and I can do it even if I've never seen the tool in my life.
And then what? I'm not challenging your statement,
I think Smalltalk (and Squeak in particular) was designed to make simple things easy and hard things possible. When compared to MS Access, Visual Studio .NET, and JAVA I think Smalltalk definitely excels at the later (making hard things possible), but I think it fails in many areas at the former (to its disadvantage). Data aware grids should be easier to develop in Smalltalk than in .NET, right? (in theory)
I used to write more business apps than I do now, but grids o' data are really important in many business apps (as uninspiring as they are). Just look at how important MS Excel is to modern businesses. It is just a virtual machine solely dedicated to running and persisting grids.
At one time I worked up a Squeak grid (SGrid on squeak.saltypickle.comhttp://squeak.saltypickle.com) that is still available. It is not a two-way data aware control, but it is one-way (meaing it will read from a collection and populate a grid). It also doesn't handle super large data sets too well and would need a paging scheme. It served the purpose at the time but needs more work.
Anyways, I am not necessarily trying to toot my own horn here other than to say that I think a "grid team" should work up or continue the work done by many to develop a solid grid in Morphic. I think Squeak (and Morphic in particular) could have a super whiz bang grid that makes others absolutely jealous of us Squeakers. Any takers on building a super grid? I'd be happy to contribute if others could assist, but grid development is hard work even in Squeak.
Lastly, here's a thought. What if we don't ever have a whiz bang grid in Squeak? What if we don't have such cool pedestrian components such that we don't ever seem to attract the thousands of uninspired business app developers? Do we care? What are we missing out on? Why are we wanting to attract the common business app power user to Squeak so he/she can slap together a data editing program with little or no code? (Sorry all business app developers, I am often developing a business app too so I'm counting myself in this bunch) After all we have MS Excel for that and it runs on multiple platforms (any OS that starts with MS and Mac too). I am not trying to incite a riot here, but just curious as to our motivations?
Regards,
John
John Pierce john.raymond.pierce@gmail.com wrote:
Lastly, here's a thought. What if we don't ever have a whiz bang grid
in
Squeak? What if we don't have such cool pedestrian components such
that we
don't ever seem to attract the thousands of uninspired business app developers? Do we care? What are we missing out on?
In a technical sense, nothing very interesting. But, the ability to do a decent job on BoringBusinessBits(tm) might lead to more people being able to make a living using Squeak, which in turn might help with development in other areas. After all, if you're able to make money out of Corporate Elbonia and want to see general improvements in Squeak to help increase that income then you're sure to end up sending me money to improve performance or port to ElboniaSoft Doorways '06.
tim -- Tim Rowledge, tim@rowledge.org, http://www.rowledge.org/tim Computer possessed? Try DEVICE=C:\EXOR.SYS
don't ever seem to attract the thousands of uninspired business app developers? Do we care? What are we missing out on?
In a technical sense, nothing very interesting. But, the ability to do a decent job on BoringBusinessBits(tm) might lead to more people being able to make a living using Squeak, which in turn might help with development in other areas. After all, if you're able to make money out of Corporate Elbonia and want to see general improvements in Squeak to help increase that income then you're sure to end up sending me money to improve performance or port to ElboniaSoft Doorways '06.
Yeap.
Blake wrote:
In just about any professional desktop development tool today, the process of displaying DB data in form or grid format is nigh automatic. I can do it without a line of code, and I can do it even if I've never seen the tool in my life.
Any "professional desktop dev tool" or any RAD tool. Ins't the same.
You say ODBC and ODBCEnh "help with this", so I try to install ODBC and get the expected "no published package" followed by the not surprising: "Error occured during install: Not a GZipped stream". And yet, even if
Unfortunately this is a common question installing packages that aren't up to date, but the most of times the installation is possible after a time of experience dealing with with Squeak, packages and so.
I could get it to install, I'm positive that generating a simple data entry form or grid would not be trivial and would most certainly require coding. Most likely it's not something I could manage in the first week of using Squeak, much less the first hour.
Squeak isn't a tool to be dominated in 2 weeks, nor in 2 months.
Working full with Smalltalk require a time, at least in my experience. The full power of Object Technology (not only object oriented) need a time. Smalltalk and RAD are opposites I think. Smalltalk is a tool with others goals more than RAD.
I disagree. OO programming is perfectly capable of modeling an RDBMS. (I may be hallucinating but I thought I read an essay by Alan Kay embracing both RDBMS and ODBMS. If so, I hallucinated a really sensible thing.<s>)
The relational model certainly has its limits, but it also has its uses. And it's not to Squeak's credit that it makes a chore out of reaching out to other tools.
My point is that exactly Smalltalk is the best suited option to NOT have the need of use relational DBs. If a programmer has payed the costs of learn OT (aka Smalltalk), then have no sense (IMHO) get tied to relational DBs.
Cheers. gsa.
In just about any professional desktop development tool today, the process of displaying DB data in form or grid format is nigh automatic. I can do it without a line of code, and I can do it even if I've never seen the tool in my life.
Why saddle a leading-edge development project like Squeak with the mundane trappings of "just about any" other tool? That seems like adding a luggage rack and air conditioning to a Formula One car or putting a wet bar and a stewardess on the Space Shuttle just to make them seem more familiar. Certainly if anyone really wants to add functions to Squeak they can do so, and if those functions prove useful they could become part of the Squeak base, but why tack on a bunch of bric-a-brac just because it's already been done elsewhere?
Gary
--- avast! Antivirus: Outbound message clean. Virus Database (VPS): 0527-0, 07/04/2005 Tested on: 7/5/05 10:50:24 PM avast! is copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
I'm working through the ClockWorks example in Mark Guzdial's book "Squeak, Object-Oriented Design with Multimedia Applications." I'm at the point where the MVC design is finished. Unfortunately, even if I file in his code, it doesn't seem to work.
The dependent class (ClockText) does not seem to be getting any update calls. A print statement assures me that the addDependent message is sent. Another print statement tells me the Clock is ticking.
What bothers me most is that if I step through the code with the debugger, then finally say "Proceed"--it works!
Any suggestions would be appreciated.
Don
Jeff Pierce came up with a fix for this, but I don't recall what it was. It may be posted somewhere at http://coweb.cc.gatech.edu/cs2340. Something broke between 2.8 and 3.0, as I recall.
Mark
On Jul 6, 2005, at 12:02 AM, Don McLane wrote:
I'm working through the ClockWorks example in Mark Guzdial's book "Squeak, Object-Oriented Design with Multimedia Applications." I'm at the point where the MVC design is finished. Unfortunately, even if I file in his code, it doesn't seem to work.
The dependent class (ClockText) does not seem to be getting any update calls. A print statement assures me that the addDependent message is sent. Another print statement tells me the Clock is ticking.
What bothers me most is that if I step through the code with the debugger, then finally say "Proceed"--it works!
Any suggestions would be appreciated.
Don
__________ Mark Guzdial : Georgia Tech : College of Computing/GVU Atlanta, GA 30332-0280 Collaborative Software Lab, http://coweb.cc.gatech.edu/csl http://www.cc.gatech.edu/~mark.guzdial/
Couln't find a clue on that website (although I found some other interesting stuff there).
Bizarrely, I stumbled on a fix. Just make an instance variable for the ClockText object. So, I just change ClockWindow>>openOn from:
ClockText at: ...
to:
clockText := ClockText at: ...
I wonder if the garbage collector is somehow clobbering ClockText (perhaps not seeing the reference to it in the dependents collection), but when we keep an explicit reference to ClockText, then it's OK.
Anyway, thanks. Don
Mark Guzdial wrote:
Jeff Pierce came up with a fix for this, but I don't recall what it was. It may be posted somewhere at http://coweb.cc.gatech.edu/cs2340. Something broke between 2.8 and 3.0, as I recall.
Mark
On Jul 6, 2005, at 12:02 AM, Don McLane wrote:
I'm working through the ClockWorks example in Mark Guzdial's book "Squeak, Object-Oriented Design with Multimedia Applications." I'm at the point where the MVC design is finished. Unfortunately, even if I file in his code, it doesn't seem to work.
The dependent class (ClockText) does not seem to be getting any update calls. A print statement assures me that the addDependent message is sent. Another print statement tells me the Clock is ticking.
What bothers me most is that if I step through the code with the debugger, then finally say "Proceed"--it works!
Any suggestions would be appreciated.
Don
Mark Guzdial : Georgia Tech : College of Computing/GVU Atlanta, GA 30332-0280 Collaborative Software Lab, http://coweb.cc.gatech.edu/csl http://www.cc.gatech.edu/~mark.guzdial/
On Tue, 05 Jul 2005 19:49:58 -0700, Gary Fisher gafisher@sprynet.com wrote:
Why saddle a leading-edge development project like Squeak with the mundane trappings of "just about any" other tool? That seems like adding a luggage rack and air conditioning to a Formula One car or putting a wet bar and a stewardess on the Space Shuttle just to make them seem more familiar.
That's one perspective. Another perspective is that it's like adding doors or tires.
Just because something is prosaic doesn't mean it has no value.
Certainly if anyone really wants to add functions to Squeak they can do so, and if those functions prove useful they could become part of the Squeak base, but why tack on a bunch of bric-a-brac just because it's already been done elsewhere?
I don't think anyone was talking about sullying the pure release with practical tools. Just pointing out that for an environment that used to pride itself on being easy to use, there are plenty of areas where it's really not very easy to use.
I'm not sure on what basis you can call Squeak a "leading-edge development project" but perhaps we have different definitions.
I don't think anyone was talking about sullying the pure release with practical tools.
Ah, now THERE we see our distinct perspectives.
Another analogy might be fitting a hydroplane with a trolling motor . . .
<g>
Gary
----- Original Message ----- From: "Blake" blake@kingdomrpg.com To: "The general-purpose Squeak developers list" squeak-dev@lists.squeakfoundation.org Sent: Wednesday, July 06, 2005 12:12 AM Subject: Re: Squeak's "general acceptance"
On Tue, 05 Jul 2005 19:49:58 -0700, Gary Fisher gafisher@sprynet.com wrote:
Why saddle a leading-edge development project like Squeak with the mundane trappings of "just about any" other tool? That seems like adding a luggage rack and air conditioning to a Formula One car or putting a wet bar and a stewardess on the Space Shuttle just to make them seem more familiar.
That's one perspective. Another perspective is that it's like adding doors or tires.
Just because something is prosaic doesn't mean it has no value.
Certainly if anyone really wants to add functions to Squeak they can do so, and if those functions prove useful they could become part of the Squeak base, but why tack on a bunch of bric-a-brac just because it's already been done elsewhere?
I don't think anyone was talking about sullying the pure release with practical tools. Just pointing out that for an environment that used to pride itself on being easy to use, there are plenty of areas where it's really not very easy to use.
I'm not sure on what basis you can call Squeak a "leading-edge development project" but perhaps we have different definitions.
--- avast! Antivirus: Outbound message clean. Virus Database (VPS): 0527-0, 07/04/2005 Tested on: 7/6/05 5:20:12 AM avast! is copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
On Tue, 05 Jul 2005 21:12:31 -0700, "Blake" blake@kingdomrpg.com said:
On Tue, 05 Jul 2005 19:49:58 -0700, Gary Fisher gafisher@sprynet.com wrote:
Why saddle a leading-edge development project like Squeak with the mundane trappings of "just about any" other tool? That seems like adding a luggage rack and air conditioning to a Formula One car or putting a wet bar and a stewardess on the Space Shuttle just to make them seem more familiar.
That's one perspective. Another perspective is that it's like adding doors or tires.
Just because something is prosaic doesn't mean it has no value.
IMHO Gary's perspective is a bit extreme here, and I personally disagree with it & agree more with Tim's statement. I think if someone actually came up with a mostly-finished bundled set of general-purpose UI "widgets" (entry field, grid, etc), the Squeak maintainers would be happy to include it in the official Full/kitchensink Squeak distribution along with all the multimedia and other stuff. (Helping the distribution live up to its "kitchensink" nickname. ;) )
There have been a few attempts at this (BobsUI, Prefab) which never quite got finished. wxSqueak is very cool but that's a somewhat different animal as it relies on an external toolkit. Anything included in official Squeak would be fully internal (using Squeak graphics).
Gary has a point in that this type of stuff shouldn't be the over-arching goal of Squeak... i.e. www.squeak.org will probably never be a totally business-app oriented site. But it can be part of the mix. Such business apps could take advantage of the power of the Smalltalk language & the Squeak development environment, in the same way the multimedia stuff takes advantage of it.
Certainly if anyone really wants to add functions to Squeak they can do so, and if those functions prove useful they could become part of the Squeak base, but why tack on a bunch of bric-a-brac just because it's already been done elsewhere?
I don't think anyone was talking about sullying the pure release with practical tools. Just pointing out that for an environment that used to pride itself on being easy to use, there are plenty of areas where it's really not very easy to use.
I'm not sure on what basis you can call Squeak a "leading-edge development project" but perhaps we have different definitions.
I'd consider it leading-edge in a few (perhaps narrow) areas:
1. IDE's, specifically code/object manipulation/browsing tools. Some things like Squeak's Method Finder ( http://minnow.cc.gatech.edu/squeak/1916 ) are not available in any other environment that I know of. The original Refactoring Browser was done in Smalltalk (in VisualWorks, ported to Squeak), and now there are similar tools being added to Java environments. Other code browser experiments such as StarBrowser and Whisker Browser haven't really been done elsewhere. (I could have written the Whisker Browser in Java, but it would have been a pain in the a**, probably taking three times as long with three times as much source code.) Also, Morphic has some issues, but its direct-manipulation capability helps a lot with UI development.
2. Some language research stuff, such as Traits, invented in Squeak and (a variation on them) currently being added to Perl.
3. Educational/development tools for kids, see Squeakland, EToys, etc.
4. "Multimedia", mainly Croquet at this point.
I left out Seaside, Tweak & probably other things. Of course, Squeak is definitely not leading edge in some areas such as business-app oriented UI widgets, but that could easily improve. I mentioned #1 and #2 above because they could be helpful with building business apps.
- Doug
On Thu, 30 Jun 2005 11:28:14 -0700, Stéphane Ducasse stephane.ducasse@univ-savoie.fr wrote:
Hi
Finally the book is out.... I still does not have it in my hands but soon :). Some of you already got it.
Have fun
Stef
Ordered it today, Stef. Can't wait!
squeak-dev@lists.squeakfoundation.org