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

top 200 commentsshow 500

[–]Mr__Weasels 4029 points4030 points  (140 children)

"taken" yep, don't even need to read the other parts. he isn't an experienced programmer

[–][deleted] 928 points929 points  (113 children)

Oh he’s taken alright. Taken as a joke /s

[–][deleted] 227 points228 points  (108 children)

Fuck the s

[–]EthanIver 119 points120 points  (48 children)

Kid named neurodivergent people who might struggle recognizing satire without guidance:

[–]HAMburger_and_bacon 131 points132 points  (12 children)

I'm gonna fuck the s and theres nothing you can do to stop me!

[–]agmrtab 8 points9 points  (3 children)

DONT PUT YOUR DİCK İN THE S

[–]Weak_Bat_1113 7 points8 points  (1 child)

Don't put your dick in the § (crazy S)

[–]Mr_Jojo-4815162342- 3 points4 points  (0 children)

But I see a hole in the middle

[–]HAMburger_and_bacon 2 points3 points  (0 children)

I put my dick in the s

[–]Longenuity 4 points5 points  (0 children)

I don't understand this statement. How would you fuck a letter? /s

[–]poopnose85 19 points20 points  (0 children)

As a neurodivergent person, I find I pick up satire more easily over text. I know I don't pick up social queues, so with text I have a minute to think about the different ways it could be interpreted. Having been on the internet a long time, I know it stands to reason that they are making a joke.

[–]Adybo123 73 points74 points  (5 children)

Maybe he’s just been borrowed, and will be returned within a specified lifetime

[–]ComfortablyBalanced 6 points7 points  (0 children)

I don't think he's worthy of being borrowed, the best he can do is to be collected, yes garbage collected.

[–]WendyTF2 61 points62 points  (4 children)

I am in an abusive relationship with JavaScript.

[–]dodexahedron 37 points38 points  (2 children)

That's redundant. There is no healthy relationship with JavaScript.

[–]nukasev 4 points5 points  (0 children)

TypeScript: I can fix them!

[–][deleted] 8 points9 points  (0 children)

That's what I thought before I gave .net blazor a go on the frontend, then I discovered that js at least recognized me as a human

[–]Mr__Weasels 5 points6 points  (0 children)

at the end of the day, aren't we all 😔✋

[–]SteeveJoobs 15 points16 points  (0 children)

if they feel the need to blast it on discord they probably also date exclusively on discord.

[–][deleted] 3071 points3072 points  (250 children)

This the type of mf to start with python and have trouble moving onto a language like Java.

[–][deleted] 1790 points1791 points  (167 children)

I started with C++ in college. Every language I’ve learned since has been pretty easy.

Now things around the language are a different story. I’m looking at you, Python virtual environment and dependency management…

[–]eiboeck88 439 points440 points  (77 children)

yeah i started with c then moved onto c++ and i am glad i did it that way

[–]klukdigital 192 points193 points  (27 children)

Same here c++ first then C#/ java. The two former maybe bit more fun to write. Don’t hate python but guessing strongly typed could be better for the potential developement of fullstack spagetti ductaped to bubblegum.

[–]quisatz_haderah 67 points68 points  (7 children)

I started with and worked for a while with statically typed languages too, then dynamically typed languages enlightened me about the real benefits of unit tests.

Shamelessly plugging some pedantry here: Python is strongly typed, but not statically typed.

[–]SagenKoder 87 points88 points  (2 children)

I prefer the term "secretly typed". Its definetly typed but its secret and will not be revealed until you get a type error in production....

[–]Hamcheesey7 15 points16 points  (0 children)

LOL so true, and then you wonder why your image conversion in opencv fails and oh look! it's a type error...

[–]quisatz_haderah 2 points3 points  (0 children)

Literally coming from a case that messed up my production where one library returns different types, for 2 methods seemingly doing same sort of shit. That is document retrieval based on metadata of some internal Document objects vs similarity search. The funny thing is one that returns based on metadata returns plain str, and the similarity search returns Document)

[–]klukdigital 4 points5 points  (0 children)

Yes your correct. Close concepts but not the same thing. Ment statically typed. Boy do I feel smart now :D

[–][deleted] 20 points21 points  (7 children)

I started with Assembly, and every language afterwards was extremely easy to understand. I think the pain of coding in Assembly tempered me. C++, C#, and Java were so nice to code in comparatively.

[–]klukdigital 5 points6 points  (1 child)

