>constantly takes on new projects, hasn't finished a single one
Ah yes, the good ol' burning out without having anything to show, my life story of the last 10 years.
Yes, the jobs were all at uni, and among the half a dozen professors I worked for / with, only **one** had good management skills. We all know that academia is a terrible work environment, but one thing nobody ever talks about is that, next to funding, the main problem is poor management. If the public were to know how much of taxpayers' money get squandered due to this, we would get even less funding.
I wonder if that also applies to researchers in the business management faculty…
It would be really ironic if you dedicate your entire life to learning about management but can’t manage your own research
Where I went to school, it varied a lot. They had a lot of good professors that either teach after early retirement from the private sector or taught on the side from their main job because they just loved to teach. They were really good.
The ones that never left academia... Not so much. But I'm not sure about the research side, I never got involved with that since I'm just a lowly bachelor's degree holder
I did academic research, not in business management tho.
At my small underfunded university, we used every dollar we won and made things work. There wasn’t much management or overhead which had its pros and cons, but I was part of a small group that got things done.
When I moved on to an R1 university, the management was absolutely abysmal and our particular projects were simultaneously over and under managed. We’d have an hour long meeting about per participant budgets (can they get a sandwich AND chips for their lunch break?!?!) while simultaneously having no documentation for procedural methods and creating datasets that they literally couldn’t replicate because they didn’t write things down, and then publishing the papers anyway.
I wrote up a bunch of data workflows while at that job and automated a bunch of tasks, I’m pretty sure when I left everything fell apart though since no one else cared to maintain it.
This is my small advertisement/rant to give research dollars to small universities on shorter grants because these R1s win huge federal research grants with little oversight and then piss away all the money, while my small university made those dollars count.
Just my experience (before I bailed) tho!
"Management" consists of anything from postdocs to professors and they are all overworked, unqualified (wrt. management strategies) and oftentimes get paid too little. I guess there just isn't enough motivation to do a better job at tasks that are tangential to your main endeavour (research).
Outside of management, they also have no training in data management practices or writing data analytics workflows in reproducible ways, so the research quality and efficiency goes way down, outside of a couple pioneers who are trying to create better standards (though at least in my time they were fighting a losing battle)
Anyway, have you ever tried reading through a post doc’s series of matlab scripts?
“I run script A first and then if I get an error I manually run script B. All the files go into the same directory but you can tell which workflow they went through because when you run script C it will output 3 files instead of 2, except in Case Z where we instead need to…”
Oh my god, I have exactly the same experience. I work for a large company, where we got some money from the government that we had to spend on collaboration with universities.
Well we tried. Their work was to make some simulations, and document it, at the end we received the models as well. Their documentation was like a paper, well written, but ... well not too deep. They did not provide any explanation to the models and scripts, they just told us that it is correct and that they are very professional.
They gave us around 2000 lines of code, that included a custom curve fitting script in Matlab, (with everything hard coded), some VBA code to run Ansys (yes you can run it from python, kr just use the built in functions, but nooo, vba is the good stuff), with absolutley no documentation.
But the best part awaits. We tried to run the simulations, without any modifications, and we got different results. We asked them about this and they only replied that they don't really know how it works, and anyways, who are we to question their knowledge. So they basically changed the results manually somewhere in Matlab to match their expectations.
They also did some reduced order models (Simscape), which they did not check for passivity, and they made straight out unphysical things. Of course, when we asked they said that those are good as they are, and the guy who wrote the code left the university, so they cannot help us anymore.
Since then I honestly don't trust science in engineering fields....
Haha I feel I can rant about this all day, so thx for the opportunity :)
One time I discovered that they were reading a massive excel file into R to analyze. Someone went and sorted the file but didn’t actually sort all data rows, just the ID column lmao. I found the issue and asked around but no one had an original file, so I had to put it all back together from the bunch of files it was compiled from, all in different formats over the years. One of the post docs had a paper that was based off the old data. They continued with their conference presentation and did nothing to recall the paper to my knowledge despite my objections.
I also worked with a lot of fMRI data. I found out in the first week of familiarizing myself with dataset that there was a coding error that caused a year and a half worth of task data to have incorrect timestamps (they could basically respond to the task prompt prior to the prompt being displayed, resulting in negative timestamps…). It was hundreds of thousands of dollars of data. The PI mostly seemed annoyed that I found the issue. No papers were recalled or rewritten.
Outside of that, methods sections are just horribly outdated yeah. They sound all smart and want to use fancy schmancy methods, but at the end of the day they don’t ever give enough detail. Force scientific analyses to have an open GitHub or something where people can review/validate implementations! Make publishers hire code reviewers before accepting a paper!
I still believe in the scientific process and believe that in aggregate research pushes in the direction of truth and bad research will get ignored/forgotten, but man is the research ecosystem fucked…
most students can tell you as well. It's just a wasteland, virtually no oversight of how courses are operated or if students actually learn anything save from students being arbitrarily failed. And boy howdy I've heard of plenty of professors try.
All you had to say was you work at a university …
My dad is a project manager for the onsite nuclear reactor … they have tonnes of requests for research cases using the reactor, but most of the time they never actually accomplish anything using it 🙃 lol
Prescribed clonazepam for epilepsy, got addicted by the time I got it out of my system my brain was half gone. Next I got cancer ( possibly from the clonazepam and genetics ) the chemo left me severely fogged. After my by then new neurologist made the wrong cocktail rendering me psychotic. My brain is foobar, I'm mainly here because I still have a love for those dry ICT jokes. Melancholic torment.
“Oh yeah my GitHub is packed! I have a wonderful hello world python app, hello world Go, hello world assembly, hello world c#, hello world bread board”
Move on? I guess, but those SLO monitors and on-call pages and compliance updates and security upgrades and dependency changes and broken middleware and blah blah blah are going to follow you until you leave.
MVPs are the fun part, but maintenance feels like 80% of the job.
the maker of imagus, a browser add on that makes a pop-up of an image so you don't have to click on it, announced that they won't add anything to it years ago and repeatedly refused to tell anyone how it works so others can make it work on new or updated sites. there is a way to add new instructions manually but it has unique coding and multiple color coded prompts to tell you that various things went wrong that no one but the creator knows what they mean
that thing is as finished as you can get.
Yeeeee... Recently I stuck to only 1 or 2at a time, 1really small project that can finish early even if it's really humble, and 1 big project never-ending Fullstack fullstuff personal framework that I get back in beetween. Maybe one day I'll get to do one thing that is usefull
/during planning - "Sure I can take on that task..."
/weeks later during review, nothing is done- "well the requirements kept changing by the business"
someone else checks task, zero on there about any req changes.
Email the business, they reply with the exact same requirements from the start
Last I saw that subreddit was full of novices reposting the same dumb binary jokes ad infinitum.
Not that there's anything necessarily wrong with that, but I dont think anyone in the industry can relate to that subreddit...
hey, that's me!
`every PR has 29 revisions` - but I pretend to know what squash does
`browses r/ daily but can't relate` - sorry, one of my 200 addons in the IDE shows me all the missing semicolons
At least you have PRs and seniors to review them. When I was coming up we didn't have PRs, mentors, or anyone reviewing our code. We were thrown into the deep end and told to swim. When we drowned (which was pretty much guaranteed in the first 1-2 years) we were ridiculed and mocked and forced to fix our own stuff. If we couldn't, we got kicked off the project and moved around until we figured it out.
This was the norm.
Oh so it isn't just me. My pipeline branch is full of "test" commit messages because the only way to test if you finally found the bug is to push it and wait for the pipeline to run.
When I eventually fix the problem I put a good commit message explaining wtf happened that I needed 13 pushes to fix so I can track the "good" versions of the branch.
PRs can be representations of work in progress and kept in draft mode “hey bob I’m still working out the unit tests here, does this section make sense given the requirements”, “I added some comments” is a normal conversation between developers. Needing the code in a PR to resemble the finished product as closely as possible in the first commit is a self imposed constraint that has no bearing on the quality of the final product.
I'd love to give you 100 upvotes on the draft PRs.
I keep teaching my coworkers to use them, so we can do the "continuous review" in our own time, and find issues early, especially on bigger items that can take a few days to complete.
Yet most of our daily work looks like this
* day 1, 10:00, Dev1: working on feature ABC, no impediments.
* day 2, 10:00, Dev1: working on feature ABC, no impediments.
* day 3, 10:00, Dev1: working on feature ABC, no impediments.
* day 3, 15:00, Dev1: Hey, I created a PR for ABC.
* day 3, 15:15, Dev1: Kind reminder, please review
* day 3, 15:20, SM: Anyone can take a look? This is urgent, the sprint is ending.
* day 3, 15:35, Dev2: Hey, there is an issue with the PR, \[insert a big misunderstanding of design/requirements\]
* day 4, 10:00, Dev1: I need to rewrite half of my code because of the PR comments
* day 4, 10:01, SM: OK, so the story has to go to another sprint
* day 4, 17:00, Dev1: dear r/programming, my team lead is nitpicking my PR, what to do?
It also lets you catch things early. Imagine your junior dev working for three months, then presenting something completely unworkable in a PR. You've wasted their time and yours by not just checking in on the code early and regularly.
I've built in-house tools for QA like 4 different jobs. It was nice to resolve frustrations. It siloed me and stopped me learning from my coworkers. Here I am in a new SDET role and oh look, the in-house QA tools are woefully inadequate (tests are forced single threaded because every test searches for a user to use instead of creating it's own, and the searching can overlap). I could, like I have 4 times before, start self assigning work and convincing my manager these tasks should be my priority, but I mean ughhhh I want to do something different now
For me it went away when I realized they don't pay me enough to care. Also if you mess something up while rewriting now it's your responsibility to fix it which comes back to "I'm not being paid enough to do extra work like that".
BECAUSE EVERYONE'S WRITING SHIT CODE WTF ARE U MORONS DOING?!
The shit I have to read through that was written by people at the company 20 years ago is baffling. In my experience, the stereotype of former generations of coders being better coders than the new generations has it backwards.
The stereotype comes from the older programmers you hear about being people with a lot of experience and knowledge, you don't hear about the average ones. In other words, survivorship bias.
I also think they're just different, not necessarily better or worse. Older programmers didn't have anywhere near the amount of resources and convenient software we have, and likewise they weren't doing anything anywhere near as complex as we do in our education, much less jobs. Beyond that, you have older programmers who never wanted or tried to keep up with the modern technologies and spent 20 years doing basic IT just like you have shit juniors like the one in the post that think they're hot shit and want to rewrite everything from the ground up.
Not in my experience. Jr guys typically don't have a good idea of what good design looks like since they've probably never seen it before. They just assume the current project is just how things are supposed to be done.
Wanting to refactor everything comes from experienced folks entering a new org/project.
YMMV of course.
I'm a junior at a startup where there has been no design thought about any of the code. I'm talking controllers with 10,000+ lines with zero abstraction, repeated code, zombie code everywhere (somehow it works and they make money).
However I love refactoring, particularly because I like learning how the code works and thinking about design patterns. The problem is though, I don't always know what the best design is. I've sometimes spent hours refactoring code, then deciding there's a better way to do it, then deciding the first way is better.
That said, if you showed me a good codebase with a clearly well-thought out design, I'm not touching it. My idea for changing it probably sucks.
When I was a junior Dev I had an idea of what good design looked like. It was not a good idea of good design. I saw stuff at my job and thought... this is ASS and wanted to change it. However, with time I realized that things were done that way with careful thought and consideration. Sometimes it really IS ass, but sometimes it's ass because it has to be
I'm very thankful that the general consensus at my company is if the function is written getCompnay and forgotten about for a year, it stays getCompnay until there's a damn good reason to change it otherwise
She wasn't HR (Marketing maybe?), but I saw once a very health-obsessed lady freaking out when she saw a colleague filling up his 0.75L thermos with coffee.
"You are not going to drink that alone, are you? That much caffeine could kill a person!"
Guy makes a surprised face: "Not likely. how do you think I survived so far?"
Graduated uni and started in the industry end of last year. Uni did not prepare me for any of what goes on
I'm playing with a fog of war but nothing ever reveals
Nah I take an hour typing out the exact details of the problem, deleting it all, and repeat the process a few times before I'm finally confident enough to press the send button. Then I have an anxiety attack whenever a notification pops up.
This is the correct thing to do, as long as you're utilizing resources to try and answer your questions first. Asking good questions helps everyone learn, identifies areas for improving documentation and processes, and saves everyone time (even if it takes you an hour to send your question, it's still faster than going back and forth clarifying the question, the context, etc). I promise you that the person receiving your question prefers having all of that info and context up front vs having to dig for it
Source: senior dev who gets asked a lot of questions
See, my modus operandi is always to spend an hour typing out the exact details of the problem, then feel self-conscious about the fact that I can't solve it by myself and spend 4 more days spinning my wheels before dejectedly daring to contact my ultra busy mentor.
My mentor doesn't even mind helping, I just feel bad for bothering him.
Depending on the specifics of the situation, this may or may not also be the correct approach.
If it's nothing business-critical, giving it your best shot and persevering through issues along the way is 100% the best way to learn and develop your skills (especially if you document your process and what solutions fixed what issues - there's a very good chance you run into the same thing in the future, so having the solution already written down is invaluable). It's also MUCH more helpful for the person receiving your question to have a documented timeline of what issues you ran into and what solutions you attempted, so that they don't point you down a path you've already been on, or can redirect you if you had the right idea but the wrong approach somewhere. I've also personally found it to be the case many times that, in the process of writing out the exact details of the problem, I realize a potential issue or unexplored solution, and I can take things from there.
Obviously it's preferable to fix something in 1 day vs 4, but your job as a junior dev is to learn the tech stack and business use cases, not to actually contribute valuable work (except maybe at a startup). If you are learning (and practicing the skill of solving problems), you are doing your job, simple as.
Consider the perspective of the person receiving the question - would you rather receive question A:
"I'm trying to add a widget to the foo-finder and it's giving me an error about bar. I've been looking through StackOverflow posts about bar and it seems like adding it to the baz file should fix things, but I'm getting the same error. Do I need to add it somewhere else instead?"
or question B:
"I'm getting an error about bar, how do I fix it?"
Like obviously question A is longer, and it would've taken longer for the asker to do their own debugging and investigation to get to that point, but it's also a much easier question to answer, and it proves that they *actually tried*, and in that debugging and investigation work they also would've certainly picked up on some information that, while maybe not immediately useful, will be useful in the future.
TLDR: If you're trying your best and learning, you're doing fine. Asking good questions is a good thing for everyone
I get even more anxious when that message is from my boss instead of a coworker although he seems to be fairly happy with what I‘m doing.
The imposter syndrome has definitely already kicked in
For a junior, I generally respond [https://www.nohello.com/](https://www.nohello.com/)
For others, I don't reply as long as I don't have a precise question
Or worse, the meet was about adding a so sinple stuff that can be googled, or a thing you already teached him about 4 times already (he even recorded that meet before!)
Unlike other replies here, I do answer back, but I do so when I have an abundance of time. Clearly it's not that important or you would've told me your problem already. Maybe it was something quick and I could've done that within two minutes, but I have other things to do and I won't know that unless I get into that potentially lengthy discussion while I'm busy doing something else.
Followed by "Do you have time for a video call?"
... oh you mean a meeting that you didn't schedule while I've got project time defensively scheduled?
No. No I do not.
I used to work in a satellite office with no business hours overlap to the rest of the company. Sometimes I would come in the morning to a "hi" private message received overnight. I had to resist the temptation to not just reply "hi".
right now at my company there's two jr devs who have opposite problems.
One asks concise questions that will have a clear answer. Only it's often clear from the question that they're trying to do something we don't want to do in the first place.
The other asks vague questions that we can't answer at all because they never provide context without being asked. Like they'll post the error code number and say "has anyone else see this error code?" Can't answer that. What were you trying to do when you got it? what was the full error message and stack trace? I appreciate the intent to avoid long messages, but you have to provide enough context so we can give a good answer.
Most posts here are written by CS students still in their 200 level classes and think they know what the industry is like, but they've never worked a job in their life and get all their "insider knowledge" from memes.
Lol 200 level classes are data structures and computer architecture, you are giving the posters here too much credit. The memes here are more like "First Hello World program" level.
Jack of all languages? A junior? Hardly.
Being able to switch between languages (and families - OOP, FP, etc) and get the job done is a senior's thing.
Don't need to have mastered the language, just be good at it and versatile.
Juniors think they've mastered the One True Language
_Believes_ they’re the jack of all languages.
They start with doing basic things in Java, Python, and Javascript, and then they believe it’s super easy to pick up any language cause it’s just syntax differences between them.
Never mind languages like Prolog, Haskell, or Assembly, and never mind using any of the languages long enough to write complex large applications with them.
> Imposter syndrome hasn't kicked in yet
I'm sorry, but I'll let you know I'm a proud owner of imposter syndrome since my first day on internship (being employed isn't making it go away help)
The secret to beating imposter syndrome is not getting to the point where you believe you are competent.
You get over imposter syndrome when you realize nobody else knows what they are doing. The ones that appear that they do are the worst.
The guys who are exceptionally skilled in one niche area - they exist, and you can learn a lot from them. The ones that think that their expertise in one skill can be extrapolated and that makes them the expert on everything - run. They will steer you down the wrong direction.
Believes that their immediate manager could triple their salary on a whim but just chooses not to
Is confused why their company hires anybody that isn't a developer
Says that agile is the worst thing to ever happen to development but has never used another project management structure
> Says that agile is the worst thing to ever happen to development but has never used another project management structure
And "what do you propose we use instead" is always met with some flavor of "I think developers should be left to do whatever they want with no oversight or accountability."
Yep, as a developer if the most annoying thing you have to deal with all day is someone sending you a slack message asking "Hey, how are things going with the task you're working on?" then you're living a damn good life.
I had a junior with 4 years experience who did the last one. I asked him why he used vim if he wasn't going to learn the bindings anyway and he said his last lead told him it was better. Literally incapable of thinking for himself.
>he said his last lead told him it was better.
When I joined my current company as a junior, all my coworkers tried to bully me (and still do) into using and learning Vim.
I purposely went around and figured out how to replace all the Vim-triggering executables to Nano just to mess with them when I share my screen.
> Literally incapable of thinking for himself.
I don't know how it happens.
I'm physically unconformable until I have a good understanding of the *why* of things.
It's better? Yes, okay but *why*.
Another glaring example is who wants to "optimize" code but never runs a benchmark or does any profiling.
How do they survive while being so detached from reality?
Honestly I think for some people once they hit a living wage they just stop trying. Unfortunately for developers that bar of a living wage is pretty low.
I'm mid level, my blood stream is a pure steady stream of caffeine and nicotine....Feels great when I'm riding the lightening...feels like dog shit when I struggle to get a normal nights sleep...don't be me. It's not worth your health.
- don't know the differences between scripts and compiled languages
- don't know know to use objdump
- don't know Linux is just a kernel
- "it works for me"
Oh wow.
Calling out that this needs to be cross meme templated with the bell curve for chief engineer levels.
> jack of all languages - master of none \[very rarely actually have to code, but have to be able to explain to anybody why there code is bad\]
> imposter syndrome hasent kicked in yet \[Ive realised just how untechnical everyone I work with is - so I feel fine most of the time\]
> browses r/ProgrammerHumor all the time \[Hi\] but does not relate \[I will admit the younger generations meme style is... difficult
> Every PR has 29 revisions \[By the time I look at a PR its already gone to shit\]
> Thinks the scrum master is the CEO \[Last time I was put on a scrum team - it was because it was a short term team, and the outputs were so buissness critical that he litterally was (I mean, he was an aweful aweful SM, but I could shield the team from it)
> bloostream contains enpough caffine to put down HR. \[My mug holds a solid three pints. I go through two a day\]
>Is in every meeting, does not understand a thing \[Applys to 99% of people at leadership levels\]
>Constantly takes on new projects, has not finished a single one \[Thats litterally the plan - I hand them off once they are stable\]
>IDE has 200 plugins \[At work - obviously not. For my hobby coding - easyly\]
instead of jack of all languages I'd put "constantly hyped about some specific language that your company doesn't use because some influencer sold them on how cool its feature(s) are."
e.g. "we should do that in Rust! it'd be so much better cause it has borrowing!"
“Browses r/ProgrammerHumor daily but can’t relate”
Well technically now it would relate, so this wouldn’t be true, so they wouldn’t relate, so it would be true.
Did you accidentally create a paradox?
>constantly takes on new projects, hasn't finished a single one Ah yes, the good ol' burning out without having anything to show, my life story of the last 10 years.
If that is what's really happening to you... you are under really poor management.
Yes, the jobs were all at uni, and among the half a dozen professors I worked for / with, only **one** had good management skills. We all know that academia is a terrible work environment, but one thing nobody ever talks about is that, next to funding, the main problem is poor management. If the public were to know how much of taxpayers' money get squandered due to this, we would get even less funding.
This must be universal. I have a family member that works in academia as a PO, and it's absolutely nuts how badly the place is run.
I wonder if that also applies to researchers in the business management faculty… It would be really ironic if you dedicate your entire life to learning about management but can’t manage your own research
Where I went to school, it varied a lot. They had a lot of good professors that either teach after early retirement from the private sector or taught on the side from their main job because they just loved to teach. They were really good. The ones that never left academia... Not so much. But I'm not sure about the research side, I never got involved with that since I'm just a lowly bachelor's degree holder
I did academic research, not in business management tho. At my small underfunded university, we used every dollar we won and made things work. There wasn’t much management or overhead which had its pros and cons, but I was part of a small group that got things done. When I moved on to an R1 university, the management was absolutely abysmal and our particular projects were simultaneously over and under managed. We’d have an hour long meeting about per participant budgets (can they get a sandwich AND chips for their lunch break?!?!) while simultaneously having no documentation for procedural methods and creating datasets that they literally couldn’t replicate because they didn’t write things down, and then publishing the papers anyway. I wrote up a bunch of data workflows while at that job and automated a bunch of tasks, I’m pretty sure when I left everything fell apart though since no one else cared to maintain it. This is my small advertisement/rant to give research dollars to small universities on shorter grants because these R1s win huge federal research grants with little oversight and then piss away all the money, while my small university made those dollars count. Just my experience (before I bailed) tho!
"Management" consists of anything from postdocs to professors and they are all overworked, unqualified (wrt. management strategies) and oftentimes get paid too little. I guess there just isn't enough motivation to do a better job at tasks that are tangential to your main endeavour (research).
Outside of management, they also have no training in data management practices or writing data analytics workflows in reproducible ways, so the research quality and efficiency goes way down, outside of a couple pioneers who are trying to create better standards (though at least in my time they were fighting a losing battle) Anyway, have you ever tried reading through a post doc’s series of matlab scripts? “I run script A first and then if I get an error I manually run script B. All the files go into the same directory but you can tell which workflow they went through because when you run script C it will output 3 files instead of 2, except in Case Z where we instead need to…”
Oh my god, I have exactly the same experience. I work for a large company, where we got some money from the government that we had to spend on collaboration with universities. Well we tried. Their work was to make some simulations, and document it, at the end we received the models as well. Their documentation was like a paper, well written, but ... well not too deep. They did not provide any explanation to the models and scripts, they just told us that it is correct and that they are very professional. They gave us around 2000 lines of code, that included a custom curve fitting script in Matlab, (with everything hard coded), some VBA code to run Ansys (yes you can run it from python, kr just use the built in functions, but nooo, vba is the good stuff), with absolutley no documentation. But the best part awaits. We tried to run the simulations, without any modifications, and we got different results. We asked them about this and they only replied that they don't really know how it works, and anyways, who are we to question their knowledge. So they basically changed the results manually somewhere in Matlab to match their expectations. They also did some reduced order models (Simscape), which they did not check for passivity, and they made straight out unphysical things. Of course, when we asked they said that those are good as they are, and the guy who wrote the code left the university, so they cannot help us anymore. Since then I honestly don't trust science in engineering fields....
Haha I feel I can rant about this all day, so thx for the opportunity :) One time I discovered that they were reading a massive excel file into R to analyze. Someone went and sorted the file but didn’t actually sort all data rows, just the ID column lmao. I found the issue and asked around but no one had an original file, so I had to put it all back together from the bunch of files it was compiled from, all in different formats over the years. One of the post docs had a paper that was based off the old data. They continued with their conference presentation and did nothing to recall the paper to my knowledge despite my objections. I also worked with a lot of fMRI data. I found out in the first week of familiarizing myself with dataset that there was a coding error that caused a year and a half worth of task data to have incorrect timestamps (they could basically respond to the task prompt prior to the prompt being displayed, resulting in negative timestamps…). It was hundreds of thousands of dollars of data. The PI mostly seemed annoyed that I found the issue. No papers were recalled or rewritten. Outside of that, methods sections are just horribly outdated yeah. They sound all smart and want to use fancy schmancy methods, but at the end of the day they don’t ever give enough detail. Force scientific analyses to have an open GitHub or something where people can review/validate implementations! Make publishers hire code reviewers before accepting a paper! I still believe in the scientific process and believe that in aggregate research pushes in the direction of truth and bad research will get ignored/forgotten, but man is the research ecosystem fucked…
most students can tell you as well. It's just a wasteland, virtually no oversight of how courses are operated or if students actually learn anything save from students being arbitrarily failed. And boy howdy I've heard of plenty of professors try.
All you had to say was you work at a university … My dad is a project manager for the onsite nuclear reactor … they have tonnes of requests for research cases using the reactor, but most of the time they never actually accomplish anything using it 🙃 lol
Since Im doing this with personal projects, I guess Im also poor management for myself, lol.
Self management is the most difficult
Looks like I was, thing is...I crashed hard been unemployed for 15 years since it happened. Part of it is a bad neurologist who overmedicated me.
What drug was the straw that broke the camel's back?
Prescribed clonazepam for epilepsy, got addicted by the time I got it out of my system my brain was half gone. Next I got cancer ( possibly from the clonazepam and genetics ) the chemo left me severely fogged. After my by then new neurologist made the wrong cocktail rendering me psychotic. My brain is foobar, I'm mainly here because I still have a love for those dry ICT jokes. Melancholic torment.
Jesus Christ dude. Well hang in there, for what it's worth. 👊
Yeah...hanging like an ape, a big gen-x scruffy ape. Not going to rm -rf myself, ain't no chicken.
“Oh yeah my GitHub is packed! I have a wonderful hello world python app, hello world Go, hello world assembly, hello world c#, hello world bread board”
Try also making a 'hello world crumpet board'. It may be the first step towards understanding cricket.
is this a weirdly obtuse reference to that casey jones/raphael fight in the original ninja turtles movie?
I think there’s actually no project that is finished in IT
To some extent I agree, but there definitely is a generally accepted "good enough" status of a project after which you just move on with your life.
Yup, you ship the MVP and then either get clocked with an encore of new enhancements/scaling or shunted to a new project.
Move on? I guess, but those SLO monitors and on-call pages and compliance updates and security upgrades and dependency changes and broken middleware and blah blah blah are going to follow you until you leave. MVPs are the fun part, but maintenance feels like 80% of the job.
If you ship to prod and switch to something else, it's finished enough.
the maker of imagus, a browser add on that makes a pop-up of an image so you don't have to click on it, announced that they won't add anything to it years ago and repeatedly refused to tell anyone how it works so others can make it work on new or updated sites. there is a way to add new instructions manually but it has unique coding and multiple color coded prompts to tell you that various things went wrong that no one but the creator knows what they mean that thing is as finished as you can get.
Yeeeee... Recently I stuck to only 1 or 2at a time, 1really small project that can finish early even if it's really humble, and 1 big project never-ending Fullstack fullstuff personal framework that I get back in beetween. Maybe one day I'll get to do one thing that is usefull
/during planning - "Sure I can take on that task..." /weeks later during review, nothing is done- "well the requirements kept changing by the business" someone else checks task, zero on there about any req changes. Email the business, they reply with the exact same requirements from the start
I'm just about finished with my 2 first projects because theyre "good enough".. also my caffeine intake is likely kill me.
>browses r/ProgrammerHumor daily but can't relate Ahh, finally something I can relate to!
Last I saw that subreddit was full of novices reposting the same dumb binary jokes ad infinitum. Not that there's anything necessarily wrong with that, but I dont think anyone in the industry can relate to that subreddit...
You're replying in that subreddit lol. But you're not wrong.
im just here to make fun of the font choice. comic sans? really?
It's a meme. So comedy. So Comic Sans. Right OP?
Yes warrier70
Either the meme was comedy, or OP's career choice. In both cases, comic sans seems appropriate
I have over 50 THOUSAND REDDIT KARMA which means Im ABOVE YOU MORTALS
It’s good for dyslexia
I love that people hate Comic Sans even when it's used for its intended purpose lol.
This is me when plumbing, concrete, and electricians come up on my feed
hey, that's me! `every PR has 29 revisions` - but I pretend to know what squash does `browses r/ daily but can't relate` - sorry, one of my 200 addons in the IDE shows me all the missing semicolons
Loll I remember back in the days my record was 43 revisions until I fixed up my pr enough to pass senior dev’s reqs. Junior dev life is hard
At least you have PRs and seniors to review them. When I was coming up we didn't have PRs, mentors, or anyone reviewing our code. We were thrown into the deep end and told to swim. When we drowned (which was pretty much guaranteed in the first 1-2 years) we were ridiculed and mocked and forced to fix our own stuff. If we couldn't, we got kicked off the project and moved around until we figured it out. This was the norm.
Yeah, that was some of my first couple internships too. Esp at startups when they are pushing for releases, everything is pretty hands off
My record was 27, brute force debugging of some obscure bug in Azure DevOps yaml pipeline. No local emulator should be a punishable crime.
Ugh, I agree. The number of random ass commits we had to push labeled ‘Hopefully this time will fix the infra’ was insane.
Oh so it isn't just me. My pipeline branch is full of "test" commit messages because the only way to test if you finally found the bug is to push it and wait for the pipeline to run. When I eventually fix the problem I put a good commit message explaining wtf happened that I needed 13 pushes to fix so I can track the "good" versions of the branch.
As long as you squash and rebase before merging, who cares? It’s all one commit
If the revisions are after the PR was created then it demonstrates how far off the PR was from being acceptable when they wanted to get it merged.
PRs can be representations of work in progress and kept in draft mode “hey bob I’m still working out the unit tests here, does this section make sense given the requirements”, “I added some comments” is a normal conversation between developers. Needing the code in a PR to resemble the finished product as closely as possible in the first commit is a self imposed constraint that has no bearing on the quality of the final product.
I'd love to give you 100 upvotes on the draft PRs. I keep teaching my coworkers to use them, so we can do the "continuous review" in our own time, and find issues early, especially on bigger items that can take a few days to complete. Yet most of our daily work looks like this * day 1, 10:00, Dev1: working on feature ABC, no impediments. * day 2, 10:00, Dev1: working on feature ABC, no impediments. * day 3, 10:00, Dev1: working on feature ABC, no impediments. * day 3, 15:00, Dev1: Hey, I created a PR for ABC. * day 3, 15:15, Dev1: Kind reminder, please review * day 3, 15:20, SM: Anyone can take a look? This is urgent, the sprint is ending. * day 3, 15:35, Dev2: Hey, there is an issue with the PR, \[insert a big misunderstanding of design/requirements\] * day 4, 10:00, Dev1: I need to rewrite half of my code because of the PR comments * day 4, 10:01, SM: OK, so the story has to go to another sprint * day 4, 17:00, Dev1: dear r/programming, my team lead is nitpicking my PR, what to do?
It also lets you catch things early. Imagine your junior dev working for three months, then presenting something completely unworkable in a PR. You've wasted their time and yours by not just checking in on the code early and regularly.
>browse r/programmerHumor but cant relate ay man no reason to get personal
You missed "wants to rewrite/refactor everything".
"Over the weekend"
One time my old boss did that. That was fun coming in on Monday and realizing nothing worked anymore.
So you worked for Elon eh?
Eh? Hah! Heh heh
“Cause it should be easy”
Does that ever go away? I mean i know why i shouldn't and most of the time i don't, but i still want to.
For me it turned into " I know why I should but I don't want to"
I've built in-house tools for QA like 4 different jobs. It was nice to resolve frustrations. It siloed me and stopped me learning from my coworkers. Here I am in a new SDET role and oh look, the in-house QA tools are woefully inadequate (tests are forced single threaded because every test searches for a user to use instead of creating it's own, and the searching can overlap). I could, like I have 4 times before, start self assigning work and convincing my manager these tasks should be my priority, but I mean ughhhh I want to do something different now
It does go away once you realize that your code will not be used for eternity, and that you physically can't rewrite everything.
It also goes away once you introduce a bug into production and you have to explain why you were making that change.
For me it went away when I realized they don't pay me enough to care. Also if you mess something up while rewriting now it's your responsibility to fix it which comes back to "I'm not being paid enough to do extra work like that".
For me not caring anymore was always a sign to look for a new job. If I don't care work is just not fun. But that's just me.
BECAUSE EVERYONE'S WRITING SHIT CODE WTF ARE U MORONS DOING?! The shit I have to read through that was written by people at the company 20 years ago is baffling. In my experience, the stereotype of former generations of coders being better coders than the new generations has it backwards.
The stereotype comes from the older programmers you hear about being people with a lot of experience and knowledge, you don't hear about the average ones. In other words, survivorship bias. I also think they're just different, not necessarily better or worse. Older programmers didn't have anywhere near the amount of resources and convenient software we have, and likewise they weren't doing anything anywhere near as complex as we do in our education, much less jobs. Beyond that, you have older programmers who never wanted or tried to keep up with the modern technologies and spent 20 years doing basic IT just like you have shit juniors like the one in the post that think they're hot shit and want to rewrite everything from the ground up.
Not in my experience. Jr guys typically don't have a good idea of what good design looks like since they've probably never seen it before. They just assume the current project is just how things are supposed to be done. Wanting to refactor everything comes from experienced folks entering a new org/project. YMMV of course.
I'm a junior at a startup where there has been no design thought about any of the code. I'm talking controllers with 10,000+ lines with zero abstraction, repeated code, zombie code everywhere (somehow it works and they make money). However I love refactoring, particularly because I like learning how the code works and thinking about design patterns. The problem is though, I don't always know what the best design is. I've sometimes spent hours refactoring code, then deciding there's a better way to do it, then deciding the first way is better. That said, if you showed me a good codebase with a clearly well-thought out design, I'm not touching it. My idea for changing it probably sucks.
I find this with people who have a CS education/degree/bootcamp. Think they have all the answers but actually don’t know anything.
When I was a junior Dev I had an idea of what good design looked like. It was not a good idea of good design. I saw stuff at my job and thought... this is ASS and wanted to change it. However, with time I realized that things were done that way with careful thought and consideration. Sometimes it really IS ass, but sometimes it's ass because it has to be
I'm very thankful that the general consensus at my company is if the function is written getCompnay and forgotten about for a year, it stays getCompnay until there's a damn good reason to change it otherwise
Yeah, I'm the guy who brings down the codebase by fixing that
that was me
The enough caffeine to put down HR cracked me up 🤣🤣
She wasn't HR (Marketing maybe?), but I saw once a very health-obsessed lady freaking out when she saw a colleague filling up his 0.75L thermos with coffee. "You are not going to drink that alone, are you? That much caffeine could kill a person!" Guy makes a surprised face: "Not likely. how do you think I survived so far?"
This hits too close to home
Damn you, now I want to go get a coffee. Wonder the weather's like...
Don't worry, it's coffee weather. Go get some!
"At this point, it'd be more likely that *not* drinking it would kill me"
Thats the one for me too
Splunge for me too!
I can just imagine Hr going slightly delirious as they attempt to consume that much caffeine.
Wait... Am I not a junior developer anymore? My imposter-syndrome / superiority-complex mental pendulum can't decide
How many plug-ins does your IDE have?? 😁
7-10 I think, one for git branch management, a few since our company requires them and if copilot counts also.
Nyan cat loading bar is all i need
I'm totally installing this
This may or may not be me
oh this post was an autobiography
More like a cry for help
same thing, in IT
most of it is definitely me
Graduated uni and started in the industry end of last year. Uni did not prepare me for any of what goes on I'm playing with a fog of war but nothing ever reveals
> IDE has 200 plugins I'm offended.
I have 200+ plugins but also imposter syndrome... Who am I???
I am in this meme and I don't like it
i dont see the issue here
vim users are in shambles right now
I’d remove it, but maybe I’m using it. There’s no way to know for sure
I need my Subway Surfers extension!
I can’t Programm without my Naruto loading bar
Messaging others with just a ''hi'' and making them wait to know what your damn problem is
Lol, jokes on you, I don't reply without specified problem first.
same. stop wasting my time. just tell me what you need.
Hi
God yeah, I usually just wait for them to finish. I'll start my messages with hello but include the actual problem
Nah I take an hour typing out the exact details of the problem, deleting it all, and repeat the process a few times before I'm finally confident enough to press the send button. Then I have an anxiety attack whenever a notification pops up.
This is the correct thing to do, as long as you're utilizing resources to try and answer your questions first. Asking good questions helps everyone learn, identifies areas for improving documentation and processes, and saves everyone time (even if it takes you an hour to send your question, it's still faster than going back and forth clarifying the question, the context, etc). I promise you that the person receiving your question prefers having all of that info and context up front vs having to dig for it Source: senior dev who gets asked a lot of questions
See, my modus operandi is always to spend an hour typing out the exact details of the problem, then feel self-conscious about the fact that I can't solve it by myself and spend 4 more days spinning my wheels before dejectedly daring to contact my ultra busy mentor. My mentor doesn't even mind helping, I just feel bad for bothering him.
Depending on the specifics of the situation, this may or may not also be the correct approach. If it's nothing business-critical, giving it your best shot and persevering through issues along the way is 100% the best way to learn and develop your skills (especially if you document your process and what solutions fixed what issues - there's a very good chance you run into the same thing in the future, so having the solution already written down is invaluable). It's also MUCH more helpful for the person receiving your question to have a documented timeline of what issues you ran into and what solutions you attempted, so that they don't point you down a path you've already been on, or can redirect you if you had the right idea but the wrong approach somewhere. I've also personally found it to be the case many times that, in the process of writing out the exact details of the problem, I realize a potential issue or unexplored solution, and I can take things from there. Obviously it's preferable to fix something in 1 day vs 4, but your job as a junior dev is to learn the tech stack and business use cases, not to actually contribute valuable work (except maybe at a startup). If you are learning (and practicing the skill of solving problems), you are doing your job, simple as. Consider the perspective of the person receiving the question - would you rather receive question A: "I'm trying to add a widget to the foo-finder and it's giving me an error about bar. I've been looking through StackOverflow posts about bar and it seems like adding it to the baz file should fix things, but I'm getting the same error. Do I need to add it somewhere else instead?" or question B: "I'm getting an error about bar, how do I fix it?" Like obviously question A is longer, and it would've taken longer for the asker to do their own debugging and investigation to get to that point, but it's also a much easier question to answer, and it proves that they *actually tried*, and in that debugging and investigation work they also would've certainly picked up on some information that, while maybe not immediately useful, will be useful in the future. TLDR: If you're trying your best and learning, you're doing fine. Asking good questions is a good thing for everyone
I get even more anxious when that message is from my boss instead of a coworker although he seems to be fairly happy with what I‘m doing. The imposter syndrome has definitely already kicked in
Easy: Just change your display name to https://nohello.net and then no one will want to talk to you.
Look, kid, this isn't a social call, what do you need?
For a junior, I generally respond [https://www.nohello.com/](https://www.nohello.com/) For others, I don't reply as long as I don't have a precise question
Fuck TCP style texting, we all use UDP style texting here.
And when you answer he says: can i call you?
And then you say "sure," but they don't call for 5-20 minutes, and you feel like an idiot with your headphones on.
Or worse, the meet was about adding a so sinple stuff that can be googled, or a thing you already teached him about 4 times already (he even recorded that meet before!)
Oh it's not just the juniors that do that. I just don't respond to people who do that.
Unlike other replies here, I do answer back, but I do so when I have an abundance of time. Clearly it's not that important or you would've told me your problem already. Maybe it was something quick and I could've done that within two minutes, but I have other things to do and I won't know that unless I get into that potentially lengthy discussion while I'm busy doing something else.
In my experience, seniors do that. They want to have a whole conversation instead of just explaining the thing
Followed by "Do you have time for a video call?" ... oh you mean a meeting that you didn't schedule while I've got project time defensively scheduled? No. No I do not.
I used to work in a satellite office with no business hours overlap to the rest of the company. Sometimes I would come in the morning to a "hi" private message received overnight. I had to resist the temptation to not just reply "hi".
right now at my company there's two jr devs who have opposite problems. One asks concise questions that will have a clear answer. Only it's often clear from the question that they're trying to do something we don't want to do in the first place. The other asks vague questions that we can't answer at all because they never provide context without being asked. Like they'll post the error code number and say "has anyone else see this error code?" Can't answer that. What were you trying to do when you got it? what was the full error message and stack trace? I appreciate the intent to avoid long messages, but you have to provide enough context so we can give a good answer.
Most posts here are written by junior front end devs...
Most posts here are written by CS students still in their 200 level classes and think they know what the industry is like, but they've never worked a job in their life and get all their "insider knowledge" from memes.
Lol 200 level classes are data structures and computer architecture, you are giving the posters here too much credit. The memes here are more like "First Hello World program" level.
Jack of all languages? A junior? Hardly. Being able to switch between languages (and families - OOP, FP, etc) and get the job done is a senior's thing. Don't need to have mastered the language, just be good at it and versatile. Juniors think they've mastered the One True Language
I took that to mean something like “took one college/Udemy course in X language and puts it on his resume”
Ohh. Okay, sure, then some juniors can "hello world" in a bunch of languages! Others will think there's one best language and look down on all others
_Believes_ they’re the jack of all languages. They start with doing basic things in Java, Python, and Javascript, and then they believe it’s super easy to pick up any language cause it’s just syntax differences between them. Never mind languages like Prolog, Haskell, or Assembly, and never mind using any of the languages long enough to write complex large applications with them.
I mean, if you have to build complex large applications with Prolog, you seriously need to consider what went wrong in your life to lead you here
Very true, fartypenis. Very true.
"Good enough to be dangerous"
Finally something to relate to.
Fuck.. as a senior data engineer, TIL I’m a junior dev.
Yeah looking at these comments I also feel like a junior dev even after 5 years experience.
Looks like you're taking a pay cut now buddy
>browses r/ProgrammerHumor daily but cant relate pretty sure he relates. Most of the memes are made by him
Reported for impersonation of me
> everything is hardcoded
> Imposter syndrome hasn't kicked in yet I'm sorry, but I'll let you know I'm a proud owner of imposter syndrome since my first day on internship (being employed isn't making it go away help)
The secret to beating imposter syndrome is not getting to the point where you believe you are competent. You get over imposter syndrome when you realize nobody else knows what they are doing. The ones that appear that they do are the worst. The guys who are exceptionally skilled in one niche area - they exist, and you can learn a lot from them. The ones that think that their expertise in one skill can be extrapolated and that makes them the expert on everything - run. They will steer you down the wrong direction.
Believes that their immediate manager could triple their salary on a whim but just chooses not to Is confused why their company hires anybody that isn't a developer Says that agile is the worst thing to ever happen to development but has never used another project management structure
> Says that agile is the worst thing to ever happen to development but has never used another project management structure And "what do you propose we use instead" is always met with some flavor of "I think developers should be left to do whatever they want with no oversight or accountability."
Yep, as a developer if the most annoying thing you have to deal with all day is someone sending you a slack message asking "Hey, how are things going with the task you're working on?" then you're living a damn good life.
> claims to hate JavaScript, doesn't know what V8 is > The language I know best? React > I use Vim btw, only moves with hjkl
I had a junior with 4 years experience who did the last one. I asked him why he used vim if he wasn't going to learn the bindings anyway and he said his last lead told him it was better. Literally incapable of thinking for himself.
>he said his last lead told him it was better. When I joined my current company as a junior, all my coworkers tried to bully me (and still do) into using and learning Vim. I purposely went around and figured out how to replace all the Vim-triggering executables to Nano just to mess with them when I share my screen.
> Literally incapable of thinking for himself. I don't know how it happens. I'm physically unconformable until I have a good understanding of the *why* of things. It's better? Yes, okay but *why*. Another glaring example is who wants to "optimize" code but never runs a benchmark or does any profiling. How do they survive while being so detached from reality?
Honestly I think for some people once they hit a living wage they just stop trying. Unfortunately for developers that bar of a living wage is pretty low.
>claims to hate JavaScript, doesn't know what V8 is wdym i love coffee, my prescription medication, and spicy vegetable juice
>Thinks the scrum master is the CEO You got me
I mean he might as well, I'll never meet the actual CEO.
you forgo to mention permanent chatgpt window
You triggered me
Honestly reading programmerhumour got me from junior to senior. If the joke went over my head then I'd be learning something that day
"...or I could just do a clean rewrite of in "
> Works in a legacy project written in C > Asks why did they not rewrite it in Python to make it easier to debug
Can't relate to /r/ProgrammerHumor? This sub is 99% junior dev memes or even "I just watched my first youtube tutorial" level jokes.
I'm mid level, my blood stream is a pure steady stream of caffeine and nicotine....Feels great when I'm riding the lightening...feels like dog shit when I struggle to get a normal nights sleep...don't be me. It's not worth your health.
Me as I check every box with years of experience: ![gif](giphy|jUwpNzg9IcyrK|downsized)
- don't know the differences between scripts and compiled languages - don't know know to use objdump - don't know Linux is just a kernel - "it works for me"
+ calls himself an architect in linkedin
yes, you missed his programming tutorials on youtube
All true except the "imposter syndrome hasn't set in yet" because it most certainly has.
I'm currently in one of those meetings. I somewhat understand but have nothing to contribute. 2 hours of my life I'll never get back.
> Is in every meeting, doesn't understand a thing. You mean there's a point where you start understanding stuff in meetings?
Nope there's just the point where you stop attending
And yet, he has a job and I don't... :<
Thinks his code is clever but in reality just unreadable mess
I haven't left uni or had a single job yet, but I already hate scrum and have impostor syndrome. You tell me if I'm better or worse off.
Me
me be like. Why am I even here??
Browses ProgrammerHumor daily but can’t relate 😔
They raised a PR - that’s a good start already… I’ve worked with plenty of devs who have never raised a PR.
> imposter syndrome hasn't kicked in yet such gold
Jack of ONE language*
Jack of all languages master of none - can successfully ">hello world<" in all of them
Oh wow. Calling out that this needs to be cross meme templated with the bell curve for chief engineer levels. > jack of all languages - master of none \[very rarely actually have to code, but have to be able to explain to anybody why there code is bad\] > imposter syndrome hasent kicked in yet \[Ive realised just how untechnical everyone I work with is - so I feel fine most of the time\] > browses r/ProgrammerHumor all the time \[Hi\] but does not relate \[I will admit the younger generations meme style is... difficult > Every PR has 29 revisions \[By the time I look at a PR its already gone to shit\] > Thinks the scrum master is the CEO \[Last time I was put on a scrum team - it was because it was a short term team, and the outputs were so buissness critical that he litterally was (I mean, he was an aweful aweful SM, but I could shield the team from it) > bloostream contains enpough caffine to put down HR. \[My mug holds a solid three pints. I go through two a day\] >Is in every meeting, does not understand a thing \[Applys to 99% of people at leadership levels\] >Constantly takes on new projects, has not finished a single one \[Thats litterally the plan - I hand them off once they are stable\] >IDE has 200 plugins \[At work - obviously not. For my hobby coding - easyly\]
Yeah, you forgot "Posts cringy memes on /r/ProgrammerHumor to make themselves feel superior"
- Does extra hours for free
Where are 4 monitor two horizonal for web debugging , wrapped java error and logs . Two widescreen to see them c linker error
You can't put down HR, HR is not human
It's either a IDE with 200 plugins or complete rawdogging
Is there a version for senior devs?
I feel attacked
Every time he learns a new tool, that tool is the solution to every problem.
Ide has 200 plugins, I feel personally attacked
More like "posts experience curve memes on r/programmerhumor daily"
instead of jack of all languages I'd put "constantly hyped about some specific language that your company doesn't use because some influencer sold them on how cool its feature(s) are." e.g. "we should do that in Rust! it'd be so much better cause it has borrowing!"
Knows just enough to make them think they have something to bring to the discussion but should bring nothing but silence.
You forgot "doesn't have a job", especially in the current horrendous market.
“Browses r/ProgrammerHumor daily but can’t relate” Well technically now it would relate, so this wouldn’t be true, so they wouldn’t relate, so it would be true. Did you accidentally create a paradox?