What langauge should I learn if I'm under these conditions:

What langauge should I learn if I'm under these conditions:

1) Only did some very very basic Java in the past.

2) Looking for something that would get me a job.

3) Could help me build a good portfolio.

4) Time doesn't matter, I'm a NEET atm.

Sort of thinking about PHP, but I've heard that it's getting replaced by j.node by some, and from others I've heard PHP isn't going anywhere.


fucking stuck here man

Other urls found in this thread:

stackoverflow.com/research/developer-survey-2016)
twitter.com/SFWRedditVideos

Arabic

Japanese. Translate anime and manga.

Learn C, then learn Java or C++. If you learn C, then you'll be able to understand how every other language is implemented a fundemental level. Job interviewers have always been impressed when I can explain programming concepts down to the assembly level, so this understanding seems to be relevant. Java and C++ come up the most in job postings that I run into.

What edition of Java come up in the most job postings? SE or EE?

I don't have enough Java experience to know the difference. I've only ever landed C# or C++ (in VS) jobs.

Ah, thanks for the information mate.

May I ask what kind of stuff it is that you usually program on C#? Software? Networking? Games(heh, probably not)?

Want to work in a startup
-> python
Want to work in a big company and not commit suicide
-> java
Want to work in a big company and commit suicide
-> C/C++
Want to just commit suicide
->VHDL

Webapps in startup
-> ruby on rails, maybe nodjs, maybe django, who knows what backend they use.
Webapps in big company
-> php, no way nodejs is anywhere near as efficient

.NEET

I'm in university, so just random bullshit that's deserving of a co-op student.

I've done a lot of random web shit and a few command line C# programs. I've also done some Java websites, which were set up in this crazy framework. I've also done some stuff with this one company's C++ networking drivers.

There's really no special knowledge you need for any of it other than something like ASP.NET (horrifying) or Java web stuff. I'm not sure how useful ASP.NET will be in the future because MS is moving onto .NET CORE ASP.NET 5 MVC 6 or whatever horrible name they've given their new platform.

what do u mean commit suicide men

yeah im not falling for the nodejs meme either, mainly because php isnt going anywhere even if it was objectively better

>Want to work in a startup
>-> python
I've interviewed for several startups, and I've never heard anything about python. IMO, language is mostly irrelevant; programming knowledge is most important

>Want to work in a big company and commit suicide
>-> C/C++
no big company uses C anymore. C++ is pretty common though and C/C++ is the worst language to deal with when programmed badly.\

>Want to just commit suicide
>->VHDL
lmao VHDL is the reason why language design by committee is the worst thing you can do. Consider AngularJS or CSS if you want to commit suicide though.

>Webapps in startup
Aren't Java EE and ASP.NET popular these days among startups?

C/C++ has a very steep learning curve. It has a lot of power. But that power can very easily shoot you in the foot.

VHDL is not really a programming language, but it acts like one. If any companies in the neighborhood create custom hardware (like cinema end projects and advanced constant audio and video processing). For a programmer it's going to fuck you up.

i love learning man, might be steep but fuck it, if you have your mind set to it then I believe you're set

but how different are C and C++? should i start with C or just fuck shit up and go straight to c++? (doing java currently though)

Python is multiplatform. I currently work at a robotics startup, and everything is done with python. It is ideal for quick development (like most startups require).
It is quite popular (check the numbers from stackoverflow stackoverflow.com/research/developer-survey-2016)
It is really easy to learn, but all other languages will seem harder if you take this one as first language to learn.

>C/C++ has a very steep learning curve
I actually found that C was very easy to learn, while C# (the first language my uni wanted to teach me because M$ paid them) was actually very difficult to learn because the level of abstraction was pretty extreme.

>but how different are C and C++?
While C++ is not superset of C (anyone who tells you it is is a moron), C++ is basically just C with some extensions. I'd recommend learning how to code in C, then learning how to augment your code with C++.

I'm in southern Ontario. Maybe it's just not popular here. I'd say that python is one of the best languages if performance is not a major concern.

C is only still used in embedded applications. If you want to start writing drivers, and low-level stuff, use c. C++ is more high level (allows classes and such). So if you come from a java background, go C++.

