Survey: what do you do with Squeak, what do you *want* to do?

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

Re: Survey: what do you do with Squeak, what do you *want* to do?

Edwin Ancaer
Ben,

Thanks for pointing me to that tutorial. I just finished the first section, and I skimmed over the complete document. It seems to give a good impression on how development with Squeak can be done.

In the coming days, I will certainly be doing the other sections.

There is some hope left for me after all...👍

Op 26 feb. 2018 22:11 schreef "Ben Coman" <[hidden email]>:


On 23 February 2018 at 13:16, Edwin Ancaer <[hidden email]> wrote:


What do you use Squeak for?

Unfortunately, I mostly just follow the list.  My experience is limited to elementary experiments: just defining some classes, and using them in a workspace, using the transcript to inspect the results. 

If you don't use Squeak, why not?

I just don't seem to get it. I think I master the building blocks, I get what is in the SBE book, but somehow, I don't see how to tie the pieces together into something that looks like a regular application. 

Hi Edwin,

You might like Stephan Wessels "LaserGame" tutorial.  Its is a great end-to-end tutorial for developing a regular application.

I'd suggest you do it in Squeak 3.9 to closely match the version the tutorial was done in...

cheers -ben

 

If you used Squeak in the past and don't now, what pulled you away?

To be honest, it's more a mystery what keeps pulling me towards Squeak, given my poor results until now.

What does Squeak lack that you think might make you use it for 'regular' development?

I am not in a position to answer this question.

What things are too hard or annoying to do?

Everything is hard, but not annoying. I probably need to get more general knowledge of the 'Object Oriented' paradigm, and some UI design skills. A 30+ year career in mainframe development left me a very procedural guy, and a UI for me has 30 lines with 132 colums each.

What would you like to be able to use Squeak for?

What got me interested was reading about Squeaknos, turtles all the way down, at one of those moments I was struggling once more with a linux upgrade that destroyed the GNUstep installation I had managed to install.
Now I see this is miles beyond my reach, but that was the spark.

Currently, I'm trying to build an intelligent doorbell, with Squeak and a Raspberry Pi that was laying around here. Now if only it would just ring outside the simulation.
Did I mention my knowledge of electronics is far below average.....



I don't know if this is of much use to you, but since you asked....

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
C for sinking, java for drinking, Smalltalk for thinking













Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Stéphane Rollandin
In reply to this post by Phil B
>
>     What would you like to be able to use Squeak for?
>
>
> Everything I'm using Cuis for.
>

Would you tell us what you are using Cuis for?

Stef

Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Edgar De Cleene
In reply to this post by timrowledge
On 21/02/2018, 22:36, "tim Rowledge" <[hidden email]> wrote:

> At the latest board meeting we got to discussing the relative quietness of the
> squeak list(s) recently. We were wondering what you folks out there are doing
> with Squeak, what you'd like to be able to use it for, the things that you
> think would be important to improve it for wider use and so on.

Please,
> whether you're a frequent user or an occasional look-at-the-list type, take a
> moment to let us know your opinions.



Glad to see Board throw this


>What do you use Squeak for?


I use Squeak and Cuis derived .image for learning .

Right now I have a Kom + HV + lots of external HTML5 + CSS + JavaScript
Divagaciones.29.image at www.squeakros.org

Log with user 'visita' and without pass

Inside is a experimental thing combining wiki + blog and many Web 2.0 more.

Synch with official wiki daily and in Spanish what I put there.

Powered by Ubuntu Mate and Debian Ian Stack VM running in this
http://190.193.176.228:9090/renderMe:SRS026%20Endeavour
Click on first pict and you could see how you could have your cheap own
cloud with old hardware

Also investigating WebAssembly and cooking a WasmLivingBook.image
Any wishing know more send mail and I send link to our "BarSqueakRos" ,
currently on Discord


>What does Squeak lack

From Andreas Raab lost , we miss a unquestionable leader as Pharo have and
off course Cuis.
Now we have a Board with veterans and young's, so still I have hope.
Hope releases have a plan.
How we know 6.0 is finished if we don't know the road map ?
Quality control, please.
Test is not enough, .image needs first hand use


Edgar
@morplenauta




>
tim
--
tim Rowledge; [hidden email];
> http://www.rowledge.org/tim
C for sinking, java for drinking, Smalltalk for
> thinking




Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

kaveman
In reply to this post by timrowledge
CONTENTS DELETED
The author has deleted this message.
Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

henry
In reply to this post by timrowledge
Super happy to see the new board take the initiative, with this Survey. I’ll try to add my answers thoughtfully.

What do you use Squeak for?

- Cryptography-ASN.1, Green
- eLinda, Yellow
- forward error correction, incomplete Green
- ParrotTalk- encrypted ASN.1 specified comms between Squeak/Pharo/Java -, RELEASED GREEN
- and Raven which is distributed objects with a PromiseFuture interface which is eventually sending async, promise returns, messages between objects. From http://erights.org, supports sending messages to futures of promise returns for send-chaining that is forwarded to the send Continuation, evaluated in a single-threaded event-loop. Raven passes all tests in Squeak/Pharo. Green.
- STON for Java is not squeak code, it is Java code, to bring STON encoding so Raven can operate in Java, for distributed capabilities, cross-language promise system. C#, Swift, C support pending...

If you don't use Squeak, why not? I do use all the time, I love what everyone built over the decades. I am appreciating you.

If you used Squeak in the past and don't now, what pulled you away?
I get pulled into Pharo and Java, but Squeak is my home environment.

What does Squeak lack that you think might make you use it for 'regular' development?