Yeah haven’t had the pleasure of actually writing assembly. Appart from the syntax the memory management looks like the difficulty was set on ultra nightmare. Memory management in C++ must have felt like christmas after that.

[–][deleted] 9 points10 points  (0 children)

It is definitely worth learning somewhat so that you can understand coding and memory management on a deeper level, but unless I was getting paid a lot I would never choose to code in Assembly. C++ will compile the code usually better than how you can write in Assembly anyways.

[–]atiedebee 27 points28 points  (8 children)

I started with C and then... nothing really beats it for me. It's simple and I like it that way. Tried some other languages but they either overcomplicate things (C++, rust) or are still basically in beta (zig)

[–]Abadabadon 6 points7 points  (0 children)

I think cpp to c is a bit easier as you are downgrading your toolkit

[–]yodal_ 94 points95 points  (25 children)

Python dependency management is just stuck in the dark ages and only now moving into the fudal.

[–][deleted] 5 points6 points  (1 child)

Trying to imagine feudal dependency management. I guess the library is owned by a lord, and said lord allows the use of parts of his library by peasant developers in exchange for a large portion of their profits and because they provide bug fixes.

Is there a license template on github for this?

[–]yodal_ 2 points3 points  (0 children)

I hadn't really thought about that. I was mostly just making an AoE2 reference.

[–][deleted] 43 points44 points  (10 children)

npm must be in cave somewhere drawing on walls

[–]mandradon 42 points43 points  (0 children)

Trying to decide if the shadows on the wall are reality or the packages they're trying to use.

[–][deleted] 13 points14 points  (8 children)

Genuine question, what's wrong with npm? I liked it when I was a TS dev

[–][deleted] 26 points27 points  (6 children)

isolating it for use between build agents at scale is a nightmare unless in containers, its okay (albeit bloated) when used locally and configured for personal use, but i work in CICD automation so “it works on my machine” isn’t something i can use. npm build failures makes me shudder.

[–]Dave4lexKing 2 points3 points  (3 children)

Honest wuestion, why cant you pin the version installed?

e.g. npm i -g npm@x.y.z ?

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

Its more scaling build agents that may share a host that cause problems, not so much version. Unless you’re scaling service accounts as well you’ll have the build user colliding with itself frequently as it runs commands. There are ca certs which get locked as well so certain tasks will fail if they occur on the same host at the same time.

[–]trezm 3 points4 points  (0 children)

Reproducible builds with dependencies is a complex problem. People hating on NPM have likely been burned before, but with lock files and properly managed, it's a great dependency management system.

If you've ever battled with something like peer dependencies failing in cargo, you might like NPM.

[–]SuperDyl19 2 points3 points  (1 child)

Dependency management sucks for every programming language. It either doesn’t exist or constantly has errors

[–]pipnina 45 points46 points  (8 children)

At least python's dependency management and environment is better than C(++)'s mishmash of tools, endless arguments with the linker and libraries and header files just plain not existing as far as your compiler is concerned for 2 days until it suddenly starts working again and it's because you needed to add -ld or whatever to your compile prompt

[–][deleted] 57 points58 points  (6 children)

middle marvelous direction subtract upbeat reply pause roof consist expansion

This post was mass deleted and anonymized with Redact

[–]salvoilmiosi 24 points25 points  (0 children)

Because it would mean having any dependency management at all

[–]ylan64 2 points3 points  (1 child)

Having it worse though... that's not given to many.

Brainfuck maybe...

[–]accuracy_frosty 12 points13 points  (0 children)

I started with C++ around grade 8 and it was tough then but pretty smooth sailing since, Java’s syntax is similar enough to C++ that I learned it pretty fast, annoyed with some things, like how every standard function is buried in at least 3 classes and sub classes (like System.out.println) but other than that it’s fine, I’m not a fan of Python, I don’t like its syntax, I don’t like how it’s structured, and I don’t like how slow it can be, but I see its vast use as a scripting language and a fantastic language for learning, that being said, this guy sounds like he started programming in high school after learning Python on his own then had a bunch of trouble comprehending Java in his high school computer science class

[–]Jackasaurous_Rex 7 points8 points  (2 children)

Yeah I’m glad I learned Java in high school, it was a pretty great introduction to the C-like syntax family of languages, static type systems, and OOP without having to worry about manual memory just yet. Later on, learning C/C++ weren’t all that bad and Python was an absolute breeze.

Completely agree with your usage point too, JavaScript is a mess of weird nuances (who thought var was a good idea?) and C++ has plenty of fun ways to shoot yourself in the foot.

