happy and bold new year

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

happy and bold new year

Tudor Girba-2
Happy New Year, everyone!

Over the last year, I went through a rather extensive tour and I directly exposed Moose, GT and Pharo to some 2000+ technical people through various sessions and trainings at conferences and companies. The tour will continue this year.

Most of the sessions are not directly about Moose, GT or Pharo, but about broader topics that are served through what we do around here. These topics can relate to solving problems without reading code, to steering agile architecture, or more recently, to even broader topics like software environmentalism. If you are wondering what software environmentalism is, please take a look at this talk:
https://youtu.be/N3l3eB62oSw?list=PLqvTNJtc942Cs9Qo4ikCGrUNtAw93Q0JA

I now have the confirmation that there is a whole space which is unaddressed by mainstream technologies. Often people find themselves frustrated having to build their systems on top of opaque technologies with not much hope of understanding what is going on under the hood both because they do not have access to what is behind and because they are provided lack the tools to investigate. You see, developers are suppose to have the coolest job on the planet, and many of them are unhappy. This has to change, and we can do that.

In a conversation I had with a highly respected researcher, after explaining how our tools allow us to work, he noted reluctantly “so, you are claiming that you are practicing a fundamentally different software engineering?”. This question took me a little by surprise because the only answer I found myself being able to provide was “yes”. I sent him this talk:
https://youtu.be/XWOOJa3kEa0?list=PLqvTNJtc942Cs9Qo4ikCGrUNtAw93Q0JA

It is strange to be in the position to tell the world that we are constructing something fundamentally better, but I really do believe that we are.

I wish you a happy and bold new year!

Cheers,
Doru


--
www.tudorgirba.com
www.feenk.com

"Every thing should have the right to be different."





Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] happy and bold new year

Tudor Girba-2
Hi Hilaire,

GT is essentially a project that takes the relevant parts of Moose and make them applicable to plain Pharo. Pharo ships with only the core tools, but the complete configuration of GT also brings with it Roassal and a couple of other goodies. There are still more interesting things in Moose, but you can get quite far with only GT.

About your particular question, it’s true that Pharo does not have static types, but that does not make it harder to understand. Only different. The first thing to realize is that Pharo is not about code, but about objects.

That is why my advice is to not try too long to understand Pharo code statically because this is not where the power of Pharo is. You are in a much better position to understand a system when it’s running. So, the tools that I use the most are the inspector when I need to understand structural relationships or contracts between objects, and the debugger when I need to understand some algorithmic steps. Even when I look for code structure patterns, I mostly use the inspector because it allows me to query. Then you augment these tools with custom views and you get quite far.

I know this sounds abstract, but I am practicing this since several years and I still find it amazing. I tried to provide a hint of how it works in the ESUG 2016 talk.

Cheers,
Doru



> On Jan 9, 2017, at 2:02 PM, Hilaire <[hidden email]> wrote:
>
> Hello Doru,
>
> I am curious.
> Yesterday I had a look to MessageBrowser, and realize I understand
> nothing of it. I saw there is a mix of SpecXXX, models, Navigation
> browser, Announcement, etc, then I knew I will have to spend a lot of
> time browsing (multiple window again) to understand a bit how these
> objects are related, and may be be able to change it in the way I want.
> Does the Moose & al tools could help me understand code I don't know about?
>
> Given the fact Pharo/Smalltalk are not typed makes it harder for code
> analysis, don't you?
>
> Happy new year to you too.
>
> Hiaire
>
> Le 09/01/2017 à 10:30, Tudor Girba a écrit :
>> Happy New Year, everyone!
>>
>> Over the last year, I went through a rather extensive tour and I directly exposed Moose, GT and Pharo to some 2000+ technical people through various sessions and trainings at conferences and companies. The tour will continue this year.
>>
>> Most of the sessions are not directly about Moose, GT or Pharo, but about broader topics that are served through what we do around here. These topics can relate to solving problems without reading code, to steering agile architecture, or more recently, to even broader topics like software environmentalism. If you are wondering what software environmentalism is, please take a look at this talk:
>> https://youtu.be/N3l3eB62oSw?list=PLqvTNJtc942Cs9Qo4ikCGrUNtAw93Q0JA
>>
>> I now have the confirmation that there is a whole space which is unaddressed by mainstream technologies. Often people find themselves frustrated having to build their systems on top of opaque technologies with not much hope of understanding what is going on under the hood both because they do not have access to what is behind and because they are provided lack the tools to investigate. You see, developers are suppose to have the coolest job on the planet, and many of them are unhappy. This has to change, and we can do that.
>>
>> In a conversation I had with a highly respected researcher, after explaining how our tools allow us to work, he noted reluctantly “so, you are claiming that you are practicing a fundamentally different software engineering?”. This question took me a little by surprise because the only answer I found myself being able to provide was “yes”. I sent him this talk:
>> https://youtu.be/XWOOJa3kEa0?list=PLqvTNJtc942Cs9Qo4ikCGrUNtAw93Q0JA
>>
>> It is strange to be in the position to tell the world that we are constructing something fundamentally better, but I really do believe that we are.
>>
>> I wish you a happy and bold new year!
>>
>> Cheers,
>> Doru
>>
>
> --
> Dr. Geo
> http://drgeo.eu

