<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Richard Kenneth Eng</title>
    <description>The latest articles on DEV Community by Richard Kenneth Eng (@smalltalkrenais).</description>
    <link>https://dev.to/smalltalkrenais</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F175425%2F73f29401-dea8-417a-ba79-860209995209.jpeg</url>
      <title>DEV Community: Richard Kenneth Eng</title>
      <link>https://dev.to/smalltalkrenais</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/smalltalkrenais"/>
    <language>en</language>
    <item>
      <title>Announcing Camp Smalltalk Supreme</title>
      <dc:creator>Richard Kenneth Eng</dc:creator>
      <pubDate>Fri, 14 May 2021 11:51:01 +0000</pubDate>
      <link>https://dev.to/smalltalkrenais/announcing-camp-smalltalk-supreme-3e4f</link>
      <guid>https://dev.to/smalltalkrenais/announcing-camp-smalltalk-supreme-3e4f</guid>
      <description>&lt;p&gt;Next year is the 50th anniversary of the Smalltalk programming language. There will be a major celebration in Toronto, Canada. It's a programming conference called Camp Smalltalk Supreme.&lt;/p&gt;

&lt;p&gt;Here is the official website: &lt;a href="https://campsmalltalksupreme.wordpress.com/"&gt;https://campsmalltalksupreme.wordpress.com/&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Here is the promo video: &lt;a href="https://youtu.be/ygsqpuSnR-4"&gt;https://youtu.be/ygsqpuSnR-4&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Every attendee will receive free swag. And, of course, there will be birthday cake.&lt;/p&gt;

&lt;p&gt;Come to Toronto to hear seminars, watch demos, and attend workshops, all related to Smalltalk. It will be a real blast!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Why Use Smalltalk?</title>
      <dc:creator>Richard Kenneth Eng</dc:creator>
      <pubDate>Tue, 11 Jun 2019 12:00:22 +0000</pubDate>
      <link>https://dev.to/smalltalkrenais/why-use-smalltalk-hfl</link>
      <guid>https://dev.to/smalltalkrenais/why-use-smalltalk-hfl</guid>
      <description>&lt;p&gt;Certainly, not for the jobs. Smalltalk has a paucity of job opportunities. However, for all other reasons, it's a great choice.&lt;/p&gt;

&lt;p&gt;First of all, Smalltalk is supremely simple and easy to learn. Much more so than even Python and Go.&lt;/p&gt;

&lt;p&gt;Smalltalk has all of six reserved words. The complete syntax fits on a post card!&lt;/p&gt;

&lt;p&gt;Alan Kay, Dan Ingalls, and Adele Goldberg at Xerox PARC specifically created Smalltalk for teaching programming to young people. It doesn't get any easier than this!&lt;/p&gt;

&lt;p&gt;Check out how you can learn the syntax in its entirety within 15 minutes: &lt;a href="https://amber-lang.net/learn.html"&gt;Learn Smalltalk with ProfStef&lt;/a&gt;. (Make sure you follow the instruction in line 5: "&lt;b&gt;Select the text below&lt;/b&gt; and click on the 'DoIt' button".)&lt;/p&gt;

&lt;p&gt;Second, despite its small size and simplicity, Smalltalk is enormously versatile. It can be used for practically anything! Web, desktop, mobile, data science, machine learning, IoT, embedded, robotics, virtual reality, enterprise business computing, you name it.&lt;/p&gt;

&lt;p&gt;Smalltalk's ecosystem may be relatively small, but its built-in class library is very rich, indeed. Smalltalk is practically one-stop shopping for programmers.&lt;/p&gt;

