FriendLinker

Location:HOME > Socializing > content

Socializing

Is Smalltalk Actually Used in the Corporate World?

January 23, 2025Socializing1573
Is Smalltalk Actually Used in the Corporate World? Yes, Smalltalk is i

Is Smalltalk Actually Used in the Corporate World?

Yes, Smalltalk is indeed a programming language that has been utilized in the corporate world, albeit with a presence that wanes compared to more mainstream languages like Java, Python, or JavaScript. Known for its powerful object-oriented programming capabilities, Smalltalk has had a significant influence on the development of other languages, particularly in the realm of object-oriented design.

Current Use in the Corporate World

Smalltalk's applications are not widespread due to its specific niche, but it still holds a significant place in the corporate sector, especially in certain industries.

Niche Applications

One of the key areas where Smalltalk is still in use is in niche applications and industries. Many companies continue to use Smalltalk for specific legacy systems or applications that were originally developed in this language. These applications often require the unique features and stability that Smalltalk provides.

Development Environments

Organizations also leverage Smalltalk for rapid prototyping and development due to its dynamic nature and interactive development environment. This makes it easier to iterate and test code quickly, which is invaluable in the fast-paced world of software development.

Education and Research

Additionally, Smalltalk is frequently employed in academic settings to teach object-oriented programming concepts and software development principles. Its simplicity and power make it an excellent tool for teaching these critical skills to new programmers.

Community and Tools

There are active Smalltalk communities and modern implementations like Pharo and Squeak that provide contemporary tools and libraries. This accessibility makes it more suitable for new projects, and it continues to attract developers who value its unique features.

The Case Against Dismissing Smalltalk

Contrary to the belief that Smalltalk is not used in the corporate world, it is actually quite prevalent. Major vendors such as Cincom, Instantiations, and GemTalk Systems have sustained their operations by providing Smalltalk solutions to enterprise customers. The notion that these companies would disappear without enterprise clients is intriguing, to say the least.

Smalltalk finds favor in industries like finance and manufacturing, where its legacy and stability are highly valued. It is also employed in government and academic settings worldwide, proving its relevance and utility.

The Network Effect Argument

Anton Carver argues that the network effect explains why certain languages remain popular. However, if one buys into this argument, it would imply that all niche languages should be abandoned in favor of the likes of Java, Python, or JavaScript. The contrast is stark: languages like Clojure, Crystal, Dart, Elixir, Elm, F#, Go, Haskell, Haxe, Julia, OCaml, and Rust have far fewer users than the top 10 languages like Java, Python, JavaScript, C, Ruby, Perl, PHP, and Scala.

Do we, as programmers, want to live in a world where the only languages available are these top 10? Such a limitation would undoubtedly stifle innovation and stagnate progress in the field of programming.

Moreover, if programmers had never undertaken the risk of exploring non-mainstream languages, many of the top 10 languages we use today would never have taken off. We might still be using COBOL and Fortran, which would be a world devoid of the rich tapestry of languages and tools available to us today.

Conclusion

While Smalltalk may not be as widely adopted as some of the more popular languages in the corporate sector, it still holds a significant presence, particularly in specific domains and among organizations that value its unique features. The diversity of programming languages is essential, and Smalltalk is a testament to the importance of maintaining a broad spectrum of tools for developers to choose from.