>C is only still used in embedded application
I had a friend who worked a crypo startup. They worked with C. It's definitely not exclusively used in embedded systems.

IMO, the reason to use C over C++ is more because of the massive number of bad C++ programmers than the language concepts themselves. It's not hard to make minimalistic C++ that works like C.

OP
Learn python, but not as a language, what you need to learn is "how to solve problems with computers"

Python is very straightfoward, so you are not gonna sidetrack the "learning to solve problems with computers" by having to learn shitty lanague specifications that don't even make sense for you cause you don't know "how to solve problems with computers" yet.

Once you know python there's loads of other languages that will end up being self-explainable

But the most important thing is you already know what the fuck you are supposed to be doing ,so you only need to look for how the specific language implements what you need to use.


Don't be like those people that "know 20 languages" but can't even sort a big list in non-autistic time

Like programming should be you writing in a piece of paper till you figure how the main functions will work and how you gonna structure everything so its not a fucking mess, maybe make some diagrams, then you actually type the code

This way you can write code in everything as long as you know (or can google) how that language handles whatever you need to do in order to make the code work

>the most important thing is you already know what the fuck you are supposed to be doing ,so you only need to look for how the specific language implements what you need to use.

In my experience, you need to be able to understand how a computerworks before you can easily do any arbitrary task with an arbtrary programming language. That's why I found C such a useful learning tool.

I think you are trying to fuck with OP

C should be a second language, after you know how to do shit, so you can now learn how to optimize it

That was not my experience. My university taught C# first because M$ paid them. I had a lot of trouble understanding what I was actually doing, but one I learned C, it all made sense to me. I understood at the assembly level what ref, out, polymorphic calls meant. All of the abstracted things in C# made sense to me after a months of fucking around with TCC. A couple months later, I learned about proper C compiler and Valgrind and actually understood how people dealt with all this power.

I doubt everyone will have the same experience I did,but I think anyone would benefit from understanding programming with pointers, function pointers, etc.

after reading this, I'm embarrassed at how bad my typing is.

>I think anyone would benefit from understanding programming with pointers, function pointers, etc.

Im not saying not to this, im saying that some basic learning may be better at the start, as a stepping stone for more complex stuff

I know two people in uni on coputer related stuff, one for CS one for EE, both were taught python - bash - haskell - C - Java in that order

Python for easy-as-pseudocode grasp on cs thinking/robot fights, bash as a gateway to linux, haskell cause lol, C to fill the gaps, and Java to OOP

>one for EE
I'm in CE. From What I hear from the EEs in this program, software is mostly irrelevant.

how do you program your fighting robots doe

That kind of thing would require C or assembly because it requires realtime shit. I'm not an expert on that.

Almost everyone on the east coast is C#/.NET with MS SQL. So if you're looking for a job I would say:

C# (use Visual Studio, it's simply the best IDE)
MS SQL
Python

If you don't care about getting a job install Linux and use something like Vim or nano and learn C/C++, mySQL and Python

underrated post

Java > C#
and I'm in southern Ontario, which is basically east coast. There are just more Java jobs, for good reason.

Ruby on Rails will get you a long way for startup work, but just be aware it's not an easy learning curve. Ruby (the language) is easy and very elegant, Rails *seems* easy, but there is a lot going on under the surface.

its done with some chip with a wifi antenna and python + a framework

python path-finds and triggers the weapons/defense mechanisms

if you expect them to learn C or assembly then they can't do it fast enough to get motivated to keep learning

also that don't-reinvent the wheel thingy

my point:
learning = pedagogy + content

good pedagogy in layered subjects is about starting from the top and going backwards, if you go the opposite way students rage-quit cause they can't see progress

You have these options:
>Ruby on rails
>php / composer
>nodejs / express
>Java/???

Anyone who tells you to learn C/C++ to get a job is a fool. While I would agree that those languages teach excellent fundamentals, they have little (although important) use in the real world.

I fucked with programmable robots in C++ at uni 3 years ago. Fast forward to now, I'm nearly clearing 90k in a cushy, permanent devops position writing Ruby/bash scripts all day. Yeah it's not the greatest but it's better than managing a C++ codebase

C# is a better language than Java, without question. Shame the runtime sucks