My first was Matlab. Most used is probably python, and then you get into my professional niche, VHDL, C, TCL.
I think I started with C#, went to C, then (pre-ES6) JS, Python, then Perl, then C++.
I didn’t get much interest or progress in most of them. C# was somewhat interesting because I could make actual windows, and Perl just has a lot of interesting text-geared concepts and was created by a linguist (my background is in language and literature, not in any IT field). Perl is still delightful to learn, though I’d go with Raku (Perl 6) now.
The only language I really learned properly and use the most is C++, especially with Qt, as my true interest is GUI programming. I was never into raw algorithms and CLI programs.
QBasic was my first. Then FutureBasic for my Macintosh SE (it included window control!). Now I teach programming, but my personal stuff is mostly in C# or Java
Fortran, Cobol, Assembler.
Logo was the first language I ever used. Then BASIC on the TI-99/4A and eventually on DOS.
Most used has been PowerShell (hopefully scripting languages are allowed for this question).
Second most used: the mIRC scripting language.
Third must used: THINK Pascal for Macintosh.
Fourth most used are a tie: Objective-C and Swift.
Then the least are all a tie: Bash, PHP, PERL, Python, JavaScript (ECMAScript), and Scratch.
In order it was Fortan, then various machine languages, then Basic, then assembler, a little Algol and COBOL. A few years of SAS, more machine code, and C and C++, JavaScript.
Somewhere along the way Forth, which is by far my favorite.
Those all sound like old languages.
Machine language on an IBM 1620, PDP11, 6502, 8748. Machines that don’t exist anymore.
That either makes you a retro enthusiast, or a well seasoned programmer.
Seasoned is probably right. Not a great programmer but my timing was right. Started when I was 12. Now I am 67.
Does programmable calculator count?
first: C++ most: Rust
first basic. most used is sorta hard to say. maybe java script given the variations I have used. Favorite is shell.
Started with C#, was the first one I managed to write hello world in. Now I’m writing Java professionally, so I guess the apple doesn’t fall far from the tree. However in my freetime I’m weak for C++.
Basic, Fortran & RPG
My first language was PHP
- High school
- Sophmore Year
- Pascal
- Delphi (not necessarily a “language” but it did change things just enough to make it different)
- Junior Year
- C++
- Java
- Senior Year
- C++
- Microsoft Turbo Assembly (16-bit)
- Sophmore Year
- College
- Freshman Year
- Java
- C++
- Sophmore Year
- C++
- Assembly for TI microcontroller (EE/CE course)
- Junior Year
- Python (Networking courses)
- C# (Algorithm Design course)
- Racket (Computer Language/Interpreter course)
- Julia (Computer Language/Interpreter course)
- R (Bayesian Stats course)
- Senior Year
- Python (all courses allowed personal choice)
- Freshman Year
I mostly use Python personally and dabble in Rust for learning purposes. I was staunchly anti-Python in my freshman year of college because I was helping a friend figure out why his Python script for CS 100 wasn’t working and I had never used it before, and the idea of whitespace indentation used for scoping seemed ridiculous (amplified by the discovery that my friend had mixed both in his lines). However after starting an on-campus job as a network engineer between my sophomore and junior year I found Python to be ideal for rapid prototyping and automation. Funny how that immediate reversal of opinion occurred.
With Matlab being my first, indexing from 1 made sense. After learning and writing basically everything else, 1 is just wrong.
import flying
Gosh I couldn’t get used to that in Julia. Threw everything off that semester.
Don’t know about Julia, but your probably writing matlab “wrong” if you’re using indexes. (I’ve never used matlab correctly, but its not really my field). Its always confusing though.
Julia embraces it. It’s intended to be used as a general-purpose scripting language focused on data/numerical analysis with parallel computing baked in. So indexing is a core part of its syntax. And since it caters to mathematicians, they began with indexing to start from 1 for familiarity. (Eventually they added support to define if your code has indexing starting from 0 or 1.)
R for my stats class really threw me off. Syntax was kinda comparable to Python but the way in which you can assign data to an object (which I think was both possible via index or dot-operator) meant I had to “forget” some things to not be lost when reading a TA’s example.
In summary, I’ll stick with Python/C/C++/Rust and leave Matlab/R/Julia to the mathematicians.
- High school
Java was my first, most used of all time is probably C# (it’s what I use when I get a choice) but I do mostly Groovy at work.
Some type of BASIC came first along with Batch (if it counts) and later Visual Basic. All sorts of easy things that I fully advocate for as first languages in education. The next step for me was C/C++ and various different languages that are more learning examples than anything now like COBOL and Pascal. And then for school, I picked up Python, Java, C#, Ruby, and a smattering of ARM Assembler.
I use a lot of languages for school, but outside of that, depending on the research I’m doing, projects I’m working on, and other things, it varies between C++ (which I use for analytics and research stuff) and Python (which is much nicer for automation and interacting with distributed computing). Bash finds itself very close behind them for automation when I’m being too lazy to write Python.
It funny how quick the number of languages balloons, I tell myself I don’t know that many, than I list everything I’ve programed at least one line in. Matlab, c/c++, c#, java, vhdl, verilog, tcl, python, whatever was built into excel, assembly (mips, arm, x86). If block diagram languages count, labview, sysml.
But above all, I’m sorry, but nothing is lazier than python.
C then NASM assembly, enjoyed poking around in how programs worked using hex editors and disassemblers, chasing strings to be offensive. Then decided I wanted to learn how to actually make the programs, and I’d heard how fast C and Assembly were, so off I went.
I’ve dabbled with disassemblers. they are not my friend. Although looking at that low level stuff is probably a good way to learn how to write efficient programs.
Meh, even now with more background knowledge, I wouldn’t say they’re really good for understanding how programs flow. They’re pretty neat for finding out how a hand-optimized part of code works though.