Spec back-ported from Pharo to Squeak and then Native windows support, each Morphic frame is an OS window. Spec-driven even better.


What things are too hard or annoying to do?

The seeming confusion, on my part in the least, all the different source control efforts. I like my Monticello. It seems there are too many needed steps to have package source control and package dependency control, then initialize and/or startUp:. Metacello, Installer, Gofer, Tonal, Iceberg.  I don’t like having a ConfigurationOfXXXXXX, that makes two-level commit required. I think there is a way to add required or dependent packages, in Monticello but I have never used. Dependencies is hard, building trees from graphs. I wish Monticello packages incorporated all the dependency management learned in these other attempts such that the Monticello Browser is still the right point of entry and, for lack of a better term, application aware: MonticelloApplication.

What would you like to be able to use Squeak for?


I wish Raven to become the reference implementation for distributed capabilities Actor system, with eventual promise execution environment. With both a distributed naming service and job manager and application publishing, form the basis of Neal Stephenson’s Metaverse, with interconnected Houses 🏡 of presence in social activity.

I also wish to see lots of inter connectivity to RDB, NoSQL, BigData, and Cloud managers so Squeak/Pharo can be always-on servers. I believe the answer is data connection, naming and management, to form a MetaManager.

Thank you for the opportunity to share.

On Wed, Feb 21, 2018 at 20:36, tim Rowledge <[hidden email]> wrote:
At the latest board meeting we got to discussing the relative quietness of the squeak list(s) recently. We were wondering what you folks out there are doing with Squeak, what you'd like to be able to use it for, the things that you think would be important to improve it for wider use and so on. Please, whether you're a frequent user or an occasional look-at-the-list type, take a moment to let us know your opinions. What do you use Squeak for? If you don't use Squeak, why not? If you used Squeak in the past and don't now, what pulled you away? What does Squeak lack that you think might make you use it for 'regular' development? What things are too hard or annoying to do? What would you like to be able to use Squeak for? tim -- tim Rowledge; [hidden email]; http://www.rowledge.org/tim C for sinking, java for drinking, Smalltalk for thinking


Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Beckmann, Tom

Hello everyone,

I'm writing for a couple people at once, namely some students at Hasso-Plattner-Institut in Potsdam, so I hope you won’t mind the length of what follows.

> What do you use Squeak for?

Last year, during our Bachelor's project, we worked with Lasse Fister [1] to create a font review tool, GlyphHub [2].
We have a video of an early prototype for kerning adjustments of a UFO font file[3] and a couple images of the result can be found on our website draft [2].

Before that, we created games as part of a lecture. The two games created by the groups involved in our Bachelor's project can be seen here:
- "CookieQuest", written entirely in Morphic https://www.youtube.com/watch?v=J0dIqptelvk 
- "Totally Obsolete Mission", written using a fullscreen CroquetGL overlay and FMOD or OpenAL via FFI for sound and a port of SDL's controller interface for two stick movement and local multiplayer https://www.youtube.com/watch?v=OwzycVgFa_g 