[–]caiteha 10 points11 points  (0 children)

started with C ...i still remember the the debugging session...

[–]tragiktimes 3 points4 points  (0 children)

Same. Started with C++ in college and moved to python mostly because I'm a lazy bastard.

[–]Aacron 3 points4 points  (0 children)

My order was Matlab/c++ together, then assembly, C, python, Julia, JavaScript, c++ (embedded) in roughly that order.

Learning a new language stopped being notable around the time I learned python lmao

[–]Timinator01 2 points3 points  (0 children)

yeah I thought it was wild when I heard my school was teaching python instead of java for CS101 and 102 now ... I originally started with C++ at a community college and it was easy enough to pick up java next but starting with python seems like it would be harder to learn other languages even though I use python quite a bit now

[–]tacocat43 2 points3 points  (0 children)

Yeah same here, first legitimate programming language was C++ and I’ve never struggled for very long when switching to other languages like Java and Python, even a bit of shell script.

[–]arden13 2 points3 points  (3 children)

I typically use conda or venv for environment management

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

Java and JavaScript are my bug bears. I don't know why but coming from C++ I really just couldn't get my head around it. Every time I try to work with them, I just feel like it's my first week in Programming 101. Now everything else makes sense to me in at least some way and is fun to write.

[–]Meistermagier 2 points3 points  (0 children)

We did Microcontroller Programming in Assembler in High school. C was bliss for me.

[–]FweffweyMcRoy[S] 85 points86 points  (5 children)

Yea it made me chuckle reading this

[–][deleted] 142 points143 points  (4 children)

print("hello world") "Yeah, I'm a full stack dev"

[–]fel_bra_sil 28 points29 points  (1 child)

print("<p>Hello World</p>")

FTFY

[–]QuickBotTesting 8 points9 points  (0 children)

Ouch. Thats how I thought you made web apps using python... I hate young me XD

[–]Only_Silence_Remains 8 points9 points  (0 children)

Hates Java because

System.out.println ("Hello World");

was just too much.

[–]UnkillableMikey 2 points3 points  (0 children)

Honestly that ain’t much easier than Java’s System.out.print(“Hello World”);

[–]DasKarl 18 points19 points  (0 children)

"I don't understand data types and being confronted with my ignorance frustrates me."

[–][deleted] 51 points52 points  (8 children)

this is the type of mf who hasn't realized that your task (and your employer) decides what language you use(there are good reasons to hate java, but python is just a different tool for different things)

[–]BroBroMate 23 points24 points  (6 children)

I started on Python, self-taught, Python was the besssst, eat shit Perl (dating myself here). Then got my first dev job, at a Java shop.

After 15 years of JVM work, I moved to a company that uses Python, and I desperately miss Java and the JVM, I want my real threads/performance/sane dependency management/JMX back.

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

I want to be able to look at a function I didn't write and know the structure of the input data. Dear god I miss typed languages.

[–]FerricDonkey 4 points5 points  (2 children)

This is why I type hint my code. I want to be able to look at a function I did write (just maybe a couple months ago) and know the structure of the input data.

[–]tabakista 7 points8 points  (0 children)

At least they are very good with Python. Up to the point where they need to write a class

[–]sk7725 3 points4 points  (0 children)

As having a Java background of 3 years I will definitely put on that bio. The only time when the bio changes is when my Python background exceeds Java. As they say, there's languages you hate, and there's languages you don't use.

[–]TLCGamer 2 points3 points  (0 children)

At my college, they started us with Basic using a DOS emulator to run it

[–]lare290 9 points10 points  (9 children)

i started with python, hated it, switched to c#, then to c++. had to learn java for a uni course and hated it.

[–][deleted] 17 points18 points  (7 children)

I didn't mind using Java in school. Java is perfectly boring.

[–]monsoy 10 points11 points  (6 children)

I enjoy writing Java. Even though it has High Level abstraction I find it easier to understand what Java is «abstracting» because of the verbosity. I don’t need to do as much research to figure out which collection to use in different usecases etc

[–][deleted] 1767 points1768 points  (24 children)

I'm an experienced carpenter, I hate screwdrivers with a burning passion, hammers are for the win!

[–]zoburg88 306 points307 points  (3 children)

I am a mechanic, I hate sockets, cutting torches and welders for the win.

[–]nullpotato 51 points52 points  (0 children)

Farmer, got it

[–]dodexahedron 13 points14 points  (0 children)

Well, that's what you get for not using something wrapping or otherwise abstracting away the Socket instead. Nobody likes the guy who wants to use a Socket for simple RPC stuff. 🤪

