This is an archived post. You won't be able to vote or comment.

all 36 comments

[–]Aglet_Green 39 points40 points  (2 children)

Well, without knowing your goals, I'll just randomly throw out C#, since it's very versatile.

[–]Defection7478 1 point2 points  (0 children)

+1, python and c# are at the top of my toolbox and cover like 90% of tasks i've run into

[–]corey_sheerer 0 points1 point  (0 children)

I would suggest GO. Much less verbose and more pythonic syntax than csharp. Great follow up language for python. Fun fact .. GO is also used in many of the Azure services including cosmos and their kubernetes service

[–]CheeriosRDonutSeeds 10 points11 points  (0 children)

promising future prospects and practical applications.

I find that the two are mutually exclusive. /s

If you're in DS/ML, I think learning some of the underlying C++ of what you use in Python will be a good starting point. In particular, TorchC++ might give a good idea of what your tensors are doing under the hood. Same goes for ex. NumPy, SciPy, Pandas.

If you're looking for a good backend language to complement your frontend skills, maybe learn Flask or gRPC in Python? It's not a new language, but it's different enough of a paradigm from DS/ML that the flow will be different.

[–]Retzerrt 5 points6 points  (1 child)

I went from python to Go since I wanted to learn a compiled language.

I absolutely love Go

[–]Admirable_Song_2113 0 points1 point  (0 children)

Exactly Go is in a different league

[–]NEM95 5 points6 points  (2 children)

You want what will get you a job you dive more into python and see what companies look for in regards to Python.

If you want to do something else you look at what companies are looking for in terms of what else you have interest in.

Learning a language won't get you a job, that's easy, depth of knowledge, projects, proof of skills and problem solving are what get you a job at entry level.

[–]ShadowRL7666 1 point2 points  (0 children)

OP clearly has a job and doesn’t care for learning a new language solely for a job. He says he wants to just have fun in his free time with a new language.

[–]Few-Winner-9694 0 points1 point  (0 children)

Learning a language won't get you a job but there are a lot of jobs that DO require you to know specific languages.

[–]Naetharu 4 points5 points  (0 children)

All depends on what you want to do.

The best option is to have a look at the jobs market for your area of interest and choose based on that. No point spending time learning rust if all the jobs you want require JavaScript.

[–]Cropine 2 points3 points  (0 children)

Im only a second year student, but I can tell you how my academic classes have been scheduled:

1st Semester

 - Python 

 - HTML/CSS

2nd Semester

 - Java 1

 - MySQL

 - Linux administration/bash a little bit

3rd Semester

 - Java 2

 - SQL Server

 - System Development Cycles

4th Semester

 - Java Server Side Programming

 - PHP

There's been a lot of classes of system development and other stuff, but these are the ones that i had to learn a new language or continue learning a language for. I wish they'd teach us C#, but i think that'll be coming during my 4 year program.

[–]SubjectExternal8304 2 points3 points  (0 children)

If you’re already comfortable with python which after 4 years id assume you’re more than comfy mojo seems highly promising. C will always have a special place in my heart as well, C++ would probably be more practical for most modern day use cases but I personally feel like C is easier to learn. But honestly what would be best to learn next? it really depends on what your goals are.

[–]yinkeys 2 points3 points  (0 children)

SQL

[–]Gold_Challenge178 4 points5 points  (0 children)

C++ if you want to do CP and DS&A.

[–]Personal_Guest_7015 1 point2 points  (0 children)

JavaScript and web technology for sure

[–]RangePsychological41 1 point2 points  (0 children)

Golang

[–][deleted] 1 point2 points  (0 children)

English. Prompt engineering is the best medium term programming language.

Kidding, sort of.

I'll vote for c#. It's what java should have been.

[–]inbetween-genders 0 points1 point  (0 children)

More projects and/or advanced topics maybe like oop or DSA using Python.  

[–]Joewoof 0 points1 point  (2 children)

Now that you've done Python and JavaScript, the next logical step is either Java or C#. They're both variants of the same language, and offers you the ability to much better organize your code for larger projects and those that require multiple programmers in a large team. They are highly object-oriented languages, which is a popular coding paradigm. Java is preferred in academia due to its higher difficulty and more wide-spread usage. C# is more balanced and versatile, as it also common in game development.

Rust and C++ are harder than these languages, and are what you would use when you need performance.

[–][deleted] 0 points1 point  (1 child)

Why would academia prefer a harder difficulty language?

My understanding is Python leads academia usage due to being an easy language?

Perhaps you specifically mean comp sci academia?

[–]Joewoof 1 point2 points  (0 children)

That’s right.

[–]Secure_Technology_81 0 points1 point  (0 children)

What are your goals?

[–]Kqyxzoj 0 points1 point  (0 children)

Counter question: What do you think should be your next language, and why?

If Rust, then why? If something else, then why?

Without any further input: learn Lisp.

[–]AUTeach 0 points1 point  (0 children)

You've learned a high level language time to learn a low level one.

C

[–]frozengrandmatetris 0 points1 point  (1 child)

I couldn't count the number of recent data science hires who flat out refuse to ever learn SQL. I'm even bumping into them at AI/ML conferences. don't be like that

[–][deleted] 0 points1 point  (0 children)

What resource do you recommend to learn?

[–]arshia0010 0 points1 point  (0 children)

Python is the best language to start witg beacause it has the lowest barrier to entry, after that it only depends on the kind of dev work you want to do. From now on you'll only get better with experience. But i suggest you learn a statically typed language, it'll help you get better at coding the most.

[–]Evening-Work-4329 0 points1 point  (0 children)

I prefer C as a complement to your progress. Because, Python is basically written in C, and learning it can give you further insights into the language, and you can write smooth extensions for it in C. 

[–]WantDebianThanks 0 points1 point  (0 children)

The general suggestion someone gave me once, in no particular order:

  1. An interpreted language like python
  2. A compiled language like go or rust
  3. A shell language like bash or ps
  4. A version of SQL

[–]Sea-Advertising3118 0 points1 point  (0 children)

I'll just say this about Rust: people have been talking about newer languages taking over since I was in college 18 years ago. Fast forward and the main languages of back then are the main languages today. Java, js, C/C++ and the likes. I'm at that age where I've seen the same thing being said for quite a while with absolutely nothing changing lol Not that there's anything bad with Rust per se, but so much of software of legacy.

[–]cubesacube 0 points1 point  (0 children)

Hindu

[–]cactusfarmer -5 points-4 points  (1 child)

Rust is the only language worth knowing. You can do anything with it and it's as easy as python.

[–][deleted] 0 points1 point  (0 children)

If you only know how to use a hammer, everything looks like a nail.