I've erronously sent this to the OP instead of the list (my apologies
Andre): Andre Schnoor escreveu: > Am 23.07.2008 um 18:47 schrieb Karsten: > >> If you want to write applications with a certain programming language, >> you usually stick to the supplied editor. > > Agreed. But what if you don't yet want to write applications swith Smalltalk? > > What if the Smalltalk community attempts to convince you by showcasing Smalltalk in your favorite IDE, telling you that it's worth taking the learning curve, because everything will be much better once you'll throw away your favorite IDE and use Smalltalk as intended? > I think it will not cut for several reasons. In order to make this post short (and not repeat myself because we'd discussions similar to where this is slipping...) I'll only mention the foremost one: Smalltalk influenced most of mainstream languages and introduced the traits that now make *those* languages/environments/technologies compelling so now switch to Smalltalk would have a too little return for the effort/resources. my .019999.... -- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/ _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Colin Putney
On 25/07/2008, at 10:17 AM, Colin Putney wrote: > A mainstream developer might be surprised the first time he > encounters an embedded error message. He might even click somewhere > and lose the selection, causing him to have to manually edit out the > error message. But after this happens once or twice, he'll catch on > pretty quickly and develop the habit of hitting delete to > immediately erase the error message. He has to build a new habit, > but it's pretty obvious what the new habit should be, he doesn't > have to unlearn anything. This still pisses me off, and I've been using it for a while now. And my pissoffedness has nothing to do with me being a mainstream developer or not. It's such a poor excuse for an interface, and it's unlike any other system I use. It seems to be the simplest thing that the developer could think of, rather than being the best thing they could think of. I shouldn't have to remember to hit delete. Error messages should remain until I re-accept the text (or explicitly clear them). How can we, with the most powerfully productive tool in our hands, even think of justifying such a crappy interface. Incorporating the idea of explicitly locating the error location: http://www.cincomsmalltalk.com/userblogs/antony/files/BetterErrorMessages.png Antony Blakey ------------- CTO, Linkuistics Pty Ltd Ph: 0438 840 787 A Man may make a Remark – In itself – a quiet thing That may furnish the Fuse unto a Spark In dormant nature – lain – Let us divide – with skill – Let us discourse – with care – Powder exists in Charcoal – Before it exists in Fire – -– Emily Dickinson 913 (1865) _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Colin Putney
On Jul 24, 2008, at 5:47 PM, Colin Putney wrote: > Compare that to this problem I ran into when starting out in VW. I > apparently have the habit of doing the following sequence of actions > when editing text: > > - select some text > - cut > - select some other text > - delete > - type something > - paste > > Everywhere but VW, that leads to the text I cut being inserted back > into the document. In VW, I get the text that I *deleted.* The text > I wanted to move is gone, and the text I wanted to get rid of is > preserved. Argh! > > The habits I've developed from working with computers *since I was a > kid* work against me. It took me weeks to figure out exactly what > was going wrong, and then another week or two until I stumbled > across the NoCutDelete package. Even after I knew that I had to > avoid deleting a selection, I couldn't do it - the habits were too > deeply engrained. > > And the VW behavior is just silly - why have two separate editing > operations that are exactly the same? Why is there no way to delete > text without destroying the clipboard? Even if you ignore the > conventions that the rest of the world uses, this is bad design for > a text editor. On a more serious note than the last... the small tweak provided by the NoCutDelete package has been in place in VW since 7.5.1 builds (jul07.1 to be exact). I just tested my 7.7 build to make sure it is still there, it is. -- Travis Griggs Objologist "There are a thousand hacking at the branches of evil to one who is striking at the root" - Henry David Thoreau _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
On 24-Jul-08, at 6:44 PM, Travis Griggs wrote: > On a more serious note than the last... the small tweak provided by > the NoCutDelete package has been in place in VW since 7.5.1 builds > (jul07.1 to be exact). I just tested my 7.7 build to make sure it is > still there, it is. Oh, excellent. I can take NoCutDelete out of my auto-load list. Colin _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Antony Blakey-2
On 24-Jul-08, at 6:39 PM, Antony Blakey wrote: > On 25/07/2008, at 10:17 AM, Colin Putney wrote: > >> A mainstream developer might be surprised the first time he >> encounters an embedded error message. He might even click somewhere >> and lose the selection, causing him to have to manually edit out the >> error message. But after this happens once or twice, he'll catch on >> pretty quickly and develop the habit of hitting delete to >> immediately erase the error message. He has to build a new habit, >> but it's pretty obvious what the new habit should be, he doesn't >> have to unlearn anything. > > This still pisses me off, and I've been using it for a while now. And > my pissoffedness has nothing to do with me being a mainstream > developer or not. Ok. Can we explore this a little more? Why does it piss you off? <snip> > Incorporating the idea of explicitly locating the error location: > > http://www.cincomsmalltalk.com/userblogs/antony/files/BetterErrorMessages.png Cool. Is this a mock up, or something you've implemented? Colin _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
On 25/07/2008, at 12:23 PM, Colin Putney wrote: > Ok. Can we explore this a little more? Why does it piss you off? A number of reasons. I have a save reflex, so I'm continuously saving, and having the message come up as part of my text, is a real PITA, because I've often clicked before recognizing that I've got an error. I have to delete the message before clicking the mouse anywhere else, which is annoying. The fact that it's just plain text makes it harder to find. I don't mean harder in the 'I spent 5 minutes looking for my error message', but it slows me down. It doesn't work like every other dev environment I use (XCode, Eclipse, Netbeans). And finally, because it can be done so much better. Why do I even have to learn the habit you suggest. Why should I put up with any of these annoyances, any of this opportunity for inconvenience. Why is everyone satisfied with 'adequate'? Shouldn't we be aiming for excellence? What I demonstrated isn't the only option. If the error message was visually distinct, ignored by C/C/P and selection, and not part of the saved text (and hence you don't have to delete it before accepting) then that would be OK. It doesn't have to be on it's own line. Maybe like this: http://www.cincomsmalltalk.com/userblogs/antony/files/BetterErrorMessages.2.png which is similar to the breakpoint indicator. OSX (and hence Windows) is a direct result of Steve Jobs seeing Smalltalk at PARC. He was blown away. I suspect if he saw VW today he would be less than impressed. > Cool. Is this a mock up, or something you've implemented? A mock up at this stage, unlike virtually all of my other screenshots. I'm about to publish/blog about a VW implementation of TextMate's key/ command handling infrastructure, partly to prove that a substantial increase in functionality (and modern UI for it) doesn't have to be a lot of work. It solves most of the problems with command invocation/ shortcuts/shortcut assignment/code snippets/command discovery/menu construction etc. Then I'll see about the editor. I suspect that the existing editor for source code needs to be replaced. You don't actually need a very capable editor. I've written editing widgets from scratch that are a lot more complicated (specifically, for a commercial music typesetting app), so I don't think it's out of the question to simply bite the bullet and do a decent sourcecode-specific editor, rather than a generic multistyled text widget. Most of my time is spent in one of the crappiest bits of VW (the editor). That's arse backwards. Antony Blakey ------------- CTO, Linkuistics Pty Ltd Ph: 0438 840 787 The difference between ordinary and extraordinary is that little extra. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
Antony Blakey wrote 7/25/2008
07:46:
[on an alternative to error messages added as inline text in methods] > Maybe like this:
> http://www.cincomsmalltalk.com/userblogs/antony/files/BetterErrorMessages.2.png > which is similar to the breakpoint indicator. Yes! I was just about to write the same answer. We've
done that in MetaEdit+, for the editor we give our users for writing scripts.
(The scripts are written in a DSL, not Smalltalk, but that's not important
here.) Users can insert breakpoints, which show up inline as a red circle - like
the red Stop sign in PDP with ExtraEmphases. When a script is saved, errors
are shown inline by another symbol. The cursor is placed at the first error, and
the error message is displayed in the status bar. Actually, the status bar is a
list, and you can scroll up and down through the errors there - as in many IDEs.
See the attached picture: there's a breakpoint at the start of the "if
~Specialization; then" line, and later on a syntax error: "thenn" instead of
"then".
The nice thing in this approach is that the
breakpoints and errors are shown inline, where the eye would like them, but
since they are actually just emphases on the text they do not change the string
of the text. When saving again, breakpoint emphasis is preserved but old error
emphasis is removed, and the new text is parsed.
Steve
PS for those who are curious: the language here is
called MERL, we created it with SmaCC, and it's a scripting or templating
language. It is used by MetaEdit+ users to specifiy how to walk through
graphical models and turn them into text - mostly for building code generators.
This screenshot is a generator for Smalltalk code from a UML Class Diagram,
but most of our users build their own code generators that output
Java/C/whatever from their own Domain-Specific Modeling Languages. They then give the code
generator and modeling language to other users - often domain experts rather
than developers - who can then draw models of the systems they want and have the
code generated automatically.
--
Steven Kelly, CTO, MetaCase
SD Times 100 industry leaders in 2007 &
2008 _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc syntaxError.PNG (56K) Download Attachment |
In reply to this post by Eliot Miranda-2
On Thu, 24 Jul 2008 12:52:59 -0700
"Eliot Miranda" <[hidden email]> wrote: > I disagree (strongly) that this is a minus. That error messages appear > exactly where they occur is great. They must be selected so that they're > easy to delete. But please, please, please don't put them somewhere else so > that I have to figure out to what they apply. I'm with Eliot here. The error appears when I prepared for it to appear, i.e. after I invoke the compiler/parser by either hitting Ctrl-S or Ctrl-O. It does not appear while I'm typing and thus distracts me. The message is selected, so it can be removed by hitting the backspace kiey, which is an easy target on my keyboard. So fixing parser/compiler errors is one of the (too few) things I can do in VW without removing my hands from the keyboard. IMO, it would be a much greater boon to my working speed if the RB, Debugger and Inspector were more keyboard-friendly with respect to switching input focus. Or if the Esc-key worked reliably with dialogs sporting a "Cancel" button. Or if I knew why my Enter key does not work in VW on my linux box. Improving the editor should start with making it more easily extensible. To see what I mean, try using the Esc-[ for inserting a pair of brackets on the German keyboard of my linux box. I would have to hit Esc and AltGr+8, which I can't do, because for some reason I have not figured out, VW sees three keyboard inputs Esc, AltGr, 8 instead of the combo. To work around this I had to override three methods: UIFeelPolicy>>keyboardDispatchTable UIFeelPolicy>>keyboardDispatchTableWithBellsAndWhistles ParagraphEditor>>encloseKey: Why? Because the Esc-Sequences are in hardcoded Strings right there in three different places. I took it as a learning experience and it added greatly to my knowledge of how to get around in VW, but still, I'd not be opposed to somebody at Cincom making an AR out of this ;-> s. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Travis Griggs-3
On Thu, 24 Jul 2008 18:29:47 -0700
Travis Griggs <[hidden email]> wrote: > WHAT are you talking about?!?!?! It works the way it ought to! Fire up > VIM and tadah! Same behavior as VW. Yeesh. Why would we *ever* deviate > from the way the One True Editor (tm) works? Good thing you invoked VIM instead of VI, because now I can ask you how to access the list of the last 10 chunks I deleted. Even The Other Editor Which Shall Not Be Named has a "kill ring". SNCR, s. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Stefan Schmiedl
FYI:
http://code.google.com/soc/2008/squeak/appinfo.html?csaid=F9D44FEFE3CE967C http://blog.summer.squeak.org/2008/07/safar-status.html Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Stefan Schmiedl
Stefan Schmiedl schrieb:
> On Thu, 24 Jul 2008 12:52:59 -0700 > "Eliot Miranda" <[hidden email]> wrote: > >> I disagree (strongly) that this is a minus. That error messages appear >> exactly where they occur is great. They must be selected so that they're >> easy to delete. But please, please, please don't put them somewhere else so >> that I have to figure out to what they apply. I'm not against putting the error message somewhere else. But I don't want the compiler to annotate the source code by actually making it even more incorrect by adding error messages. Antony has shown a very good example of how error messages can be displayed near to the error location without touching the source code. The main problem with modifying the source code is the following use case, which happens too often. - modify a method - hit ctrl-S - the right hand holding the mouse has already clicked on another method in another window that is next on the to-to-list (yes, I'm a hectic "clicker") - the modified method had a syntax error, but because I already clicked on the other window, the text selection with the error already got lost. Now I've got to manually select the error message (which has not even some kind of emphasis) _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Arden Thomas
I read with some interest the various thoughts on the subject of SmallTalk usability , esp in the area of the
IDE interface & editor, and error message(s) from people that I've noticed over the past years posts are active experienced Smalltalker's and even they can't get leverage on having BASIC FUNDAMENTAL PROBLEMS sorted out. I only recently ( 2002-3) came to retry Smalltalk and wrote about my experiences with 4 Smalltalk versions on http://web.aanet.com.au/dragoncity/smalltalk.html ( I think only ONE person made any reference to it so its readership was very small :-) I also wrote a ( unfinished) book on using Smalltalk ( vwst) for the absolute beginner ( ME! ), where I showed the user just how to get a program written and working. Yes real programs that I actually use. Esp One called Spam-B-Gone ( My take on Windows Mail Washer). I gave a copy to a friend who is not a programmer and he successfully set up the example code and ran the programs, so I must have explained enough of vwst that made sense. The book is freely available from same web address. Its not perfect and has not been updated, but probably useful to a beginner even so. I offered the book to two of the larger Smalltalk vendors ( for free) but they were not vaguely interested - which is their right of course. But did indicate to me that they are not really interested in newcomers. I need to point out another problem with vwst, that has occurred every time a upgrade is installed -- my unchanged code will not install under the latest version of vwst Smalltalk. Either the .image won't work or the .ST file (file out) has syntax errors !! Its a real pain and after loading this and that package I usually get it working again, BUT god knows what a large commercial shop does with hundreds of thousands of lines of code. In fact I'm so annoyed at 7.6 that I've just not bothered -- I discovered the Windows Mail Washer runs perfectly well under Sidux (Debian) & WINE that I don't need my Spam-B-Gone under vwst Smalltalk anymore. Pity really. Its the little things that continue to annoy in the IDE - I can't set the sizes of various dialogue boxes, and very bl**dy time I have to resize them -- what a waste of MY time, why can't I set File Open Dialog, Workspace, Resource Finder dimensions, etc to MY defaults ?? I'll be interested to see if anything is done to make vwst Smalltalk more pleasant -- I fact I think I'll retry the now-defunct Dolphin ST , it was really nice under Windows and maybe WINE will run that well also. ?? -- Cheers, Brett _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Arden Thomas
Stefan Schmiedl wrote: > Good thing you invoked VIM instead of VI, because
now I can ask you
> how to access the list of the last 10 chunks I deleted. Even The Other > Editor Which Shall Not Be Named has a "kill ring". VIM: http://bbs.archlinux.org/viewtopic.php?id=48290 S. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Terry Raymond
Terry Raymond wrote:
> Jim > > Ok. > > As you have said, do you want to run a good enough system > like Windows or a great one like the Mac. > I don't remember the last time I saw anybody use a vanilla VW environment which tends to say that isn't good enough. Perhaps a good use of one of James' surveys would be to poll what addons people use. Take those that appear universal and add them to a development image for distribution using whatever quality controls you need - just add them so the "first look" experience is much better. Possibly another way to help decide which packages could be those for behavior Michael has built into WebVelocity, although given its different environment that's likely a subset. Steve A _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Holger Kleinsorgen-4
On Fri, 25 Jul 2008 10:01:05 +0200
Holger Kleinsorgen <[hidden email]> wrote: > Stefan Schmiedl schrieb: > > On Thu, 24 Jul 2008 12:52:59 -0700 > > "Eliot Miranda" <[hidden email]> wrote: > > > >> I disagree (strongly) that this is a minus. That error messages appear > >> exactly where they occur is great. They must be selected so that they're > >> easy to delete. But please, please, please don't put them somewhere else so > >> that I have to figure out to what they apply. > > I'm not against putting the error message somewhere else. But I don't > want the compiler to annotate the source code by actually making it even > more incorrect by adding error messages. The remedy for the "even more incorrect" would be to wrap the message in double quotes, making it a comment. > Antony has shown a very good > example of how error messages can be displayed near to the error > location without touching the source code. Looks nice, but how do I get rid of it again? Does it disappear when I start modifying? When I save again? > Now I've got to manually select the error message (which has not even > some kind of emphasis) With the "error as comment" approach, you could double click on a delimiting quote and easily remove the bugger. Sounds like a small job for somebody knowing his way around the editor. Objections anybody? s. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Steven Kelly
On Fri, 25 Jul 2008 11:32:02 +0300
"Steven Kelly" <[hidden email]> wrote: > Stefan Schmiedl wrote: > > Good thing you invoked VIM instead of VI, because now I can ask you > > how to access the list of the last 10 chunks I deleted. Even The Other > > Editor Which Shall Not Be Named has a "kill ring". > > VIM: http://bbs.archlinux.org/viewtopic.php?id=48290 > VW: Ctrl+Shift+V (or shift+Paste from menu) - the last 5 cuts and copies (and also deletes before 7.5) ooohhhh.... nice. I love getting my lame jokes getting back in my face, when I can learn something at the same time. Thanks! s. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Stefan Schmiedl
Stefan Schmiedl wrote:
> With the "error as comment" approach, you could double click on a > delimiting quote and easily remove the bugger. Sounds like a small job > for somebody knowing his way around the editor. Objections anybody? > > s. > _______________________________________________ > vwnc mailing list > [hidden email] > http://lists.cs.uiuc.edu/mailman/listinfo/vwnc I object. If you turn the error into a comment it will compile once the actual error is fixed and you don't notice the error message. You'll start seeing error messages scattered throughout your code in comments. I like the approach of treating errors like breakpoint markers. Backspace should get rid of them and saving the method gets rid of them. David Buck _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Cesar Rabak
Am 25.07.2008 um 03:34 schrieb Cesar Rabak: > Smalltalk influenced most of mainstream languages and introduced the > traits that now make *those* languages/environments/technologies > compelling so now switch to Smalltalk would have a too little return > for > the effort/resources. These languages still don't support closures (AFAIK) and don't have that much power under the hood regarding native compilation and efficient garbage collection. They might be nice for web scripting, but not so much for fat clients and desktop applications. However, I must admit the impressive Ruby and Python support that now comes with XCode 3 out of the box looks like a real threat. Writing 100% native applications in dynamic languages is already possible. If Smalltalk doesn't keep up quickly, it will get more difficult to explain its advantages to newbies. Andre _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
In reply to this post by Stefan Schmiedl
On 25/07/2008, at 6:30 PM, Stefan Schmiedl wrote: > Looks nice, but how do I get rid of it again? Does it disappear when I > start modifying? When I save again? When you save, or clear errors, or delete the content to which it applies. > With the "error as comment" approach, you could double click on a > delimiting quote and easily remove the bugger. Sounds like a small job > for somebody knowing his way around the editor. Objections anybody? Why should I have to do even that? Or anything? Antony Blakey -------------------------- CTO, Linkuistics Pty Ltd Ph: 0438 840 787 Don't anthropomorphize computers. They hate that. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
On Fri, 25 Jul 2008 20:44:32 +0930
Antony Blakey <[hidden email]> wrote: > > On 25/07/2008, at 6:30 PM, Stefan Schmiedl wrote: > > > Looks nice, but how do I get rid of it again? Does it disappear when I > > start modifying? When I save again? > > When you save, or clear errors, or delete the content to which it > applies. Saving, I can see. Clearing, perhaps via context menu. What happens if I start editing? Does the red blob shift around? How do I "delete the content to which [an error marker] applies"? Practically all errors I'm getting in my source code are caused by unbalanced parentheses or brackets. How do you decide upon the content when the syntax is invalid? Somehow I feel like the marketing consultant asking about which color the wheel should have, before it can be invented. So don't listen to my musings. I'll stop producing them and go back to coding. Have a nice weekend, s. _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
Free forum by Nabble | Edit this page |