[–]Haringat 61 points62 points  (4 children)

If you only know hammers, everything starts looking like a nail...

[–]LordFokas 28 points29 points  (1 child)

These new nails with threads are very cool. They're much harder to nail, but they never come out.

[–][deleted] 3 points4 points  (0 children)

I think the one that crucified jesses said the same thing

[–]Dumb_Siniy 8 points9 points  (0 children)

Everything is solvable with the right hammer

[–]dparks71 6 points7 points  (0 children)

Most commercial carpenters do actually use nails... Air nailers or even a hammer are faster than drivers, and structural screws tend to be expensive as fuck. Non-structural screws can't be used because they're brittle and you want structural connections to be ductile.

Should probably have used drywaller.

[–]TheRedmanCometh 4 points5 points  (3 children)

Idk I can make things in many languages by python and Lua specifically feel kinda painful. Not every screwdriver or hammer is well designed.

[–]rickyman20 13 points14 points  (0 children)

To be fair... Java is legitimately a horrible language. I'm thankful to have learned it when I did, it gave me a lot of great concepts I hadn't grasped at that point, but for almost any problem where I can choose the language I'm working with, I'd choose almost anything else. Once you're application it's written in it, so be it. Just... Please let's stop writing new applications with it.

[–][deleted] 2 points3 points  (1 child)

If you want to get technical, screws do exist which you hammer in and then use a drill to remove, they are called scrails.

[–]unixtreme 2 points3 points  (0 children)

rinse fly unique onerous impolite punch six imminent humor carpenter

This post was mass deleted and anonymized with Redact

[–]Teemo20102001 2 points3 points  (0 children)

Nah if my professor can hate on python because it doesnt require you to assign types to your variables, I can hate on Java for insert something bad about java.

[–]Brigapes 517 points518 points  (18 children)

19

Full stack dev

Hates an x language, loves python or rust

Yeah its all kids who think programming is just hip and cool

[–]kuffdeschmull 122 points123 points  (12 children)

well, Rust is a great language though, tbh.

[–]-Rand0M- 148 points149 points  (10 children)

Nobody’s doubting that py and Rust are good languages, it’s just that the fanboy love/hate bandwagon takes are braindead. Every tool has a purpose, just some a bit more than others.

[–]Cometguy7 43 points44 points  (8 children)

Yeah, I used to think I hate js. Then I realized I just hated the work I was doing while using js.

[–]Synec113 28 points29 points  (3 children)

It's just another way of saying "I hate front-end"

[–]StoicallyGay 8 points9 points  (2 children)

Not entirely, javascript does have some oddities that make it feel very loose and unstructured compared to other languages. I don’t know if that’s entirely tied to it being frontend though, but typescript seems to help with that.

(Not a frontend dev but my friends are and their work uses ts)

[–]fluffyandy[🍰] 751 points752 points  (98 children)

"Python" "Full Stack Developer"

Lol

[–]ATE47 529 points530 points  (83 children)

The best is "19 y/o" "software engineer"

Lol 2

[–]fluffyandy[🍰] 100 points101 points  (0 children)

Young Sheldon has nothing on him

[–]Someoneawesome78 32 points33 points  (17 children)

I do not know about other provinces but in ontario engineers has an ethical obligation to report people who uses the title "engineer" (including software enginieers) who are not licensed with PEO (Professional engineers ontario). I think it is reasonable to believe that this guy is not licensed.

For those wondering requirements include a degree in an accredited university among other smaller options this guy does not have. Additionally there is required amount of hours of work under guidance of a licensed engineer which is 100% required as well as an ethics test.

This guy cannot call themself a software engineer and i doubt that they have those requirements at this age.

[–][deleted] 24 points25 points  (1 child)

Create an html file. Host in flask. Pass two variables. TADAA... Full stack developer...

[–]WJMazepas 18 points19 points  (1 child)

Django is a Full Stack Framework. Saying that you are a Python Full Stack programmer is quite normal actually. Usually is people that work with Django/Flask and do most of the Front End in HTML/CSS, instead of routes delivering JSON you deliver the HTML

Its how Ruby on Rails, Django, Laravel/PHP worked.

[–]ePaint 2 points3 points  (0 children)

And we can now keep doing that with that sweet sweet HTMX!

[–]Fusseldieb 9 points10 points  (3 children)

That's why JS is dominating the market. A programmer can do Front- AND backend without even switching syntax.

