On Mon, Sep 5, 2016 at 3:24 AM, Peter Uhnak <i.uhnak@gmail.com> wrote:
On Sun, Sep 04, 2016 at 11:10:26AM -0700, Sean P. DeNigris wrote:
Ben Coman wrote
Do you really want to add extra hidden (because nobody would click on a tab, because nowhere else in the system it's like that)
Its not hidden because its similar to lot of other systems that newcomers use [1][2][3].
buttons just to save two seconds?
* Show Definition - which opens a browser on the right code
* click on the pen near top right corner, select extensions package, select method
"Which extensions package, which method do I select? I've only been using Pharo a week. I'm not used to this extreme integration of IDE and my application code. You mean I can actually modify the UI code right now?"
* select the meta tab, select a class, select extensions package, select method
Do you really need a special hidden button to maybe save two seconds on a five second action that you rarely perform?
Its exactly the rare actions that benefit the most from better discoverability (see below). Its not about saving a few seconds.
* Create Custom Extension - which opens a dialog to create a new package "MyGTExtensions" and/or select an existing package, specify an identifier and choose a template that is created and Browser opened.
Why not just open a browser and add a method? You can protocolize the method with two clicks or a shortcut, and it's already part of the system.
"How do I determine the right class to add the method? I've only been using Pharo a week and I'm not used to extending core classes. What is a protocol and what is an extension?"
Unless you plan on writing two hundred extensions, you are really not going to save anything, because you spend most of the time actually implementing it and not bootstrapping it. (At least that's my experience after writing 20 or 30 extensions).
The advantage is not for someone writing 20 or 200 extensions. Its for the person creating their very *first* extension.
Another tip that I tend to use: * open spotter, type #gtInsp, press ctrl + m (to select implementors), enable live preview (if you haven't already), look around for inspiration
Considering a newcomer's discoverability of: * a common paradigm such as a tab context menu [1] [2] [3] + a dialog * guessing a random string like #gtInsp to search on + having the idea to create a personal MyGTExtensions package to hold the extension + knowing how to derive the name of the *MyGTExtensions protocol I feel the former will work better.
(just to be clear... I am not strictly against adding it, but it feels like it add another hidden feature (that's undiscoverable) for very little benefit)
Maybe the <Pen> button could be a menu with * Browse definition of selected tab * Create a new tab The icon could be the three horizontal line "menu" icon rather than a "pen". [1] http://stackoverflow.com/questions/12986625/eclipse-plugin-development-addin... [2] http://www.howtogeek.com/howto/internet/firefox/quick-tip-duplicate-current-... [3] http://techdows.com/2012/02/reload-all-tabs-in-chrome-from-context-menu-or-w... cheers-ben