Other than that, we have some small side projects that involve Squeak:
- creating a visualization for Pascal's Triangle that will be used in a science museum in Frankfurt
- investigating how/if the UI toolkit we created on top of Morphic for GlyphHub can be re-used
- small prototypes for aspects of games
- small additions to EPIC as part of a lecture (https://github.com/hpi-swa-teaching/EPIC-Digitalsimulator/releases)

> What things are too hard or annoying to do?
- The quality of font rendering, in particular on HiDPI screens lacks in comparison to the native rendering, which I would love to see improved (and have myself started investigating at some point).
- While working on the UI widgets framework for GlyphHub we ran into a couple of issues with rendering and layouting. Balloon had some small issues (but annoying ones, for us “visual perfectionists”) and the lack of height-for-width layouting made fluid text layouts a pain. For the latter, we ended up writing a new layoutpolicy that we hope to share soon with the rest of the toolkit (can already be inspected in our repo, minus some refactors [4]). The rendering we ended up “fixing” by using a pango backend instead of Balloon, which in turn gave us a huge headache while making things portable again.
- The fact that the version control situation seems still undecided has been source for some confusion in the past, with e.g. Metacello not being included by default. Working in a team with Metacello and git, like we did for an extended period of time, only worked out because we were always in the same room and could hand around sheets with required fixes after oddities that happened during the last merge and hand-merge our own changes on every other people’s workstations in the worst case.
- I felt very uncertain whenever looking out for third-party code, concerning its maintenance and compatibility status. I believe having a well-defined stability status on every project, including links to a bug tracker and easy ways to propose fixes (akin to merge requests) for those projects that are deemed important building blocks would be very beneficial for my confidence in picking dependencies.
- The landscape of FFI options left me very confused and even after lengthy searches through various Squeak repositories, I did not find good examples for either option, except those built into Pharo. I got the impression that Alien was deprecated, however in the other package that was just called FFI I believe, I did not find a way to define callbacks and the pragma annotation appeared to be generally more limited compared to Alien.
These last two points might boil down to lack of documentation for everything that is not code, or code external to the beautiful alt+n/m world of my image.

> What would you like to be able to use Squeak for?
I personally am very curious how Squeak can stack up for Game Development. This could either be fully within Squeak (likely involving a Morphic that would have somehow have to be refitted on top of OpenGL for performance) or as just a language backend for an existing engine, such as Godot [5].
Using it as a node.js replacement would also be a dream for me, which might even be possible, I did not have the time yet to investigate the state of database adapters and CPU consumption under load.

In any case, working with and exploring Squeak was a blast for me, and I hope to continue doing so in the future!

Thanks to everyone for building this great platform,
Justus, Alex, Corinna, Eva, Tom

[1]: http://graphicore.de/en
[2]: http://glyphhub.org/
[3]: https://www.youtube.com/watch?v=o0J9YXD1qPo
[4]: https://github.com/hpi-swa-lab/GlyphHub/tree/master/packages/Bootstrap.package/BTBoxLayout.class
[5]: https://godotengine.org


From: Squeak-dev <[hidden email]> on behalf of henry <[hidden email]>
Sent: Thursday, March 1, 2018 5:13 PM
To: The general-purpose Squeak developers list
Subject: Re: [squeak-dev] Survey: what do you do with Squeak, what do you *want* to do?
 
Super happy to see the new board take the initiative, with this Survey. I’ll try to add my answers thoughtfully.

What do you use Squeak for?

- Cryptography-ASN.1, Green
- eLinda, Yellow
- forward error correction, incomplete Green
- ParrotTalk- encrypted ASN.1 specified comms between Squeak/Pharo/Java -, RELEASED GREEN
- and Raven which is distributed objects with a PromiseFuture interface which is eventually sending async, promise returns, messages between objects. From http://erights.org, supports sending messages to futures of promise returns for send-chaining that is forwarded to the send Continuation, evaluated in a single-threaded event-loop. Raven passes all tests in Squeak/Pharo. Green.
- STON for Java is not squeak code, it is Java code, to bring STON encoding so Raven can operate in Java, for distributed capabilities, cross-language promise system. C#, Swift, C support pending...

If you don't use Squeak, why not? I do use all the time, I love what everyone built over the decades. I am appreciating you.

If you used Squeak in the past and don't now, what pulled you away?
I get pulled into Pharo and Java, but Squeak is my home environment.

What does Squeak lack that you think might make you use it for 'regular' development?

Spec back-ported from Pharo to Squeak and then Native windows support, each Morphic frame is an OS window. Spec-driven even better.


What things are too hard or annoying to do?

The seeming confusion, on my part in the least, all the different source control efforts. I like my Monticello. It seems there are too many needed steps to have package source control and package dependency control, then initialize and/or startUp:. Metacello, Installer, Gofer, Tonal, Iceberg.  I don’t like having a ConfigurationOfXXXXXX, that makes two-level commit required. I think there is a way to add required or dependent packages, in Monticello but I have never used. Dependencies is hard, building trees from graphs. I wish Monticello packages incorporated all the dependency management learned in these other attempts such that the Monticello Browser is still the right point of entry and, for lack of a better term, application aware: MonticelloApplication.

What would you like to be able to use Squeak for?


I wish Raven to become the reference implementation for distributed capabilities Actor system, with eventual promise execution environment. With both a distributed naming service and job manager and application publishing, form the basis of Neal Stephenson’s Metaverse, with interconnected Houses 🏡 of presence in social activity.

I also wish to see lots of inter connectivity to RDB, NoSQL, BigData, and Cloud managers so Squeak/Pharo can be always-on servers. I believe the answer is data connection, naming and management, to form a MetaManager.

Thank you for the opportunity to share.

On Wed, Feb 21, 2018 at 20:36, tim Rowledge <[hidden email]> wrote:
At the latest board meeting we got to discussing the relative quietness of the squeak list(s) recently. We were wondering what you folks out there are doing with Squeak, what you'd like to be able to use it for, the things that you think would be important to improve it for wider use and so on. Please, whether you're a frequent user or an occasional look-at-the-list type, take a moment to let us know your opinions. What do you use Squeak for? If you don't use Squeak, why not? If you used Squeak in the past and don't now, what pulled you away? What does Squeak lack that you think might make you use it for 'regular' development? What things are too hard or annoying to do? What would you like to be able to use Squeak for? tim -- tim Rowledge; [hidden email]; http://www.rowledge.org/tim C for sinking, java for drinking, Smalltalk for thinking


Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

garduino
In reply to this post by timrowledge
Sorry being late here, but my answers, trying to add my 2 cents.

> What do you use Squeak for?

Not using it currently, but I've several legacy projects, that got outdated
unfortunately.

> If you don't use Squeak, why not?
> If you used Squeak in the past and don't now, what pulled you away?
> What does Squeak lack that you think might make you use it for 'regular'
> development?

I abandoned it to develop professional desktop applications, for a lot of
reasons:

1. Not a decent UI that the regular common users can feel as in home.
2. The damn single window metaphor.
3. The lack of good integration with the operating systems.
4. Tha lack of good/easy integration with libraries in other languages.
5. Tha lack of must-be native code in areas as cryptography for example.
6. I never understood why excellent pieces of code (as Morphic UI Builder
for example) never has been included in the base image (I wrote about this
in this same list).
7. The always present inestability between releases, being very hard to move
your project to a new image version.
8. The lack of ways to generate native executables versions of my
applications to different operating systems.

to mention the most significative reasons that comes to my mind right now.
May be some of my points have changed with the time, I'm not using Squeak
from some years.

> What things are too hard or annoying to do?

Try to compete (I mean sell your app against the competence written in any
common language that have a normal UI and integration with the operating
system) with Squeak and you will undestand that is an impossible.


I had to develop my password manager in Dolphin, because I wouldn't have
sold a single licenses if I were attempted with Squeak.


> What would you like to be able to use Squeak for?


I always dream with a Smalltalk environment that permit me work
professionally in any operating system (includind mobile) but also I
understand that this is an open source project with no funds and is not easy
to make great things with no money involved.

Please, do not take my words as a criticism, but you asked and I answer with
honestity.



--
Sent from: http://forum.world.st/Squeak-Dev-f45488.html

Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

garduino
garduino wrote

> Sorry being late here, but my answers, trying to add my 2 cents.
>
>> What do you use Squeak for?
>
> Not using it currently, but I've several legacy projects, that got
> outdated
> unfortunately.
>
>> If you don't use Squeak, why not?
>> If you used Squeak in the past and don't now, what pulled you away?
>> What does Squeak lack that you think might make you use it for 'regular'
>> development?
>
> I abandoned it to develop professional desktop applications, for a lot of
> reasons:
>
> 1. Not a decent UI that the regular common users can feel as in home.
> 2. The damn single window metaphor.
> 3. The lack of good integration with the operating systems.
> 4. Tha lack of good/easy integration with libraries in other languages.
> 5. Tha lack of must-be native code in areas as cryptography for example.
> 6. I never understood why excellent pieces of code (as Morphic UI Builder
> for example) never has been included in the base image (I wrote about this
> in this same list).
> 7. The always present inestability between releases, being very hard to
> move
> your project to a new image version.
> 8. The lack of ways to generate native executables versions of my
> applications to different operating systems.
>
> to mention the most significative reasons that comes to my mind right now.
> May be some of my points have changed with the time, I'm not using Squeak
> from some years.
>
>> What things are too hard or annoying to do?
>
> Try to compete (I mean sell your app against the competence written in any
> common language that have a normal UI and integration with the operating
> system) with Squeak and you will undestand that is an impossible.
>
>
> I had to develop my password manager in Dolphin, because I wouldn't have
> sold a single licenses if I were attempted with Squeak.
>
>
>> What would you like to be able to use Squeak for?
>
>
> I always dream with a Smalltalk environment that permit me work
> professionally in any operating system (includind mobile) but also I
> understand that this is an open source project with no funds and is not
> easy
> to make great things with no money involved.
>
> Please, do not take my words as a criticism, but you asked and I answer
> with
> honestity.
>
>
>
> --
> Sent from: http://forum.world.st/Squeak-Dev-f45488.html

Sorry for the several typos, writing with few ligth and my tired eyes made
the conjunction :)