&lt;p&gt;I most highly recommend Pharo, a modern variant of Smalltalk. For web development, you have &lt;a href="http://www.seaside.st"&gt;Seaside&lt;/a&gt;, &lt;a href="https://github.com/zeroflag/Teapot"&gt;Teapot&lt;/a&gt;, and &lt;a href="https://pharojs.github.io"&gt;PharoJS&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;For data science, you have &lt;a href="https://github.com/PolyMathOrg/PolyMath"&gt;PolyMath&lt;/a&gt; and &lt;a href="http://agilevisualization.com"&gt;Roassal&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;For IoT, you have &lt;a href="https://github.com/pharo-iot/PharoThings"&gt;PharoThings&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Third, Smalltalk's &lt;i&gt;live coding&lt;/i&gt; capability makes it one of the most productive general-purpose programming languages in the world, according to &lt;a href="https://www.ifpug.org/wp-content/uploads/2017/04/IYSM.-Thirty-years-of-IFPUG.-Software-Economics-and-Function-Point-Metrics-Capers-Jones.pdf"&gt;a study conducted by Namcook Analytics&lt;/a&gt;. On average, it's twice as productive as Javascript, C++, Go, Java, PHP, Python, and C#. This is on average. In many instances, the productivity amplification can be up to 5X.&lt;/p&gt;

&lt;p&gt;Fourth, Smalltalk is great for &lt;i&gt;metaprogramming&lt;/i&gt;. It's a lot like Lisp in this respect. See &lt;a href="https://medium.com/smalltalk-talk/lisp-smalltalk-and-the-power-of-symmetry-8bd96aaa0c0c"&gt;Lisp, Smalltalk, and the Power of Symmetry&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And, finally, Alan Kay's conception of OOP is pure gold, and Smalltalk is the epitome of it. Watch &lt;a href="https://youtu.be/AnrlSqtpOkw?t=137"&gt;Alan Kay's tribute to Ted Nelson&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Some more insight comes from Alan Kay’s "&lt;a href="http://worrydream.com/EarlyHistoryOfSmalltalk/"&gt;The Early History Of Smalltalk&lt;/a&gt;" (©1993 ACM):&lt;/p&gt;

&lt;blockquote&gt;
Smalltalk is a recursion on the notion of computer itself. Instead of dividing "computer stuff" into things each less strong than the whole — like data structures, procedures, and functions which are the usual paraphernalia of programming languages — each Smalltalk object is a recursion on the entire possibilities of the computer. Thus its semantics are a bit like having thousands and thousands of computers all hooked together by a very fast network.
&lt;/blockquote&gt;

&lt;p&gt;and&lt;/p&gt;

&lt;blockquote&gt;
Smalltalk’s contribution is a new design paradigm — which I called &lt;i&gt;object-oriented&lt;/i&gt; — for attacking large problems of the professional programmer, and making small ones possible for the novice user. Object-oriented design is a successful attempt to qualitatively improve the efficiency of modeling the ever more complex dynamic systems and user relationships made possible by the silicon explosion.
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://youtu.be/oKg1hTOQXoY?t=600"&gt;Alan Kay famously said&lt;/a&gt;:&lt;/p&gt;

&lt;p&gt;&lt;i&gt;Actually, I made up the term "object-oriented," and I can tell you I did not have C++ in mind.&lt;/i&gt;&lt;/p&gt;

&lt;p&gt;Said Alan Kay: "The Internet was done so well that most people think of it as a natural resource like the Pacific Ocean, rather than something that was man-made. When was the last time a technology with a scale like that was so error-free?"&lt;/p&gt;

&lt;p&gt;Alan Kay likened his object-oriented philosphy to how the Internet was built, or how biological organisms consisting of billions of cells are built. Smalltalk is fantastic for truly scalable solutions.&lt;/p&gt;