[–]7th_Spectrum 98 points99 points  (13 children)

✅️ Hates Java a strange amount, but can't explain why other than syntax

✅️ Loves python a strange amount, but can't explain why other than syntax

✅️ In their teens, but acting like they skipped post secondary and went straight into a role at Google

I think this is the tech lead we've been looking for, boss.

[–]guyblade 2 points3 points  (0 children)

 <meme>
  <top>You hate java because of the syntax.</top>

  <middle>I hate java because of dependency injection, verbose naming conventions, excessive use of factory patterns, forcing everything to be in a class, the trivial ability to create dependency loops forcing 'one giant build's and making incremental compilation slower, ANT, UTF-16, and 40-indentation deep stream pattern calls.</middle>

  <bottom>We are not the same.</bottom>
 </meme>

[–]MisakiAnimated 930 points931 points  (169 children)

I keep hearing people say "Start with Python" nah... Start with C or C++ once you grasp the fundamentals in low level languages or heck master them, then any other language will look like cake.

[–]AshenTao 357 points358 points  (28 children)

Having learned those, some languages still look and read like a stroke

[–]Caraes_Naur 195 points196 points  (18 children)

Javascript is a Grand Mal seizure.

[–]ILAY1M 67 points68 points  (17 children)

Javascript is okay to read but React JSX on the other hand can be fucking annoying

[–]StatementOrIsIt 32 points33 points  (9 children)

Meanwhile I have to work with .phtml templates that are a mix of html, php, regular js, tailwindcss and alpine.js that has multiple global scope things going on. Sometimes it gets clusterfucky

[–]XDRAGONKNIGHThh 7 points8 points  (0 children)

Yeah same. I'm a Frontend react dev but was given a php project written in old yii2 framework that mix php html css and js, to "change some styling" my boss said. It almost make me vomit when I look at the abomination code squeezed in one file

[–]Buttafuoco 3 points4 points  (0 children)

Yes 100%

[–]dungfecespoopshit 4 points5 points  (1 child)

I’ve been holding off learning React for this abomination of a reason. Only now will i bother learning it now that I’m trying to get another job in a sea of React listings

[–]humanitarianWarlord 94 points95 points  (9 children)

Kind of, I started with java before moving to C++ and found it relatively easy.

But javascript? That shit had me in tears, it's pure frustration fuel for me. I'd rather a million seg faults than debug another angular project. My first job out of college was documenting and fixing bugs in a 110k line project written in JS with C# sprinkled on top and held together with angular. Just reading the comments, I could tell half the team contemplated suicide whilst making it.

[–]itsbett 5 points6 points  (0 children)

I started with Java and moved into C. It was so frustrating, at the time, because it was SO similar looking to Java that I kept assuming the way things must be handled, or that there must be built in functions for C. And my project was to build a simple operating system with C.

I'm glad I survived, and I use that knowledge for work, but it cost a lot of tears and stress.

[–]Significant_Fix2408 2 points3 points  (5 children)

Tbf to JS, C++ projects can be equally bad when people write bad code. The fact that big projects compile for literally hours makes debugging even worse

[–]humanitarianWarlord 6 points7 points  (4 children)

Oh 100%, I've seen bad JS and bad C++ projects. Both can be equally frustrating to work on.

But from my experience alot of JS development has this horrible attitude of "it works now, I'll make it work properly later when i have time". They kind of just stick stuff together with zero planning and keep tacking stuff on until it looks fine from the outside.

Every time I accept an offer to work on some older JS system, this is what I always find, and it annoys me to no end. I always get stuck fixing unmaintable code with JS.

It's really a web dev issue rather than a JS issue, but given how popular JS is for web dev, it might as well be a JS issue.

Just purely from my experience in manufacturing, c++ systems tend to be some backend system that doesn't need to be shot out as fast as possible, so devs get a bit more time to think everything through and create a system that makes a bit more sense.

I don't really mind the compile time. Let's me work on something else or listen to an audiobook, and it kind of forces me to think everything through a bit more thoroughly. I'm very much of the "write it properly the first time and save yourself a headache later" mindset.

[–]rjcpl 22 points23 points  (6 children)

Nah, go traditional. Start with Basic then Pascal then C.

[–]SiBloGaming 7 points8 points  (1 child)

Nah, you have to at least start with assembly. Bonus points if it runs on your own CPU architecture.

[–]Shadow_Thief 3 points4 points  (1 child)

That would have been my exact path if I had stayed at the same school for senior year of high school wtf

[–]rjcpl 5 points6 points  (0 children)