--
www.tudorgirba.com
www.feenk.com

"If you can't say why something is relevant,
it probably isn't."


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] happy and bold new year

HilaireFernandes
I know this path of understanding code while it is running (inspector or
debugger), but it is still a tedious path, and I feel Pharo is a bit
under featured on that specific department, therefore my question on Moose.

Hilaire



Le 09/01/2017 à 15:09, Tudor Girba a écrit :
> That is why my advice is to not try too long to understand Pharo code statically because this is not where the power of Pharo is. You are in a much better position to understand a system when it’s running. So, the tools that I use the most are the inspector when I need to understand structural relationships or contracts between objects, and the debugger when I need to understand some algorithmic steps. Even when I look for code structure patterns, I mostly use the inspector because it allows me to query. Then you augment these tools with custom views and you get quite far.

--
Dr. Geo
http://drgeo.eu


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] happy and bold new year

Tudor Girba-2
Hi,

In my opinion, Pharo provides the strongest infrastructure for understanding a system from all technologies I have seen. So, if you say that Pharo is a bit "under featured in, then I think we are not referring to the same thing :).

May I ask how you are using the inspector? For example:
- do you extend the inspector?
- do you construct visualizations about your system in the inspector?
- do you write queries about code in the inspector?

Cheers,
Doru


> On Jan 9, 2017, at 3:42 PM, Hilaire <[hidden email]> wrote:
>
> I know this path of understanding code while it is running (inspector or
> debugger), but it is still a tedious path, and I feel Pharo is a bit
> under featured on that specific department, therefore my question on Moose.
>
> Hilaire
>
>
>
> Le 09/01/2017 à 15:09, Tudor Girba a écrit :
>> That is why my advice is to not try too long to understand Pharo code statically because this is not where the power of Pharo is. You are in a much better position to understand a system when it’s running. So, the tools that I use the most are the inspector when I need to understand structural relationships or contracts between objects, and the debugger when I need to understand some algorithmic steps. Even when I look for code structure patterns, I mostly use the inspector because it allows me to query. Then you augment these tools with custom views and you get quite far.
>
> --
> Dr. Geo
> http://drgeo.eu
>
>

--
www.tudorgirba.com
www.feenk.com

"We can create beautiful models in a vacuum.
But, to get them effective we have to deal with the inconvenience of reality."


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] happy and bold new year

HilaireFernandes
Le 09/01/2017 à 16:09, Tudor Girba a écrit :
> Hi,
>
> In my opinion, Pharo provides the strongest infrastructure for understanding a system from all technologies I have seen. So, if you say that Pharo is a bit "under featured in, then I think we are not referring to the same thing :).

We are refering to the same things. I express a feeling from a user
experience. After diving in the code with several inspector windows, you
get lost quickly.

I use the inspector to discover the class of the attributes, and write
code snippet. Inspector most of the time invoked from the Debugger

I don't know about visualization from inspector or queries about code.
Are there discoverable features?

But we are far from my initial question. I will be happy to watch a
video demonstration about what I don't know in Pharo to understand more
easily the MessageBrowser, for example. Final goal will be to change
MessageBrwoser so asking for implementors does not open a new window but
use its existing window.

>
> May I ask how you are using the inspector? For example:
> - do you extend the inspector?
> - do you construct visualizations about your system in the inspector?
> - do you write queries about code in the inspector?
>
> Cheers,
> Doru

--
Dr. Geo
http://drgeo.eu


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] happy and bold new year

HilaireFernandes
I should add I am stick with Pharo3 for DrGeo, however the new inspector
in Pharo 4 and 5 reduces a lot the cascade of inspector windows, thanks
to its horizontal slider.

Le 09/01/2017 à 16:37, Hilaire a écrit :
> We are refering to the same things. I express a feeling from a user
> experience. After diving in the code with several inspector windows, you
> get lost quickly.

--
Dr. Geo
http://drgeo.eu


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] happy and bold new year

Denis Kudriashov
In reply to this post by HilaireFernandes

2017-01-09 16:37 GMT+01:00 Hilaire <[hidden email]>:
But we are far from my initial question. I will be happy to watch a
video demonstration about what I don't know in Pharo to understand more
easily the MessageBrowser, for example. Final goal will be to change
MessageBrwoser so asking for implementors does not open a new window but
use its existing window.

I am going to show something really cool tomorrow :)
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] happy and bold new year

HilaireFernandes
Great! IMHO there is a lot to learn from newbies or naive users
experience to improve the Pharo IDE tools.

The Calypso multiple tab panels of edited methods is nice.
By the way, when asking for the reference of a Trait it always returns
an empty list, but I guess you already know it.

Le 09/01/2017 à 21:31, Denis Kudriashov a écrit :
> I am going to show something really cool tomorrow :)

--
Dr. Geo
http://drgeo.eu