DEV Community

Ben Halpern
Ben Halpern

Posted on

How many programming languages do you know?

Feel free to offer a personal definition of "know" 😅

Discussion (93)

Collapse
jonrandy profile image
Jon Randy

Taking 'know' as being 'languages I've written a program in'...

  • ZX Spectrum BASIC
  • Z80 Assembler
  • C
  • Pascal
  • Haskell
  • Lua
  • Visual BASIC
  • AMOS BASIC
  • PowerBASIC (is it cheating listing so many flavours of BASIC? 😋)
  • C++
  • C#
  • PHP
  • Lua
  • Ruby
  • Go
  • Python
  • Shell
  • JavaScript
  • Prolog
  • PERL

Also wrote my own scripting language for creating "wizards" to guide users through common tasks in a system... does that count?

Collapse
turry profile image
Turry

Dayum

Collapse
thomasjunkos profile image
Thomas Junkツ

(c) 1982 Sinclair Research Ltd

Collapse
eljayadobe profile image
Eljay-Adobe

I now remember that I had forgotten AMOS BASIC on my list. :-D

I just punted anyway and said "several flavors".

Collapse
jonrandy profile image
Jon Randy

The creators of AMOS have a new project that is very similar - AOZ Studio

Collapse
wolfhoundjesse profile image
Jesse M. Holmes

No TI-BASIC? lol

I have two books here next to my desk for writing in BASIC. One of them is for games. It was such a different world back then!

Collapse
rushannotofficial profile image
Rushan S J

what's the name of the language your created ?

Collapse
jonrandy profile image
Jon Randy

I didn't name it - it was only ever used internally. I built interpreters to run the wizard scripts both on a desktop app (Visual Basic), and on the web

Collapse
baenencalin profile image
Calin Baenen

Well, I know C++ (to a moderate extent), Java, JavaScript (and TypeScript, if you'd like to distinguish the two), and Janky (the not-popular popular programming language I want to make).
If you include HTML, there's that, too.
Oh, and there's Python, but I rarely code in that now days, so I just say "I forgot, I know nothing.".

Collapse
lukeshiru profile image
Luke Shiru • Edited on

I used this ones to craft some software:

  • Bash 🙂
  • Batch 🤢
  • C 😐
  • C# 🙂
  • C++ 😀
  • Elm 😐
  • Haskell 😀
  • Java 🤮
  • JavaScript 😀
  • Pascal 😞
  • PHP 🤮
  • Python 😞
  • Smalltalk 😍
  • TypeScript 😍

But TBH I don't like some of them, and nowadays I mainly just use JavaScript and TypeScript. So if your definition of "know" is to be "a master of..." then that list would be far shorter x'D

Collapse
sherrydays profile image
Sherry Day

I'd say 5: JavaScript, Python, Ruby, Java, Swift. There are a few more I could hack my way through, but probably couldn't really right a solid program without a solid amount of learning.

Collapse
ben profile image
Ben Halpern Author

Similar to my list

Collapse
deepu105 profile image
Deepu K Sasidharan • Edited on

Know as in I can read it and write descent code in it

  • Java, Kotlin, Groovy, Scala
  • JavaScript, TypeScript, HTML, CSS/Sass
  • Rust
  • Golang
  • C# Can read and write code but probably not the best code
  • Python, Ruby, Shell, C, C++, PHP and probably few more
Collapse
twoshrubs profile image
Shrubs • Edited on

Well it's an odd one.. I'm an electrician by trade who moved onto industrial automation.

I'm constantly being thrown in the deep end and need to pickup a new language at the drop of a hat. So here is a list that I have covered over the last 20yrs..

PLC programming , C++ (current role), VB, C#, Java, PHP, SQL, Pascal and some strange lisp hybrid .. plus the odd industrial equipment (gcode , robots etc)

It's like my current role, took on as a PLC programmer then a 3rd party embedded OPC UA server they were using had terrible performance and there was no alternative in the market for there application.. so I ended up writing an OPC UA server in C++ that needed to be functional within a few months to meet project deadlines... 2 years later, I met the deadline and still adding features to this day.

Before this job I never touched C or C++ before this kind of thing happens all the time to me don't know if it's common place or I'm just a stress junkie 😂 but I feel I can pick up any language quite quickly when under pressure.

Collapse
cerchie profile image
Lucia Cerchie • Edited on

I can use JS and Python, also can hack my way around Golang and TS as of right now.

Collapse
ben profile image
Ben Halpern Author

Which was the hardest to pick up?

Collapse
cerchie profile image
Lucia Cerchie • Edited on

Great question! JS was my first coding experience, so that was the most difficult for sure. Golang has the most 'different' syntax and rules re assignments and mutability of all of them, so that's proving to be my biggest obstacle right now, but TypeScript is deceptively difficult in that it's an entirely different language from JS (not a framework) and I didn't realize that fully before diving in. Python's been by far the easiest.

Thread Thread
cerchie profile image
Lucia Cerchie

How about for you? We have a couple in common I think.

Thread Thread
cerchie profile image
Lucia Cerchie • Edited on

oh and I guess I forgot to include SQL, JSON, and GraphQL. I think of those less as programming languages (disclaimer: do not know the official def for a programming language; I know folks like to get technical with it but who am I to deny someone CSS or whatever they code in) and more like ways to represent or request data.

Collapse
jonlauridsen profile image
Jon Lauridsen • Edited on

Hm, I guess TS/Js, Python, C#, Ruby. It'd be too weird to write MEL here, it was an obscure 3D authoring scripting language.

Should we count SQL too? :)