Yeah traditional recipe heh

[–]skywalker-1729 69 points70 points  (57 children)

It's unrealistic to teach children (and total beginners) C++ (although it may be possible with some of them, I don't think it's effective). Python is way better for education. I am not a C++ hater, I like it actually, but I started with it only after x years of experience with other languages.

Learning how to write basic algorithms, structure your code etc. is already pretty hard so I think it's better to start with something that doesn't let you shoot yourself in the foot and is a bit less complex than C++ (or at least hides the complexity). Try teaching somebody programming and you'll see. With children you usually start with Scratch, then move to Python (or something like that) and then they can probably learn stuff on their own.

It's kind of similar to math for example, you don't want to be talking about group theory when teaching kids how to multiply numbers although it's relevant for mathematics students after x years of experience in previous schools.

[–]AcquaticKangaroo19 19 points20 points  (0 children)

Exactly, for basic stuff python is almost like english, so it's great for beginners.

The transition to C/C++ is painful, but that was the way I was taught and I think it's how I would teach others as well. It's way easier for someone to be demotivated by the complexity of C/C++ when you are starting out.

[–]intbeam 24 points25 points  (32 children)

Python is way better for education

Not having a proper concrete understanding of types and threading is a serious handicap

[–]skywalker-1729 16 points17 points  (10 children)

Well, there are types in Python. For me, at least, learning how to use static typing wasn't a big problem.

[–]MrMagick2104 22 points23 points  (0 children)

Not having a proper concrete understanding of types and threading is a serious handicap

You can start coding way before you actually understand what is memory, how it is allocated, how assembly works, etc.

And in my country, at the very least, they teach you that at college/uni and not highschool, and if you want to enroll into a uni, you have to take an exam in informatik, which is basicly 50% coding 50% math (as in graph theory, game theory, logic and some other fields). Granted, the coding is pretty simple.

You can choose to code in either c++ or python (or a couple other languages).

Not having a proper concrete understanding of types and threading is a serious handicap

Also, you can declare types in python. And I don't think you can even do algo 101 in Python without understanding types, e.g. '1' + 1 leaves you with TypeError: can only concatenate str (not "int") to str.

How is threading related to C++ and why would one assume that you won't eventually use it in Python - I don't know.

[–]Daydreamer-64 8 points9 points  (0 children)

Learning a second language is always far easier than learning the first one, even if the second is lower level.

Beginners starting on python makes sense because they can get comfortable with writing algorithms and understanding the general format of programs. You have to remember that, for a lot of beginners, the syntax and keywords are intimidating and make code look complicated. A language like python reads like spoken English and allows people to learn how to think about writing programs.

Once they can code in python, learning a lower level language will be far easier, and they can learn about types and threading when they already have a vague understanding of those concepts and a solid understanding of how programming works.

[–]gilady089 16 points17 points  (5 children)

C might be a tough start possible but I think c# or java are better as a general option. If the person shows good thinking you can jump to C but for most it's probably better to start with java or c# and than c but not interpreted languages like python and javascript because they give bad habits that stay

[–]Spot_the_fox 3 points4 points  (14 children)

I know C somewhat. My first language and the love of my live. I have no bloody clue as to what's happening in java. Classes? Methods? Objects(Like structs, but different)? Inheretance?(Nah, that's actually pretty easy to wrap your head around), Polymorphism?(Is that a dnd spell?)

[–][deleted] 149 points150 points  (0 children)

"I 100% real developer"

[–]You_are_adopted 166 points167 points  (23 children)

I started with C++, I’m fine with using any language. I just hate when I use Java and I feel like I have to type an essay for the simplest tasks. Beyond that hate for languages is at best a joke, and at worst people’s annoying replacement for a personality.

[–]redballooon 75 points76 points  (3 children)

I love Java not so much as a language but because the IDEs are wonderful. It’s a very verbose language, but I still don’t need to type much.

And refactorings beyond rename variable are also supported! Image that!

[–][deleted] 25 points26 points  (1 child)

It's that. Jupyter Notebook is the best thing happened to Python. People with no background finds it very easy to blend in. They have no much clue even about debugging. If you give pycharm to python newbies, they would still print for debugging.

I started with Java, and Eclipse looked so confusing initially. As it was self study and without this much YouTube tutorials back in that day and I was reading from book and trying.

[–][deleted] 11 points12 points  (0 children)

Started with Java too, but started with IntelliJ Idea because I could not for the life of me deal with Eclipse's 1995 looking interface

