Languages - ObrienlabsDev/blog GitHub Wiki
Coding Languages
TLDR; Developers should code every day and do so in multiple languages.
Abstract
Transitioning and maintaining proficiency in multiple languages.
Go
Go (golang) was developed at Google by the same team that worked on Blaze. Go is an evolution of both C, C++ with influences from Java, Python and Smalltalk. Swift and Go are very similar
Go Usage
- Kubernetes
- Terraform
- Helm
- Kubernetes Cluster API
Go Training
- Go on Google Cloud - https://www.cloudskillsboost.google/course_templates/730
Go Books
- The Go Programming Language
- Learning Go
Transitioning from/to other Languages
Transitioning from Smalltalk to Java
Experienced Java Developers Transitioning
Transitioning from Java 1.8+ to Microsoft C-sharp
Transitioning from Java 1.7 to 1.8 functional programming
Transitioning from Java 1.8 through to Java 11, 17 and 25 LTS
Java to Python 3
Java to Go
Go (golang) was developed at Google by the same team that worked on Blaze.
History
I am currently as of mid 2024 primarily a Java developer with some Objective C, C, C++, Python, Smalltalk, Go experience. While I have been using Java since its' inception in 1995 by James Gosling and professionally since around 1999 when Java EE started to arrive - I have transitioned from other languages in the past. This brings me to the main point of this evolving article - learning new coding languages.
My progression spanned the following, however Smalltalk - specifically Digitalk V was my first OO language.
-
HP calculators
-
5 1/4 floppy era
-
TRS-80 COCO basic (Microsoft)
-
TRS-80 Machine Language (6809)
-
Commodore PET 40xx basic
-
TRS-80 portable basic and ML
-
3 1/2 floppy era
-
Commodore Amiga 500/2000 C
-
Microsoft Turbo Pascal
-
Microsoft Turbo C++
-
Smalltalk V
-
Scheme (Lisp) - minimal
-
Microsoft Visual Basic 3 and 4
-
SUN Java 1.0 - 1.6
-
Javascript (Mosaic, Netscape Navigator, Internet Explorer)
-
Microsoft C IS_API
-
Perl 5
-
Adobe ActionScript
-
Microsoft VBA
-
CDROM era
-
Microsoft ASP (Active Server Pages - before .NET)
-
Oracle Java 1.6-1.8 (I was at Oracle during the SUN acquire)
-
Oracle Java EE 5-6 and associated Pivotol Spring
-
Parallax Spin and Assembly
-
Python 2.x (intermediate only)
-
PHP (for PHPLdapAdmin)
-
Objective C
-
Beginner to intermediate
-
C# (C Sharp for Java developers)
-
C for NVidia CUDA 12.2
-
Python 2/3 for TensforFlow 2, Keras
-
React
-
Angular
-
Rust
-
Dart
-
WebAssembly
-
I skipped Ruby and Ruby on Rails even though I have the highest respect for the Smalltalk lineage.
Appendix A: Language List
A curated list of the larger Wikipedia list at https://en.wikipedia.org/wiki/List_of_programming_languages
C based
C
C++
Objective C
Swift
Swift and Go are very similar https://developer.apple.com/tutorials/develop-in-swift/welcome-to-develop-in-swift-tutorials