Sven asks an important question: why would anyone want to use an
external text editor given the power already present in the system? For
most of us on the list this question is rhetorical. But let's take a
stab at addressing it with the seriousness that, I think, it actually
deserves ��� particularly in light of the feedback we saw in various
forums after the v7 announcement.
First, outside users are coming from the (as we'd say, outmoded) paradigm. Multiple generations have now been inculcated with the idea that editing text is the primary kinesthetic part of programming. We need to think about ways that newcomers can "ease in" to something like Pharo, rather than shock therapy. They can pick up the advantages over time.
Second, programmers are attached to their text editor of choice. It seems silly when said aloud, but it's the truth. When doing non-ST work, I like Emacs. Some people like vim. Others like any number of available text editors. They can move around quickly in them when it comes to editing text. Editing text, as much as we like to brush it aside, is something that still happens in Pharo. Again, we should ease people in as best as possible.
Third, the text in most external editors looks nicer than it does in Pharo. This is not a small matter. If you have to stare at code all day, it really helps to have smoothly displayed typefaces and some choice (and easy configuration) about how things are displayed. Sure, it's possible to change the typeface in the current version of Pharo, but as many many people pointed out on HN, it does not look crisp. Programmers today are used to good looking text. Hopefully Bloc etc will be able to address this, but it goes again towards that presentation/visual aspect of the system that turns a lot of newcomers off. They think it looks cartoonish. Several responders online even indicated that the community does not take graphics / visual design seriously at all (which we know isn't true, but that's the impression people have).
Fourth, there don't seem to be any *reasonable* or *easy* methods for editing remotely. With vim and emacs, editing code on a remote machine is so easy it's barely considered a feature. In editors like VS Code this is an easy enough feature to add. For Pharo it's hard to tell what's out there ��� how would a newcomer even know where to look to find out how to do this? Again, forum posters complained about out of date blog posts being the only accessible place to get information. I know about projects like Telepharo ��� but how does it work? Who is using it regularly? How would we explain it to someone who just completed the MOOC or PBE? And yes, I know about shampoo and it seems great, but I've never been able to get it to work properly with Pharo.
I say all of this as someone who is using Pharo as much as I can in my daily work and who absolutely appreciates the system and philosophy behind it. Where it's reasonable, we should take the criticisms like these seriously. What we think matters might not matter to newcomers and vice versa.