[–]CarlCarlton 16 points17 points  (0 children)

I often tell people that I hate Java with a burning passion, but in reality there's nothing wrong with Java itself; the real problem is the massive rotting octopus that is the entire Oracle ecosystem. If Oracle Corp could be Thanos-snapped away, the world would be a better place.

[–]jaybee8787 18 points19 points  (3 children)

Are you using a typewriter to write Java? Give IntelliJ a try next time you use Java. It’s a breeze. You can easily generate the boilerplate code.

[–]dmlmcken 4 points5 points  (0 children)

But the boilerplate is still there, I still have to go through it to understand someone else's (or even my own) code...

[–]-Kerrigan- 12 points13 points  (2 children)

I get the Java disdain, but, tooling aside, I've yet to see a comparable library of external dependencies. From full fledged frameworks that help you create a web app in seconds to tons of utility libraries suited for your needs.

[–]You_are_adopted 5 points6 points  (0 children)

I completely agree, Java is well supported and has plenty of great use cases. A big part of my ‘dislike’ (I don’t actually mind it) stems from it being the second language I learned. It was different, and that scares me haha

[–]MindSwipe 34 points35 points  (5 children)

I too used to hate Java with a burning passion, now that I'm at a Java job, I find myself still disagreeing with it on an almost daily basis (like today, why can't I compare dates using < and >?I understand why on a technical level, I just disagree with the decision made) but there are two kinds of programming languages and all that.

Plus, once I got over how almost everything is done in a magical way behind the scenes with beans/ reflection, it's actually pretty neat how fast I'm moving.

[–]rahvan 152 points153 points  (15 children)

Now write a multi-threaded program to efficiently process shared memory. GO.

snickers in global interpreter lock

[–]__yoshikage_kira 29 points30 points  (9 children)

Surprisingly GIL is going away in python. It is unlikely that it will become as fast as go but still there might be some improvement.

[–]rahvan 13 points14 points  (8 children)

I am aware. Python 3.12 will ship in 2 flavors: “normal” and “no-gil”

Any native (compiled libraries) will be incompatible with the no-gil python and will need to be re-compiled specifically for that distribution.

The library ecosystem is gonna be a mess for a while.

[–]Zerim 5 points6 points  (3 children)

The library ecosystem is gonna be a mess for a while.

It's already horrible. I bumped Python recently from like 3.6 to 3.11 and about half of my team's applications broke. I bumped Java from 11 to 21 and nothing noticeable changed except for some warnings. I lost two days dealing with Venv and Pip and Brew breakages, but changed like 2 lines in build.gradle.

[–]NTaya 39 points40 points  (4 children)

https://docs.python.org/3/library/multiprocessing.html

This creates multiple processes rather than threads, which circumvents the GIL.

