I am David Allouche, let me introduce myself.

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

I am David Allouche, let me introduce myself.

David Allouche
Hello folks.

Some people have already seen me on Twitter and Slack, but I believe there might be some people on the mailing list that did not see those conversations.

As I have done on Slack, I am writing this introduction so people have an idea where I come from and what is my business with Pharo.

I am a professional programmer. My current job is tech on a small company I run with two associates (by the way, we are hiring a good Python web dev with a passion for good code). The product is a SaaS web application for recruiters. They call that an Application Tracking System, it is a workflow, communication and archival system for job applications and candidates.

I started programming 25 years ago with HyperCard, and since I have at least played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java, bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.

I have contributed to GNU TeXmacs where I made important contributinos during about 2 years, as I completed by training as an software engineer, and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a Python driver), Bazaar (bzr scm) where I worked with the founding team at Canonical while working on the version control aspect of launchpad.net. After that, I had mostly no contribution to free software, working on financial modeling at a bank and then on my current business. I made a presentation on SQLAlchemy at PyCon.fr 2015.

I am a fan Design Patterns (GoF) and the Refactoring book. My mentor at Canonical (Robert Collins) is heavily influenced by Smalltalk and championed XP there. I always had strong interests in software systems design, programming language design, typography, and user interface design. I feel strongly for the concept of software craftsmanship.

My current job is nice, good pay, lots of independence ; after 6 years working on the same project, I need some fresh intellectual stimulation. And I was recently impressed by the presentation "Nothing is Something", by Sandi Metz, who is heavily influenced by Smalltalk.


So, I here I came, bumbling my way around the system, looking for intellectual stimulation, and for a way to make a positive contribution.

I was very impressed by the nice welcome I have received. And I see there is lots of useful work to do here.

So that's where I come from when you see me chipping in the conversation here.

Regards.
Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

Tudor Girba-2
Welcome!

To get faster to the intellectual stimulation, pick a task / project and start asking questions. And have fun :).

Cheers,
Doru


> On Jan 10, 2016, at 11:37 PM, David Allouche <[hidden email]> wrote:
>
> Hello folks.
>
> Some people have already seen me on Twitter and Slack, but I believe there might be some people on the mailing list that did not see those conversations.
>
> As I have done on Slack, I am writing this introduction so people have an idea where I come from and what is my business with Pharo.
>
> I am a professional programmer. My current job is tech on a small company I run with two associates (by the way, we are hiring a good Python web dev with a passion for good code). The product is a SaaS web application for recruiters. They call that an Application Tracking System, it is a workflow, communication and archival system for job applications and candidates.
>
> I started programming 25 years ago with HyperCard, and since I have at least played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java, bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.
>
> I have contributed to GNU TeXmacs where I made important contributinos during about 2 years, as I completed by training as an software engineer, and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a Python driver), Bazaar (bzr scm) where I worked with the founding team at Canonical while working on the version control aspect of launchpad.net. After that, I had mostly no contribution to free software, working on financial modeling at a bank and then on my current business. I made a presentation on SQLAlchemy at PyCon.fr 2015.
>
> I am a fan Design Patterns (GoF) and the Refactoring book. My mentor at Canonical (Robert Collins) is heavily influenced by Smalltalk and championed XP there. I always had strong interests in software systems design, programming language design, typography, and user interface design. I feel strongly for the concept of software craftsmanship.
>
> My current job is nice, good pay, lots of independence ; after 6 years working on the same project, I need some fresh intellectual stimulation. And I was recently impressed by the presentation "Nothing is Something", by Sandi Metz, who is heavily influenced by Smalltalk.
>
> http://confreaks.tv/videos/bathruby2015-nothing-is-something
>
> So, I here I came, bumbling my way around the system, looking for intellectual stimulation, and for a way to make a positive contribution.
>
> I was very impressed by the nice welcome I have received. And I see there is lots of useful work to do here.
>
> So that's where I come from when you see me chipping in the conversation here.
>
> Regards.

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

"Presenting is storytelling."


Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

kilon.alios
Welcome , David, thats a quite a resume. HyperCard looks like its shares quite a lot in common with Smalltalk. From what you write I think you will love Pharo, its a very active, passionate smalltalk community and Pharo is moving forward very fast since we are constantly growing.

I think you love pharo and have great fun using it as I do. As Tudor said, fire away your questions we love questions and we love to help newcomers because we know how important is to grow.

I think when people referring to Smalltalk refer to Smalltalk as the language or OOP itself, but thats only the tip of the iceberg, Pharo tries to stay true to vision of smalltalk creating the virtual enviroment where the user can easily create his or her own tools or modifying the existing ones, something that I feel no other language out there can emulate because they follow a non monolithic approach where there is a deep dichotomy between language, libraries and the environment itself. You could say that Smalltalk is the anti-Unix architecture , a great example of monolithic design that works great in practice yet its easy to modify and extend.

Of course the big exception is Lisp which Smalltalk so close to as a philosophy.

Whether this approach is good or bad for you, only you can decide , but is certainly quite different and I think that is what it counts the most.

On Sun, Jan 10, 2016 at 11:53 PM Tudor Girba <[hidden email]> wrote:
Welcome!

To get faster to the intellectual stimulation, pick a task / project and start asking questions. And have fun :).

Cheers,
Doru


