Languages to learn that will be applicable in the future?

what language should I work on over the summer? took an intro to programming class this year where I learned some java. I understand logic and I have a fairly strong math background so what should I work on teaching myself before I go off to uni?

Other urls found in this thread:

cprogramming.com/tutorial/c-tutorial.html
learn-c.org/
learncpp.com/
cplusplus.com/doc/tutorial/
cprogramming.com/tutorial/c -tutorial.html
en.cppreference.com/
isocpp.org/faq
learnpython.org/
codecademy.com/en/tracks/python
wiki.installgentoo.com/index.php/Programming_resources
gen.lib.rus.ec/book/index.php?md5=0516C1603B3184018E102E26C4149C0D
gen.lib.rus.ec/book/index.php?md5=F3BB3866B02D92E42221CE0C3BF34A9B
gen.lib.rus.ec/book/index.php?md5=02343705324CF0ECC16AA69AB76192B8
gen.lib.rus.ec/book/index.php?md5=0525238A000EB02CD652F087E29F953C
twitter.com/SFWRedditImages

Bump, I'm actually curious and was expecting replies.

Nodejs
Python (django/flask)
Java (Spring)
Angularjs (1 & 2)
Reactjs

That's everything employers want. But you're going off to Uni so the most relevant languages you will work with in college are C, C++, Python, and probably a little JavaScript here and there.

is that in most cs programs?
I'm interested in technology in general and would like to learn but I'm also poor and don't want to waste my time if what I learn will be irrelevant in the job market.
I understand that after you learn a few languages it gets easier to learn others but do places like TIs have better career oriented programs or am I fucked either way?

Java, C, C++ are the languages you're looking for. Common in CS courses and common for jobs (with java and c++ being the more common languages)

Kotlin is definitely the future. I'm paid but to write Java and Python, but I've already started my Kotlin training

What's a TI?

In general, better colleges have more "science" in their comp sci programs. That is, lots of math, theory, data structures, and focus less so on programming. Other colleges structure their programs with courses that literally teach you a language. Like CISC115: Intro to C++. You could look at what classes you will be taking for your degree online and see what languages those courses are taught in if you want to get ahead.

My advice is focus on programming concepts, and not the language. Then you can pickup any language and be able to write a program in it in like a day or less.

>Kotlin
Mmm sweetie, that would be Rust.
Please use Rust.

This might have been true 10 years ago but lots of companies are switching over to a nodejs stack for web apps.

Java is still used on the backend for more complicated REST API programming.

>C/C++/Assembly
will be here until the AI is capable of rewriting every operating system and itself with another newer language. also mankind will continue producing embedded devices and other stuff like satellites, missiles with embedded mission-critical circuits in it.

>R
everything is telemetry these days and still will be in the future. every organization needs data scientists including apple, google, microsoft and especially intelligence agencies.

>javascript
>angular/react etc.
anything web related is not future-proof. there is always something new in the web development and as a programmer you have to constantly update your know-how to be relevant. you might get tired pretty quickly, because it is frustrating.

>java
it is the de-facto most commonly used language and the safest bet for the moment. but it will be replaced with python in the next 10 years.

Python and C++.JavaScript is going to stay also.

tech institute, maybe not a common abbreviation lol.
and ok cool ill look into it ty

I don't think it matters as long as you pick up good habits. This includes soft skills like teamwork and communication.

Learn something common and useful like C or Python, look for good open-source projects - see how they work, and contribute to them.

>but it will be replaced with python in the next 10 years

You were so close to proving you were not retarded. So close.

Look, don't ask Sup Forums these questions. Half of the replies to this thread will be shitposts about java being shit and you should learn (insert current meme).

The languages depends on the fields desu.
If you want to do software development, java, c# and c++ are going no where, they're safe.

If you want to do systems programming, embedded or operating, you go C.
And that's arguable. C++ has overtaken alot of C's stuff. Nothing will replace C completely, it'll never go away for low level stuff.

