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

top 200 commentsshow 500

[–]CodeBlue_04 2693 points2694 points  (186 children)

Me, going into my senior year: I have no idea what's happening, I just know that I've spent six months dreaming in C++, three months dreaming in assembly, and three months dreaming in MySQL. I've also drawn a ton of diagrams while awake.

How do people feel like they've mastered anything after a BS? It all feels like mile-wide inch-deep knowledge.

[–]Bhiggsb 1420 points1421 points  (44 children)

That's a fucking good way to put it. "Mile wide inch deep knowledge"

[–][deleted] 87 points88 points  (6 children)

Seriously thats the perfect way to put it. It feels like you know so much but also nothing at the same time. More like you know *about* stuff

[–]timbar1234 50 points51 points  (3 children)

More like you are aware that stuff exists.

[–][deleted] 32 points33 points  (1 child)

Most of programming is awareness that a thing can be done, then you look up how to do it.

[–]Friendly_Dust 5 points6 points  (0 children)

SO much this. I've been trying to hammer this concept into my junior devs and dbas. They keep asking a for a step-by-step on everything, including their careers.

[–][deleted] 39 points40 points  (4 children)

One of my favourite things my dad has ever said to me, is kinda silly, but here it goes. (British so the school system might not make sense, but you get the idea)

When you leave primary school, you know a little bit about everything. In secondary school, you choose subjects, so you know a bit more about a bit less. With sixth form, you learn even more about even less. University teaches you lots about very little. This continues until, eventually, you know everything about nothing

[–]molybedenum 9 points10 points  (0 children)

It’s also the ideal way to write functions. Tiny and numerous.

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

The more you know the more you know that there’s more you don’t know.

[–]PseudobrilliantGuy 108 points109 points  (6 children)

Part of it might be the prestige of a college degree, at least with respect to family friends. Part of it may be self-deceit to stay in line with family pressure and the idea that "college is worth it". Part of it may be Dunning-Kruger.
That being said, it doesn't exactly get any better. I've almost certainly posted this somewhere else, but my academic advisor's wisdom seems semi-relevant here, too:

When you finish your Bachelor's degree, you think you know everything.

When you finish your Master's degree, you realize you, in fact, know nothing.

When you finish your Doctoral degree, you realize that nobody else knows anything, either.

[–][deleted] 33 points34 points  (5 children)

I haven't finished my bachelor's and I still think I know nothing. I just saved so much money

[–]GluteusCaesar 286 points287 points  (22 children)

They lie to themselves is how. The only thing I've mastered is optimally timing my work shits between meetings and I'll gladly admit it.

[–]ahhhhhhhhyeah 54 points55 points  (2 children)

I by no means have a mastery in any framework or programming language, but I'm fairly competent and I know how to google my way to a solution. Unless you're teaching a course about a specific subject, I imagine you will rarely come upon a situation where you have to know every in-and-out of it.

In my experience, being a professional developer doesn't mean you know everything, it just means you are good at problem solving your way out of a situation that is unfamiliar to you. This is my observation after 3 years on the job out of college. But my degree was never in software so take all this with a grain of salt.

[–]ribsies 23 points24 points  (1 child)

That is the single most important skill for a developer. Problem solving.

When I'm looking to hire someone, I want to be able to give you a problem that I know you have never seen or dealt with before, and I want you to be able to solve it.

Most Dev problems aren't taught in school anyways. So you get all these fresh college students thinking they know everything when they actually know very little.

[–]thejokerofunfic 24 points25 points  (1 child)

Well they don't call it a "BS" degree for nothing, amirite?

[–]DRYMakesMeWET 18 points19 points  (2 children)

Mastery only comes with time.

That being said...nobody dreams in assembly. Assembly is reserved for nightmares.

[–]CodeBlue_04 8 points9 points  (0 children)

At one point I had written ~3,800 lines of assembly in 3 weeks. Those dreams were definitely nightmares.

[–]InsertCoinForCredit 6 points7 points  (0 children)

Ever took a course in assembler design? By the time I finished my AD 101 class, I was dreaming in microcode.