Do you think more languages are automatically better? I felt I became a much better programmer (more confident, more aware) when I broadened out from just Python, but I don't think adding 1 or 2 more now would give me any real boost. Maybe if I tapped into a truly functional language… hm.

I just remembered, when I put Ruby on my skills the recruiters came rushing at me, it was just a crazy uptick, so there are more marketable languages than others!

I'd generally recommend developers learn one or two other languages if possible. Would you recommend devs to broaden out?

Collapse
cicirello profile image
Vincent A. Cicirello • Edited on

My Current Preferred Programming Languages: Java, Python

Other Programming Languages I Know: Assembly, AWK, C, C++, Common Lisp, Fortran, JavaScript, Pascal, Perl, Prolog, Scheme, SETL, Tcl, Visual Basic. Some of these I haven't used in a long time.

Other (data, query, markup, etc) languages: CSS, GraphQL, HTML, LaTeX, Markdown, SQL, SVG, XML, YAML

Collapse
salah856 profile image
Salah Elhossiny

4

Collapse
ben profile image
Ben Halpern Author

Are you happy with the list as is for a while or do you intend to broaden?

Collapse
salah856 profile image
Salah Elhossiny

of course i will broaden but according to a plan

Thread Thread
ben profile image
Ben Halpern Author

What's the plan?

Thread Thread
fennecdjay profile image
Jérémie Astor

I second that, what's the plan?

Collapse
eljayadobe profile image
Eljay-Adobe • Edited on

BASIC (a dozen different flavors), Assembly (6502, 65816, 68000, 68030, 80386, SPARC, PowerPC, Alpha), LISP/Scheme, FORTRAN, Pascal, C, C++ (from 2e to C++17), Object Pascal, Objective-C, C#, Perl, Python, Perl, F#, Lua, Java, JavaScript, TypeScript, Prolog. Peripherally programming languages (depending on one's definition) would include SQL, WPF/XAML, Eve 0.8, Eve 2.0, HTML & CSS.

I'm only including languages that I've worked with a lot for a year or longer.

I'm not including language exposure for fun. Like with Logo, Squeak, Boo!, Groovy, CoffeeScript, Swift, Elm, Rust, GLSL, and many many more. I'm not including command scripting languages or shell scripting languages, that be another few dozen.

Next year I plan on learning Clojure. It'll be interesting to see what you get if you add functional programming to LISP.

On my future list also has: Haskell, Scala, Kotlin, (more) Rust, (more) Swift, and Go.

Collapse
berviantoleo profile image
Bervianto Leo Pratama

Maybe more than 10. 😁

Collapse
ben profile image
Ben Halpern Author • Edited on

Which?

Collapse
berviantoleo profile image
Bervianto Leo Pratama

C#, Elixir, C, C++, Java, Typescript, Python, Javascript, Kotlin, Dart, Haskell, etc.

But, well. I only use C#, Typescript and Python for my daily task.

Collapse
lgrammel profile image
Lars Grammel

I've worked extensively with:

  • Java
  • Kotlin
  • JavaScript
  • TypeScript

I've written code in:

  • Prolog
  • GW BASIC
  • QuickBasic
  • Visual Basic
  • CoffeeScript
  • Go
  • Scala
  • Pascal
  • Delphi
  • Smalltalk
  • Haskell
  • Perl
  • C
  • Python
  • Shell
  • a tiny bit of assembler (forgot which one)
Collapse
donaldsebleung profile image
Donald Sebastian Leung