If you want Web development, you don't learn anything. Seriously, that shit changes so fast that it's devolving Into knowing html, some css, whatever Javascript framework is trending, whatever responsive framework is trendy and whatever backend framework is trendy.
Could be c# MVC, ruby on rails, node.js, php, Python django, whatever. It's a hot steaming mess of shit at the end of the day.

All functional languages are memes, so is lisp and whatever crap Sup Forums is pushing.
Scripting languages like Python / Perl are used by either sys admins or people testing C / C++ code. Don't have them as primary languages.

TL;Dr: go for a nice OOP language like C++ or Java. If you write well structured, object oriented code, you'll be set for a coding career.

C++ with eigen3.
If you can do this, you can do any programming.

>You were so close to proving you were not retarded. So close.
they were saying the exact same thing in the 90s, when somebody argued java/c# is going to replace c++. look what happened.

python is already replacing java in the university courses, next it will replace java in the business community.

what is retarded would be arguing that javascript/nodejs is going to replace java. it is not only retarded, it is also simply enough reason on its own to start another genocide, crusade, jihad or whatever-fuck-what.

>python is already replacing java in the university courses

Uhhh no, it is not. It is used for intro courses and then they teach java. After that, they usually show basic webdev with node.js and javascript. It is used in universities, but it is far from replacing java. If anything, it is being used as a stepping stone to java and is dumped after that. I wish python would replace java, but, if anything, it is looking like it will be used alongside it.

You're already learning the most powerful programming language in the world. Your next step should web development languages: html/css/javascript. Those will always be relevant because they're used on every computer that has a modern browser.

This. All of the boards on this site have degraded over the years, but Sup Forums has fallen so far in that it successfully memed starting off with purely functional languages or C to the point where the board, especially /dpt/, is a cesspool of incessant bikeshedding.

Just follow what the guy I quoted said, OP.

this is pretty much a perfect reply for OP.

I remember Sup Forums back in the mid 00s and it was a decent-ish place. now it is 99.9% crap

Find a domain you're interested in writing software for and start learning applicable frameworks.

If you have no idea where to start, learn Spring (since you already know java) and use it to create some sort of web application.

Being able to write fizzbuzz in 30 languages won't make you employable. Using industry-standard frameworks, tools, and workflows will.

is scala worth learning

Cobal
FORTRAN
D

And angular4?

C/C++, C#, Java and Javascript.

If you learn these you'll have all the tools to adapt to most of the languages out there, plus they're going to stay.

COBOL will be around for centuries to come.