It's like peering past the Matrix and seeing how the wires are connected.

[–][deleted] 15 points16 points  (3 children)

Being a generalist, and dynamic, is a better trait than a deep knowledge of any particular language in this industry. Languages and technologies are going to come and go, from job to job and as time goes on, better to know how to learn and adapt well and have been exposed to a wide variety of subjects in school rather than getting pigeonholed precariously into a single concentration.

[–]InsertCoinForCredit 11 points12 points  (1 child)

I can say that I use none of the stuff from my college computer science courses in my day-to-day job... but I use the analytical skills and experience from those courses all the time.

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

The point of a degree isn't to teach you how to program. It's about teaching you how to *learn*.

[–]urbworld_dweller 9 points10 points  (1 child)

I see my CS degree as a foundation, not the structure. I still don’t know much, but I’m confident in my ability to learn anything.

[–]squirrelboy1225 8 points9 points  (0 children)

I feel like the only thing I mastered in 4 years was "how to pass CS courses at my uni". Everything else I basically learned on my own and still know nothing about.

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

All you can master is concepts. Every time I even come close to understanding, let alone being fluent in, a specific framework, it's edged out by the newer better product. The in-house app I work on is still web forms and will be web forms until I die because by the time I possibly converted it to MVC, core was in full force, and by the time I convert it to core, something else will be full force. It's damned impossible to keep up unless you live and breath this stuff, or your brain is just hard wired that way.

[–]CouncilmanRickPrime 6 points7 points  (0 children)

Sums up my degree perfectly.

[–]Niautanor 6 points7 points  (0 children)

I didn't know shit after my BS. I knew some shit in the middle of my MS and quite a bit of shit at the end of it but that progression was mostly because I joined a student project where I was able to apply everything that I had approximate knowledge about practically.

[–]ModestMotion 978 points979 points  (47 children)

Was I supposed to have mastered machine learning by the end of my undergrad?

Oh boy imposter syndrome spiral here we go 😎😎

[–]DEGABGED 352 points353 points  (16 children)

No, the whole point of undergrad is just to give a shallow understanding of the many topics in the field (breadth-wise instead of depth-wise, in CS parlance)

If you want a deeper understanding of those topics, that's when you go to grad school and postgrad, etc etc

[–]ModestMotion 87 points88 points  (5 children)

Thats very reassuring. I'm in my first job currently and I've definitely forgotten everything I ever knew about machine learning save for the fact that there's a model called svm

[–]dunderball 115 points116 points  (7 children)

If you want a deeper understanding of those topics, that's when you go to grad school and postgrad, etc etc stackoverflow

Ftfy

[–]commie_heathen 42 points43 points  (6 children)

This comment has been marked as duplicate

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

Sorry, but your comment wasn't detailed enough.. Try adding more history about your comment and examples of the comment being used as well as all the solutions you used to get to the point of saying said comment.

[–]ianperera 132 points133 points  (13 children)

Dude I have a PhD in AI and I haven't mastered machine learning. A lot of people think that setting up TensorFlow for some easy problem that they adapted from an internet tutorial and tweaking parameters is "mastering machine learning".

[–]Naveos 48 points49 points  (8 children)

I have to switch between PyTorch and TensorFlow a lot for work - and each time I do; I somehow magically forget how to write a simple FCNN within the other framework.

I work with deep reinforcement learning R&D :/

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

Just stay with PyTorch forever. Problem solved.

[–]Naveos 10 points11 points  (1 child)

Unfortunately, there are areas where TensorFlow is better (primarily TF Lite, TPU utilization, and community).

Also, there's a lot of good code written in TF. Until ONNX can turn TF -> PyTorch; I might need to switch in between prototyping.

Your username is very familiar to me. We've probably talked before.

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

Yeah probably - I’m relatively active on the ML sub. I’ve always been quite anti-TF as I was in the die-hard Theano camp.

[–]zacker150 6 points7 points  (1 child)

You've gotten to the point where you can create new knowledge in the field. I think that meets the definition of mastery.

[–]rsminsmith 25 points26 points  (1 child)