--
Sent from: http://forum.world.st/Squeak-Dev-f45488.html

Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Phil B
In reply to this post by Stéphane Rollandin
The short answer is just about everything.  I'm primarily working on web applications these days but also do some 'native' Smalltalk apps (I.e. Morphic and OpenGL-based) as well as hybrid stuff. Most of what I'm doing would best be described as data processing/text processing/NLP (the most interesting use a variety of OMeta-based data parsers and DSLs) with rich front-ends as well as more mundane business database apps.  And when I can't take the work stuff anymore, I have a couple of games I work on for fun (and who knows, maybe someday for profit.)

One example: recently I was working on an OpenGL-based visualization (in Cuis) which gets it's data via a database-backed web service (also in Cuis) and needed to fine-tune some shaders.  Being the lazy sort that I am, I slapped together a quick web app (yet again in Cuis) that allowed me to interactively modify the shaders (without needing to restart the visualization, which was a nice bonus) and it all worked out quite well.  I liked the ease of it so much that I generalized the web app a bit and now use it as my front line of OpenGL monitoring and tweaking which is a lot faster than I could spit out even a simple 2D Morphic tool.

Smalltalk as a foundation and lever makes that rapid development and blurring/erasing of distinctions (client/server,  thick/thin client) possible, but Cuis makes it practical by allowing me to trivially navigate from the highest level of abstraction in the image to the lowest and laterally from one set of tools to another since I can keep a mental model of large chunks of the system, and the entirety of the parts I am working on, in my head and alter fundamental system behavior as needed while not spending a lot of time and energy to keep it running as new images are released.  Theoretically all this is doable in Squeak, but in practice I didn't find it feasible.

On Feb 28, 2018 7:53 AM, "Stéphane Rollandin" <[hidden email]> wrote:

    What would you like to be able to use Squeak for?


Everything I'm using Cuis for.

Would you tell us what you are using Cuis for?

Stef



Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

garduino

2018-03-05 20:20 GMT-03:00 Phil B <[hidden email]>:

One example: recently I was working on an OpenGL-based visualization (in Cuis) which gets it's data via a database-backed web service (also in Cuis) and needed to fine-tune some shaders.  Being the lazy sort that I am, I slapped together a quick web app (yet again in Cuis) that allowed me to interactively modify the shaders (without needing to restart the visualization, which was a nice bonus) and it all worked out quite well.  I liked the ease of it so much that I generalized the web app a bit and now use it as my front line of OpenGL monitoring and tweaking which is a lot faster than I could spit out even a simple 2D Morphic tool.

Smalltalk as a foundation and lever makes that rapid development and blurring/erasing of distinctions (client/server,  thick/thin client) possible, but Cuis makes it practical by allowing me to trivially navigate from the highest level of abstraction in the image to the lowest and laterally from one set of tools to another since I can keep a mental model of large chunks of the system, and the entirety of the parts I am working on, in my head and alter fundamental system behavior as needed while not spending a lot of time and energy to keep it running as new images are released.  Theoretically all this is doable in Squeak, but in practice I didn't find it feasible.


Interesting comments!

How are you doing web stuff in Cuis, using Webclient port? Or another approach?

Thanks.


Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Jecel Assumpcao Jr
In reply to this post by timrowledge
Tim Rowledge wrote on Wed, 21 Feb 2018 17:36:01 -0800
> What do you use Squeak for?

I am using Celeste in Squeak to reply to this email.

