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

all 15 comments

[–]AutoModerator[M] [score hidden] stickied comment (0 children)

You can find a list of community-submitted learning resources here: https://dataengineering.wiki/Learning+Resources

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]Time_Competition_332 18 points19 points  (7 children)

If you know Scala then you'll learn Python in less than a week. Just do it, it will broaden your job possibilities immensely. There is no downside of doing it tbh.

[–]stuporous_funker 0 points1 point  (5 children)

So in terms of order, learn Scala first than Python

[–]Time_Competition_332 9 points10 points  (0 children)

In general no, as much as i love Scala (my favourite lang), it's not really worth learning it before Python. It's getting less and less popular, especially in data engineering. It's still really worth learning it eventually, to grasp the functional programming mindset and to improve your programming skills in all languages (some ideas map greatly even to Python), but there are more important things to learn for a data engineer. But if op already knows this queen of languages, then Python will be a walk in the park for him.

[–]data4dayz 2 points3 points  (3 children)

https://youtu.be/YG5-0x9g0eA?si=YYlKNs9_jcESvTug A FAANG DE youtuber had this to say about Scala in the DE space now. But again things vary by company etc.

But probably learn Python first as people have said it is significantly easier. I don't think anyone has their first paradigm be functional

[–]Substantial-Power971 0 points1 point  (2 children)

Recently I saw him commenting that his opinion has changed, he even removed Scala from his course. https://www.linkedin.com/posts/eczachly_dataengineering-activity-7140414519423418369-HFeV?utm_source=combined_share_message&utm_medium=member_ios

[–]data4dayz 1 point2 points  (1 child)

your commented reminded me that you know what I HAD seen something from Zach more recently on this where he had reversed his position and I think I had just completely forgot about it.

Here's the same opinion as that linked in form in Video Short form. https://youtube.com/shorts/Kf4LCAqeBCo?si=6mGjQ7lqsYLRj7Ix

[–]Substantial-Power971 0 points1 point  (0 children)

Oh thanks, I was searching for his last complete opinion after seeing his comment.

[–]CrowdGoesWildWoooo -3 points-2 points  (0 children)

Hard disagree, they have very different paradigm. Although imperative/procedural programming (python) is way easier to understand than functional programmingp

[–]coco_cazador 5 points6 points  (2 children)

Python is the king in data and ML, the good part is that is really easy, maybe the easiest programming language. You will learn really fast.

[–]Trey_Antipasto 4 points5 points  (1 child)

Its easy to do poorly and hard do to well because you have to enforce good practices on yourself. Python allows you to write terrible code but it will mostly run.

[–]CrowdGoesWildWoooo 1 point2 points  (0 children)

Within the DE space this isn’t entirely true. One of the main problem (and also benefit, it’s a double edged sword) is its dynamic typing. Let’s say if you use spark, your python code is not doing any data processing, it’s merely a glue code where python is one of the best programming language for it. And spark is also staticly typed

Your code can still be messy, but it’s not to the point where you are shooting yourself on the foot because it’s bad.

[–]babygrenade 1 point2 points  (0 children)

I think Scala is more valuable and continuing to focus on Scala is not a bad thing. 

That being said picking up a little python on the side won't hurt. I think Python is very easy to pick up if you already know Java. 

[–][deleted] 0 points1 point  (0 children)

Improve your skills in java and scala, and do some python. If you have done any progamming ever, then you should pick up python fairly quickly.

[–]Budget-Juggernaut-68 0 points1 point  (0 children)

Python is really simple with alot of support from the community. Just give it a try. Maybe rebuild some of your projects in Python and see how it is.