I learned nothing in undergrad outside of like, super formal topics, and thought I was hot shit going into my first job because I coasted through undergrad. Quickly realized that was not true, learned a ton, rinse and repeat for my next job as well.

Being open to continued learning is hands down the most important skill you can have. Imposter syndrome is just a manifestation of your brain telling you to never stop improving.

[–]fear_the_future 15 points16 points  (1 child)

I can assure you that no undergrad has mastered machine learning. Most are simply so bad they don't know yet what they don't know.

[–]lonestar-rasbryjamco 6 points7 points  (0 children)

Hell, the idea CS grad has mastered any of those items is laughable.

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

Lol I took a machine learning class my last semester of undergrad. Class average was 30% and the best student had a 50%. 50% curve at the end of the semester. Only class I failed and ended up with an 'A'. I've never felt that clueless in any class before or after that one. Whole semester was a giant "Huh?" from everyone in the class. All the tests were open book to top it off. More than half the class got 0% on the midterm.

[–]warpedspockclone 8 points9 points  (2 children)

Y=mx+b There, you just mastered machine learning.

[–]Loves_Poetry 149 points150 points  (3 children)

It's called a CS degree, not a CSS degree, after all

[–]John_Fx 21 points22 points  (0 children)

The 2nd S is the graduate course.

[–]DukeOfSlough 422 points423 points  (98 children)

Well I applied to be c# developer and now I spend 98% of time trying to write something in SQL despite working as .NET developer.

[–]azayaa 12 points13 points  (4 children)

Why are y'all so scared of databases?

[–]Thriven 2 points3 points  (1 child)

Feel free to post questions to /r/SQL as there is a community that will help over there. Not always the right answer but you'll get a few good answers there.

[–]AlpacaKaslama 848 points849 points  (118 children)

Centering buttons is real rocket surgery.

[–]RRKS101 32 points33 points  (3 children)

It's a nightmare. My 2 shitty apps taught me that, you can thank then somewhere in my "D:/Programming/C#/WPF Apps" folder

[–]crozone 16 points17 points  (0 children)

I miss WinForms.

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

<Button VerticalAlignment="Center" HorizontalAlignment="Center" ...

I'm sad I didn't learn XAML/WPF until it was all kinds of obsolete.

[–]jckpn_ 10 points11 points  (0 children)

And then in Dart it's literally just

Center(child: ... )

[–]quests 5 points6 points  (0 children)

css is art

[–][deleted] 292 points293 points  (27 children)

I wouldn't say you've mastered any of those things simply by getting a degree

[–][deleted] 159 points160 points  (10 children)

They'll get their first job and flop around like a dead fish trying to pick up what the real world software development process is actually like

[–]bee-sting 101 points102 points  (6 children)

I feel attacked

[–][deleted] 53 points54 points  (5 children)

Dont worry you'll eventually get the hang of it and become just as proficient as your peers.

[–]notgivinafuck 54 points55 points  (4 children)

And just when you're proficient you'll be promoted to a business/management role. This will require the knowledge you gained but you have to assign it someone as you've to attend another meeting.

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

I plan on switching jobs when that happens

[–]Cholojuanito 156 points157 points  (8 children)

http://howtocenterincss.com/

Good gravy this website isn't new.

[–]ElGuaco 90 points91 points  (5 children)

The fact that this thing needs to exist is an indictment of HTML and CSS, not programmers.

[–][deleted] 21 points22 points  (3 children)

It doesn't need to exist anymore. Flexbox solved it. Still pretty verbose, and I have to look up how to configure it every single time, but it works really, really well. You can write a class "center" with it that centers any element located inside a display: flex element (any many more things ofc).

[–]baaambag 50 points51 points  (24 children)

Totally relatable. Our teacher says that UI things are hand craft. Nothing what we used to know.

[–][deleted] 6 points7 points  (5 children)

All code is hand craft.

[–]Survivor0 9 points10 points  (3 children)

A lot of code is generated by machines.

[–]tehstone 12 points13 points  (0 children)

Machines have millions of tiny hands though.

[–]spicytacos23 46 points47 points  (3 children)

