Hobby programming

Hey Sup Forums.

I am a Mechanical Engineer Student but I like to program as a hobby and I wanted to learn a new language. I wanted to learn a bit of C but gee says it's an outdated language. I was also curious about java script but I don't know if that would be useful in anyway to me.

Already know Python.

Thanks.

Pic related is my cat btw

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
twitter.com/SFWRedditVideos

Depends what you fancy - what's your opinion on Python, what did/didn't you like about it?

I like that is easy and there is a lot of stuff for scientific and engineering. But I want to learn more about lower level stuff because I fell that that will make me a better program. That's why I wanted to learn C but at the same time I don't know if it is worth the time or not

Sorry for the errors I am phoneposting

>I like that is easy and there is a lot of stuff for scientific and engineering. But I want to learn more about lower level stuff because I fell that that will make me a better program. That's why I wanted to learn C but at the same time I don't know if it is worth the time or not

I think C is dated, i learned it in college when I was in EE. When you want to pick a language start with your end goal.
- If you want to build web apps - Javascript
- Build apps: Android? Java, iOS? Swift
- Data science: More Python and R
- AI/ ML/DL - More python but using libraries like tensorflow, keras and theano
-Game design - Unity C#, Unreal Engine: C++

Mech Engineer could really benefit from learning C. It is still used a lot due to its low-level nature. It allows for easy in-line assembly and everything. If you want something a bit more "modern" go with C++. All the benefits of C while still being pretty low level. If you want "fun, but basically pointless," go with java. If you want to mess around with web shit, go with javascript. Basically the "easy" ones to pick up. C is obviously the hardest of the bunch, but it is a good tool set to have along with Python's "hur dur easy shit, but slow as ass!" style, you will basically be able to do everything if you learn these.

>Mech Engineer

Learn C and ASM. Its literally the most
beneficial languages you could learn.

>but gee says it's an outdated language

Who the fuck takes memes seriously tf

>Outdated
>Low level, but still close to English syntax.
It is literally impossible to be both of these.

Its just depends what you want to do. If you want to drive cars and fly planes c is still King in embedded programming and probably won't be unseated for a very long time.

If you want to build the next phone app or web service jiggler I'd steer clear though.

i am no animal advocate and would never promote violence against animals, but god dammit, just fucking kill yourself

>i am no animal advocate and would never promote violence against animals
>kill yourself
>yourself
>violence against animals

literally if it is just a hobby learn java

>Learning java for fun

c is literally the greatest programming language by being the only one that is worth using other than c++, everything else massively sacrifices SOMETHING.
c has good compilers for literally every architechture that has a compiler made for it, c is capable of expressing things related to hardware that other languages simply cannot, c is simple, c helps teach (not "forces you to learn", that's just untrue) you how many details of the system you use work (memory segments, file descriptors, dynamic linking, syscalls, etc), and c is capable of having assembly embedded in it (WELL).
c is not outdated, there are massive projects using it that have no intention of switching to anything else, many of them would (because of performance, mainly) have a choice between c, c++, rust, pascal, or fortran, with the latter 3 being too new/incompatible/complex, too old/unused/uncommon, and too ancient/unused respectively, and c++ being not worth the effort.
as a mechanical engineer, i would imagine that most of your work will be CAD, which is pretty firmly c++ territory with some java programs as well. (java isn't that unnatural of a step up from c especially, but nothing modern really is)
frankly, if you learn c, you can learn c++ (or whatever) later, and probably appreciate it more. (or not, i don't.)

Just go for C. It's a very compact language so it shouldn't take you much time to learn it, and also gives you a really nice view into how memory management works. It also has one of the most well organized programming paradigms out there, and will help you structure your projects in C++ better.

Everything this user says is true.

>Mech Engineer

Learn C, C++, Assembly, any systems language. All or one to specialize in. Either way it will help you down the line.

Who is Markus Persson?

>C
>Easy
Hue. It is basically the hardest to learn "widely used" language. That is not saying much, since it is still pretty easy, but what is your point of comparison? Brainfuck? Yeah, sure it is is easy compared to that garbage, but that is hardly saying much. Keep in mind this guy is a Mech Engineering baby that thinks Python is something worth mentioning in their post. You need to consider how dumb he is. Yes, C would help him a lot in his *cough* future career, but it is not "easy." He should start with C++ and work his way down to C. The insane amount of C++ packages basically allow you to

import everything


and call it a day most of the time. It is a good first step for a Python baby where basically the entire language is using abstractions someone already made.

Learn C, it's not an outdated language you retard. Javascript is for webdev cucks. Python is the worst

>Javascript is for webdev cucks
You say that like it is a bad thing.

>C IS HARD IN COMPARISON TO C++
>HE SHOULD START WITH C++ AND WORK HIS WAY DOWN TO C
>IMPORT EVERYTHING
>ABSTRACTIONS SOMEONE ALREADY MADE
oh yeAH BECAUSE USING OTHER PEOPLE'S CODE INSTEAD OF YOUR OWN (WHEN YOU ARE AN ENGINEER THAT IS SUPPOSED TO ACTUALLY UNDERSTAND THE MATH YOU ARE USING) IS A GOOD THING AND YOU DON'T NEED TO LEARN HARD ANYTHING TO USE C++ LIBRARIES
that is so wrong that i honestly believe you are lying to try to fuck with people.
fuck you, you degenerate piece of filth.
>brainfuck
>"that garbage"
the fact that you mentioned something like this without understanding it's point heavily implies you don't know what you are talking about and are trying to name drop to increase the perceived value of your opinion.
i almost thought you actually understood something and still managed to be this wrong, i am actually relieved to know that.

>Completely missing the point that this is a hobby we are talking about
>Completely missing he knows Python, so he knows the basics
>C elitism when it is not helping anyone
>All caps
>Not even consistent all caps, starting for some reason mid-word
Go to bed, child. It is passed your bedtime.

>lack of argument
>closest approach is saying "c elitism", which is the equivalent of saying "your opinion is shared by others and i don't like it" in this context
>picks on consistency by saying "all caps" and then "inconsistent caps" no less than a line later
you gottem

>cherrypicking points
>still not addressing that this is a hobby
I would think a child like you would know the concept of fun.

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.

>Already know Python.
Why do people keep ignoring this part of OP's post?

>y-you didn't directly address one of my idiotic non-arguments
mm yeah, actually i did on the second line of my post.
for the feeble-minded projecting child in you, c++ is a language that embraces concepts from computer science like object orientation and a more complex type system that roots into simple things like operators with operator overloading, and genericism with templates, and data structures with class. these are not things any hobbyist needs, nor are they necessarily good for one, they exist for code reuse and readability (mainly), they are very explicitly for large sprawing projects and therefore the programmers working on them, very often employed as such.
let me remind you that c has MANY libraries, and it is often that you find c++ programs using c libraries, one wonders how many libraries c++ would have if you were to only count ones written in idiomatic c++ rather than "c with classes" or actual c.
you do not *need* complex namespaces, oop, templates, or any of the other newer c++ features to write hobby programs, even large ones (see mpv, any number of image viewers, dwm/i3/many other window managers, irssi/any number of irc clients, and fucking linux which started as a hobby project)

Matlab.

>Try Python, or try C -> C++
>But he already knows Python!
Did you ignore a part of that post?