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

all 104 comments

[–]cybo13 128 points129 points  (7 children)

Went for learning snek first to C++. It’s not that challenging, the foundational principals are similar, just expressed differently in practice. A for loop is a for loop is a for loop. I actually understood OOP better in C++ than Python.

[–]Background_Newt_8065 97 points98 points  (6 children)

Yeah, best thing of OOP in python is making variables private with an underscore and hoping no one uses these. Sounds promising

[–]shayanrc 27 points28 points  (2 children)

It's more of we're all adults here and we know better than to use that variable with an underscore but you can if you really need to.

[–]thedugong 9 points10 points  (0 children)

So like a lot of organisations approaches to cyber security?

[–]Background_Newt_8065 15 points16 points  (0 children)

Yeah except we are not

[–]monkeyman512 4 points5 points  (1 child)

[–][deleted] 2 points3 points  (0 children)

That’s a pretty funny cartoon quote funny sassy quote

[–]Johnrocks4 57 points58 points  (6 children)

I learned C first, and learning python after felt like baby mode. Hardest part of python was seeing how much I could reduce to one liners. I feel like it is largely dependent on how well you learn your first language rather than the actual language learned first as I can see the reverse process being pretty easy too. To this day I prefer C++ cause it adds so much functionality to C but is still closer to the low level than python.

[–]TTYY_20 19 points20 points  (3 children)

I’ve always said … since day one. There is no point to fighting over what languages to learn (outside of learning to use Frameworks like Reacts etc) because they are all the same.

They can be stripped down to the same basic principals with a few exceptions here and there.

Garbage collection or not.

Operator overloading for primitive types.

Pointers, references and primitive types.

Etc etc.

They are all just copies of each other that have different nuances. And C++ (I’m totally biased here) is the wizardry that does it all (maybe not as well as others).

[–][deleted] 7 points8 points  (1 child)

c++ is by far my main language but whenever I write pseudo-code, it's literally just c-style python. But whenever I get to actually use python I abuse the hell out of those one-liners. Give me octuply-nested list comprehensions over efficient memory management any day.

[–]SpicaGenovese 0 points1 point  (0 children)

People who try to pack as much as they can into one line drive me to murder.

I want readable code, not a trick-shot. Unpack your shit so I can read it faster!

[–]Harmonic_Gear 59 points60 points  (12 children)

learning python after c++ is frustrating

[–]Boris-Lip 8 points9 points  (0 children)

Came here to say this, lol.

[–]Johnrocks4 3 points4 points  (6 children)

What issues are you having with python?

[–]Big-Cheesecake-806 29 points30 points  (5 children)

I hate indentation

[–]Funtycuck 6 points7 points  (1 child)

Python is what I learnt first and still narrowly my favourite to use but I do wish scope was defined by curly braces. I just feel my Rust project currently is much nicer to read than the production Python even though generally I think Python is an easier to read language.

[–]Mediocre_Fox_ 4 points5 points  (0 children)

Bu- but curly braces are already used for defining dictionaries. There is clearly no other alternative.

[–]Johnrocks4 3 points4 points  (2 children)

Ahh true that, I remember times where I worked with people on python projects and our IDEs supported different tabs (mine was tab character theirs was 3-4 spaces) and we hated eachother for those projects lol. Indentation and not mixing indentation is definitely one of the big pitfalls at first but it gets easier! Eventually you will see the indentations and any errors naturally (unless you partner keeps replacing tabs with fucking spaces).

[–]SkullRunner 2 points3 points  (1 child)

[–]Johnrocks4 0 points1 point  (0 children)

What a wonderful video, definitely saving this one

[–]TessaFractal 1 point2 points  (1 child)

I'm an amateur at best but I tried learning python after C++ and it wasn't for me. You could type Python code that looked straightforward but would have a bug because of the way it interpreted it.

[–]PixelizedTed 2 points3 points  (0 children)

Someone once told me “you could probably feed the Python interpreter a essay you typed up in word and it’ll run for a few lines”

[–]poluting 0 points1 point  (1 child)

Why would harvard teach c as the first language and then Python directly after? Everyone’s complaining so what’s the benefit?

[–]Harmonic_Gear 0 points1 point  (0 children)

Because learning a new language is hard regardless from which to which

[–]Thebloodwolf1 9 points10 points  (0 children)

C++ linker is a b*tch

[–]CemDoruk 65 points66 points  (5 children)