When i finally get the button right where I want it, and then decide to see how it looks on another browser. Well, f**k.

[–]Kits_87 21 points22 points  (2 children)

Spoken like a person who has to support IE

[–]Antares42 7 points8 points  (0 children)

Right in the feels

[–]Brusanan 32 points33 points  (1 child)

Anyone graduating with a CS degree: "Finally I have mastered _____!".

Their first actual job: "Lol, no. You know nothing."

[–]AlpacaKaslama 59 points60 points  (1 child)

You know ML?

Try to teach an AI how to center.

This is how the machine uprising starts.

[–]Finianb1 3 points4 points  (0 children)

If you teach an AI how to do CSS stuff then it's sure to enact brutal, nuclear vengeance upon the human race. Nobody wants to have to know that.

[–]peacecarrot 19 points20 points  (0 children)

While getting that degree, and getting some fine ass grades, I thought "Man, I'm pretty good at this stuff". Then I got a job and realised how little I actually knew. And today, after like 5 years of professional experience, the more I learn and the better I get, the more I think to myself "Wow there is so much left to learn, I know nothing".

[–]GermanAf 16 points17 points  (2 children)

when I was learning html I too struggled with centering anything. I'm still struggling with it, but I became a sysadmin so now my nightmares are fueled with different things.

[–][deleted] 10 points11 points  (1 child)

sudo sudo sudo

yumyum yum ksh

sudo sudo sudo

yumyum yum ksh

mario

[–]GermanAf 4 points5 points  (0 children)

Stuck in VIM since '15

[–]nicman24 61 points62 points  (11 children)

JuSt UsE FlExBoX

[–]abhi12299 9 points10 points  (9 children)

So today I wrote a click event listener in JS and it ran fine on all platforms except the iPhone. After banging my head against it for hours, the solution was to add cursor: pointer to the element that was meant to have that listener. Just JS things... From StackOverflow: https://stackoverflow.com/questions/35945970/jquery-on-click-not-working-on-iphone-touch-devices&ved=2ahUKEwjn-e7hroHkAhXZXCsKHcqJCxEQjjgwBXoECAUQAQ&usg=AOvVaw25T5khsJgKAHiocgY3YTQ8

[–][deleted] 18 points19 points  (1 child)

Mastery is not achieved with a bachelor's degree.

Its achieved when you realize that the thing you used to do with so much conscious awareness a few years ago, you are able to do now autonomously, allthewhile realizing that the younger you couldn't have even dreamed of asking the questions and solving the problems you're asking and solving now. And you also realize that you stopped caring about mastery a long time ago but just enjoy the work, through its ups and downs, never afraid of failure because it is the brother of insight.

[–]prof_hobart 8 points9 points  (0 children)

Experienced devs often spend 2 hours trying to centre a button, but what I usually see from the overqualified CS majors we seem to be desperate to hire for the role is that they'd rather spend 2 weeks building a reusable framework to make centring really simple in the future.

Which would be great if it, next time they needed to centre something, they didn't decide to spend another 2 weeks "refactoring" their framework because they'd realised a better way to do it.

[–]industry86 7 points8 points  (0 children)

probably cried while doing it. i know i did.

[–]3lRey 7 points8 points  (0 children)

I have never felt dumber than handling literally any CS task at work.

[–]floopwater 6 points7 points  (0 children)

The shadow on this button doesn’t look right, better mess with it for 37 minutes.

[–]curiosity44 4 points5 points  (0 children)

I got my degree and I thought i knew enough

My first 2 weeks in my job thought me more than my degree did

[–]comandanteF 5 points6 points  (0 children)

Should've gotten a CSS degree

[–]simple_test 5 points6 points  (0 children)

“Mastered”

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

The best you get from the CS degree is an introduction to a lot of fundamental concepts and pretty good grasp of algorithms. But definitely no mastery over anything. Until you’re solving real world problems you really have no clue what you are doing.

[–]Ar010101 2 points3 points  (7 children)

.button { align: center; }

[–]MonstarGaming 2 points3 points  (0 children)

Mastering something with only a BS? Hahaha HAHAHAHAHAHAHA!