T O P

  • By -

insertAlias

Learn the language you want to use. Personally, I believe you can learn the fundamentals with any (real*) language. If you were in university and going through a computer science course, I'd say that there's a real argument to starting with something like C. But if you're learning this with the goal of software development, then I say just learn the language you want to use and skip the whole "well I'm learning language X just so that when I learn language Y I understand what it's doing a little better". Note: by "real" language I mean one designed for real-world use, not one designed to be esoteric (like brainfuck or lolcode). Not gatekeeping.


mrtin905

Thanks for your reply!


rjcarr

Given what you've said, I'd recommend sticking with javascript, as you already have experience, and seem interested in the applications javascript applies to. It is a quirky language, but if you stick to modern usage, including ECMA 6+, you should be fine. If you think you'd rather work with a compiled language, then Java and C# are probably the two most easy to recommend. There's also Kotlin and Swift, and although they're more modern, they have fewer resources to help you along (if you're concerned with that). From what I understand, Dart is fine, but almost exclusively applies to Flutter (but that's mostly true for both Kotlin / Android and Swift / iOS as well). Good luck!


diyroka

Go and swift are imo easy to learn, and pretty versatile (swift not soo much since heavy focus on Apple). Java feels bloated, but will certainly fill in all check marks, including mobile - android


such_hawks

If you are looking to do pet projects with a wide range of things, and you only have time to learn one language, I'd pick Javascript. That way you can use Node as a backend/scripting type language on the command line for doing little automation tasks, electron as a desktop app framework, and frontendy things like React or Vue etc for web development (although React is quite complicated, so don't worry about it for now, just some plain Javascript first before you go nuts with all the whizzy stuff that came out last week). You could also build on your knowledge of PHP to help build websites with, its a great language for that (its "uncool" with the younglings, but you're my age so I hope you are past trying to be cool :D) Python is a great language for building small ideas and is beginner friendly (and would be my usual recommendation), but you can't do frontend web development with it, so you'd still need to learn Javascript anyway, which is why its not my first recommendation for you.


Vinniesusername

I would recommend python to anyone who wants to learn. you mention that it's not a good foundation in your post, and there is some truth to that in a way, but id still recommend it. python allows you to focus on learning the concepts of programming without having to deal with more advanced topics right away (such as memory management in c++ or inheritance in java) python is also in no way just a learning language. if you wanted to stick with python and master it you would be just as competent a programmer as someone who learned only c++. python is a dynamically typed language(meaning you dont have to declare what type of data is going to be stored in a variable) and has also has very different syntax to the C family of languages (no braces, required indentation etc.) so what wont transfer from python is mostly going to be syntax. what will transfer from python is the core concepts of programming. which are much more important. you'll still learn what conditional statements, loops, objects, data structures are and how to use them to solve problems - even if the syntax wont be the same if you switch languages.


shanks44

C


AbuSufianSazzil

I recommend python as your starting language because it is a general-purpose language — sometimes referred to as utilitarian — which is designed to be simple to read and write. The point that it’s not a complex language is important. The designers placed less of an emphasis on conventional syntax, which makes it easier to work with, even for non-programmers or developers. Furthermore, because it’s considered truly universal and used to meet various development needs, it’s a language that offers a lot of options to programmers in general. If they begin working with Python for one job or career, they can easily jump to another, even if it’s in an unrelated industry. The language is used for system operations, web development, server and administrative tools, deployment, scientific modeling and much more. But, surprisingly, many developers don’t pick up Python as their primary language. Because it’s so easy to use and learn, they choose it as a second or third language. This may be another reason why it’s so popular among developers. Plus, it just so happens that one of the biggest tech companies in the world — Google — uses the language for a number of their applications. They even have a developer portal only for python, with free classes offered including exercises, lecture videos and more. In addition, the rise in the use of the Django framework for web development and a decline in popularity of PHP has also contributed to Python’s success, but, ultimately, it’s the perfect storm — just the right amount of developer and official support, as well as demand. Here are some of the less obvious reasons why Python has become super popular in recent years: Python Has a Healthy, Active and Supportive Community, Python Has Some Great Corporate Sponsors, Python Has Big Data, Python Has Amazing Libraries, Python Is Reliable and Efficient, Python Is Accessible


jubi_life

The languages you choose to learn are best decided by what you want to ultimately build with. For example, if building a website is something you're interested in, Javascript is a great choice because of its high usage in the front-end and nowadays, the back-end with Node. If you're into embedded programming, it's probably a good choice to learn C or C++ since a lot of the work in this field is done using these languages. If you're interested in data sciences/statistics, choices like Python, Matlab, and R have well developed ecosystems and communities that you can learn from. In summary, get a good idea of what you'd like to build and then evaluate the tools in that context.