Many of my presentations have used Squeak.

Squeak is a key technology in my projects (the SiliconSqueak processor)
including for most of my simulations

Since I always have a window open with Squeak for email, I often use it
as a calculator for more complicated things (I use an actual calculator
for simple things and LibreOffice spreadsheets for really complicated
things).

> If you don't use Squeak, why not?
> If you used Squeak in the past and don't now, what pulled you away?

I like many languages including other Smalltalks. Though I am very
interested in Cuis I never used it because some of the things that were
ripped out were stuff I used in my presentations. Once I had a short
deadline for a presentation and downloaded the latest Squeak on a new
laptop but found that thumbnails had been broken. The fix was trivial,
but I ended up doing the presentation in Prezi since I couldn't risk
running into more problems. More recently stupid OS security
restrictions in running Squeak off a USB pen drive have made me do
presentations in PDF instead.

But the truth is that Self is my favorite Smalltalk for technical
reasons and the Squeak community is the reason for me using that. And
one aspect of that community for a long time was the leadership of the
PARC people - very much like a reunion of the favorite band from your
childhood. That put Squeak along with VisualWorks in a special place
among all Smalltalks and we lost a bit of that after Squeak 3.2. The
split with Pharo and Cuis certainly changed the community somewhat, but
I think this was a good opportunity for Squeak to be more strongly
commited to Etoys, which took a long while but eventually has mostly
happened.

> What does Squeak lack that you think might make you use it for 'regular' development?

Modularity needs to be improved. It should be possible to start really
small and as transparently as possible use anything out there. Right now
we start big and have too much trouble loading extra stuff. And given
that we don't have computers with just a few MB of RAM anymore it is
silly to have to manage separate .source and .changes files. I think
these two issues are related.

> What things are too hard or annoying to do?

Obviously writing class comments?

> What would you like to be able to use Squeak for?

Run stuff like Frank, Croquet and so on all at the same time instead of
as separate images.

-- Jecel

Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Phil B
In reply to this post by garduino
Germán,

For client-side, a fairly heavily modified version of WebClient.