> On Jan 10, 2016, at 11:37 PM, David Allouche <[hidden email]> wrote:
>
> Hello folks.
>
> Some people have already seen me on Twitter and Slack, but I believe there might be some people on the mailing list that did not see those conversations.
>
> As I have done on Slack, I am writing this introduction so people have an idea where I come from and what is my business with Pharo.
>
> I am a professional programmer. My current job is tech on a small company I run with two associates (by the way, we are hiring a good Python web dev with a passion for good code). The product is a SaaS web application for recruiters. They call that an Application Tracking System, it is a workflow, communication and archival system for job applications and candidates.
>
> I started programming 25 years ago with HyperCard, and since I have at least played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java, bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.
>
> I have contributed to GNU TeXmacs where I made important contributinos during about 2 years, as I completed by training as an software engineer, and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a Python driver), Bazaar (bzr scm) where I worked with the founding team at Canonical while working on the version control aspect of launchpad.net. After that, I had mostly no contribution to free software, working on financial modeling at a bank and then on my current business. I made a presentation on SQLAlchemy at PyCon.fr 2015.
>
> I am a fan Design Patterns (GoF) and the Refactoring book. My mentor at Canonical (Robert Collins) is heavily influenced by Smalltalk and championed XP there. I always had strong interests in software systems design, programming language design, typography, and user interface design. I feel strongly for the concept of software craftsmanship.
>
> My current job is nice, good pay, lots of independence ; after 6 years working on the same project, I need some fresh intellectual stimulation. And I was recently impressed by the presentation "Nothing is Something", by Sandi Metz, who is heavily influenced by Smalltalk.
>
> http://confreaks.tv/videos/bathruby2015-nothing-is-something
>
> So, I here I came, bumbling my way around the system, looking for intellectual stimulation, and for a way to make a positive contribution.
>
> I was very impressed by the nice welcome I have received. And I see there is lots of useful work to do here.
>
> So that's where I come from when you see me chipping in the conversation here.
>
> Regards.

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

"Presenting is storytelling."


Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

abergel
In reply to this post by David Allouche
Welcome David!

Alexandre


> On Jan 10, 2016, at 6:37 PM, David Allouche <[hidden email]> wrote:
>
> Hello folks.
>
> Some people have already seen me on Twitter and Slack, but I believe there might be some people on the mailing list that did not see those conversations.
>
> As I have done on Slack, I am writing this introduction so people have an idea where I come from and what is my business with Pharo.
>
> I am a professional programmer. My current job is tech on a small company I run with two associates (by the way, we are hiring a good Python web dev with a passion for good code). The product is a SaaS web application for recruiters. They call that an Application Tracking System, it is a workflow, communication and archival system for job applications and candidates.
>
> I started programming 25 years ago with HyperCard, and since I have at least played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java, bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.
>
> I have contributed to GNU TeXmacs where I made important contributinos during about 2 years, as I completed by training as an software engineer, and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a Python driver), Bazaar (bzr scm) where I worked with the founding team at Canonical while working on the version control aspect of launchpad.net. After that, I had mostly no contribution to free software, working on financial modeling at a bank and then on my current business. I made a presentation on SQLAlchemy at PyCon.fr 2015.
>
> I am a fan Design Patterns (GoF) and the Refactoring book. My mentor at Canonical (Robert Collins) is heavily influenced by Smalltalk and championed XP there. I always had strong interests in software systems design, programming language design, typography, and user interface design. I feel strongly for the concept of software craftsmanship.
>
> My current job is nice, good pay, lots of independence ; after 6 years working on the same project, I need some fresh intellectual stimulation. And I was recently impressed by the presentation "Nothing is Something", by Sandi Metz, who is heavily influenced by Smalltalk.
>
> http://confreaks.tv/videos/bathruby2015-nothing-is-something
>
> So, I here I came, bumbling my way around the system, looking for intellectual stimulation, and for a way to make a positive contribution.
>
> I was very impressed by the nice welcome I have received. And I see there is lots of useful work to do here.
>
> So that's where I come from when you see me chipping in the conversation here.
>
> Regards.

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.




Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

NorbertHartl
Welcome!

Norbert

> Am 10.01.2016 um 23:37 schrieb Alexandre Bergel <[hidden email]>:
>
> Welcome David!
>
> Alexandre
>
>
>> On Jan 10, 2016, at 6:37 PM, David Allouche <[hidden email]> wrote:
>>
>> Hello folks.
>>
>> Some people have already seen me on Twitter and Slack, but I believe there might be some people on the mailing list that did not see those conversations.
>>
>> As I have done on Slack, I am writing this introduction so people have an idea where I come from and what is my business with Pharo.
>>
>> I am a professional programmer. My current job is tech on a small company I run with two associates (by the way, we are hiring a good Python web dev with a passion for good code). The product is a SaaS web application for recruiters. They call that an Application Tracking System, it is a workflow, communication and archival system for job applications and candidates.
>>
>> I started programming 25 years ago with HyperCard, and since I have at least played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java, bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.
>>
>> I have contributed to GNU TeXmacs where I made important contributinos during about 2 years, as I completed by training as an software engineer, and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a Python driver), Bazaar (bzr scm) where I worked with the founding team at Canonical while working on the version control aspect of launchpad.net. After that, I had mostly no contribution to free software, working on financial modeling at a bank and then on my current business. I made a presentation on SQLAlchemy at PyCon.fr 2015.
>>
>> I am a fan Design Patterns (GoF) and the Refactoring book. My mentor at Canonical (Robert Collins) is heavily influenced by Smalltalk and championed XP there. I always had strong interests in software systems design, programming language design, typography, and user interface design. I feel strongly for the concept of software craftsmanship.
>>
>> My current job is nice, good pay, lots of independence ; after 6 years working on the same project, I need some fresh intellectual stimulation. And I was recently impressed by the presentation "Nothing is Something", by Sandi Metz, who is heavily influenced by Smalltalk.
>>
>> http://confreaks.tv/videos/bathruby2015-nothing-is-something
>>
>> So, I here I came, bumbling my way around the system, looking for intellectual stimulation, and for a way to make a positive contribution.
>>
>> I was very impressed by the nice welcome I have received. And I see there is lots of useful work to do here.
>>
>> So that's where I come from when you see me chipping in the conversation here.
>>
>> Regards.
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

