Hi Mayuresh, We use Smalltalk almost exclusively for all our server systems - database and applications. This includes POS applications and payment systems, SaaS applications, multiplayer games and IoT devices. We use GemStone Smalltalk [1] as our database and application server, and Pharo as the development tool. Our IoT devices are Raspberry Pi based and run Pharo IoT [2]. Also, most of these systems have a web based interface developed and served via Seaside [3] running in GemStone. We also have Mobile apps that connect to these systems that are developed in Swift, Dart or Java as users have come to expect native interfaces on their devices. Using these languages to create nothing but thin client like interfaces is quick and easy to maintain. Thatâs where they shine. Compared to Smalltalk these languages suck for writing anything more complex. Weâve had many recent graduates join the team with experience in Oracle or MongoDB or Redis or React or Node or any number of tools who are convinced (like most recent graduates are) that the tools with which they have experience are the âbest" and only serious way to move forward on projects. Typically, as a training exercise, we encourage them to build their first project in the tools they know, along side someone working with GemStone and Seaside. Without fail, a feature identical Seaside application (including a full suite of tests), is completed in a fraction of the time. Sometimes so much quicker that they choose to abandon their attempt and focus on learning Smalltalk and Seaside. FYI, Smalltalk is quite often found at the top-end-of-town. Itâs used on highly complex systems that contain substantial intellectual property, and often require confidentiality. Itâs considered a serious competitive advantage, and itâs where I find much of my work :) Youâre unlikely to get responses from these teams for obvious reasons, Hope this adds to your investigation. Cheers, J [1] https://gemtalksystems.com/ [2] https://www.pharoiot.org/ [3] https://www.seaside.st/
On 14 Jan 2023, at 7:01 pm, mayuresh@kathe.in via Pharo-users <pharo-users@lists.pharo.org> wrote:
Hello,
This isn't a mail intended to troll this community.
I am genuinely curious about what would be the type of use cases which would be exemplary for Pharo?
Now-a-days, anything one could have accomplished solely with Smalltalk (and hence Pharo) can be accomplished with a number of modern programming languages and their associated frameworks, e.g. Google's Dart with Flutter, Apple Swift with SwiftUI, Microsoft's C# with WinUI. And such languages and their associated frameworks are built from the ground-up for a particular platform, while Pharo does not have any such targets, which usually renders graphical applications built using Pharo to "look like" aliens.
What does stand-out regarding Smalltalk (and hence Pharo) is the superior developer experience furnished as a result of the true object system combined with a full graphical environment. In addition to that, Pharo, specifically, provides advanced tools like Git integration, etc.
But, are these things all that there are to be considered enough for highlighting the full inherent power of Pharo?
Again, apologies if anyone found the subject line as well as the message body to be troll-ish. That has not been the intent.
Kind regards,
~Mayuresh