For server-side, I actually started with your port of Aida which I updated (https://github.com/pbella/Cuis-Smalltalk-Aida) and went from there.  Before that I was using Seaside on Pharo but didn't want to deal with getting Unicode support (among other things) into Cuis at the time, which would have been needed for Seaside.  We talked about it on the Cuis list but it sounded like I was pretty much the only one doing web apps at the time and the path of least resistance seemed to be Aida.  Glad I ended up going that route as there are things that I definitely liked better about the Aida approach vs Seaside. (Though both frameworks are good starting points)

Thanks,
Phil

On Mar 6, 2018 6:17 AM, "Germán Arduino" <[hidden email]> wrote:

2018-03-05 20:20 GMT-03:00 Phil B <[hidden email]>:

One example: recently I was working on an OpenGL-based visualization (in Cuis) which gets it's data via a database-backed web service (also in Cuis) and needed to fine-tune some shaders.  Being the lazy sort that I am, I slapped together a quick web app (yet again in Cuis) that allowed me to interactively modify the shaders (without needing to restart the visualization, which was a nice bonus) and it all worked out quite well.  I liked the ease of it so much that I generalized the web app a bit and now use it as my front line of OpenGL monitoring and tweaking which is a lot faster than I could spit out even a simple 2D Morphic tool.

Smalltalk as a foundation and lever makes that rapid development and blurring/erasing of distinctions (client/server,  thick/thin client) possible, but Cuis makes it practical by allowing me to trivially navigate from the highest level of abstraction in the image to the lowest and laterally from one set of tools to another since I can keep a mental model of large chunks of the system, and the entirety of the parts I am working on, in my head and alter fundamental system behavior as needed while not spending a lot of time and energy to keep it running as new images are released.  Theoretically all this is doable in Squeak, but in practice I didn't find it feasible.


Interesting comments!

How are you doing web stuff in Cuis, using Webclient port? Or another approach?

Thanks.






Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

garduino
Hi Phil:

2018-03-09 19:12 GMT-03:00 Phil B <[hidden email]>:
Germán,

For client-side, a fairly heavily modified version of WebClient.


This version is published somewhere?
 
For server-side, I actually started with your port of Aida which I updated (https://github.com/pbella/Cuis-Smalltalk-Aida) and went from there.  Before that I was using Seaside on Pharo but didn't want to deal with getting Unicode support (among other things) into Cuis at the time, which would have been needed for Seaside.  We talked about it on the Cuis list but it sounded like I was pretty much the only one doing web apps at the time and the path of least resistance seemed to be Aida.  Glad I ended up going that route as there are things that I definitely liked better about the Aida approach vs Seaside. (Though both frameworks are good starting points)


ahh, interesting I'm seeing several repos with names that I know :) but if yours are more updated I should use these instead of mines (A long time without touching these stuff from my part).

 
Thanks,
Phil

Thanks you very much!
Germán.



Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Phil B
Germán,

On Mar 10, 2018 7:52 AM, "Germán Arduino" <[hidden email]> wrote:
Hi Phil:

2018-03-09 19:12 GMT-03:00 Phil B <[hidden email]>:
Germán,

For client-side, a fairly heavily modified version of WebClient.


This version is published somewhere?

No, just my own private version.  The version in the main Cuis repo (packages dir) is what I'd recommend starting with.

 
For server-side, I actually started with your port of Aida which I updated (https://github.com/pbella/Cuis-Smalltalk-Aida) and went from there.  Before that I was using Seaside on Pharo but didn't want to deal with getting Unicode support (among other things) into Cuis at the time, which would have been needed for Seaside.  We talked about it on the Cuis list but it sounded like I was pretty much the only one doing web apps at the time and the path of least resistance seemed to be Aida.  Glad I ended up going that route as there are things that I definitely liked better about the Aida approach vs Seaside. (Though both frameworks are good starting points)


ahh, interesting I'm seeing several repos with names that I know :) but if yours are more updated I should use these instead of mines (A long time without touching these stuff from my part).

The versions I published were the versions you published updated to the latest updates from Janko at the time so I'd recommend starting with the versions from my repo.


 
Thanks,
Phil

Thanks you very much!
Germán.







Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

garduino
Thanks Phll.

Saludos / Regards,
Germán Arduino
@garduino


2018-03-14 18:32 GMT-03:00 Phil B <[hidden email]>:
Germán,

On Mar 10, 2018 7:52 AM, "Germán Arduino" <[hidden email]> wrote:
Hi Phil:

2018-03-09 19:12 GMT-03:00 Phil B <[hidden email]>:
Germán,

For client-side, a fairly heavily modified version of WebClient.


This version is published somewhere?

No, just my own private version.  The version in the main Cuis repo (packages dir) is what I'd recommend starting with.

 
For server-side, I actually started with your port of Aida which I updated (https://github.com/pbella/Cuis-Smalltalk-Aida) and went from there.  Before that I was using Seaside on Pharo but didn't want to deal with getting Unicode support (among other things) into Cuis at the time, which would have been needed for Seaside.  We talked about it on the Cuis list but it sounded like I was pretty much the only one doing web apps at the time and the path of least resistance seemed to be Aida.  Glad I ended up going that route as there are things that I definitely liked better about the Aida approach vs Seaside. (Though both frameworks are good starting points)


ahh, interesting I'm seeing several repos with names that I know :) but if yours are more updated I should use these instead of mines (A long time without touching these stuff from my part).

The versions I published were the versions you published updated to the latest updates from Janko at the time so I'd recommend starting with the versions from my repo.


 
Thanks,
Phil

Thanks you very much!
Germán.











Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

timrowledge
In reply to this post by garduino
Well, we had about 30 replies on this so far and I'd love to read more. Who else can tell us fun stuff?

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
From C:\*.* to shining C:\*.*



Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Mathieu van Echtelt-3
In reply to this post by timrowledge
Hi all,

First note: My Squeak contribution is very limited (/can be rounded to
zero), so I'm actually not allowed to criticize:)

Q-What do you use Squeak for?

Used it since it became available in 1996. At that time, afaik, it was
the only open source Smalltalk distribution and it was great,
especially while enjoying Smalltalk books as "Inside Smalltalk" and
the "Smalltalk-80 series", Design Patterns (Gamma e.d.) and
Smalltalk's best practice patterns (Kent Beck). Used it professionally
around 1998-2000, when we tried to build & commercialize some
multimedia "sharing/editing" tool for children. Long story short: this
failed. Not because of technical reasons,  we were just young and
naive. Currently, I'm only using it sporadically for small hobby
projects and e.g. to learn from graphics/music/network libraries.

Q-If you don't use Squeak, why not?

Lack of source code management / package configuration mgmt /
modularity / stability / speed (at least that was the state in 2000).

Q-If you used Squeak in the past and don't now, what pulled you away?

Again, lack of source code management / package configuration mgmt /
stability / modularity / speed.

We (ag5.com) are currently working with around 10 developers. Working
with a group of developers wasn't well supported in Squeak. So we
moved to VisualWorks around 2001. At that time we also moved our
company's product focus to corporate planning systems. So Squeak's
multi-media features became less valuable for us. (And eventually, we
also changed our company's name from Cosmocows to AG5).

Q-What does Squeak lack that you think might make you use it for
'regular' development?

Not sure what is the exact current state and how squeak progressed in
the areas I mentioned above. But, over the years, there seem to have
been several interesting initiatives like Newspeak (e.g. modularity
with inner class concept) or related research projects from HPI
Potsdam. But I've no practical experience with these initiatives, only
from reading papers and/or a bit of playing.

Q-What things are too hard or annoying to do?

Again: source code management / package configuration mgmt /
modularity / stability / speed.

Some initiatives in this area seem to have failed, e.g. Squeak had
several Namespace implementation initiatives, none made it into real
production, afaik. Integrating with Source code management systems
like Git, while keeping the power of the Smalltalk image concept,
seems to be hard too.

But others initiatives seem to have success, e.g. the
opensmalltalk-vm. Even a success in 2 ways: the improved collaboration
infrastructure (git/travis) and, of course, the VM performance itself.
In some benchmarks, it should even outperform VW, but VW's virtual
machine performance is, for us, fast enough (/not the performance
bottleneck).
MIT's Scratch has also been a success for Squeak in this area: an
infrastructure where 1000s of children can share their projects; view
& load & try & review projects from some open repository and it all
seems to work. (ps. without that I knew, even my daughter started to
use it during some school event in Berlin this year. And when she came
home, she showed me her work online: a pink horse jumping over hay
bales. Amazing.)
Something like this is not possible for general Smalltalk programmers,
whatever st distribution, and certainly not between the different st
distributions.

Testing framework SUnit is probably the most successful Smalltalk code
in history. (successful in the sense of having succeeders/followers).
Still using it almost daily, and it helps to stabilize and share our
code. (when I want to understand code from others, I often start
reading their test cases).

With Monticello and Metacello I've no real practical experience, no
opinion. Played with it a few years back, but at that time it was
still immature. Nowadays it seems to be used a lot, so probably as
good as VW's store for source code mgmt.

Q-What would you like to be able to use Squeak for?

To develop and run the server part of our web-based "Business"
products. Our 2 products: an online ERP system for Dutch
Fire-departments and a Skills management system for Manufactures, are
continuously developed & integrated & deployed and run by a
multidisciplinary team of developers, designers, operators and
business analysts.

However, I don't see how a switch to Squeak could (financially) pay
off. And maybe even more important, most of my (younger) colleagues
are enthusiastic python/javascript/swift programmers, they are not
hooked on Smalltalk as I do.

====

Not really answering one of the questions above, but some general
thoughts about our tools landscape and if/where Squeak could fit in:

VisualWorks is still more practical for us than Squeak. It offers a
pretty stable & fast core, their 64bit VM is running stable in
production for us for several years now (we host 200+ images), and
their source code management system "Store" is more or less working
for us (we tuned it to our needs). We do not use much of Cincom's
"add-on libraries" e.g. we don't use their ORM/Glorp nor any of their
web server/frameworks nor tools the UI painter. We do not need their
customer support often, but when we need them, they always are very
helpful and able to fix bugs.

Currently, half of our developers are programming in other languages
than Smalltalk, especially for the client-side of our product.
Web-client stuff with Javascript/HTML/CSS, native apps with Java &
Swift. For all kind of system administration automation, we use Python
(including Amazon's AWS scripting).

We also work with freelance interaction & visual designers; they are
familiar with HTML/CSS/Js and it is much more efficient when
developers and designers have some common tooling.

In the past, we used a "Model-Driven Design" (MDD) approach. Which
meant, in Smalltalk, we "described a high-level domain model", and
from this model, all other system parts/layers were automatically
generated (including parts in other programming languages). A few
years back we moved away from this strategy to develop directly in
those other languages, to get higher product quality, especially in
the "User eXperience" part. At the cost of Smalltalk and of
programming productivity.

For me personally, Squeak is "good enough", it's fun and a source of
inspiration. But for a company with several developers working on a
product with "web- and app clients", Squeak needs better source code
management (/git), package configuration mgmt and modularity, so it
can better embed into the multi-language workflow of our team of
developers, designers. But this "management overhead" would probably
make it less attractive for personal hobby use. A dilemma the
community should solve:)

To repeat my first note: My Squeak contribution is very limited (/can
be rounded to zero), so I'm actually not allowed to criticize. Here a
complete overview of my limited contributions:
- Every year I vote in the board elections. That is another thing I
very much like about Squeak: the community is democratic, and the
yearly elected board seems to be a team of smart and friendly people.
- and I like to attend the yearly Squeak e.V. Treffen (/meeting) at
HPI in Potsdam Germany, to give a short presentation of our Smalltalk
usage and especially to see others present their interesting Smalltalk
related (research) projects.
- writing this email.

greetings and keep up the good work!

Mathieu van Echtelt

On Tue, Apr 24, 2018 at 9:11 PM, tim Rowledge <[hidden email]> wrote:
> Well, we had about 30 replies on this so far and I'd love to read more. Who else can tell us fun stuff?
>
> tim
> --
> tim Rowledge; [hidden email]; http://www.rowledge.org/tim
> From C:\*.* to shining C:\*.*
>
>
>



--
AG5
Timorplein 37
1094 CC
Amsterdam

T  020  4630942
F  020  4630946

On Tue, Apr 24, 2018 at 9:11 PM, tim Rowledge <[hidden email]> wrote:
> Well, we had about 30 replies on this so far and I'd love to read more. Who else can tell us fun stuff?
>
> tim
> --
> tim Rowledge; [hidden email]; http://www.rowledge.org/tim
> From C:\*.* to shining C:\*.*
>
>
>



--
AG5 software GmbH
www.ag5.com
tel: 0049 (0)30 81828464
mobile: 0049 (0)178-2016515

----------------------------------------------------------------------------------
This message may contain information that is not intended for you. If
you are not the addressee or if this message was sent to you by
mistake, you are requested to inform the sender and delete the
message. Any unauthorised use or dissemination of this message  in
whole or in part is strictly prohibited.

Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Nicolas Cellier
In reply to this post by timrowledge


2018-02-22 2:36 GMT+01:00 tim Rowledge <[hidden email]>:
At the latest board meeting we got to discussing the relative quietness of the squeak list(s) recently. We were wondering what you folks out there are doing with Squeak, what you'd like to be able to use it for, the things that you think would be important to improve it for wider use and so on.

Please, whether you're a frequent user or an occasional look-at-the-list type, take a moment to let us know your opinions.

There's no reason for board members to not answer

I'm an engineer in Navigation/Guidance/Control, formerly in aerospace domain, and now in naval.
I'm interested in signal processing, sensor data fusion, modelling, prediction and anticipation of disturbances (predictive control) and plenty of other cool things, like augmenting the autonomy of unmaned vehicles.

From 1988 to 2003 I have developped a tool more or less like Matlab, within a micro company (3 to 5 engineers at most).
I should have said more AND less.
More because built around a higher level concept: the model of a system, not just the poor Matlab concept of "oh, cool everything is matrix of complex even a string!" (you know the genericity of assembler what if everything was a blob of bits?)
It was able to manipulate symbolic expressions (ODE, transfer function, etc...) all the way down, unlike an exogen Symbolic Toolbox plugged to nothing.
The first effect of having symbolic expressions was the ability to handle symbols, not just indices in an array (let's not connect output 3 of block 2 with input 4 of block 5, but simply connect the roll angle phi).
It was able to generate code for simulation or for exporting control command algorithm.
Plugging an external user system was much easier and efficient than writing a Simulink sfunction.
User interface was well ahead Matlab: all operations on systems were available from a Simulink like block diagam browser
And our graphics were quite better, more professional layout with nicer PostScript output.
Less than Matlab too, quantity-of-available-Toolbox-wise.

In less than two years, the prototype were in production in several EADS GNC design offices (Aerospatiale company at that time) with about 30 users.
And you know what, all this was written in Smalltalk... (after learning with STV, developped in st80 v2.5 then objectworks/visualworks)
What else could have been as productive at that time?

We then failed to grow, but did we really want to?
We were engineers, and happy to eat our own dog food everyday,
We wrote the tool for us before thinking to others.
 

What do you use Squeak for?
- keeping programming in Smalltalk as a hobby
- learning from participation to an opensource project
- giving back some contribution to what I consider a potentially productive environment (one of the most productive)
 
If you don't use Squeak, why not?
Professionnally: see below
 
If you used Squeak in the past and don't now, what pulled you away?
Not applicable


What does Squeak lack that you think might make you use it for 'regular' development?
First a decent library for developping engineering tools, then acceptation as a standard.

The standards for my domain are things like Matlab/Python/... (numpy, scipy, ...)
We more and more need database connection for storing more and more data.
And good and live plots

If I want to deviate from the standard, I know that I will have to spend tons of energy for convincing.
But if there isn't even a start of decent library, that ain't gonna be easy...
- OK, OK, so you have something better, show me what you can do with Squeak
  Oh you mean that we'll have to rewrite all the available Python tools first, but then will have something better?

Acceptation as a standard comes later, if you start having some materials.
It means that new employees have been exposed to the language/tools before.
And we don't have to teach them from scratch. On the contrary, they can teach us too.

As you might guess, I'm interested in SciSmalltalk (now Polymath), but did not devote enough time to integrate the community.
I'd like to see more good packages from Pharo ported back or even better shared by Squeak, rather than simply switching to Pharo because I'm far more comfortable with Squeak tools (they just work) and community too.


What things are too hard or annoying to do?
Gathering know-how on using advanced features of FFI recently cost me too much
Gathering knowledge about what is up-to-date, what is abandonware, where is the working version...
I'd like a socially successful SqueakMap.
The growing gap with Pharo is not helping and is really annoying me

 
What would you like to be able to use Squeak for?
As I said above: a replacement for those tools used by (too) many engineers: Matlab/Python/...
Maybe musing with web apps, I'm sure it's possible, but it's more a problem of my own ignorance than of Squeak.
Demonstrating that Squeak has a future requires playing well in those ecosystems too


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
C for sinking, java for drinking, Smalltalk for thinking






Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Sean P. DeNigris
Administrator
Nicolas Cellier wrote
> The growing gap with Pharo is not helping and is really annoying me

+1 but what can be done? The divergence is more and more fundamental e.g.
namespaces are only available on Squeak, stateful Traits/real packages
(RPackage) only on Pharo. For a time, I tried to sync all my projects
between the two, but the effort is exponential, and it wasn't even clear if
there would be users…

The only (unrealistic) solution that ever came to my mind would be a
reunification - why (besides politically and due to personalities) do cuis,
pharo, and squeak have to be independent projects? Now that Pharo is
bootstrapped, couldn't the energy of Cuis to have a small, clean system be
poured into that effort? Could Squeak be a layer on top with all the cool
stuff reimplemented. Well, it's a dream, but maybe fragmentation is just the
way of the world/human beings…



-----
Cheers,
Sean
--
Sent from: http://forum.world.st/Squeak-Dev-f45488.html

Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Survey: what do you do with Squeak, what do you *want* to do?

Ben Coman


On 28 April 2018 at 21:49, Sean P. DeNigris <[hidden email]> wrote:
Nicolas Cellier wrote
> The growing gap with Pharo is not helping and is really annoying me

+1 but what can be done? The divergence is more and more fundamental e.g.
namespaces are only available on Squeak, stateful Traits/real packages
(RPackage) only on Pharo. For a time, I tried to sync all my projects
between the two, but the effort is exponential, and it wasn't even clear if
there would be users…

This will only get worse with Pharo moving to Bloc and presumably 
Squeak dependent projects requiring Morphic for a long time.


The only (unrealistic) solution that ever came to my mind would be a
reunification - why (besides politically and due to personalities) do cuis,
pharo, and squeak have to be independent projects?

Personalities and politics (i.e. differing opinions/objectives/goals, not gamesmanship)
are what drive the world.  Open source is about being able to scratch *your* own itch.
So different projects that can have different agendas makes sense rather than 
antagnoise everyone trying to squeeze all those different agendas into one box...

 
Now that Pharo is
bootstrapped, couldn't the energy of Cuis to have a small, clean system be
poured into that effort? Could Squeak be a layer on top with all the cool
stuff reimplemented. Well, it's a dream, but maybe fragmentation is just the
way of the world/human beings…

If Squeak saw some value in having a similar bootstrap, 
then leveraging Pharo's efforts would make sense and might result in 
some *known* common minimal stage (e.g. pre-GUI) between distributions. 
Maintenance effort could then at least be shared at that level.

Such a minimal common bootstrap would probably suit being hosted under the OpenSmalltalk banner.

Perhaps that could even be an attractive path for Dolphin to move to 64-bit, 
rather than the effort to maintain their own VM.  
That would really make in impact on perceptions on Smalltalk in the outside market.
Its a dream...  I can't guess how palatable that would be for various parties.

cheers -ben


123