HilaireFernandes
In reply to this post by David Allouche
Le 10/01/2016 22:37, David Allouche a écrit :
> Hello folks.
>
> Some people have already seen me on Twitter and Slack, but I believe
> there might be some people on the mailing list that did not see those
> conversations.
>

Salut David,

C'est cool de te voir ici !
If you are looking for something stimulating your mind, you are at the
right place :)
As Doru suggeted, pick up a small project of yours or a task and try it

Hilaire

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



Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

Ben Coman
In reply to this post by David Allouche
On Mon, Jan 11, 2016 at 5:37 AM, David Allouche <[hidden email]> wrote:

> Hello folks.
>
> Some people have already seen me on Twitter and Slack, but I believe there
> might be some people on the mailing list that did not see those
> conversations.
>
> As I have done on Slack, I am writing this introduction so people have an
> idea where I come from and what is my business with Pharo.
>
> I am a professional programmer. My current job is tech on a small company I
> run with two associates (by the way, we are hiring a good Python web dev
> with a passion for good code). The product is a SaaS web application for
> recruiters. They call that an Application Tracking System, it is a workflow,
> communication and archival system for job applications and candidates.
>
> I started programming 25 years ago with HyperCard, and since I have at least
> played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java,
> bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.
>
> I have contributed to GNU TeXmacs where I made important contributinos
> during about 2 years, as I completed by training as an software engineer,
> and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a
> Python driver), Bazaar (bzr scm) where I worked with the founding team at
> Canonical while working on the version control aspect of launchpad.net.
> After that, I had mostly no contribution to free software, working on
> financial modeling at a bank and then on my current business. I made a
> presentation on SQLAlchemy at PyCon.fr 2015.
>
> I am a fan Design Patterns (GoF) and the Refactoring book.

Have you seen "The Design Patterns Smalltalk Companion"
https://books.google.com.au/books/about/The_Design_Patterns_Smalltalk_Companion.html?id=WY1QAAAAMAAJ&redir_esc=y
It might help segue your experience into Pharo.

and also "Smalltalk Best Practice Patterns"
http://www.amazon.com/Smalltalk-Best-Practice-Patterns-Kent/dp/013476904X


> My mentor at
> Canonical (Robert Collins) is heavily influenced by Smalltalk and championed
> XP there. I always had strong interests in software systems design,
> programming language design, typography, and user interface design. I feel
> strongly for the concept of software craftsmanship.
>
> My current job is nice, good pay, lots of independence ; after 6 years
> working on the same project, I need some fresh intellectual stimulation. And
> I was recently impressed by the presentation "Nothing is Something", by
> Sandi Metz, who is heavily influenced by Smalltalk.
>
> http://confreaks.tv/videos/bathruby2015-nothing-is-something

Wow, a great endorsement of Smalltalk from an insider of another community.

You'll find similar enlightenment with "A Mentoring Course on Smalltalk"
http://www.lulu.com/shop/andres-valloud/a-mentoring-course-on-smalltalk-pdf/ebook/product-18783337.html


> So, I here I came, bumbling my way around the system, looking for
> intellectual stimulation, and for a way to make a positive contribution.

Pharo is great for this.  I don't currently develop software for a
living.  Earlier I was a systems administrator (including for software
developers), and lately an electrical power engineer
(https://au.linkedin.com/in/bencoman).  But while some people like
doing crosswords... I *love* programming, and Pharo is a joy to use.
I've been surprised a few times when peeking under the covers how its
possible to follow, understand and change the depths of the system.
You can really feel you make an impact.

I can't remember who famous said something like "The only languages
worth learning are the ones that changes the way you think about
programming..."  and I found that with Smalltalk & Pharo.


> I was very impressed by the nice welcome I have received. And I see there is
> lots of useful work to do here.

Some drive-by newcomers that generically complain "why doesn't my new
tool (Pharo) work just like all the other conventional tools" do get
short shrift.  Such arguments follow a common pattern when we believe
our differences are our advantage,  so this keeps the noise down in
the mail list.  That said, we don't want to be insular, so fresh eyes
providing *constructive* criticism are welcome.  Come with an open
mind, review and contribute code and you'll be very welcome.

A good way to get your hands dirty is to review fixes submitted by others...
https://pharo.fogbugz.com/default.asp?pgx=LF&ixFilter=45
There are never enough hands there :)  (my own action here fluctuates
from time to time)

I learnt a lot of the system from reviewing other people's fixes, by
using PharoLauncher to easily start two Images running side by side.
In first image, I stop a <merge> of an issue's Slice half way through
so the methods being changed are listed, then drop a #halt into some
of those to trace the existing issue.  In the second image I complete
the same <merge> and drop a #halt into the same methods, and debug
each image in lock step to see where code path differs.


> So that's where I come from when you see me chipping in the conversation
> here.

Glad to have you on board.
cheers -ben

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

stepharo
In reply to this post by David Allouche
Welcome :)

Did you look at Seaside?
Since you should be able to read french there is  a nice tutorial: tinyBlog. In two days you can build a small web app
with a mongo back end.

Stef

Le 10/1/16 22:37, David Allouche a écrit :
Hello folks.

Some people have already seen me on Twitter and Slack, but I believe there might be some people on the mailing list that did not see those conversations.

As I have done on Slack, I am writing this introduction so people have an idea where I come from and what is my business with Pharo.

