4 ms·
My experience learning programming languages (starting in grade school): 1980. BASIC (AppleSoft an TRS-80, but later DEC, Waterloo and QBASIC added to the mix)
by dhosek 5y ago
My experience learning programming languages (starting in grade school):
1980. BASIC (AppleSoft an TRS-80, but later DEC, Waterloo and QBASIC added to the mix)
1982. 6502 Assembler
1982. Pascal (this became my primary high-level programming language in 1986–1992)
1984. C
1985. Rexx (still the best scripting language I've worked with)
1985. FORTRAN
1986. TeX (programming in a macro-expansion language is it's own bizarro world)
1987. PostScript (the joys of coding in a stack-based Forth derivative)
1988. Modula-2
1988. Metafont (Another Knuth macro-expansion language, but one with fewer quirks than TeX)
1994. C++ (it didn't really click until STL came on the scene, there were some awful C++ books published in the 90s)
1995. Perl
1997. Java
1999. PHP
1999. JavaScript
2007. Ruby (I had a diversion from 2002–2006 where I tried to leave programming behind for mathematics)
2009. Groovy
2009. Erlang
2009. Scala
2011. Objective C
2016. Swift
2018. Kotlin
2018. Clojure
2021. Rust
I'm by no means an expert in all of these languages (I can really only claim current competency in the JVM languages these days, although my Rust is getting better and JavaScript is not so much a language anymore as it is a foundation for other languages built on top of it through the various libraries), but I do think that BASIC and Pascal still great languages for beginning programmers, although it's hard to go from, say, UCSD Pascal to dealing with OOP or FP which are the dominant paradigms of development these days.
It's also somewhat interesting to see that my picking up new languages tended to come in clumps, with things piling on fairly quickly after my return to programming work in 2006.
- fsckboy 5y agoAppleSoft on a TRS-80? is that right?
- dhosek 5y agod'oh, and, not an
- hnzix 5y agoTurboPascal had a lovely IDE which made it really nice for teaching. Whereas teaching Java was a struggle initially for novices because of the relative difficulty in configuring the development environment. This is probably the most important thing PHP also got right for beginners.
- esfandia 5y agoI also learned programming in college with TurboPascal and absolutely loved it. Learning Smalltalk was also a pleasure due to not only the beauty of its concepts but also the development environment. The closest thing in Java for teaching the language is BlueJ, which gives the student a good intuition on the difference between class affordances (constructors, static methods and variables) and object affordances (instance methods) based on what's available when you right-click on them.
- DeathArrow 5y agoTurboC and Borland C had the same kind of IDE.
- SavantIdiot 5y agoWhat does this have to do in the slightest with the content of the paper?