I am not a professional programmer, nor am I young, nor a graybeard. :)

I found Smalltalk about 1999 in the form of Squeak. My biggest problems have been not in learning Smalltalk. But rather some of the projects I wanted to do needed to interface without outside libraries. Because I always felt more comfortable and productive in Smalltalk than anything else I have ever used. Even when I could not use Squeak/Pharo for whatever I was doing at the moment. I kept returning. And over time my requirements changed and the requirements Squeak/Pharo are able to fulfill keep improving.

I think one thing that we really need to do when talking to people who have tried Smalltalk/Squeak/Pharo and were not able to use it for whatever reason. To periodically keep trying Squeak/Pharo. The magical intersection of experience, knowledge, understanding, project/personal requirements and Squeak/Pharo's abilities might wonderfully meet. Squeak and Pharo are in this for the long game. Keep trying. At some point more and more people will find that where they are in life and where Squeak/Pharo are at that time, things just click.

Cog, Spur, Sista, 64bit plus all of the growing projects and libraries make for an ever increasingly attractive and powerful object environment empowering its users to accomplish great things.

Jimmie Houchin


On 07/23/2015 01:29 PM, Dimitris Chloupis wrote:
for me as a beginner a big turn off was the quality of documentation and my fear that third party libraries will not be that well supported because of the size of the community meaning more bugs less features etc. It was certainly a much bigger struggle learning pharo than learning python.

After 2 years Pharo has gotten much better in both areas.

I can't blame people who try Pharo and are turned off by these things, but I still recommend it for at least giving it a try.

In my case because I have found an easy way to combine python with pharo made it easy to move to pharo. I still love to work with Pharo and its getting better each year because of the passion of people behind this and of course their hard work.

I also like to support a project that follows my taste on how I like to code , even if its not that popular. Actually its easier to feel that you make a difference in a small community.

Something tells me I will be sticking around for a long long time :)

I dont think there is a secret to success or a simple advice.

I once read that "success" is name of the tip of an iceberg called "constant failure". success.jpg



On Thu, Jul 23, 2015 at 8:25 PM stepharo <steph...@free.fr <mailto:steph...@free.fr>> wrote:

    Hi esteban

    we need to be much much better one talking to external libraries.
    Our esteban is working on it.

    Stef

    Le 23/7/15 18:52, Esteban A. Maringolo a écrit :
    Peter,
    At your joung age you might have very good reasons to have chosen
    Pharo over anything else as I did a lot of years ago. I
    discovered Smaltalk by chance when I was 21 years old and already
    had my years developing with Perl and was starting to learn Java.
    Fortunately I started making a living out of it since I was 22
    until today.

    But if you want to make the community bigger you have to look
    into why people don't chose it, otherwise we'll be "preaching to
    the choir" as we many times are.

    These days FP is on the bull trend, having been there way before
    than Smalltalk (Lisp, Haskell, etc. and their reincarnations
    Clojure, Scala...). What makes them popular most of the times is
    not the techology per se, but who uses it.

    Regards!


    Esteban A. Maringolo

    2015-07-23 13:06 GMT-03:00 Peter Uhnák <i.uh...@gmail.com
    <mailto:i.uh...@gmail.com>>:



        On Thu, Jul 23, 2015 at 4:51 PM, Esteban A. Maringolo
        <emaring...@gmail.com <mailto:emaring...@gmail.com>> wrote:

            When I talk to "new programmers" (20-25 years old),
            almost all of them don't get attracted by it.
            Why? I couldn't tell. Mainly because they can't use the
            few tools/patterns they already learnt how to, barely, use.


        As someone who (still) falls into this range I see several
        (unrelated) reasons why they might not like it.

        For me personally I encountered Pharo in University in
        "Conceptual modeling" class, where it was introduced pretty
        much as "Oh, by the way, here is this completely new
        environment that you've never seen nor worked with that we
        will use, but we will not tell you much about it"... so my
        first experience was quite awful. I mean... I couldn't even
        write the code in my favorite text editor and I had to use
        this weird browser where system code and my own code were
        mangled up. Image crashing meant I lost my work. Now I know I
        can just replay changes but I didn't know it back then (the
        focus of the class was modeling, not Pharo). Bugs (this was
        Pharo 2 (and 3 beta)) were commonplace and since I had no
        experience I couldn't tell whether it was my fault or the
        system's fault... it was overall very unpleasant.
        I later (after the course) basically foced myself to look at
        Pharo again because I didn't understand why would people
        bother to use it... so clearly there must have been some
        value I've missed. And I don't regret that decision a bit,
        but I had to go look for it. So statistically speaking from
        the year I did the class only two or three students (to my
        knowledge) kept their interest out of 119 (so 2-3% maybe).
        Other years were no different.
        Next year there will be a dedicated class for Pharo so I'm
        curious if this will change somehow.

        But there may be other reasons why students may not like
        it... (looking again from my experience)
        From university experience perspective, the previous year
        (for us, and from what I talked with people it's not that
        different also for other universities) was a heavy massage in
        C and C++ where we were implementing very basic concepts
        (hashtables, and other data structures). A year where your
        main concern was to pass a automated checking system... so
        mostly memory management and creating write-only code. Plus
        warped concepts of OOP (so to use actual student quotes: "C++
        is great for explaining OOP", "You can do OOP in pure C", or
        "OOP is useless, long confusing code, full of getters and
        setters, .. and slow. Inline assembler is much faster"). So
        with such concepts it's hard to give them OOP language,
        because they already made up their mind.

        Yet another reason I can see might be that when you are young
        you are more inclined to follow what's cool and modern and
        popular and shit (or has the word "game" in its name).
        So if today's world revolves around connectivity, internet,
        JavaScript and whatnot, then giving them a isolated
        environment with non-mainstream technology and a dead
        language they've never heard of (I thought that Smalltalk was
        an obscure language that died in '80s, before I found that
        actually it's alive and doing quite well) will not be met
        well with appreciation.

        But no reason to stop there... there market for Smalltalk is
        arguably small, so people will prefer language that is in
        demand by the market (after all, I pay my bills with
        JavaScript/PHP/webstuff, and not Pharo; because it's much
        easier to find a job; with Pharo I would have to basically
        start my own business to be profitable and then I would be
        doing business and not programming).

        And last (but not least), finding support for it is much
        harder, since the community is smaller. So it's almost all or
        nothing scenario.

        Also some of the arguments here can be applied also for
        functional programming (which I haven't (shame on me) even
        engaged with, besides messing with Haskell in XMonad (and
        multi-paradigm languages that have some functional concepts).

        Finally I don't think that you should expect the same
        behavior from young people (<26) as from adults. They will
        have different values, views, and whatnot... I mean that's
        the point of growing up and acquiring experience. All you can
        do is offer this alternative option and provide support.
        Being mainstream or non-mainstream is akin to self-fulfilling
        prophecy. (Of course exceptions happen, JavaScript was raised
        to glory because the language happen to be in the right place
        (browser) at the right time (boom of modern web)).

        Hmm... and this post ended up being much chaotic and longer
        than I intended to... but whatever.

        Peter

        p.s.: I like the music analogy since I was listening to k-pop
        while working (webtech), and now I am listening to ambient
        music when writing about Pharo :p




Reply via email to