I am a professional programmer. My current job is tech on a small company I run with two associates (by the way, we are hiring a good Python web dev with a passion for good code). The product is a SaaS web application for recruiters. They call that an Application Tracking System, it is a workflow, communication and archival system for job applications and candidates.

I started programming 25 years ago with HyperCard, and since I have at least played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java, bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.

I have contributed to GNU TeXmacs where I made important contributinos during about 2 years, as I completed by training as an software engineer, and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a Python driver), Bazaar (bzr scm) where I worked with the founding team at Canonical while working on the version control aspect of launchpad.net. After that, I had mostly no contribution to free software, working on financial modeling at a bank and then on my current business. I made a presentation on SQLAlchemy at PyCon.fr 2015.

I am a fan Design Patterns (GoF) and the Refactoring book. My mentor at Canonical (Robert Collins) is heavily influenced by Smalltalk and championed XP there. I always had strong interests in software systems design, programming language design, typography, and user interface design. I feel strongly for the concept of software craftsmanship.

My current job is nice, good pay, lots of independence ; after 6 years working on the same project, I need some fresh intellectual stimulation. And I was recently impressed by the presentation "Nothing is Something", by Sandi Metz, who is heavily influenced by Smalltalk.


So, I here I came, bumbling my way around the system, looking for intellectual stimulation, and for a way to make a positive contribution.

I was very impressed by the nice welcome I have received. And I see there is lots of useful work to do here.

So that's where I come from when you see me chipping in the conversation here.

Regards.

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

SergeStinckwich
In reply to this post by David Allouche
Welcome in the community David !

Where are you located ?

Regards,

On Sun, Jan 10, 2016 at 10:37 PM, David Allouche <[hidden email]> wrote:

> Hello folks.
>
> Some people have already seen me on Twitter and Slack, but I believe there
> might be some people on the mailing list that did not see those
> conversations.
>
> As I have done on Slack, I am writing this introduction so people have an
> idea where I come from and what is my business with Pharo.
>
> I am a professional programmer. My current job is tech on a small company I
> run with two associates (by the way, we are hiring a good Python web dev
> with a passion for good code). The product is a SaaS web application for
> recruiters. They call that an Application Tracking System, it is a workflow,
> communication and archival system for job applications and candidates.
>
> I started programming 25 years ago with HyperCard, and since I have at least
> played with Pascal, C, Prograph, asm68k, HP-48 (RPL, Saturn asm), Java,
> bash, C++, LaTeX, XSLT, Delphi, Scheme, elisp, JavaScript.
>
> I have contributed to GNU TeXmacs where I made important contributinos
> during about 2 years, as I completed by training as an software engineer,
> and worked at CNRS in Rennes. Then I got involved in GNU Arch (wrote a
> Python driver), Bazaar (bzr scm) where I worked with the founding team at
> Canonical while working on the version control aspect of launchpad.net.
> After that, I had mostly no contribution to free software, working on
> financial modeling at a bank and then on my current business. I made a
> presentation on SQLAlchemy at PyCon.fr 2015.
>
> I am a fan Design Patterns (GoF) and the Refactoring book. My mentor at
> Canonical (Robert Collins) is heavily influenced by Smalltalk and championed
> XP there. I always had strong interests in software systems design,
> programming language design, typography, and user interface design. I feel
> strongly for the concept of software craftsmanship.
>
> My current job is nice, good pay, lots of independence ; after 6 years
> working on the same project, I need some fresh intellectual stimulation. And
> I was recently impressed by the presentation "Nothing is Something", by
> Sandi Metz, who is heavily influenced by Smalltalk.
>
> http://confreaks.tv/videos/bathruby2015-nothing-is-something
>
> So, I here I came, bumbling my way around the system, looking for
> intellectual stimulation, and for a way to make a positive contribution.
>
> I was very impressed by the nice welcome I have received. And I see there is
> lots of useful work to do here.
>
> So that's where I come from when you see me chipping in the conversation
> here.
>
> Regards.



--
Serge Stinckwich
UCBN & UMI UMMISCO 209 (IRD/UPMC)
Every DSL ends up being Smalltalk
http://www.doesnotunderstand.org/

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

David Allouche
In reply to this post by David Allouche
Thank you everyone for the kind responses. I will answer some of the questions and suggestions here.

To get faster to the intellectual stimulation, pick a task / project and start asking questions. And have fun :).

That is good advice, but right now I think I will just explore the system, review changes, and wait for the tasks to find me. There are already more things I want to do than I will probably every be able to accomplish :-)

I think when people referring to Smalltalk refer to Smalltalk as the language or OOP itself, but thats only the tip of the iceberg, Pharo tries to stay true to vision of smalltalk creating the virtual enviroment where the user can easily create his or her own tools or modifying the existing ones, something that I feel no other language out there can emulate because they follow a non monolithic approach where there is a deep dichotomy between language, libraries and the environment itself. You could say that Smalltalk is the anti-Unix architecture , a great example of monolithic design that works great in practice yet its easy to modify and extend. 

The  fact Smalltalk the language cannot be taken in isolation from Smalltalk the environment became clear rather early on: reading the UPBE and other materials shows that the language itself does almost nothing: it cannot even define classes or packages. It is all part of the environment.

I have seen someone in another thread expressing the desire for namespaces. As a newcomer, I also feel that is something important and missing. But since one of the goals of Pharo is to produce an environment that can be understood by a single person, the lack of namespace might actually be a feature. Namespace are essential for languages like C++, designed for large projects, produced by large teams, where nobody understands the whole system. They embody an industrial approach to programming. In contrast, I have the impression that Smalltalk emphasises regularity to minimise system size, rather than modularity to manage system size, and that it embodies a craftsmanship approach.

