Iâm really in favour of some of the ideas that are coming from this community to make changes. Getting the right balance of productivity and utility is tricky - and Smalltalk environments have got a bit stuck in a rut (although it will be interesting to see some of the presentations at ESUG - the vendors have stuff up there sleeves by the looks of it, and Pharo/Squeak both keep evolving things). In all this change - its also worth remembering what things worked (Iâve been struck recently using a very early Squeak, that there were actually some really good ideas that have gotten lost). My worry with tracing how developers are currently using Pharo is that they are actually forced to use it badly today. Iâm not sure how you get around this (compare usage of different IDEâs? across different languages?). So I donât want to be a downer - and when Iâm better at using Pharo Iâll certainly consider installing DFlow, but that the moment Iâm just struggling too much to be efficient (particularly compared to other language IDEâs, and even some of the older smalltalk IDEâs). Things that stand out for me at the moment - navigating between windows is very clunky ( alt-tab doesnât work how I expect it to work - I want last used ordering, not order opened ordering). I severely miss having a tabbed browser and a way to traverse methods in a transaction of tabs in that browser. The source pane and how it doesnât seem to use the AST and where your cursor is to intelligently do things is also quite clunky. Comparing code changes is also quite tedious. But I know these things are getting easier - so there is some light in the tunnel!!! I really like the possibilities Doru mentions - custom inspectors and debuggers to make my tools more comfortable (and the small amount of code to do this is definitely a smalltalk advantage over the eclipse/intellij plugin systems that are so complicated). Anyway - Iâm looking forward to finding out more at ESUG and then maybe I will get sold on the adaptive idea? Tim On 12 Aug 2014, at 14:31, Roberto Minelli <roberto.minelli@usi.ch> wrote:
Hi,
I agree with you Kilon, thanks for your observation (and future help).
My interaction profiler is only a means to the end. As Doru is saying, my goal is to use the data captured by DFlow to understand how developers work and what they need in their context.
In the short term I want to analyze how developers work, but then I will do my best to bridge the gap between what our IDEs offer and what we need.
P.s. Thanks Doru for your support!
Cheers, Roby
On Aug 12, 2014, at 2:57 PM, Tudor Girba <tudor@tudorgirba.com> wrote:
Hi Kilon,
Excellent observation!
The Glamorous Toolkit implements the idea of a Moldable IDE. The idea is simple: make it dead cheap for the developer to mold the IDE to his/her contextual needs.
Until now, we have announced an inspector and a debugger that do just that. The inspector makes it possible to mold the tool for every little object if you desire. For example, I alone have built literally hundreds of extensions for various objects. Actually, the inspector goes as far as to allow you to mold the flow to the context in which you are. The debugger lets you define custom debuggers that you can switch to while debugging. All these extensions are incredibly small (an object inspector extension has an average of 8 lines, and the debuggers we implemented consist of a couple of hundred loc), they are independent of each other, and they are put together through a small frame. Add to that the potential of using multiple rendering engines and we get a brand new philosophy that I believe holds the potential to change software development significantly.
This is not a far goal. It's a reality now. At ESUG, we will show how these tools work now in practice.
What Roberto is doing is complementary to our efforts. Data mining will certainly play a significant role in this picture, precisely when we will start to have thousands of these little contextual tools. At this time, DFlow is experimental, but eventually a tool like this should become part of the IDE as we need to understand how developers work in their context and what they need in their context. That is why his effort should be supported by our community. Please install it and give feedback.
Cheers, Doru
On Tue, Aug 12, 2014 at 2:06 PM, kilon alios <kilon.alios@gmail.com> wrote: I think the future are tools tailor made for specific kind of tasks . The age of IDEs and Languages has come to an end. Neither programming languages and IDEs can maintain the complexity of modern software. They are too generic.I think that what we need is a UNIX system but with GUIs , a collection of tools that can talk to each other but at the same time have an extremely limited scope as tools. Smalltalk definitely moves towards that direction but even Smalltalk is far from that goal.
I see that paradigm a lot in 3d art, it raises the amount of knowledge required because you end up with learning hundreds of tools contained in a single application but if you want professional results and you are dead serious about efficiency and productivity then its the way to go.
I will install DFlow and help you in your saga, but bare in mind that DFlow will tell you what I use and I how , but it wont answer you the most important question "what I want to use and how I want to use it" .
On Tue, Aug 12, 2014 at 10:30 AM, Roberto Minelli <roberto.minelli@usi.ch> wrote: Hi guys,
I uploaded a web page to explain Self-Adaptive IDEs, the vision I will develop for my Ph.D http://www.inf.usi.ch/phd/minelli/self-adaptive-ides/index.html.
Please take a minute to look at it and tell me your opinion!
At the moment we are conducting an experiment with my interaction profiler (DFlow). It would be great if you could participate! This will cost you little effort but help me to gather an understanding of development practices and interactions. This is the ground for improving our Pharo IDE!
Cheers and thanks in advance, Roberto
-- www.tudorgirba.com
"Every thing has its own flow"