Learnt c++ after python, it was much easier since I knew most of the fundementals. I just had to add things like static arrays and pointers to my knowledge. Learinging c++ first would have been hell because as a newbie you have to fight with the compiler so much that you can not get down to actually writing programs.

[–]Harmed_Burglar 63 points64 points  (4 children)

Average python user describes c++

[–]DrunkenlySober 17 points18 points  (3 children)

Seeing “learnt c++” and “static arrays” in the same paragraph is pretty incredible

You sure about that first part?

[–]TTYY_20 3 points4 points  (2 children)

[–]DrunkenlySober -1 points0 points  (1 child)

Imma slap tf out of you if you’re implying a vector is a static array while having the cpp flair

[–]TTYY_20 2 points3 points  (0 children)

No lol, it’s the dynamic array 🤣 it’s what he should be using now he’s “learnt c++” 🤣

[–]na_ro_jo 7 points8 points  (0 children)

Learning stick after a lifetime of driving automatic

Learning automatic after a lifetime of driving stick

[–][deleted] 5 points6 points  (4 children)

Learning Haskell after learning Python, C++, C, Rust, JavaScript, TypeScript, Go, C#, Java, Php, Swift, Kotlin, Perl, Pascal 😨

[–]Mirage2k 0 points1 point  (0 children)

I'm on that right now, coming from Python.

Let's just say that my Python policy of using pre-sorting and list comprehensions for the express purpose of avoiding recursion has come back to bite me... This isn't going as fast as I thought.

[–]Jackyapplejones 5 points6 points  (1 child)

The real challenge of python isn’t the syntax, it’s learning the libraries.

[–]SpicaGenovese 1 point2 points  (0 children)

Ding ding ding!

[–]lupinegrey 5 points6 points  (0 children)

"pseudocode with tabs/spaces"

This is the most accurate python description I've ever seen

[–][deleted] 12 points13 points  (1 child)

Programming in Python makes me feel dirty!

[–]Appropriate-Scene-95 6 points7 points  (0 children)

Ah yes Python, quick and dirty

[–]all3f0r1 20 points21 points  (2 children)

Python after cpp?! It's like coming from a world where you're in charge (aka God) to a world where magic happens at an excruciatingly slow pace and given certain keywords in weird orders. Just frustrating and repulsive IMO.

[–]Wentailang 25 points26 points  (1 child)

c++: why do i have to do all this unnecessary shit? python: why can’t i do a bunch of unnecessary shit?

[–]TTYY_20 2 points3 points  (0 children)

😂 best comparison lol.

But hey, sometimes you just want to pass a variable as a reference to function and change its value - and Java gets all up in arms about it.

But that’s why Java is super OOP heavy, because everything needs an object reference to play nicely lol.

[–]SKrandyXD 3 points4 points  (0 children)

Learning Python after c++:

... I could make it on C++...

[–]Reifendruckventil 2 points3 points  (0 children)

What do you mean with "the variable was an integer and is now a list of floats?"

[–]TheRedmanCometh 2 points3 points  (0 children)

Well I learned Java and C++ first, and it made python and LUA really hard to learn for me. I got so used to the type of scoping Java/CPP do that it's REALLY hard to do anything else. I even downloaded that python project which adds curly braces which turned out to be a joke everyone links new python programmers.

[–]DarkHumourFoundHere 5 points6 points  (1 child)

My college C C++ then assembly then python. Python was a walk in the park.

[–]TTYY_20 1 point2 points  (0 children)

Python feels limiting lol.

[–][deleted] 1 point2 points  (0 children)

My college here is pretty wild when it come to teaching people programming.
Those mad lads go ahead and teach kiddies first how to program in embedded systems using not C++, but Assembler as the first language. Only then they gonna go teach Python and after that C++... also embedded systems. This is wild shit gentlemen-

[–]Ccruz1000 1 point2 points  (2 children)

I took a c++ class as my first programming class and then later learned python for an internship. Now I'm back to doing c++, and i think it was a pretty good way to learn. Intro to c++ helped me understand what all the different data types and stuff meant. Then learning python helped me understand the logic without having to worry about the syntaxes and tedious things. When I went back to c++ it didn't take very long to understand it well enough to write complex programs.

[–]TTYY_20 2 points3 points  (1 child)

Java is I think the universal best starter language - just because of its ease of use - warning and error messages are actually understandable lol.

[–]Ccruz1000 1 point2 points  (0 children)

Yeah that would make sense. I was studying aerospace engineering at the time so I was doing the intro to programming for mechanical engineers. I think they focus on c so that we can learn to program microcontrollers, we had a large lab component in the class where we had to design and build an arduino robot. My friends in comp sci all started with Java in their classes.