Since I am just old enough to remember a time where computer systems could be understood by a single person, I find it an attractive idea to try and produce a modern system with that property.

I can't remember who famous said something like "The only languages
worth learning are the ones that changes the way you think about
programming..."  and I found that with Smalltalk & Pharo.

I am familiar with that idea too. And most good languages provide that.

 One day I will have learn some language from the ML family. I choose Smalltalk because it clearly had such a strong influence on the thinking of people who have used it, I thought I could learn

A good way to get your hands dirty is to review fixes submitted by others...
https://pharo.fogbugz.com/default.asp?pgx=LF&ixFilter=45
There are never enough hands there :)  (my own action here fluctuates
from time to time)

I will try to spend some time reviewing code. That is a good way to get exposed to things one does not even know they exist.

Did you look at Seaside?
Since you should be able to read french there is  a nice tutorial: tinyBlog. In two days you can build a small web app
with a mongo back end. 

I have no looked at Seaside yet, I have not even read the corresponding chapter in UPBE. But I certainly will, eventually. The web is an essential part of society today.

Where are you located ?

Paris, France.

It did occur to me that the Pharo community does have a unusually large fraction of french people. But that is not a factor for me.

Thanks again for all the kind words. I am sure this journey is going to be a lot of fun. :-)


Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

kilon.alios
"I have seen someone in another thread expressing the desire for namespaces. As a newcomer, I also feel that is something important and missing. But since one of the goals of Pharo is to produce an environment that can be understood by a single person, the lack of namespace might actually be a feature. Namespace are essential for languages like C++, designed for large projects, produced by large teams, where nobody understands the whole system. They embody an industrial approach to programming. In contrast, I have the impression that Smalltalk emphasises regularity to minimise system size, rather than modularity to manage system size, and that it embodies a craftsmanship approach."

Pharo contains over 800000 methods spread around several thousands classes and the system has not imploded yet even though we have no namespaces. The reasoning is simple, Pharo does not need namespaces because its not a programming language. Namespaces primary role is not organization so much as prevention of name clashes , this is not a problem for Pharo since it does not allow name clashes in the first place. Thats is happening in the enviroment and not language level, if you want to organise your classes you use packages . Packages also are not part of the language and are also implemented on enviroment level, though one could argue that language is also part of the enviroment.

So yes it feelt strange even for not having namespace coming from python but after coding in pharo for over a year its clear to me that pharo does not need it and would probably benefit by more sophisticated and specific implementation when it comes to organisations. But generally speaking we already have plenty of tools that help you locate classes and methods with ease, so that is not much of a problem.

Pharo enviroment is far from simple, quite the contrary Smalltalk implementations were always far more complex than you average language like C++, the big diffirence is that the enviroment is constructed in such way to help you deal with complexity. Where modern languages ephasize simplicity pharo and smalltalk in general invest on better dealing with complexity , hence why Smalltalk has been very popular in specific very complex fields like Banking Sector, Shipping etc. C++ is no where as suitable for complex applications , its popularity merely stems from the fact that is OS language with immediate access to OS libraries and massive support.

On Wed, Jan 13, 2016 at 7:30 PM David Allouche <[hidden email]> wrote:
Thank you everyone for the kind responses. I will answer some of the questions and suggestions here.

To get faster to the intellectual stimulation, pick a task / project and start asking questions. And have fun :).

That is good advice, but right now I think I will just explore the system, review changes, and wait for the tasks to find me. There are already more things I want to do than I will probably every be able to accomplish :-)

I think when people referring to Smalltalk refer to Smalltalk as the language or OOP itself, but thats only the tip of the iceberg, Pharo tries to stay true to vision of smalltalk creating the virtual enviroment where the user can easily create his or her own tools or modifying the existing ones, something that I feel no other language out there can emulate because they follow a non monolithic approach where there is a deep dichotomy between language, libraries and the environment itself. You could say that Smalltalk is the anti-Unix architecture , a great example of monolithic design that works great in practice yet its easy to modify and extend. 

The  fact Smalltalk the language cannot be taken in isolation from Smalltalk the environment became clear rather early on: reading the UPBE and other materials shows that the language itself does almost nothing: it cannot even define classes or packages. It is all part of the environment.

I have seen someone in another thread expressing the desire for namespaces. As a newcomer, I also feel that is something important and missing. But since one of the goals of Pharo is to produce an environment that can be understood by a single person, the lack of namespace might actually be a feature. Namespace are essential for languages like C++, designed for large projects, produced by large teams, where nobody understands the whole system. They embody an industrial approach to programming. In contrast, I have the impression that Smalltalk emphasises regularity to minimise system size, rather than modularity to manage system size, and that it embodies a craftsmanship approach.

Since I am just old enough to remember a time where computer systems could be understood by a single person, I find it an attractive idea to try and produce a modern system with that property.

I can't remember who famous said something like "The only languages
worth learning are the ones that changes the way you think about
programming..."  and I found that with Smalltalk & Pharo.

I am familiar with that idea too. And most good languages provide that.

 One day I will have learn some language from the ML family. I choose Smalltalk because it clearly had such a strong influence on the thinking of people who have used it, I thought I could learn

A good way to get your hands dirty is to review fixes submitted by others...
https://pharo.fogbugz.com/default.asp?pgx=LF&ixFilter=45
There are never enough hands there :)  (my own action here fluctuates
from time to time)

I will try to spend some time reviewing code. That is a good way to get exposed to things one does not even know they exist.

Did you look at Seaside?
Since you should be able to read french there is  a nice tutorial: tinyBlog. In two days you can build a small web app
with a mongo back end. 

