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
Furry Programmers
English-language general programmers community
Please treat pawb.social’s rules as though they were the rules of this community, even if you’re posting from another instance!
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.
first: C++ most: Rust
I started my career programming in C for an embedded controller, but have since moved on to C#, which is by far my favourite. I've also dabbled some in Python and a lot in Javascript, but I much prefer type-safe languages in general. Python''s whitespace-oriented design also rubs me the wrong way.
C# has come a long way since I started using it, and it now being both OS- agnostic and well suited for backend services has made it my go-to for personal projects. Frontend applications are still written in JS, however much that hurts me.
C is pretty much the only real option for embedded stuff. At least the white-space blocks of python allow the code a certain amount of enforced readability. To prove a point to someone I once wrote a section of code where I alternated space and tab for incremental blocks. I played with C# in visual studio once about a decade ago. I did not have a good experience with it. I should probably learn a little JS.
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.
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++.
Fortran, Cobol, Assembler.
My first language was PHP
first basic. most used is sorta hard to say. maybe java script given the variations I have used. Favorite is shell.
First: Scratch 3.0
Most used: Nix (mostly for my system configuration)
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.
Probably C. I think. That was over 15 years ago so I'm not 100% sure. Could also have been Basic at the time.
Nowadays it's definitely Python though.
BASIC was my first.
C is my most used.
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.
Basic, Fortran & RPG
I’m still pretty new to programming in general but Swift was my first language. I’ve done some basic work in C++ for school but Swift is definitely still my most used language.
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.
I worked with pyqt for a project once, I'd almost call Qt its own language. As for GUIs, I generally work with embedded systems or scripting, so not much human interaction needed. And it works is my baseline for completeness, no fancy algorithms here. I probably program like Matt Parker. I'm trying to make a website, so I either need to find someone who wants to do the visual bits, or learn some HTML/CSS myself. I'm enjoying learning the server bits.
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.
- 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.