i know Java Core and OO concepts at decent level, (score ~85% at sjcp book (ojcp) tests, almost passed several interviews but didn't get in. They said that Java Core isn't enough and that i should have some understanding of Spring Date, Spring Security, REST-controller, MVC, XML/JSON, Tomcat. Do you have any suggestions or advice how i shoud be studying all these shit? Books, articles, courses, youtube channels? Or do you think i should dive into some Spring project while reading Spring Framework documentation and learn along the way. Thanks!

So you want to learn programming?

Pick a starting language. For beginners, there are generally two recommended "programming families" that you can choose to start learning:
-Dynamically typed/interpreted programming languages, such as: Python, Perl, Ruby
-Statically typed/compiled programming languages, such as: C, C++, C#

These are amongst the most popular languages in use worldwide, including 4 from the top 5. Both approaches are perfectly fine, and well-documented.
-Dynamically typed programming may be a bit more flexible, convenient, and forgiving. It is more popular in academia.
-Statically typed programming is a bit more suited for making general applications. It is more popular in industries.

Cannot decide? Flip a coin.

If you choose statically typed/compiled programming, you may want to start with C, then pick up C++. C is very well documented, and teaches many universal programming concepts. C++ is based on C, and adds new concepts. Sources:
For C:
The C Programming Language (K&R)
C Primer Plus (Prata)
cprogramming.com/tutorial/c-tutorial.html
learn-c.org/

For C++:
learncpp.com/
cplusplus.com/doc/tutorial/
cprogramming.com/tutorial/c -tutorial.html
en.cppreference.com/
isocpp.org/faq

If you choose dynamically typed/interpreted programming, you may want to start with Python. It is very easy to pick up. Here are some good sources:
learnpython.org/
codecademy.com/en/tracks/python

>BUT I WANT MORE SOURCES!
Read: wiki.installgentoo.com/index.php/Programming_resources

>BUT I WANNA START WITH [language x] INSTEAD!
Sure, if you like. But the languages above are considered good for beginners.

>BUT I WANNA MAKE A COOL WEBSITE!
Learn HTML, CSS, and Javascript.

>BUT I WANNA MAKE iPHONE GAMES!
Learn Objective C and/or Swift.

>BUT I WANNA MAKE ANDROID GAMES!
Learn Java.

>BUT I WANNA MAKE PC GAMES!
Learn patience.

But if i wanna make cool apps for android and iPhone?

Xamarin aka c#

>Or do you think i should dive into some Spring project while reading Spring Framework documentation and learn along the way.
yes, this is how you learn programming. you should know this by now

>lots of companies are switching over to a nodejs stack for web apps
false

Java and Swift

Urbit is the future. Learn Nock and Hoon.

thanks

Till Android dies. Then no one will care.

Python has major use in science. Haskell is also on the rise in industry, Scala and Clojure on business.

Answer deserving a cookie. Except for Perl which picked up by a beginner will result in mess.

Spring 5 officially supports Kotlin and it won't die in this century

Java, C++, or maybe C depending on what your doing in college.

C64/6510 Assembly if you want to match my level of autism.

what companies are starting to use Haskell?

> learning Haskell in a day or less

SERIOUS QUESTION:

I only have a summer to learn a new language, I already know Java.

Should I learn Scala or Haskell? -- I want to learn a FP language.

Haskell

React Native , reactjs

Hi Curtis.

X86 assembly and learn how computers work-> C with Linux -> C++ OOP and programing paradigms.

Enjoy.

Learn:

1) x86Assembly
2) C
3) Java

Congratulations, you know what programming is all about. But do you know what programming can be? Learn:

4) Common LISP
5) Haskell
6) Prolog

Nice, you got a better understanding what Programming can be. But every real programmer has to know web basics, so:

7) HTML + CSS
8) JavaScript

What you don't know databases? Then learn yourself some..

9) PostgreSQL
10) MongoDB
11) Apache Cassandra

And of course we want a nice backend and apps:

12) Ruby
13) Swift

And maybe we want some more concurrency?

14) Go
15) Erlang
16) Elixir

Now you are good in the web, but are we good programmers yet? No! Let's get more well rounded and get better with systems languages:

17) C++
18) Rust


And with your previous knowledge it should be very easy for you to pick up two more beauties:

19) Clojure
20) Scala


Now you can officially call yourself a programmer.

You already asked that a few times, dude, didn't you?
And the answer is still HASKELL.

If you're into web stuff, Erlang might be another good idea. It's simpler than Haskell.

But you can't really go wrong with Haskell either.

Yes I did, same guy!

Thank you! I have the latest version of first principles now. Already read chapter 1 and completed all the lambda calculus exercises in the back of the book. Followed up by googling more exercises and completed a few of those as well.

Ready to move on to chapter 2.

If you want to learn a skillet that will get you a job easily I'd say learn the following:

For server side:
Java, PHP, C#, Python, or NodeJS

Make sure you know how to use a framework for one of these languages too. Ex: for C# learn ASP.NET MVC or ASP.NET WebAPI.

For client side:
HTML/CSS
JavaScript
jQuery
Modern JS Framework like AngularJS 2 or ReactJS.


For Database:
Stored Procedures, Views, Functions.

java enterprise
learn to setup a tomcat server, set system and environment variables, put a database connection in an app context file, enable the https connections, deploy an axis2 webservice on it

Then keep on learning Haskell.

As a rule of thumb:
Learn one language per year and eventually try to get decent in about 5 languages.