I have no looked at Seaside yet, I have not even read the corresponding chapter in UPBE. But I certainly will, eventually. The web is an essential part of society today.

Where are you located ?

Paris, France.

It did occur to me that the Pharo community does have a unusually large fraction of french people. But that is not a factor for me.

Thanks again for all the kind words. I am sure this journey is going to be a lot of fun. :-)


Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

Offray
In reply to this post by kilon.alios
Hi,

On 10/01/16 17:16, Dimitris Chloupis wrote:

[...]

>
> I think when people referring to Smalltalk refer to Smalltalk as the
> language or OOP itself, but thats only the tip of the iceberg, Pharo
> tries to stay true to vision of smalltalk creating the virtual
> enviroment where the user can easily create his or her own tools or
> modifying the existing ones, something that I feel no other language
> out there can emulate because they follow a non monolithic approach
> where there is a deep dichotomy between language, libraries and the
> environment itself. You could say that Smalltalk is the anti-Unix
> architecture , a great example of monolithic design that works great
> in practice yet its easy to modify and extend.
>

[...]

A place where I finally got this clear was in the book Tracing the
Dynabook by John W. Maxwell[1], where its author says that a fair
comparison wouldn't be between Smalltalk and other programming
languages, but between Smalltalk and the operative systems paradigm. I
had found Squeak in 2005 and even reading something about the Dynabook,
but was until reading this text on 2007 when I finally get it. It has a
different approach that the classical programming book, but was one of
the most enlightening reading for me about Smalltalk, the dynabook and
the popular computer paradigm we have today.

[1] http://tkbr.ccsp.sfu.ca/dynabook/

Cheers,

Offray

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

SergeStinckwich
In reply to this post by David Allouche
On Wed, Jan 13, 2016 at 6:29 PM, David Allouche <[hidden email]> wrote:
> Thank you everyone for the kind responses. I will answer some of the
> questions and suggestions here.
 ...

> Where are you located ?
>
>
> Paris, France.

Great !
I'm also located in Paris.
Maybe we could have a Pharo user group in the future. I know 5
Pharoers now in Paris ;-)

Regards,
--
Serge Stinckwich
UCBN & UMI UMMISCO 209 (IRD/UPMC)
Every DSL ends up being Smalltalk
http://www.doesnotunderstand.org/

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

Ben Coman
In reply to this post by kilon.alios
On Thu, Jan 14, 2016 at 2:12 AM, Dimitris Chloupis
<[hidden email]> wrote:

> "I have seen someone in another thread expressing the desire for namespaces.
> As a newcomer, I also feel that is something important and missing. But
> since one of the goals of Pharo is to produce an environment that can be
> understood by a single person, the lack of namespace might actually be a
> feature. Namespace are essential for languages like C++, designed for large
> projects, produced by large teams, where nobody understands the whole
> system. They embody an industrial approach to programming. In contrast, I
> have the impression that Smalltalk emphasises regularity to minimise system
> size, rather than modularity to manage system size, and that it embodies a
> craftsmanship approach."
>
> Pharo contains over 800000 methods spread around several thousands classes
> and the system has not imploded yet even though we have no namespaces. The
> reasoning is simple, Pharo does not need namespaces because its not a
> programming language. Namespaces primary role is not organization so much as
> prevention of name clashes , this is not a problem for Pharo since it does
> not allow name clashes in the first place.

Name clashes can still happen between different external libraries.
Effectively we have a poor-mans namespaces with prefixes.  But its
harder to port libraries from other Smalltalks that support
namespaces, limiting our ecosystem.  Not necessarily the main driver,
but worthy of consideration.  Squeak has recently done some namespace
stuff so will be interesting to see their experience.

cheers -ben


