3 ms·
In my opinion Java is great if you want to write big enterprise-y applications but if you just want to get something done or just learn some concepts I would su
by imauld 9y ago
In my opinion Java is great if you want to write big enterprise-y applications but if you just want to get something done or just learn some concepts I would suggest Python. You can do all the same things you can do with Java as a beginner and it will mostly stay out of your way. Python also doesn't require a build system like Java does. You can just write some Python in a plain old text editor and run it without too much trouble. Java on the other hand will require a build system and a full IDE.
IMO with all the other languages available Java just doesn't really offer anything special enough to warrant it's dealing with it's awkward type system and verbosity. Unless you want to do something with Java specifically like Android dev it just doesn't offer anything worth the pain. If want higher performance and the type safety that Python doesn't have I prefer Go. It's syntax is very similar to Python and it has some interesting concepts.
Whatever you choose don't choose based off hype/promises of jobs. Most companies will hire engineers who have never used the language(s) in their stack as long you can demonstrate knowledge of core programming concepts. Python's `list`, Java's `ArrayList` and Go's `slice` might have some slight differences in implementations and different warts and what have you but deep down they are arrays. If you are familiar with the data structures and algorithms core to programming you can learn to use any language to solve problems.
At the end of the day a language is just a tool. The concepts that underpin these tools are what is important. So choose a tool you enjoy using and fits the scenario. Here are some links that were helpful for me, hopefully they will be helpful for you:
Python:
- https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial... - Good tutorial written for Flask.
- https://docs.python.org/3/ https://docs.python.org/3/ - Python docs, lots of good info there
- https://docs.djangoproject.com/en/2.0/intro/tutorial01/ https://docs.djangoproject.com/en/2.0/intro/tutorial01/ - Django tutorial. Good intro to developing applications with Django, probably the most popular/common Python web framework.
Go:
- https://tour.golang.org/welcome/1 https://tour.golang.org/welcome/1
- https://gobyexample.com/ https://gobyexample.com/
General:
- https://www.codecademy.com/catalog/subject/web-development https://www.codecademy.com/catalog/subject/web-development - Very basic tutorials, has Java and Python as well as others
- https://github.com/jwasham/coding-interview-university https://github.com/jwasham/coding-interview-university - Lots of general CS info, this is the important stuff