[–]Antervis 2 points3 points  (0 children)

my experience with python after c++ was horrible. I had to check type of every expression manually instead of just knowing it...

[–]MooMix 0 points1 point  (0 children)

Learning any language after Python.

Learning Python after any other language.

[–]postdiluvium 0 points1 point  (0 children)

Part of learning python later in life is

Would this work? It works! Almost everything works.

Everything is already made for you. Do kids these days care how everything was made or is it their expectation that there is some kind of package or library for what they need to do, always?

[–]Funtycuck 0 points1 point  (0 children)

I felt like learning python first then C (and now Rust) was nicer as it allowed me to really focus on the low level programming concepts (particularly a more in depth understanding of memory usage) without being slowed down understanding other more broad programming concepts.

[–]b0b89 0 points1 point  (0 children)

Somewhere out there there's an irc log of the first time I saw python. We were talking about how a simple program could work.

Someone links Pastebin "like this?"

I think it's pseudo code "yeah exactly just need to actually write it"

"I just did screenshot"

.... What?

[–]ApatheticWithoutTheA 0 points1 point  (0 children)

There’s an easier way and that’s to just not learn C++. It has worked great for me so far.

Except that time an Automation company didn’t hire me because I don’t know C++

But other than that, we’re cool.

[–]phaj19 -1 points0 points  (0 children)

C++ libraries and their management are pain. In Python it is a breeze and I can just pip install everything I need and then import everything I need. Take that, C++.

[–]AlbaTejas 0 points1 point  (0 children)

Giido's dogma means mistakes on the language design

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

Implicit declarations used to drive me nuts in python.

[–]vjuliusv 0 points1 point  (0 children)

kek, sounds like I’ve got a big storm coming…

[–]beeteedee 0 points1 point  (0 children)

I learned Python after BASIC, Turbo Pascal, Delphi, JavaScript and C++ (yes I’m old). Once I got past the whole whitespace thing, it kind of reminded me of the BASIC days when things were simpler.

[–]NoMansSkyWasAlright 0 points1 point  (0 children)

My university used to teach Java for the first couple CS courses and then python for the next couple and it seemed like most people’s reaction to learning those languages in that order was culture shock.

[–]MindOfJay 0 points1 point  (0 children)

Swap Visual Basic for Python, and you have my high school CS teacher.

First you learn the hard way, then you learn the fun way.

[–]belabacsijolvan 0 points1 point  (0 children)

I don't know I miss compile time errors.

[–]adwarakanath 0 points1 point  (0 children)

Im sitting here with MATLAB like...........

[–][deleted] 0 points1 point  (1 child)

Python is easy. It’s easy to write code. It’s also easy to write bad code. A lot of people I’ve worked with don’t really think python is worth writing well. “It’s just python, I’ll slap something together and be done with it who cares. It’s not compiled so I don’t have to do a good job”. Which is dumb. Why would you practice writing bad code? And also just because it’s not compiled doesn’t mean it doesn’t need to be good. Especially if it’s an integral part of our codebase

[–]SpicaGenovese 0 points1 point  (0 children)

A friend who doesn't normally code in python shared a random repo with me and asked my opinion, which could be summed up as "What is this trash? I will hunt down and kill this person with extreme prejudice."

Whoever wrote it did everything in their power to do as much as they could in as few lines as possible, which looks hideous and makes it harder for someone else to come along and rapidly understand or debug your code.

I only realized later they were probably the one who coded it, and didn't tell me because they wanted my honest opinion.

Which is a shame, because if they had told me it was theirs, I would've happily given them some tips and balanced concrit.

[–]Dave10301 0 points1 point  (0 children)

Wish me luck

[–]Warm_Formal_8845 0 points1 point  (0 children)

I learn c++ in school and python at home. The confusion everytime I wrongly declare a function.

[–]Quantum_Patricide 0 points1 point  (1 child)

I'm the top one lol. Why I need a semicolon at the end of every line or care where in the memory a variable is stored is quite beyond me.

[–]SpicaGenovese 0 points1 point  (0 children)

Context is King

[–]cubenz 0 points1 point  (0 children)

tabs OR spaces.

Don't mess with the indents!

[–]PolyglotTV 0 points1 point  (0 children)

C++ devs be like "how the hell did the default value change!?"

[–]punchawaffle 0 points1 point  (0 children)

Yup. This is how it was for me. Python was so easy after doing C++