> Thats is happening in the
> enviroment and not language level, if you want to organise your classes you
> use packages . Packages also are not part of the language and are also
> implemented on enviroment level, though one could argue that language is
> also part of the enviroment.
>
> So yes it feelt strange even for not having namespace coming from python but
> after coding in pharo for over a year its clear to me that pharo does not
> need it and would probably benefit by more sophisticated and specific
> implementation when it comes to organisations. But generally speaking we
> already have plenty of tools that help you locate classes and methods with
> ease, so that is not much of a problem.
>
> Pharo enviroment is far from simple, quite the contrary Smalltalk
> implementations were always far more complex than you average language like
> C++, the big diffirence is that the enviroment is constructed in such way to
> help you deal with complexity. Where modern languages ephasize simplicity
> pharo and smalltalk in general invest on better dealing with complexity ,
> hence why Smalltalk has been very popular in specific very complex fields
> like Banking Sector, Shipping etc. C++ is no where as suitable for complex
> applications , its popularity merely stems from the fact that is OS language
> with immediate access to OS libraries and massive support.
>
> On Wed, Jan 13, 2016 at 7:30 PM David Allouche <[hidden email]> wrote:
>>
>> Thank you everyone for the kind responses. I will answer some of the
>> questions and suggestions here.
>>
>> To get faster to the intellectual stimulation, pick a task / project and
>> start asking questions. And have fun :).
>>
>>
>> That is good advice, but right now I think I will just explore the system,
>> review changes, and wait for the tasks to find me. There are already more
>> things I want to do than I will probably every be able to accomplish :-)
>>
>> I think when people referring to Smalltalk refer to Smalltalk as the
>> language or OOP itself, but thats only the tip of the iceberg, Pharo tries
>> to stay true to vision of smalltalk creating the virtual enviroment where
>> the user can easily create his or her own tools or modifying the existing
>> ones, something that I feel no other language out there can emulate because
>> they follow a non monolithic approach where there is a deep dichotomy
>> between language, libraries and the environment itself. You could say that
>> Smalltalk is the anti-Unix architecture , a great example of monolithic
>> design that works great in practice yet its easy to modify and extend.
>>
>>
>> The  fact Smalltalk the language cannot be taken in isolation from
>> Smalltalk the environment became clear rather early on: reading the UPBE and
>> other materials shows that the language itself does almost nothing: it
>> cannot even define classes or packages. It is all part of the environment.
>>
>> I have seen someone in another thread expressing the desire for
>> namespaces. As a newcomer, I also feel that is something important and
>> missing. But since one of the goals of Pharo is to produce an environment
>> that can be understood by a single person, the lack of namespace might
>> actually be a feature. Namespace are essential for languages like C++,
>> designed for large projects, produced by large teams, where nobody
>> understands the whole system. They embody an industrial approach to
>> programming. In contrast, I have the impression that Smalltalk emphasises
>> regularity to minimise system size, rather than modularity to manage system
>> size, and that it embodies a craftsmanship approach.
>>
>> Since I am just old enough to remember a time where computer systems could
>> be understood by a single person, I find it an attractive idea to try and
>> produce a modern system with that property.
>>
>> I can't remember who famous said something like "The only languages
>> worth learning are the ones that changes the way you think about
>> programming..."  and I found that with Smalltalk & Pharo.
>>
>>
>> I am familiar with that idea too. And most good languages provide that.
>>
>>  One day I will have learn some language from the ML family. I choose
>> Smalltalk because it clearly had such a strong influence on the thinking of
>> people who have used it, I thought I could learn
>>
>> A good way to get your hands dirty is to review fixes submitted by
>> others...
>> https://pharo.fogbugz.com/default.asp?pgx=LF&ixFilter=45
>> There are never enough hands there :)  (my own action here fluctuates
>> from time to time)
>>
>>
>> I will try to spend some time reviewing code. That is a good way to get
>> exposed to things one does not even know they exist.
>>
>> Did you look at Seaside?
>> Since you should be able to read french there is  a nice tutorial:
>> tinyBlog. In two days you can build a small web app
>> with a mongo back end.
>>
>>
>> I have no looked at Seaside yet, I have not even read the corresponding
>> chapter in UPBE. But I certainly will, eventually. The web is an essential
>> part of society today.
>>
>> Where are you located ?
>>
>>
>> Paris, France.
>>
>> It did occur to me that the Pharo community does have a unusually large
>> fraction of french people. But that is not a factor for me.
>>
>> Thanks again for all the kind words. I am sure this journey is going to be
>> a lot of fun. :-)
>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

kilon.alios
sure but namespaces do not solve that problem either. They actually make it much worse. You can have a library named Door by X author and then another library named Door by author Y , hello name clash. Even worse those libraries may contain objects than name class, normally that would not be a problem under the expected usage of name space but lazy coders being .... well lazy... they love to collapse the namespace to reduce typing. So House.Door.Handle will become just Handle which may clash with with the name of another collapsed namespace.

Pharo is immune to such issues and the enviroment guarantees that you wont have name clashes inside the image. Namespaces , dont.

Add to that that we are very much centralised community around STHub and GitHub which makes it dead easy to find any potential name clash, compared to other languages that are spread all over the internet.

So I would say its more a luxury solution than a poor man's. What pharo lacks is something that helps us organise our classes even more and even tag them to form relationships between them. But thats easy to implement the questions is who is going to port the thousands of classes to a new system.

On Thu, Jan 14, 2016 at 4:50 AM Ben Coman <[hidden email]> wrote:
On Thu, Jan 14, 2016 at 2:12 AM, Dimitris Chloupis
<[hidden email]> wrote:
> "I have seen someone in another thread expressing the desire for namespaces.
> As a newcomer, I also feel that is something important and missing. But
> since one of the goals of Pharo is to produce an environment that can be
> understood by a single person, the lack of namespace might actually be a
> feature. Namespace are essential for languages like C++, designed for large
> projects, produced by large teams, where nobody understands the whole
> system. They embody an industrial approach to programming. In contrast, I
> have the impression that Smalltalk emphasises regularity to minimise system
> size, rather than modularity to manage system size, and that it embodies a
> craftsmanship approach."
>
> Pharo contains over 800000 methods spread around several thousands classes
> and the system has not imploded yet even though we have no namespaces. The
> reasoning is simple, Pharo does not need namespaces because its not a
> programming language. Namespaces primary role is not organization so much as
> prevention of name clashes , this is not a problem for Pharo since it does
> not allow name clashes in the first place.

Name clashes can still happen between different external libraries.
Effectively we have a poor-mans namespaces with prefixes.  But its
harder to port libraries from other Smalltalks that support
namespaces, limiting our ecosystem.  Not necessarily the main driver,
but worthy of consideration.  Squeak has recently done some namespace
stuff so will be interesting to see their experience.

cheers -ben