&lt;p&gt;[This is a follow-up to "&lt;a href="https://dev.to/smalltalkrenais/who-killed-smalltalk-2kc"&gt;Who Killed Smalltalk?&lt;/a&gt;"]&lt;/p&gt;

</description>
      <category>smalltalk</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Who Killed Smalltalk?</title>
      <dc:creator>Richard Kenneth Eng</dc:creator>
      <pubDate>Tue, 04 Jun 2019 00:33:03 +0000</pubDate>
      <link>https://dev.to/smalltalkrenais/who-killed-smalltalk-2kc</link>
      <guid>https://dev.to/smalltalkrenais/who-killed-smalltalk-2kc</guid>
      <description>&lt;p&gt;I frequently hear people tell me that Smalltalk is a dead language. Nothing could be further from the truth. I would like to dispel that myth once and for all.&lt;/p&gt;

&lt;p&gt;Smalltalk has an active user community. There are three major commercial Smalltalk flavours and no fewer than seven open source flavours!&lt;/p&gt;

&lt;p&gt;Commercial Smalltalks:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Cincom’s &lt;a href="http://www.cincomsmalltalk.com/main/products/visualworks/"&gt;VisualWorks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Instantiations’ &lt;a href="https://www.instantiations.com/products/vasmalltalk/index.html"&gt;VA Smalltalk&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;GemTalk Systems’ &lt;a href="https://gemtalksystems.com/products/gs64/"&gt;GemStone/S&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Open source Smalltalks:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="http://pharo.org/"&gt;Pharo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://squeak.org/"&gt;Squeak&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jvuletich.org/Cuis/Index.html"&gt;Cuis Smalltalk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://smalltalk.gnu.org/"&gt;GNU Smalltalk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.object-arts.com/dolphin7.html"&gt;Dolphin Smalltalk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://amber-lang.net/"&gt;Amber&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gitlab.com/hoot-smalltalk/hoot-smalltalk#hoot"&gt;Hoot Smalltalk&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Smalltalk is used by many companies in the financial industry, for example, &lt;a href="http://www.cincomsmalltalk.com/main/successes/financial-services/jpmorgan/"&gt;JP Morgan&lt;/a&gt;, Desjardins, and UBS.&lt;/p&gt;

&lt;p&gt;Smalltalk is used in manufacturing, telecom, transportation, utilities, and government, for example, Florida Power &amp;amp; Light, Texas Instruments, Telecom Argentina, &lt;a href="http://www.cincomsmalltalk.com/main/successes/shipping/orient-overseas-container-lines-ltd/"&gt;Orient Overseas Container Lines&lt;/a&gt;, BMW, and Siemens AG. The U.S. military used Smalltalk to write a battle simulator called JWARS. Communications Security Establishment (CSE), Canada’s national cryptologic agency, uses Smalltalk.&lt;/p&gt;

&lt;p&gt;Pharo itself has a large number of commercial users around the globe: see &lt;a href="http://pharo.org/success"&gt;Pharo success stories&lt;/a&gt;. Thales, the French engineering giant, uses Pharo for virtual reality application: &lt;a href="https://www.youtube.com/embed/b4nNtN7XBi8"&gt;Virtual Reality Live at Thales with Pharo&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I used Pharo and the Teapot web framework to create this website for a major programming competition next year: &lt;a href="http://teams.jrmpc.ca/"&gt;teams.jrmpc.ca&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Smalltalk is not a mainstream language, but it’s no more dead than any other non-mainstream language like Ceylon, Clojure, Crystal, Dart, Elixir, Elm, F#, Haskell, Haxe, Idris, Julia, Lua, Nim, OCaml, and Racket. Some of these languages have enjoyed considerable hype.&lt;/p&gt;

&lt;p&gt;Further evidence that Smalltalk is alive can be found at this year’s &lt;a href="https://smalltalks2019.fast.org.ar/"&gt;Smalltalks 2019&lt;/a&gt; international conference to be held in Neuquén, Argentina. It’s the 13th edition of this annual event. (&lt;a href="https://hackernoon.com/my-keynote-at-the-salta-conference-435dfaccc888"&gt;I was a keynote speaker at last year’s conference.&lt;/a&gt;) Could a dead language elicit this kind of interest?&lt;/p&gt;

&lt;p&gt;Also, there's the 27th edition of the &lt;a href="https://esug.github.io/2019-Conference/conf2019.html"&gt;ESUG conference&lt;/a&gt; to be held in Cologne, Germany.&lt;/p&gt;

</description>
      <category>smalltalk</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