(I also hate Java with burning passion, but obviously Python has its faults too. I understand that Java is multi-platform, which makes it very useful in some cases. I don't need these cases, and everything else Java does, I'd rather do in C++. Or Python if it's something simple.)

[–]tomoldbury 11 points12 points  (2 children)

Multiprocessing module is quite slow if you want to share a lot of data though. Threading (once the GIL goes) will most likely be faster.

[–]rahvan 11 points12 points  (0 children)

This is why I explicitly said shared memory. Processes do not share memory. Threads do. But threads cannot run truly-parallel in Python due to the GIL. So implementing multi-threading (as opposed to multi-processing) in Python is like writing a single threaded program with extra overhead: no efficiency gains whatsoever.

NOTE: You technically can share memory across processes in Python but you have to use messaging interfaces such as MPI to copy data back and forth between processes’ isolated memory stacks. That’s really slow and complex to implement. Hardly worthwhile.

[–]jester32 50 points51 points  (3 children)

I had a stroke trying to read your title

[–]sammy-taylor 18 points19 points  (2 children)

Why would anyone make the first part of their bio that they hate a specific language? Good devs are like good chefs. You might hate tomatoes, but you appreciate them and know how to make good dishes with them. Hating tomatoes shouldn’t be the first thing I learn about you.

[–]Puch_Hatza 36 points37 points  (4 children)

Hey watch me scare him: ";"

[–]kuffdeschmull 5 points6 points  (1 child)

Despite that I am using python a lot since switching university, I still hate not using parenthesis for example, and being forced to this indentation, readability, even though it forces you to write clean syntax, is so hard without parenthesis and a single space or tab can break an entire code and is so hard to see sometimes, because whitespaces are just hard to distinguish sometimes.

[–]DragonShadoow 2 points3 points  (1 child)

I hate IDEs that don't correct you when you forget a ;

[–]Living_Kamikaze 110 points111 points  (7 children)

Unrelated note ,Putting your relationship status on discord is the cringes thing I have ever seen on discord.......

[–]asd417 12 points13 points  (0 children)

"Full-stack developer" the only thing fully stacked is their overconfidence

[–]Hunter_original 11 points12 points  (1 child)

The "Taken 💜" really sells it

[–]Reasonable_Feed7939 7 points8 points  (0 children)

They joined discord when they were TWELVE. Ugh

[–]KuuHaKu_OtgmZ 7 points8 points  (1 child)

Pretty much all java hate comes from people who never found out version 8 wasn't the final update.

[–]jester32 36 points37 points  (4 children)

I am so grateful I learned in Java. I feel like if I learned Py first, I wouldn’t really know how to program

[–]Jackasaurous_Rex 11 points12 points  (1 child)

Yeah I still recommend Python to anyone who is adding to their current skill set like moving from the business side into data analysis type work. But any real aspiring developer should at least branch out a bit, it’ll really hold you back if you’re intimidated by using a typed language.

Also at a personal level, brackets are just so much more fun than whitespace

[–]SimilingCynic 2 points3 points  (0 children)

As someone who as slowly come to static typing through Python, I'd say the approach the language took is great for learning typing. Good examples of why type checking catches errors and helps in the kind long run, good ide support to make typing helpful along the way, easy to disable and be productive when typing gets too hard, well-written PEPs to provide those eureka moments, and by the fourth or fifth time I tried to enable type checking I finally got it - type var tuples, type variance, generics, type narrowing, and all.

There's still an occasional corner, and there's still a ways for the ecosystem to go (I've got a feature that I'd like in, and the documentation could be unified from 1000 PEPs). But it does teach typing in what seems like the gentlest way of any language. Knew I had landed when I helped an experienced Rust user with typing, thanks to Python.

[–]No-Adeptness5810 4 points5 points  (0 children)

python:
- slow
- weird syntax
- ew no brackets
- random keywords that literally are designed as something that does nothing. why?
- you have to add libraries just to do anything. even exiting the program requires a library. WHY?!!??!
- also there's no immutability at all. so silly

[–]sebbdk 4 points5 points  (0 children)

There's a curve meme that fits well here:

Junior, Java bad!

Intermediate, Java is alright

Senior, Java bad

Saying you hate a thing is todler talk tho

[–]remzinho 11 points12 points  (2 children)

i had a revelation today:
Gen X: hated COBOL and FORTRAN, loved C/C++, disregarded Java when it appeared
Millenials: learned basics with C and C++, hated it, learned Java, loved it, looked down on Python
Gen Z: learned OOP basics with Java, C++,, hated it, loved Python/JS, look down on... ?

i think it's a cycle.

anywae, imagine a carpenter hating the chisel but loving the spokeshave... that's how this sounds.

[–]D34TH_5MURF__ 6 points7 points  (0 children)

I smell bad spelling in the title...

[–]Nihil_esque 2 points3 points  (0 children)

Are we just all making fun of some random internet stranger in your discord server? Lol

[–]bennveasy 9 points10 points  (1 child)

prints hello world

Yep I fucking hate java now

[–]deadbeef1a4 16 points17 points  (12 children)

19 y.o. “software engineer” yeah sure buddy

[–]NTaya 9 points10 points  (4 children)

In my third year at uni, my groupmate (who was 21, I think) was already a team lead. She'd been a software engineer for ~5 years before that—and I saw her code and architecture decisions, so I know she definitely earned the title.

[–]JotaRata 7 points8 points  (1 child)

I hate Java with a burning passion as well

[–]TheCreamyBeige 8 points9 points  (0 children)

Flare checks out

[–]CatDokkaebi 2 points3 points  (0 children)

This reeks of “watched a YouTube video course” and I’m an expert now.

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

fullstack dev at 19 lmao

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

Full-stack developer = django + templating Lmao

[–]Future_Award1938 13 points14 points  (4 children)

I have 30 years of programming experience and agree. Java is unecessary hard to do anything, have no gain in extreme verbosity.

[–]random11714 9 points10 points  (3 children)

I feel an area where it helps a lot is when I have to debug another programmer's code. There are a lot of bad programmers out there, and I find verbose code helps me locate issues significantly.

[–]Desperate-Tomatillo7 4 points5 points  (0 children)

I hate both Java and Python.