According to my Codewars profile, I have completed at least 1 code challenge in 43 different programming languages. However, I've probably completely forgotten some 30+ of them by now and for the (approximately) dozen remaining languages, I've probably never touched any frameworks in maybe 10 those languages so I have no idea how to use them in production. The only languages I dare say I know right now (as in, I can probably use it to develop a real-world project to some degree) are: Node.js, Python, maybe a little bit of C and Java.

Though in today's world, it simply isn't enough to know a programming language, or even multiple programming languages and frameworks for that matter - you also have to know how to effectively perform version control, write unit tests, deploy to all sorts of environments, etc., to stand out from the crowd.

Collapse
lembani_ profile image
Lembani Sakala

Know as in the ones I've used to write software in:

  • Javascript
  • C++
  • Java
  • Swift
  • Dart
  • PHP

Some others i've only tried them out eg Golang, Rust etc

I mainly work with JavaScript, Typescript, Swift and Dart

Collapse
superfola profile image
Alexandre Plateau

My definition of knowing a language has evolved into "I know my way around the language, I can do stuff without relying 100% on the documentation".

My list is as follows

  • Nim
  • C++
  • Python
  • Javascript
  • ArkScript
Collapse
codewhiteweb profile image
CodeWhiteWeb • Edited on
  • Html ( well it doesn't count as "PROGRAMMING LANGUGE")
  • CSS,SASS Tailwindcss, I know tailwind is not a programming laungage, but it fells good whenu say it ;)
  • Js, Ts and other framworks like React,Next
  • Node - mostly for backend
  • python

and for game dev

  • unrealscript
  • C# ( used once in a life, unreal engine is enough)

definition of Know - i don't know :p

Collapse
jcubic profile image
Jakub T. Jankiewicz

I know those:

  • JavaScript
  • TypeScript
  • Python
  • PHP
  • R
  • Bash
  • Lisp (mostly Scheme)
  • SQL (not exactly programming language)

I know but didn't use them anymore:

  • Ruby
  • CoffeeScript
  • Java
  • C++
  • 32bit Assembler
Collapse
pandademic profile image
Pandademic • Edited on

I know just enough to write some strange stuff in :

  • ruby
  • python
  • batch
  • CSS
  • SCSS/SASS
  • HTML

I know a bit of:

  • rust
  • haskel
  • bash
  • go
  • JS

I am learning perl,
I also a know a bit of a few languages that you may not have heard of like red and V

Collapse
ferencradius profile image
Ferenc Radius

Depends on 'know'
native:
python (9 years on job), javascript(22 years), typescript (last project, love it)

good:
c# (3 years on job), java (3 years on job)

never my thing, but need it some times:
shell/bash

also done in the past:
php (6 years), actionscript

Did some sunday hobby stuff with (Not good enough for job ;)):
ruby/golang/rust

Collapse
haris_secic profile image
Haris Secic

Let's say Java, Kotlin, JavaScript as my standard of know. Then C#, PHP as I knew but would need couple of weeks to refresh if I was to start a new project. Then Groovy, TypeScript as in used it but didn't really see to much difference from the others. Python and Go used it but never actually did a bigger project. Then C++ as in learned long time ago and could re-learn.

So if you exclude C++ I would say know as in could build a project decently would be 9. If you include C++ because I could re-learn stuff then throw in Scala as well and you have 11.

Collapse
cleveroscar profile image
Oscar Ortiz

I been using JavaScript for a while, but do use CSS when I need to style my web pages.

I dunno if HTML is considered one but that’s another one.

Been trying to learn C# to creat Unity games. It’s been really fun to program lately

Collapse
martyhimmel profile image
Martin Himmel • Edited on

Proficiently, PHP, MySQL, and JavaScript. They pay the bills, so that's where my main focus is.

