5

What language should I learn and where can I learn it?

Submitted by martasultan in freeAsInFreedom

I haven't the most basic clue about programming other than some shitty mods I made for games a whiles back; I've decided that instead of focusing on some bullshit education I want to focus on skills I'll find use it, but, again, having not the faintest idea I'm coming to y'all to ask where I should start, especially when not intending to code for money (as most sites are oriented towards).

Comments

You must log in or register to comment.

6

zzuum wrote

Python is a nice easy and useful language. Just go to codecademy or one of the many free learning sites

1

kore wrote

yep, python is a quick and easy start and you'll become multilingual soon enough so it doesn't matter too too much what language you pick to start

1

throwaway wrote

Freelance python web developer here, my vote goes to Python too. It's simple once you learn to think 'programatically', there's no strange requirements when it comes to syntax, and you can easily learn many other languages once you get the hang of it.

It's also incredibly versatile. You can make tiny scripts, huge logical applications, webshops made fully custom with awesome CMS's such as Wagtail - the possibilities are almost endless.

If you're feeling experimental and want to try something new, that might be the bright new future, but could also be nothing but trash, try a functional programming language such as Elixir, and learn the framework that goes along with it for web development, Phoenix.

Good luck (:

3

chariot wrote

Up to now a significant amount of open source projects are all coded in c. In part, it's because a c compiler exists for almost any platform, and the small number of features the language has available meaning that it is easier to contribute to projects. The linux kernel being in c probably also leads by example.

I think the best thing to do though is to find a project you want to contribute to for personal reasons (you use it often for example) and try to learn the language according to that project. Often projects have style guidelines which means you could learn to code the language using the style that project is interested in. While you are learning the language you could ask contributors if there is any help you could do, sometimes just reproducing bugs and trying to provide useful bug reports to maintainers could get you involved in the project while you are learning to code.

1

edmund_the_destroyer wrote (edited )

If you have a really good idea what kind of work you want to do, it makes sense to search for what languages are used in it. If you want to write iOS applications (I hate iPhones, I'm just using this as an example) then you probably want to learn Swift or Objective-C, the two programming languages used the most on it.

Graphics-intensive video game work is usually done in C++. Android applications are usually written in Java or Kotlin.

Most web pages have Javascript in the part that runs in your browser - anything that makes a page pretty by moving stuff around. But you can use any language on the server. If you're fuzzy on what that distinction means, don't worry about it.

Hour of Code and then khanacademy.com have beginner stuff that might be useful. Good luck.

(Edit: You will see a lot of people saying, "This language is great and that language is terrible!" Ignore most of it - with enough skill most people can get useful things done with any language. There are good reasons to prefer one to another, but the world won't end if you pick Javascript when someone wanted you to pick Python or Lisp, or vice versa.)

1

Freux wrote

I'm a newbie that never made anything amazing but hopefully this will be useful. I've tried to learn python, c++, and c#. I would always get confused somewhere not really understanding what I was doing or how what I'm learning could be use for.

Until I decided to learn c and tried the book "C programming a modern approach" by K. N. King. I'm still reading it but I highly recommend it as it's the first book that I find easy to read and finally grasp how what I'm learning can be used. I took a small c# class after that, I already understood some basic OOP and used my knowledge of c for the entire class.

If you ever need help with the exercises/projects in the book or simply want to see how someone else solve a problem you can look here:

https://github.com/fordea/c-programming-a-modern-approach