Quote:
Jonah Group principal consultant Jeremy Chan cannot verify a resurgence in the use of the Smalltalk object-oriented language as indicated by Georg Heeg at the recent Smalltalk Solutions Conference, noting that none of his company's customer requests exhibit a desire for Smalltalk. Chan writes that Smalltalk's status as a OO language does not really provide an explanation of why it might be superior to other OO languages, and why, given such alleged superiority, it has been displaced by the likes of Java and C# as the most preferred language for enterprises in the last decade. "This is the essence of the Smalltalk Paradox," Chan says. The author reasons that developers may have difficulty relating Smalltalk's programming concepts, presented by defining the language's five principal vocabulary terms (object, message, class, instance, and method), to something else they already know. The vocabulary defines four rules of the language: All things are objects; all objects represent instances of some class; objects perform tasks by sending messages; and messages are deployed via methods. Chan attributes Smalltalk's lack of popularity to several factors, including the defensive posture Smalltalk developers assume when the language's superiority is questioned, and the absence of a major industry backer with the marketing muscle to facilitate Smalltalk's mainstream penetration. The author believes the Smalltalk community would receive a significant boost by attracting outsiders and discussing collaboration. Unquote. - http://www.ddj.com/dept/architect/187200914 /Klaus |
On May 10, 2006, at 2:44 PM, Klaus D. Witzel wrote: > - http://www.ddj.com/dept/architect/187200914 Yeah, I wasn't too impressed with that article. He seemed to think that somebody at StS had the brilliant idea of writing web apps in Smalltalk, and folks were busy figuring out how such a thing might be done. These Smalltalkers are showing a lot of pluck - maybe they'll survive after all. I suppose it's impressive the article got published at all. Colin |
In reply to this post by Klaus D. Witzel
Thanks. The presentation mentioned in the article is at:
http://www.heeg.de/downloads/vortraege/Vortrag_Toronto_2006/Vortrag_Toronto2006_GeorgHeeg.pdf On 5/10/06, Klaus D. Witzel <[hidden email]> wrote: Quote: |
In reply to this post by Klaus D. Witzel
Klaus D. Witzel puso en su mail :
> Quote: > Jonah Group principal consultant Jeremy Chan cannot verify a resurgence in > the use of the Smalltalk object-oriented language as indicated by Georg > Heeg at the recent Smalltalk Solutions Conference, noting that none of his > company's customer requests exhibit a desire for Smalltalk. Chan writes > that Smalltalk's status as a OO language does not really provide an > explanation of why it might be superior to other OO languages, and why, > given such alleged superiority, it has been displaced by the likes of Java > and C# as the most preferred language for enterprises in the last decade. > "This is the essence of the Smalltalk Paradox," Chan says. The author > reasons that developers may have difficulty relating Smalltalk's > programming concepts, presented by defining the language's five principal > vocabulary terms (object, message, class, instance, and method), to > something else they already know. The vocabulary defines four rules of the > language: All things are objects; all objects represent instances of some > class; objects perform tasks by sending messages; and messages are > deployed via methods. Chan attributes Smalltalk's lack of popularity to > several factors, including the defensive posture Smalltalk developers > assume when the language's superiority is questioned, and the absence of a > major industry backer with the marketing muscle to facilitate Smalltalk's > mainstream penetration. The author believes the Smalltalk community would > receive a significant boost by attracting outsiders and discussing > collaboration. > Unquote. requires. So , is not surprise what the others 97% use other not living systems . Or maybe the difference is just this. A Smalltalk image is a living system and IMHO no other could claim this was true. Edgar ___________________________________________________________ 1GB gratis, Antivirus y Antispam Correo Yahoo!, el mejor correo web del mundo http://correo.yahoo.com.ar |
Yes Smalltalk is a living system, and supports mutation far better than
other systems. In Smalltalk to change the definition of a class like Customer you just change it. In Java you recompile it, stop the old server, start the new one, and add all the logic to migrate instances in the database from the old to the new format, implement a different serialization file format, or such. Because all other systems start with a clean slate persistent data must be stored in a non-object separate form as data, and the objects reconstituted from that. I think where Smalltalk lost is in not getting the difference in perspective and its benefits out. While many even in the Smalltalk community disparage become: it is fundamental to many of the benefits in Smalltalk. The ability to adapt objects in-flight, to update execution contexts, to update existing object instances, to transform a small integer to a large integer transparently. Just as Lisp, APL, or other "niche" languages require thinking about programming differently, Smalltalk does as well. The OO aspect of Smalltalk is a small part of the value, but is what gets all the press time. Unfortunately these days there needs to be either a large benefactor or a strong grass-roots effort to get a technology going. Smalltalk never really had a benefactor, and the grass roots support is not getting a lot of projects started. While Squeak can do far more than Ruby or Python, they get much more press. In part this is because Smalltalk is seen as old. We need to get the message out that there are a lot of aspects to Smalltalk that have not been moved to the current crop of "OO" languages. We also need to get some good performance comparisons (time and space) comparing modern Smalltalk to other "scripting" or "dynamic" languages. I bet comparing to .Net 2.0 would be an interesting space / time comparison as well. Michael -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Lic. Edgar J. De Cleene Sent: Wednesday, May 10, 2006 1:47 PM To: squeakdev Subject: Re: Smalltalk: Requiem or Resurgence? {Dr. Dobb's Journal (05/06/06) Chan, Jeremy} Klaus D. Witzel puso en su mail : > Quote: > Jonah Group principal consultant Jeremy Chan cannot verify a resurgence in > the use of the Smalltalk object-oriented language as indicated by Georg > Heeg at the recent Smalltalk Solutions Conference, noting that none of his > company's customer requests exhibit a desire for Smalltalk. Chan writes > that Smalltalk's status as a OO language does not really provide an > explanation of why it might be superior to other OO languages, and why, > given such alleged superiority, it has been displaced by the likes of Java > and C# as the most preferred language for enterprises in the last decade. > "This is the essence of the Smalltalk Paradox," Chan says. The author > reasons that developers may have difficulty relating Smalltalk's > programming concepts, presented by defining the language's five principal > vocabulary terms (object, message, class, instance, and method), to > something else they already know. The vocabulary defines four rules of the > language: All things are objects; all objects represent instances of some > class; objects perform tasks by sending messages; and messages are > deployed via methods. Chan attributes Smalltalk's lack of popularity to > several factors, including the defensive posture Smalltalk developers > assume when the language's superiority is questioned, and the absence of a > major industry backer with the marketing muscle to facilitate Smalltalk's > mainstream penetration. The author believes the Smalltalk community would > receive a significant boost by attracting outsiders and discussing > collaboration. > Unquote. requires. So , is not surprise what the others 97% use other not living systems . Or maybe the difference is just this. A Smalltalk image is a living system and IMHO no other could claim this was true. Edgar ___________________________________________________________ 1GB gratis, Antivirus y Antispam Correo Yahoo!, el mejor correo web del mundo http://correo.yahoo.com.ar |
In reply to this post by Colin Putney
Colin Putney writes:
> > On May 10, 2006, at 2:44 PM, Klaus D. Witzel wrote: > > > - http://www.ddj.com/dept/architect/187200914 > > Yeah, I wasn't too impressed with that article. He seemed to think > that somebody at StS had the brilliant idea of writing web apps in > Smalltalk, and folks were busy figuring out how such a thing might be > done. These Smalltalkers are showing a lot of pluck - maybe they'll > survive after all. > > I suppose it's impressive the article got published at all. Personally, I think the article is great. The key thing is it should help legitimatise Smalltalk again. OK, if it was written by a Smalltalker I'd expect the facts to be better, but for an article by an outsider it's cool. Let's not pick on decent positive press from someone who's not currently part of our community. Sure it could be better, but if nothing else it should make it easier for one of us to get a more accurate article published if and when one of us writes it. Bryce |
In reply to this post by Michael Latta
FWIW, my take is that this is a simple problem with no good solution
other than a major benefactor. And I don't see a major benefactor on the horizon. The problem is defining, explaining, illustrating and evangelizing the huge advantages of Smalltalk (Squeak?). Finding and focusing on a smallish number of such features and benefits is hard enough. Witness the fact that this post mentions "become" as a major feature and in all my years in the software biz, I've never once heard it mentioned let alone touted. Smalltalk has so many advantages in so many ways that just defining its differentiating points is a task. Two years ago, my friend Kevin Altis was spearheading a project called PythonCard, an attempt to create a visual IDE on top of Python using wxWidgets (then called wxWindows). He paused the project after nearly completing it to a ready state because his feeling was it was never going to get a lot of traction until Python itself got better known and more widely used. He spent a lot of time in the intervening two years evangelizing Smalltalk. And Kevin's good at that. I don't think he'd claim that visibility and acceptance of Python is yet at a stage where it can be seen and used for what it truly is in a broader context. Smalltalk has that problem in spades. I'm not sure the problem can be solved. But I'm also not sure it *needs* to be. There's no real harm in using a language viewed as outside the mainstream as long as there's a loyal base of users enhancing, extending and supporting it, is there? We don't need Corporate America to adopt Squeak and then try to fence it in, standardize it, confine it, define it, package it and market it. For those who use it to create viable solutions to problems they or their customers face, it's a secret weapon. It's a WMD - Weapon of 'Mazing Development! :-) Dan |
Dan Shafer wrote on Wed, 10 May 2006 15:09:22 -0700
> FWIW, my take is that this is a simple problem with no good solution > other than a major benefactor. And I don't see a major benefactor on > the horizon. I was hoping OLPC would sort of play that role, but it seems that their focus will be on Python instead. While there is some value in trying to get existing programmers to look at Smalltalk, the fact is people simply don't like to change. So you the first system you present to a person is a good one then that characteristic isn't as much of a problem. Of course, normally the first system a person learns is what happens to be the most popular at the moment and since these aren't good we get a vicious cycle. This is why I see "break with the past" projects like the OLPC (and my own) as a great chance to change this. Once you have a new group using something different and this group grows to the point where they are the majority, *then* you have the existing programmers getting interested in it and possibly deciding to change to it. -- Jecel |
In reply to this post by Klaus D. Witzel
Klaus D. Witzel schrieb:
> Quote: > Jonah Group principal consultant Jeremy Chan cannot verify a > resurgence in the use of the Smalltalk object-oriented language as > indicated by Georg Heeg at the recent Smalltalk Solutions Conference, > noting that none of his company's customer requests exhibit a desire > for Smalltalk. I'm not sure, if Georg Heeg means "new" customers. Perhaps he sees reactions from old customers, who remember their investment into Smalltalk 8 years ago and these programs are running and runnning ... and now these customers are updating their application with VW 7.x . Another story I heard was, that these old customers realized, that money is short and its much cheaper to enhance their old running applications than to rewrite it from scratch - not knowing, if this would work. And another rumour was, that these "enhancements" are often against company rules ("we do all with Java in the future") and these investments are below a magical amount of money, where the local subsidaries of these companies can do the enhancement investment without querying the bosses of the IT departments in the main company. Another little chance for Smalltalk (again ...) could be a reborn of dynamically typed languages. I've heard a presentation about what programming languages are missing today and in the future and one of the major points was: meta programming facility. This does not mean reflection as available in .NET or Java - but the powerful systems of LISP and Smalltalk. Signals in this direction comes from some IBM research laboratories and from the .net group from Microsoft. Marten -- Marten Feldtmann - Germany - Software Development Information regarding VA Smalltalk and DMS-system "MSK - Mien Schrievkrom" at: www.schrievkrom.de |
Hi Marten,
on Thu, 11 May 2006 08:59:04 +0200, you <[hidden email]> wrote: > Another little chance for Smalltalk (again ...) could be a reborn of > dynamically typed languages. I've heard a presentation about what > programming languages are missing today and in the future and one of > the major points was: meta programming facility. This does not mean > reflection as available in .NET or Java - but the powerful systems of > LISP and Smalltalk. Signals in this direction comes from some IBM > research laboratories and from the .net group from Microsoft. And from Sun, see "Constructing a metacircular Virtual machine in an exploratory programming environment" - http://portal.acm.org/citation.cfm?id=1094865 /Klaus |
Klaus D. Witzel schrieb:
> Hi Marten, > > on Thu, 11 May 2006 08:59:04 +0200, you <[hidden email]> wrote: > >> Another little chance for Smalltalk (again ...) could be a reborn of >> dynamically typed languages. I've heard a presentation about what >> programming languages are missing today and in the future and one of >> the major points was: meta programming facility. This does not mean >> reflection as available in .NET or Java - but the powerful systems of >> LISP and Smalltalk. Signals in this direction comes from some IBM >> research laboratories and from the .net group from Microsoft. > > > And from Sun, see "Constructing a metacircular Virtual machine in an > exploratory programming environment" > - http://portal.acm.org/citation.cfm?id=1094865 Nice to see ! More of these publications and somewhere in the future a company will create a new language - perhaps containing all needed stuff. But I also think that this new kind of programming will have to fight against the installed user (=programmer) base, which I think is not ready for that at all. The presentation I mentioned also have some other points for a "better" language: - source code repository (instead of simple file management). ENVY was mentioned in this point. - a mixture of contract and interface design - the possibility to use "static typing" in useful places (e.g. on module borders) only. - constraints .... - source code (when needed at all) has to have all the specification of one program (and not only as remarks). - perhaps leaving source code at all - http://subtextual.org/ was mentioned as an example. - the possibility to include other languages (DSL) within one system/solution (.NET, Prolog/ST-V) -- Marten Feldtmann - Germany - Software Development Information regarding VA Smalltalk and DMS-system "MSK - Mien Schrievkrom" at: www.schrievkrom.de |
On Thu, 11 May 2006 11:37:15 +0200, Marten Feldtmann
<[hidden email]> wrote: > Klaus D. Witzel schrieb: > >> Hi Marten, >> >> on Thu, 11 May 2006 08:59:04 +0200, you <[hidden email]> wrote: >> >>> Another little chance for Smalltalk (again ...) could be a reborn of >>> dynamically typed languages. I've heard a presentation about what >>> programming languages are missing today and in the future and one of >>> the major points was: meta programming facility. This does not mean >>> reflection as available in .NET or Java - but the powerful systems of >>> LISP and Smalltalk. Signals in this direction comes from some IBM >>> research laboratories and from the .net group from Microsoft. >> >> >> And from Sun, see "Constructing a metacircular Virtual machine in an >> exploratory programming environment" >> - http://portal.acm.org/citation.cfm?id=1094865 > > Nice to see ! More of these publications and somewhere in > the future a company will create a new language - perhaps > containing all needed stuff. Sure! See for example Alan's message - http://www.google.com/search?q=there+is+an+entity+somewhere+between+classes+and+Self+prototypes+I%27ve+been+calling+them+exemplars > But I also think that this new kind of programming will > have to fight against the installed user (=programmer) > base, which I think is not ready for that at all. But yes {they are getting ready, I mean}. During the previous decade they've managed to adopt from curly braces with-static-or-dynamic-linker to curly braces with-all-base-classes-are-foreigners ;-) The latter is not much a difference to Squeak et al. /Klaus |
People keep mentioning technical aspects of Smalltalk as being the
ones that will make people want to use it. Technologists are interested in technology, so this is not surprising. However, people are more important than technology. If Smalltalk is going to have a resurgence, the people who know and love Smalltalk will have to make it happen. It isn't going to happen automatically. Jeremy Chan is right to emphasize people problems like "no big company is pushing it". Every tool has its stengths and weaknesses. To make Small prosper, people should use it where it works and not use it where it doesn't work. Smalltalk is fantastic in small groups of motivated programmers. It is not so good in large groups with high turnover. People seem to get excited about large Smalltalk projects, and to long for the days of ten years ago when there were 100 person projects. In my opinion, those projects were never run well, and were probably all a mistake. Many of them were successful in the sense of bringing a product to market, but all the ones I saw could have been done faster and cheaper with a smaller team. Smalltalk fans ought to go start companies. Smalltalk has lots of advantages in a startup, where it is important to get something running quickly and where compatibility with existing systems is not so important. It doesn't work as well in a big company, where it is iimportant to play it safe and there are existing standards and lots of existing systems. Smalltalk is a wonderful language both for teaching and for research. I've always wondered why it did so poorly in universities. I think that one of the reasons is that it is hard to learn. There are too many things about Smalltalk that are new. The language is easy, but the class libraries are large, and the programming environment is different from what people are used to. People are not used to "live objects" and do not know how to take advantage of them. The class library is not modularized, so it is hard for newcomers to see what to learn first. Smalltalk is pretty easy to learn if you are pair programming with an expert whose main goal is for you to learn, not to build a system. It is hard to learn from a book and from experimentation. I taught myself Smalltalk 20 years ago and have since taught it to a thousand or so students. I tell my students that they all will learn Smalltalk faster than I did, because they will have a teacher. This is not 100% true, since some students didn't try very hard. But it is pretty easy to learn when you have a teacher who knows Smalltalk well. One of the problems with getting it used in schools is that somebody has to teach the teachers. So, if you want to help Smalltalk spread, sit down and program with a newbie! -Ralph Johnson |
In reply to this post by Colin Putney
Same feelling here.
>> - http://www.ddj.com/dept/architect/187200914 > > Yeah, I wasn't too impressed with that article. He seemed to think > that somebody at StS had the brilliant idea of writing web apps in > Smalltalk, and folks were busy figuring out how such a thing might > be done. These Smalltalkers are showing a lot of pluck - maybe > they'll survive after all. > > I suppose it's impressive the article got published at all. > > Colin > |
In reply to this post by Klaus D. Witzel
>
>> Another little chance for Smalltalk (again ...) could be a >> reborn of >> dynamically typed languages. I've heard a presentation about what >> programming languages are missing today and in the future and one of >> the major points was: meta programming facility. This does not mean >> reflection as available in .NET or Java - but the powerful systems of >> LISP and Smalltalk. Signals in this direction comes from some IBM >> research laboratories and from the .net group from Microsoft. > > And from Sun, see "Constructing a metacircular Virtual machine in > an exploratory programming environment" > - http://portal.acm.org/citation.cfm?id=1094865 Do not dream guys. Sun just let David doing that but he is alone with two students. Stef |
In reply to this post by Ralph Johnson
Yes!
I think that avi and colin are giving us a lesson: seaside, MC, OB We should not let them alone invent the future! Stef > People keep mentioning technical aspects of Smalltalk as being the > ones that will make people want to use it. Technologists are > interested in technology, so this is not surprising. However, people > are more important than technology. If Smalltalk is going to have a > resurgence, the people who know and love Smalltalk will have to make > it happen. It isn't going to happen automatically. Jeremy Chan is > right to emphasize people problems like "no big company is pushing > it". > > Every tool has its stengths and weaknesses. To make Small prosper, > people should use it where it works and not use it where it doesn't > work. Smalltalk is fantastic in small groups of motivated > programmers. It is not so good in large groups with high turnover. > People seem to get excited about large Smalltalk projects, and to long > for the days of ten years ago when there were 100 person projects. In > my opinion, those projects were never run well, and were probably all > a mistake. Many of them were successful in the sense of bringing a > product to market, but all the ones I saw could have been done faster > and cheaper with a smaller team. > > Smalltalk fans ought to go start companies. Smalltalk has lots of > advantages in a startup, where it is important to get something > running quickly and where compatibility with existing systems is not > so important. It doesn't work as well in a big company, where it is > iimportant to play it safe and there are existing standards and lots > of existing systems. > > Smalltalk is a wonderful language both for teaching and for research. > I've always wondered why it did so poorly in universities. I think > that one of the reasons is that it is hard to learn. There are too > many things about Smalltalk that are new. The language is easy, but > the class libraries are large, and the programming environment is > different from what people are used to. People are not used to "live > objects" and do not know how to take advantage of them. The class > library is not modularized, so it is hard for newcomers to see what to > learn first. > > Smalltalk is pretty easy to learn if you are pair programming with an > expert whose main goal is for you to learn, not to build a system. It > is hard to learn from a book and from experimentation. I taught > myself Smalltalk 20 years ago and have since taught it to a thousand > or so students. I tell my students that they all will learn Smalltalk > faster than I did, because they will have a teacher. This is not 100% > true, since some students didn't try very hard. But it is pretty easy > to learn when you have a teacher who knows Smalltalk well. One of the > problems with getting it used in schools is that somebody has to teach > the teachers. > > So, if you want to help Smalltalk spread, sit down and program with > a newbie! > > -Ralph Johnson > > |
In reply to this post by Marten Feldtmann
Hi all,
IMO we confuse people when we try to talk to them using the same language, and words they use for current tools. Some words we use and we *must* think about the convenience to continue doing the same way are: -Smalltalk as a (dynamic) language. no comment now on the topic because I have written on it in the past and no answer has been received in this list (why?). -I think it is one of the most important word to confuse people and force them to do not think in other terms than talking to a computer... (instead of building systems or working in a non-declarative manner) -"Class" aClass is an element of a formal theory, like aRule but more complex. Java, C++ and all other OOL use classes... because they are languages and can be used *only* declarativelly (in an object ORIENTED way). We use (in Smalltalk) an expression for creating "classes", but really we do not have classes, we have "SPECIES" in smalltalk, because we can use smalltalk in other manner than declarative ways, e.g. doing non-formal activities. I say "sepcies" because they have organic relations conforming an ambience (an open system where evolution can be observed as a subproduct of systems development -not planned- ). Why we talk about "Classes" and not about Species? Have we evaluated the cost of continue talking that way? Why we talk about packages and not about organs and organisms? If we use the same words as scientist used for theory, people will think in terms of known facts, and will compare Smalltalk's syntax, frameworks or other OO povs; but never will be interested in other topics. (most smalltalkers use smalltalk as a very good IDE and design using pieces of paper; and miss the differences between non-formal design and informal design) -Image When we talk about "the image", people does not understand the convenience of developing "applications" that way. But also we give people the idea of considering Smalltalk as a container (of objects). This kind of argument is valuable for newbies, but must be corrected early in the instruction process, because inhibit people to undestand/realize activities on open systems. The concept of "living" system (I prefer the world "ambient" to do not make analogies to nature) let people put the formal/declarative way of producing software in its place and recognize that there are situations where we need more than OO techniques to build systems. -Variables we use the term "instance variable" for the collaborators of an object. The world variable has well known meaning in traditional computing, and refers to a place in memory that "varies" contents. We put "names" to objects in smalltalk, but do not use variables because we do not consider memory as a directionable (through names nor numbres) device. -Assignment we assign a name to an object in smalltalk (we name objects) and the concept is not the same of assigment of a value to a variable as in Pascal. -Evolution when we talk about evolution, people understand the term in a colloquial meaning, and most of the time consider that evolution is something that can be produced (an object). Evolution as an emergent/cocnecuence of the survival of a system is something not "natural" for people (nor for Darwin :-P ) -Message & method people talk about them without paying attention to the differences; if we do not correct the ambiguity sooner the words we say have diferent meaning. If we do the correction, we must not continue talking until sure about the listener undestood the concepts. In both cases dialoge is broken and is not possible to talk to an unknown/big audience. -Frameworks and engines It is correct to talk about frameworks in Java and in Smalltalk, because both are usefull to specify anstractions. It is not correct to talk about machines (or engines, an instantiation of a framework) in Java (or C++, or .Net) because they are not ambiences and abstractions are not used/present at the same time as running instances. -Code When we talk about (source)code (or genetic code) we are promoting to do not consider the convenience to work with objects. The same occurs when we say that smalltalk is "A/one" language. Smalltalk contains a native language, but can hold many languages each for a diferent context... -object ORIENTATED Smalltalk is not object oriented. Java, C++, .net and other oo plataforms and decarative languages are object "oriented" becasue you do not have the object (the instance) to talk to. -information people view information as anObject. we can use the ambience to show taht there is another ways of thinking about information (e.g. "information as aProcess") ( more on information: http://www.truxton.com/~trux/etc/boi/ spanish version at http://www.smalltalking.net/Papers/boi/boi.html ) cheers, Ale. ----- Original Message ----- From: "Marten Feldtmann" <[hidden email]> To: "The general-purpose Squeak developers list" <[hidden email]> Sent: Thursday, May 11, 2006 3:59 AM Subject: Re: Smalltalk: Requiem or Resurgence? {Dr. Dobb's Journal (05/06/06) Chan, Jeremy} > Klaus D. Witzel schrieb: > > > Quote: > > Jonah Group principal consultant Jeremy Chan cannot verify a > > resurgence in the use of the Smalltalk object-oriented language as > > indicated by Georg Heeg at the recent Smalltalk Solutions Conference, > > noting that none of his company's customer requests exhibit a desire > > for Smalltalk. > > > I'm not sure, if Georg Heeg means "new" customers. Perhaps he sees > reactions > from old customers, who remember their investment into Smalltalk 8 years > and these programs are running and runnning ... and now these customers > are updating their application with VW 7.x . > > Another story I heard was, that these old customers realized, that > money is > short and its much cheaper to enhance their old running applications than > to rewrite it from scratch - not knowing, if this would work. > > And another rumour was, that these "enhancements" are often against > company rules ("we do all with Java in the future") and these investments > are below a magical amount of money, where the local subsidaries of > these companies can do the enhancement investment without querying > the bosses of the IT departments in the main company. > > Another little chance for Smalltalk (again ...) could be a reborn of > dynamically typed languages. I've heard a presentation about what > programming languages are missing today and in the future and one of > the major points was: meta programming facility. This does not mean > reflection as available in .NET or Java - but the powerful systems of > LISP and Smalltalk. Signals in this direction comes from some IBM > research laboratories and from the .net group from Microsoft. > > Marten > > -- > Marten Feldtmann - Germany - Software Development > Information regarding VA Smalltalk and DMS-system > "MSK - Mien Schrievkrom" at: www.schrievkrom.de > > |
In reply to this post by Ralph Johnson
thanks Ralph for your words,
>Smalltalk is a wonderful language both for teaching > and for research. >I've always wondered why it did so poorly in universities. I think the reason is related with univerities and their relation with formal methods insetead of results&costs of application. It is easy to have inmediate results with languages... read a book and you have learn enough to continue doing the same, with another syntax. Laguages suffers of premature obsolescence, then it is a very good tool to feel diferent and make people to be always investing in "personal training". > The class library is not modularized, so it is hard > for newcomers to see what to learn first. One of the difficult topics to understand is that classes are not classes (because they coevolve)... >Smalltalk is pretty easy to learn if you are pair programming > with an expert whose main goal is for you to learn, > not to build a system. It is hard to learn from a book > and from experimentation. It is a very important point that reveals smalltalk as propagable by a parent-child mechanism, like benign religions. Viral propagation are the mechanism observed in Java and any other popular language. This diference is very important to understand why it is not necessary for smalltalk to have a huge number of adopters to survive, and other effects ovservables in human relations in smalltalk communities. >So, if you want to help Smalltalk spread, sit down > and program with a newbie! I really agree and promote the same attitude, because it is is important (imho) to smalltalker's sanity. best, Ale. ----- Original Message ----- From: "Ralph Johnson" <[hidden email]> To: "The general-purpose Squeak developers list" <[hidden email]> Sent: Thursday, May 11, 2006 8:20 AM Subject: Re: Smalltalk: Requiem or Resurgence? {Dr. Dobb's Journal(05/06/06) Chan, Jeremy} People keep mentioning technical aspects of Smalltalk as being the ones that will make people want to use it. Technologists are interested in technology, so this is not surprising. However, people are more important than technology. If Smalltalk is going to have a resurgence, the people who know and love Smalltalk will have to make it happen. It isn't going to happen automatically. Jeremy Chan is right to emphasize people problems like "no big company is pushing it". Every tool has its stengths and weaknesses. To make Small prosper, people should use it where it works and not use it where it doesn't work. Smalltalk is fantastic in small groups of motivated programmers. It is not so good in large groups with high turnover. People seem to get excited about large Smalltalk projects, and to long for the days of ten years ago when there were 100 person projects. In my opinion, those projects were never run well, and were probably all a mistake. Many of them were successful in the sense of bringing a product to market, but all the ones I saw could have been done faster and cheaper with a smaller team. Smalltalk fans ought to go start companies. Smalltalk has lots of advantages in a startup, where it is important to get something running quickly and where compatibility with existing systems is not so important. It doesn't work as well in a big company, where it is iimportant to play it safe and there are existing standards and lots of existing systems. Smalltalk is a wonderful language both for teaching and for research. I've always wondered why it did so poorly in universities. I think that one of the reasons is that it is hard to learn. There are too many things about Smalltalk that are new. The language is easy, but the class libraries are large, and the programming environment is different from what people are used to. People are not used to "live objects" and do not know how to take advantage of them. The class library is not modularized, so it is hard for newcomers to see what to learn first. Smalltalk is pretty easy to learn if you are pair programming with an expert whose main goal is for you to learn, not to build a system. It is hard to learn from a book and from experimentation. I taught myself Smalltalk 20 years ago and have since taught it to a thousand or so students. I tell my students that they all will learn Smalltalk faster than I did, because they will have a teacher. This is not 100% true, since some students didn't try very hard. But it is pretty easy to learn when you have a teacher who knows Smalltalk well. One of the problems with getting it used in schools is that somebody has to teach the teachers. So, if you want to help Smalltalk spread, sit down and program with a newbie! -Ralph Johnson |
In reply to this post by Alejandro F. Reimondo
I think with Smalltalk we made a huge step from the computer centric
view of computing of REPL (read / evaluate / print-loop), where _the computer_ reads in _text_ evaluates it, and _prints it out text_ to the user towards a human centric view of computing of what I might call SEDL (select / evaluate / display-loop), where _the user_ is given some context to select a more specific context from, evaluates it, and gets a new context displayed to repeat the loop Popup-Menus (do it/ print it), tree based browsers, drag n drop, and now Etoys are all a logical steps in the journey to follow this paradigm shift. Compare it with the evolution of operating systems, where "in the beginning ... was the command line" (a phrase Neal Stephenson is not happy anymore with, I understood that he was bashing graphical OSses as they even did not allow to descend to the bare bones, which certainly should always be possible, he seems happy now with OS-X and its shells...) and now everything gets more and more shifted towards recognizing and selecting features - and not knowing by heart how to type them into some command shell. We are not there yet, but I think that the editor bound people are far behind: I want trees/ drag n drop/ Etoy method-templates/ examples and tabs for my programming - and certainly always be able to execute/debug/inspect/modify _anything_ at anytime. Cheers, Markus On May 11, 2006, at 3:59 PM, Alejandro F. Reimondo wrote: > Hi all, > > IMO we confuse people when we try to talk to them > using the same language, and words they use for > current tools. > Some words we use and we *must* think about > the convenience to continue doing the same way > are: > > -Smalltalk as a (dynamic) language. > no comment now on the topic because I have > written on it in the past and no answer has been > received in this list (why?). > -I think it is one of the most important word to confuse > people and force them to do not think in other terms > than talking to a computer... (instead of building systems > or working in a non-declarative manner) > > -"Class" > aClass is an element of a formal theory, like aRule > but more complex. > Java, C++ and all other OOL use classes... > because they are languages and can be used *only* > declarativelly (in an object ORIENTED way). > We use (in Smalltalk) an expression for creating "classes", > but really we do not have classes, we have "SPECIES" > in smalltalk, because we can use smalltalk in other manner > than declarative ways, e.g. doing non-formal activities. > I say "sepcies" because they have organic relations > conforming an ambience (an open system where > evolution can be observed as a subproduct of systems > development -not planned- ). > Why we talk about "Classes" and not about Species? > Have we evaluated the cost of continue talking that way? > Why we talk about packages and not about organs > and organisms? > > If we use the same words as scientist used for theory, > people will think in terms of known facts, and will > compare Smalltalk's syntax, frameworks or other > OO povs; but never will be interested in other topics. > (most smalltalkers use smalltalk as a very good IDE > and design using pieces of paper; and miss the > differences between non-formal design and informal > design) > > -Image > When we talk about "the image", people does not > understand the convenience of developing "applications" > that way. > But also we give people the idea of considering Smalltalk > as a container (of objects). > This kind of argument is valuable for newbies, but must > be corrected early in the instruction process, because > inhibit people to undestand/realize activities on open > systems. > The concept of "living" system (I prefer the world "ambient" > to do not make analogies to nature) let people put the > formal/declarative way of producing software in its > place and recognize that there are situations where > we need more than OO techniques to build systems. > > -Variables > we use the term "instance variable" for the collaborators > of an object. > The world variable has well known meaning in traditional > computing, and refers to a place in memory that > "varies" contents. > We put "names" to objects in smalltalk, but do not use > variables because we do not consider memory as a > directionable (through names nor numbres) device. > > -Assignment > we assign a name to an object in smalltalk > (we name objects) and the concept is not the same > of assigment of a value to a variable as in Pascal. > > -Evolution > when we talk about evolution, people understand the > term in a colloquial meaning, and most of the time consider > that evolution is something that can be produced (an object). > Evolution as an emergent/cocnecuence of the survival > of a system is something not "natural" for people (nor > for Darwin :-P ) > > -Message & method > people talk about them without paying attention to the > differences; if we do not correct the ambiguity sooner > the words we say have diferent meaning. > If we do the correction, we must not continue talking > until sure about the listener undestood the concepts. > In both cases dialoge is broken and is not possible > to talk to an unknown/big audience. > > -Frameworks and engines > It is correct to talk about frameworks in Java and in Smalltalk, > because both are usefull to specify anstractions. > It is not correct to talk about machines (or engines, an > instantiation of a framework) in Java (or C++, or .Net) > because they are not ambiences and abstractions > are not used/present at the same time as running instances. > > -Code > When we talk about (source)code (or genetic code) > we are promoting to do not consider the convenience > to work with objects. > The same occurs when we say that smalltalk is "A/one" > language. > Smalltalk contains a native language, but can hold many > languages each for a diferent context... > > -object ORIENTATED > Smalltalk is not object oriented. > Java, C++, .net and other oo plataforms and decarative > languages are object "oriented" becasue you do not have > the object (the instance) to talk to. > > -information > people view information as anObject. > we can use the ambience to show taht there is another > ways of thinking about information (e.g. "information as aProcess") > ( more on information: > http://www.truxton.com/~trux/etc/boi/ > spanish version at > http://www.smalltalking.net/Papers/boi/boi.html > ) > > cheers, > Ale. > > > > ----- Original Message ----- > From: "Marten Feldtmann" <[hidden email]> > To: "The general-purpose Squeak developers list" > <[hidden email]> > Sent: Thursday, May 11, 2006 3:59 AM > Subject: Re: Smalltalk: Requiem or Resurgence? {Dr. Dobb's Journal > (05/06/06) Chan, Jeremy} > > >> Klaus D. Witzel schrieb: >> >>> Quote: >>> Jonah Group principal consultant Jeremy Chan cannot verify a >>> resurgence in the use of the Smalltalk object-oriented language as >>> indicated by Georg Heeg at the recent Smalltalk Solutions >>> Conference, >>> noting that none of his company's customer requests exhibit a >>> desire >>> for Smalltalk. >> >> >> I'm not sure, if Georg Heeg means "new" customers. Perhaps he sees >> reactions >> from old customers, who remember their investment into Smalltalk 8 >> years > ago >> and these programs are running and runnning ... and now these >> customers >> are updating their application with VW 7.x . >> >> Another story I heard was, that these old customers realized, that >> money is >> short and its much cheaper to enhance their old running >> applications than >> to rewrite it from scratch - not knowing, if this would work. >> >> And another rumour was, that these "enhancements" are often against >> company rules ("we do all with Java in the future") and these >> investments >> are below a magical amount of money, where the local subsidaries of >> these companies can do the enhancement investment without querying >> the bosses of the IT departments in the main company. >> >> Another little chance for Smalltalk (again ...) could be a >> reborn of >> dynamically typed languages. I've heard a presentation about what >> programming languages are missing today and in the future and one of >> the major points was: meta programming facility. This does not mean >> reflection as available in .NET or Java - but the powerful systems of >> LISP and Smalltalk. Signals in this direction comes from some IBM >> research laboratories and from the .net group from Microsoft. >> >> Marten >> >> -- >> Marten Feldtmann - Germany - Software Development >> Information regarding VA Smalltalk and DMS-system >> "MSK - Mien Schrievkrom" at: www.schrievkrom.de >> >> > > |
In reply to this post by Ralph Johnson
Hi Ralph,
just in case you where not addressing my comments only but the subject in general: On Thu, 11 May 2006 13:20:35 +0200, you <[hidden email]> wrote: > People keep mentioning technical aspects of Smalltalk as being the > ones that will make people want to use it. I'm in the software business for quite some time, selling either solution+adaptation or else new+from+scratch, to small, medium and large organizations. When I look what we and the competitors throw in, it's all the same: innovation=technology and technology=what+makes+our+offer+better+than+theirs+even+if+initial+investment+is+huge. Not that I do advocate that, but it is how it works. > Technologists are > interested in technology, so this is not surprising. It is the innovation which makes buyers believe that your offer is better than other's. So we are called technologists <sic> but I have no problem with that. > However, people > are more important than technology. Absolutely! But in competition, what counts is how many people the CIO or CTO can eliminate from the payroll, in contrast to whether or not they are more important than technology. I does not help if someone likes that or not. > If Smalltalk is going to have a > resurgence, the people who know and love Smalltalk will have to make > it happen. I do not believe that Smalltalk needs a resurgence because a) it is vital and b) healthy and strong and c) it inherits these attributes from its community :-) > It isn't going to happen automatically. Jeremy Chan is > right to emphasize people problems like "no big company is pushing > it". This it not far away from what I wrote above. So, let me try a conclusion: Smalltalk does not belong to the kind of technology (aka innovation) which implicitly or explicitly enables to scratch people from someone's payroll! !! Right so :-D let's enjoy it :-)) Happy smalltalking everybody. /Klaus |
Free forum by Nabble | Edit this page |