If you are great with Java and Haskell (yes, I didn't say "OK", but "great"), you will easily get a Job as Scala dev.

I've recently transitioned from math teacher that occasionally scripted things in python or mathematica to doing enterprise java development. It's not glamorous work but it's not as bad as the Sup Forums would have you believe and there's plenty of it (even for white guys now that Trump put the long-term viability of H1-b into question).

If you want to turn knowledge of vanilla java into a marketable skillset here's what I'd recommend:

* Learn XML and JSON. These are ubiquitous languages for configuration and metadata. Fortunately they're super simple and you could probably learn them both in an afternoon. Don't get lost in the weeds of the half-dozen ways to define an XML schema or XSLT transformations--just focus on the basics.

* Read: Murrach's Java Servlets and JSPs
gen.lib.rus.ec/book/index.php?md5=0516C1603B3184018E102E26C4149C0D
It covers a lot of the critical fundamental ideas of web programming with java. You may never write a servlet or use a naked JSP in the wild, but what you'll learn about client-server achitecture, http requests and responses, web containers (i.e. Tomcat), the MVC pattern, REST, HTML & CSS, java beans, and persistence (getting java to talk to an SQL database) make it more than worth your time.

*Read at least part I of: Spring in Action
gen.lib.rus.ec/book/index.php?md5=F3BB3866B02D92E42221CE0C3BF34A9B
If you don't understand the ideas of an "application context" and "dependency injection" then trying to use Spring is a maddening and mystifying experience.

cont.>

Python.

>cont.
* Read: A Software Engineer Learns HTML5, JavaScript, & jQuery
gen.lib.rus.ec/book/index.php?md5=02343705324CF0ECC16AA69AB76192B8
This will teach you the core technologies for creating web pages. Granted, jQuery is looking pretty long in the tooth these days, but you'll still run into it everywhere and often have use it.

* Read Pro Spring MVC with WebFlow:
gen.lib.rus.ec/book/index.php?md5=0525238A000EB02CD652F087E29F953C
Go through this book and use what you learn to create some kind of multi-user web application of your own. Make sure you host it somewhere that a recruiter or interviewer could pull up on their smartphone and look at.

If you go through all of this you could apply to jobs wanting 3-5 years experience and they wouldn't be able to tell a difference. Unfortunately--due to how expensive and legally dangerous it's become to fire incompetent employees--many corporations have totatlly lost their appetite for hiring newbies off the street. You're probably wasting your time sending resumes into postings you find on monster. Instead you should find a reputable "IT Recruiter" or "IT Consulting" business in your area and show them a couple of the projects you've built using what you learned going through the above. They'll be excited to put you in front of clients for interviews.

OK, that is what I was worried about the most. That if I became "great" at Haskell and Java, then I would have trouble finding Scala jobs. I am interested in data engineering and a lot of companies: Tinder, Twitter, some banks, etc. seem to be hiring Scala devs.

I tried a few videos from the Coursera Scala class (they are good) but I don't think they are the best for beginner programmers. The first principles book is much better and assumes very little background.

I assume once I learn Haskell well, I will be able to pick up Scala much quicker. I'm sticking with Haskell due to how excellent the first principles book is.

I also majored in math. So a lot of the math concepts look to translate over to Haskell well too.

>java
only if you are programming in android.

Kotlin might be the future of android development.

Java will live forever in enterprise though.

Thank you. A lot!

I heard about kotlin, but I could be wrong, seems clunky.

Nodejs is not common in CS courses.
The languages I suggested are still widespread in programming jobs that aren't web dev.

Is remote java job real? Can I be employed for some western company if I russian trainee-junior java core knower? Which level of english is required for such things? Just to be understandable is not enough for first few months? Or I will just be eaten by Rajeshes and Pankajes?

fuck this is some underrated g post

I wish this was possible. God knows I'd much rather work with Russians--the race that produced Kolmogorov and Lupanov is certain to produce better software than the barely-sentient street-shitters mashing keyboards in Mumbai.

Unfortunately even us local native English-speakers have trouble finding remote java work. Maybe some day when the Baby Boomers die we can change that.

Long text but quality is lacking...