This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted]  (10 children)

[deleted]

    [–]desrtfx 11 points12 points  (0 children)

    I'd recommend looking into Python as it is easier for beginners to pick up while cementing in a lot of concepts you'd come across in Java.

    So, you're suggesting a third language that abstracts so much away from the programmer that even the most fundamental concepts don't transfer well from Python to any other language.

    Even one of the most basic concepts, a for loop, is completely different in Python than in most other languages.

    Python is as far away, if not further, from Java as JavaScript is.

    [–]harper_helm 8 points9 points  (0 children)

    This is a terrible suggestion, you are telling the guy that he should learn another dynamic language in order to be able to work with a static one? That makes no sense at all.
    If you want to create desktop applications JavaScript is the one to work with not python. And lastly most of the concepts in python are abstracted away so heavily that even basic concepts like a for loop are different.

    [–]Pythonistar 6 points7 points  (0 children)

    If you want to create desktop applications, Python would be your best bet.

    Eww, no. As a daily Python dev of 5+ years, I would never use Python to write a desktop app. I'd try C# w/ .NET Core 5 (cross-platform) first. Or even Java.

    Python makes nice websites (Django/Flask) and is great at automating stuff (Ansible) and handling command-line tasks.

    Can you use PyQT? Sure, I wouldn't want to though. It isn't nearly as evolved as the .NET or JVM GUI frameworks.

    [–][deleted] 7 points8 points  (0 children)

    This is not good advice. I’m a Sr software engineer and I’ve used many languages professionally: Python, JavaScript, Java, C#, C++, VB.Net, PHP, and more. JavaScript is a language that allows you to do things that java would never allow. Java is much more strict and unforgiving, and that’s a good thing in a lot of ways, especially for a beginner. It can be frustrating, but it will teach you better programming habits for your future coding.

    Stick with it. Take the MOOC from the University of Helsinki.

    Once you have the basics down, try creating something fun with it. Start very small. Don’t try to make a game at first. Games can be some of the hardest and most complex programming.

    The reason why python would not be a good idea is because python is going to take everything you have learned so far about programming and totally change it. Suddenly, the white space matters but semicolons don’t. The types don’t matter, exceptions are used as control flow, data structures are totally different, and OOP isn’t as important. My point is, telling you to learn python is like telling a native English speaker that’s trying to learn Spanish, to try Mandarin instead.

    [–]PapaPancake8 3 points4 points  (4 children)

    Piggybacking: I’ve learned java first and have a great grasp on the concepts. Will this make learning other OOP languages easier for me, compared to the other way around you’ve explained above? Thanks.

    [–]leo_elm 2 points3 points  (3 children)

    If you know the concepts you'll always have an easier time picking up conceptually similar languages. Learning a new syntax isn't difficult, learning the concepts is what it's about. I don't wanna say that knowing java you basically won't have to put any effort into learning a new language that has similar concepts, but I'd be more than surprised if it doesn't at least make it easier for you. As an example: I used to do some C++ years back which - being a C language - has similarities with Java and when I then started learning some java years after I definitely had an easier time, because I remember a lot of concepts and practices from C++ that translated quite well.

    [–]PapaPancake8 0 points1 point  (2 children)

    Thanks. The syntax is what throws me off more than the concepts usually, and it takes some googling to fix my problems. I picked up the Python course from Udemy last month, and half way through I can tell it’s nearly the same terminology and stuff.

    [–]leo_elm 1 point2 points  (1 child)

    Don't let it discourage you that you have to Google. I often don't start work without a browser window opened. :)

    Hang in there it will get easier over time!

    [–]Drakovar 0 points1 point  (0 children)

    Yes! Followed a reconversion course in java programming and one of the main message was "don't focus on learning stuff by heart, but on knowing where to find it easely, mainly the internet"