> Thats is happening in the
> enviroment and not language level, if you want to organise your classes you
> use packages . Packages also are not part of the language and are also
> implemented on enviroment level, though one could argue that language is
> also part of the enviroment.
>
> So yes it feelt strange even for not having namespace coming from python but
> after coding in pharo for over a year its clear to me that pharo does not
> need it and would probably benefit by more sophisticated and specific
> implementation when it comes to organisations. But generally speaking we
> already have plenty of tools that help you locate classes and methods with
> ease, so that is not much of a problem.
>
> Pharo enviroment is far from simple, quite the contrary Smalltalk
> implementations were always far more complex than you average language like
> C++, the big diffirence is that the enviroment is constructed in such way to
> help you deal with complexity. Where modern languages ephasize simplicity
> pharo and smalltalk in general invest on better dealing with complexity ,
> hence why Smalltalk has been very popular in specific very complex fields
> like Banking Sector, Shipping etc. C++ is no where as suitable for complex
> applications , its popularity merely stems from the fact that is OS language
> with immediate access to OS libraries and massive support.
>
> On Wed, Jan 13, 2016 at 7:30 PM David Allouche <[hidden email]> wrote:
>>
>> Thank you everyone for the kind responses. I will answer some of the
>> questions and suggestions here.
>>
>> To get faster to the intellectual stimulation, pick a task / project and
>> start asking questions. And have fun :).
>>
>>
>> That is good advice, but right now I think I will just explore the system,
>> review changes, and wait for the tasks to find me. There are already more
>> things I want to do than I will probably every be able to accomplish :-)
>>
>> I think when people referring to Smalltalk refer to Smalltalk as the
>> language or OOP itself, but thats only the tip of the iceberg, Pharo tries
>> to stay true to vision of smalltalk creating the virtual enviroment where
>> the user can easily create his or her own tools or modifying the existing
>> ones, something that I feel no other language out there can emulate because
>> they follow a non monolithic approach where there is a deep dichotomy
>> between language, libraries and the environment itself. You could say that
>> Smalltalk is the anti-Unix architecture , a great example of monolithic
>> design that works great in practice yet its easy to modify and extend.
>>
>>
>> The  fact Smalltalk the language cannot be taken in isolation from
>> Smalltalk the environment became clear rather early on: reading the UPBE and
>> other materials shows that the language itself does almost nothing: it
>> cannot even define classes or packages. It is all part of the environment.
>>
>> I have seen someone in another thread expressing the desire for
>> namespaces. As a newcomer, I also feel that is something important and
>> missing. But since one of the goals of Pharo is to produce an environment
>> that can be understood by a single person, the lack of namespace might
>> actually be a feature. Namespace are essential for languages like C++,
>> designed for large projects, produced by large teams, where nobody
>> understands the whole system. They embody an industrial approach to
>> programming. In contrast, I have the impression that Smalltalk emphasises
>> regularity to minimise system size, rather than modularity to manage system
>> size, and that it embodies a craftsmanship approach.
>>
>> Since I am just old enough to remember a time where computer systems could
>> be understood by a single person, I find it an attractive idea to try and
>> produce a modern system with that property.
>>
>> I can't remember who famous said something like "The only languages
>> worth learning are the ones that changes the way you think about
>> programming..."  and I found that with Smalltalk & Pharo.
>>
>>
>> I am familiar with that idea too. And most good languages provide that.
>>
>>  One day I will have learn some language from the ML family. I choose
>> Smalltalk because it clearly had such a strong influence on the thinking of
>> people who have used it, I thought I could learn
>>
>> A good way to get your hands dirty is to review fixes submitted by
>> others...
>> https://pharo.fogbugz.com/default.asp?pgx=LF&ixFilter=45
>> There are never enough hands there :)  (my own action here fluctuates
>> from time to time)
>>
>>
>> I will try to spend some time reviewing code. That is a good way to get
>> exposed to things one does not even know they exist.
>>
>> Did you look at Seaside?
>> Since you should be able to read french there is  a nice tutorial:
>> tinyBlog. In two days you can build a small web app
>> with a mongo back end.
>>
>>
>> I have no looked at Seaside yet, I have not even read the corresponding
>> chapter in UPBE. But I certainly will, eventually. The web is an essential
>> part of society today.
>>
>> Where are you located ?
>>
>>
>> Paris, France.
>>
>> It did occur to me that the Pharo community does have a unusually large
>> fraction of french people. But that is not a factor for me.
>>
>> Thanks again for all the kind words. I am sure this journey is going to be
>> a lot of fun. :-)
>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

David Allouche
In reply to this post by David Allouche
>> I can't remember who famous said something like "The only languages
>> worth learning are the ones that changes the way you think about
>> programming..."  and I found that with Smalltalk & Pharo.

Oh, I just found it.

Epigram 19 by Alan J. Perlis.

http://pu.inf.uni-tuebingen.de/users/klaeren/epigrams.html


Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

Ben Coman
On Thu, Jan 14, 2016 at 9:05 PM, David Allouche <[hidden email]> wrote:

>>> I can't remember who famous said something like "The only languages
>>> worth learning are the ones that changes the way you think about
>>> programming..."  and I found that with Smalltalk & Pharo.
>
> Oh, I just found it.
>
> Epigram 19 by Alan J. Perlis.
>
> http://pu.inf.uni-tuebingen.de/users/klaeren/epigrams.html
>

Thanks. I also like this one...

34. The string is a stark data structure and everywhere it is passed
there is much duplication of process. It is a perfect vehicle for
hiding information.

cheers -ben

Reply | Threaded
Open this post in threaded view
|

Re: I am David Allouche, let me introduce myself.

HilaireFernandes
In reply to this post by David Allouche


Le 13/01/2016 18:29, David Allouche a écrit :
>
> The  fact Smalltalk the language cannot be taken in isolation from
> Smalltalk the environment became clear rather early on: reading the
> UPBE and other materials shows that the language itself does almost
> nothing: it cannot even define classes or packages. It is all part of
> the environment.
>
It is not the case.
For example, to define a new class, the unique way to do this is from
Smalltalk itself, with the message
#subclass:instanceVariableNames:classVariableNames:category: sent to the
parent class.

The GUI, just makes it more transparent, but it is pure Smalltalk code.
Well it can't be different as the GUI is written in Smalltalk :)

Hilaire

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