I could probably get back into Java pretty quickly if I needed to. I did Android development for about a year just before Kotlin was available. Other languages I've dabbled in include Ruby, Python, C, C++, and C#. I couldn't start something from scratch in any of those (except C# in a Unity context) without some refresher/relearning time.

Collapse
pinotattari profile image
Riccardo Bernardini • Edited on

Languages that I know well and I can be productive in time-zero (modulo some "memory refreshing"):

  • BASIC (yes, I am that old)
  • FORTRAN (see above)
  • C
  • C++ (the power, the simplicity and the safety of a hand grenade)
  • Pascal (original Wirth and Borland "turbo")
  • Few assemblers (mostly Z80 and Intel)
  • PostScript (yes, PS is a fully-fledged language with loops, arrays, and stuff and, yes, I actually wrote programs with that)
  • Tcl/Tk
  • LISP (emacs dialect mostly)
  • PERL (ugh! The language closest to "line noise" I ever used)
  • PHP (double ugh! But sometimes it is unavoidable)
  • JavaScript (see PHP)
  • bash and other shell scripting stuff
  • Ruby (great for fast-and-dirty programs that are too complex for shell scripting)
  • Matlab (great for experimental number-crunching)
  • Ada (the preferred one, especially for long-lived and complex code)
  • SPARK/Ada, the Ada dialect suitable for formal checking (great stuff!)

Languages I had some experience with and that I would need few days of studying to get fully productive

  • Python
  • FORTH (I already said I am old, didn't I?)
  • Java
  • Mathematica
  • VHDL
  • awk (used only for very simple stuff)

Languages that I read something about that, I know their "philosophy," but I never used them (pretty weird stuff)

  • PROLOG
  • Simula
  • Eiffel
  • Haskell
  • COBOL

Borderline languages (stuff that were not designed to be actual programming languages, but they end up being Turing-complete by accident)

  • TeX/LaTeX
  • HTML/CSS
Collapse
ryencode profile image
Ryan Brown

My flippant answer is: both Zero and All.
Zero on account of I "know" parts of languages, enough to use and perform my duties,
All on account of I "know" enough theory as to what the effect I want done to the silicon with an abstract understanding of the machine language used to do those things. Understanding that programming languages are abstractions over that, they are different tools to accomplish the same underlying tasks.

But I don't know lisp yet ;)

Collapse
ravikrishnappa profile image
Ravi Krishnappa

The next iteration of this survey should focus on the languages used by the dev.to member in the last 5 years to build something. And to also get another feedback about the approximate number of users using that application.

I know Python, Java, Go, Rust, Julia, SQL, PL/SQL, C, C++, C#, COBOL, JavaScript, R,TypeScript and Assembly. But I have used Python, JavaScript and SQL to build custom business applications.

Collapse
yanivnoema profile image
Yaniv Noema

My list (Most used at the top):
C++
Python
TypeScript and JavaScript
C#
HTML & CSS
Dart
MATLAB

Collapse
lindsaykwardell profile image
Lindsay Wardell

At this point in my career, I've professionally written:

  • Javascript/Typescript (including Node, React, Vue, Svelte, and Electron as runtimes/frameworks)
  • PHP
  • SQL
  • Java
  • C#
  • Ruby
  • Elm
  • Haskell
  • Docker (does it count? It's fairly specific)
  • HTML/CSS (whether they're programming languages or not isn't important)

Also used an old development platform called "Magic" from the 90's, I was maintaining a legacy app for a couple years and it occasionally needed UX updates for new workflows.

Collapse
thomasjunkos profile image
Thomas Junkツ

I would better describe it as »Languages I once knew« or »Languages I was at some point in my life able to write programs in«

6501 Assembler
C64 BASIC
C128 BASIC
Action Script
AMIGA BASIC
Bash
C
C#
C++
CoffeeScript
Delphi
Elixir
Elm
F#
Go
Groovy
Haskell
Java
Javascript
Ocaml
Pascal
Perl
Powershell
Prolog
Python
Ruby
Smalltalk
Scratch
SQL
ZX 81 BASIC
ZX Spectrum BASIC

But today it comes down to Javascript, Python, Go and SQL.

Collapse
theaccordance profile image
Joe Mainwaring

I wouldn't consider myself proficient today in all of these languages, but in 20 years I've learned and worked with:

  • C++
  • JavaScript
  • PHP
  • Ruby
  • .NET/VBA
  • Python
  • TypeScript

My Language of Choice today is TypeScript.

Collapse
citizen428 profile image
Michael Kohl • Edited on

I'm not exactly sure how many I know in total (or what exactly constitutes "knowing" a language), but the following is a list of languages that I used at work and got paid for over the years, at least the ones I can remember:

  • Bash - all kinds of shell scripting
  • C - embedded stuff and Ruby C extensions
  • Clojure - internal tooling and a web app
  • Go - various micro services and CLI tools
  • Java - enterprisey apps, some Android
  • JavaScript/TypeScript - pretty much everything
  • Kotlin - Spring Boot web app
  • Lua - nmap plugins
  • Perl - all kinds of stuff in the early 2000s
  • PHP - web apps in the late 90s and early 2000s
  • Python - mostly ML stuff, very occasionally Django
  • R - internal data viz stuff for a startup I worked at
  • Ruby - my main language since 2004
  • SQL - I wrote so much of it over the years I had to include it, I worked on an app once that had 90% of its business logic implemented in SQL
  • VisualBasic - worked on an ASP pre .NET in around 2001/02

Some others I know but never used professionally (or only in a reviewing capacity):

  • Rust - one of my favorites, wrote an emulator in it, would like to work in it professionally
  • F# - I'm a member of and mentor for the FSSF and an F# mentor on Exercism
  • Raku - Formerly known as Perl 6. I still have a soft spot for the language
  • Common Lisp - I was always very interested in Lisps but Clojure became my favorite over CL eventually
  • Prolog - worked through one or two text books, highly recommended
  • Smalltalk (mostly Pharo) - Primarily used to understand Ruby's roots better and work through some great old OO design books
  • Scheme - worked through quite a few text books, did some stuff in Racket
  • C# - wrote a ray tracer in it, mostly learned to better understand some things in F#
  • Swift, ObjectiveC - I reviewed a lot of iOS code and contributed bits and pieces here and there
  • various assemblers - prefer ARM64 or 6502 when I feel nostalgic
  • C++ - I'd rather not anymore but it's still an interesting language
  • Pascal - learnt in the mid 90s, used for a few hobby and school projects back then
  • Zig & Odin - two languages I'm following from the sidelines because they intersect with some of my interests (lower-level and graphics programming)

I almost certainly forgot some as I'm really interested in languages, compilers, interpreters, VMs, GCs and all related topics.

Collapse
rajvirsingh1313 profile image
Rajvir Singh

Almost every language. As a programmer, I know pretty much every basic concept of any language. So there is nothing more to learn, other than syntax that is what you will forget and search again on google. I always memorize what a language can do and what it can't do, and then when I want to do something in that language, I will remember if it can do or not, If it can do that task then I search it up on google with the language as a keyword in the query.

Collapse
servusdei2018 profile image
Nate

I would define 'know' to be a language in which I'd confidently embark on a journey to build anything from a small script to a new social media platform, and with that definition, I know:

  • Go
  • Python

With that said, I have a working knowledge of:

  • C, C++, C#
  • Java
  • JavaScript
  • Bash

And although I don't consider these languages, I also am familiar with the following formats:

  • Markdown
  • HTML
  • XML
  • JSON
  • CSS
Collapse
coderamrin profile image
Amrin

one

Collapse
ben profile image
Ben Halpern Author

Which?

Collapse
coderamrin profile image
Amrin

javascript :)

Collapse
lazar955 profile image
Lazar Lukic

Daily working with Go, JavaScript(node.js), a bit of Rust. In the past worked with Java and C#. And of course bash, for scripting :D

Collapse
Sloan, the sloth mascot
Comment deleted
Collapse
ben profile image
Ben Halpern Author

Anything in the other 16 you'd want to try in a professional context?

Collapse
cereal84 profile image
Alessandro Pischedda

C
C++
Python
JavaScript
Golang
Just little bit of Ruby (used years ago)

Collapse
aneeqakhan profile image
Aneeqa Khan

Only Javascript

Collapse
ben profile image
Ben Halpern Author

Lots you can do with just JS!

Collapse
pmbanugo profile image
Peter Mbanugo
  1. C# & JS.
Collapse
sidcraftscode profile image
Siddharth Chaudhary

Javascript, Python, Swift
Not that many, I know

Collapse
ben profile image
Ben Halpern Author

You can do a heck of a lot with those three!

Collapse
liftoffstudios profile image
Liftoff Studios

Hmm. Let me contemplate...... So I think I know the following languages decently

JavaScript
Python
Rust
HTML
CSS (Can html and css count lol)

I also know a few frameworks

Collapse
alohci profile image
Nicholas Stimpson • Edited on

None. For a sufficiently rigorous definition of "know".

Collapse
saptakbhoumik profile image
SaptakBhoumik

I know python,c and c++

Collapse
yinkakun profile image
Yinka Adedire

Javascrippt/Typescript - Only

Collapse
euankennedy profile image
Euan

0.44

Collapse
yechielk profile image
Yechiel Kalmenson

Languages I've worked with professionally:

  • Ruby
  • Python
  • Go
  • C++
  • Kotlin
  • SQL
  • HTML/CSS
  • JavaScript
  • PHP
  • Shell/PowerShell
Collapse
opeolluwa profile image
ADEOYE ADEFEMI OPEOLUWA

C++, JavaScript and Lil nice touch of Rust and PHP

Collapse
aech12 profile image
Alex Howez

1 :,)

Collapse
albedios profile image
Albedios

.C
.C++
.C#
.PHP
.JavaScript
.Java

Collapse
neoprint3d profile image
Drew Ronsman

Some of the language I've only written one program lol

Javscript
Scratch(if i counts lol)
Python
Bash
Ti-Basic
C
C#
C++
Go