|
teen phone cutie posted:hey buddy i ain't doing an ounce of work off the clock. i'll do it my first day and get paid to do it, student or not
|
# ? Feb 23, 2022 03:21 |
|
|
# ? Jun 3, 2024 22:49 |
|
teen phone cutie posted:hey buddy i ain't doing an ounce of work off the clock. i'll do it my first day and get paid to do it, student or not hell yeah
|
# ? Feb 23, 2022 03:58 |
|
This is kind of like hiring a welder, and then wanting to get paid to learn how to weld after they show up to work on their first day Someone is going to wander in here and shout that university is about education, not job skills, but it's really alarming the number of students who have zero exposure to basic tooling, and the lack of desire to learn about the tools of their trade
|
# ? Feb 23, 2022 06:02 |
|
Hadlock posted:This is kind of like hiring a welder, and then wanting to get paid to learn how to weld after they show up to work on their first day The value of a liberal arts education is intangible
|
# ? Feb 23, 2022 06:10 |
|
leper khan posted:The value of a liberal arts education is intangible Much like the skills of a recent graduate
|
# ? Feb 23, 2022 06:11 |
|
Hadlock posted:This is kind of like hiring a welder, and then wanting to get paid to learn how to weld after they show up to work on their first day idk man all I'm saying is if I had an intern, I'd teach them to start work at 8, end work at 5, and not work a minute more, and that extends to setting up your work laptop. do that stuff on the company's dime
|
# ? Feb 23, 2022 06:14 |
|
Hadlock posted:This is kind of like hiring a welder, and then wanting to get paid to learn how to weld after they show up to work on their first day More like hiring an apprentice and then getting surprised that they want you to teach them the trade instead of being a fully qualified professional who is accepting apprentice rates for some reason. If you're paying junior salaries then you're gonna have to put up with people learning on the job. Go pay out the nose for intermediates or seniors if you want someone that can hit the ground running. Jabor fucked around with this message at 06:31 on Feb 23, 2022 |
# ? Feb 23, 2022 06:22 |
|
teen phone cutie posted:idk man all I'm saying is if I had an intern, I'd teach them to start work at 8, end work at 5, and not work a minute more, and that extends to setting up your work laptop. do that stuff on the company's dime Oh, no I'm not saying they should setup their work laptop after hours. gently caress that poo poo. I just want a computer science major to, ya know, have a beginner's grasp of the basic tools of their trade beyond just their keyboard and compiler/interpreter before they go forth unto the world. Yeah getting your workspace organized properly is a company expense, no argument there.
|
# ? Feb 23, 2022 06:46 |
|
Hadlock posted:This is kind of like hiring a welder, and then wanting to get paid to learn how to weld after they show up to work on their first day Take the fight up with the degree program then. It's a crapshoot as to whether any tooling is covered in most programs let alone tooling that's relevant to engineering work. If you're hiring out of college (or an intern in college) assume they know nothing because they don't. Your job is to teach them, not to expect their professors to have done the job and get frustrated with them when they can't jump through your hoops.
|
# ? Feb 23, 2022 13:35 |
|
Hadlock posted:This is kind of like hiring a welder, and then wanting to get paid to learn how to weld after they show up to work on their first day Ah, a comparison to the trades! Occupations famous for…um…entry level candidates who are literally apprentices learning from master crafters on the job. Hm. Blinkz0rz posted:If you're hiring out of college (or an intern in college) assume they know nothing because they don't. Your job is to teach them, not to expect their professors to have done the job and get frustrated with them when they can't jump through your hoops.
|
# ? Feb 23, 2022 14:49 |
|
If you're a degreed computer toucher and you don't know what basic git (commit, push, checkout, pull) is then I'd really be worried whether your degree is worth the paper it's written on. Now I wouldn't expect people to be really confident in their git skills at that stage, but I can't believe a modern degree program would omit at least a basic review of this stuff. I don't know what type of background education an apprentice welder gets but if he's got 4 years of welding theory under his/her belt then they should have a working understanding of different types of welders and things like that. Maybe I am talking out of my rear end because I don't have a degree in comp science or similar, but my professors put a lot of work into making sure we were at least familiar with basic tooling for our industry. This was at a state school, nothing special.
|
# ? Feb 23, 2022 15:59 |
|
Yeah I guess some people are bristling at the idea of a LAMP/CRUD developer being compared to a welder, so I'll use a mechanical engineer instead, if you're in school I'm not going to expect you to know my specific CAD software, but I expect you to at least know one piece of software, solidworks, fusion360, blender, SketchUp whatever from all your time in school. I consider understanding source control down there with "how to switch on your laptop", it's 22 year old software that people code golf, it's not bleeding edge tensor/ai framework stuff written in lisp
|
# ? Feb 23, 2022 16:07 |
|
a dingus posted:… my professors put a lot of work into making sure we were at least familiar with basic tooling for our industry. This was at a state school, nothing special.
|
# ? Feb 23, 2022 16:08 |
|
Students not being familiar with tools doesn't mean that schools aren't teaching them. These kids have an incredible ability to learn just enough to pass their current classes and forget it all afterwards.
|
# ? Feb 23, 2022 16:15 |
|
Kids these days
|
# ? Feb 23, 2022 16:16 |
|
finding it pretty hard to care either way about things that can be easily learned on the first day of any job tbh
|
# ? Feb 23, 2022 16:18 |
|
In a quick subject change, I want to read Clean Code but I'm wondering if it is fairly beginner friendly. If it isn't, is there something like which is? Edit: It seems like CC is Java-specific and I'm finding that most of the "you gotta read this" books on software architecture and good coding habits are specific to object-oriented languages. That's fine, but I'm going to be coding in JavaScript/React using functional components and am wondering if there is a great resource that is more relevant to that. fawning deference fucked around with this message at 16:33 on Feb 23, 2022 |
# ? Feb 23, 2022 16:22 |
|
Designing a computer science major is hard. You need to prepare the majority of students to be practitioners, but you also need to prepare the next generation of researchers and professors for graduate school. There's overlap in what those two groups need, but not as much as you might think. You're also constrained by the fact that classes last one semester and a degree only lasts four years. That means that there's a lot you have to cover in that time frame, and not much opportunity for doing larger projects at any point in education. As a result, academia has settled on a curriculum that's not quite right for anyone and definitely wrong for some careers, and I don't think that that's going to change any time soon for a variety of reasons. Much like we have separate degrees for physics and various forms of engineering, we're starting to see a split into computer science and software engineering degrees, but there's no standard software engineering curriculum, and when it does emerge it's going to be an engineering degree rather than vocational training. The training of future researchers aside, schools will always focus on underlying principles rather than whatever the current tooling is because those principles change slowly if at all and there's no other good opportunity for learning them. That's not to say that school shouldn't be teaching some level of tooling, but honestly in a lot of cases they already are and students don't retain that material. Part of that is because they're so laser focused on the next exam, and part of it is because the exposure to those tools is very limited compared to how much we focus on them in industry. The tl;dr is that you as an employer are not the only people who degree programs need to keep happy, and that there are a lot of aspects of building software that really can't be taught in an academic setting. Let them focus on what they're good at, and be prepared to spend some time training interns and junior employees on the things they need to know to do the job. At some point I'll do a writeup of the more-or-less standard computer science curriculum, but I don't have the time right now and I don't think it's completely germane to this post anyway.
|
# ? Feb 23, 2022 16:51 |
|
ultrafilter posted:Students not being familiar with tools doesn't mean that schools aren't teaching them. These kids have an incredible ability to learn just enough to pass their current classes and forget it all afterwards. This is similar to the reasoning I keep having to use when my work tries to cross-train me for something I'm not going to use immediately
|
# ? Feb 23, 2022 16:59 |
|
fawning deference posted:In a quick subject change, I want to read Clean Code but I'm wondering if it is fairly beginner friendly. If it isn't, is there something like which is? Clean code is pretty bad. In that it has lots of advice, some good some horrific. But you'd need to already be expert enough to not need the advice to disambiguate between the two.
|
# ? Feb 23, 2022 17:02 |
|
fawning deference posted:In a quick subject change, I want to read Clean Code but I'm wondering if it is fairly beginner friendly. If it isn't, is there something like which is? Clean Code was really important for my development as a programmer, but I'm not a fan of the author. He has a habit of creating impenetrable jargon, then writing a book to explain what it means. Instead, you could summarize Clean Code like this:
If those aren't immediately clear to you, Clean Code does provide examples, but they aren't great examples. Martin has very little credibility as a real world programmer since he provides no samples of production code to back it up. He can only explain his programming work in vague terms where the punchline is always how his planning lead to grand success. Even if you aren't doing Java or OOP, consider that an object is a set of functions with potentially associated state. In other words, they're closures with syntactic sugar for making whole sets of identical closures with their own data inside. Having a clear idea of I/O separation, state mutation, and a function's role is useful anywhere.
|
# ? Feb 23, 2022 17:17 |
|
Hadlock posted:This is kind of like hiring a welder, and then wanting to get paid to learn how to weld after they show up to work on their first day Your basic tooling isn't my basic tooling with the exception of git.
|
# ? Feb 23, 2022 17:19 |
|
leper khan posted:Clean code is pretty bad. In that it has lots of advice, some good some horrific. But you'd need to already be expert enough to not need the advice to disambiguate between the two. Sign fucked around with this message at 18:35 on Feb 23, 2022 |
# ? Feb 23, 2022 17:39 |
|
Hadlock posted:Spent more than half a day today getting our intern up to speed MIT actually has a lecture series available for free online that covers a lot of this + a bunch of other stuff: https://missing.csail.mit.edu/ (Also includes notes and a few exercises for each lecture) I've found it fascinating and even a little useful despite not yet working with systems where I really need to be able to use these tools. Finished lecture 4 on Monday so I knew how to use sed on the system dictionary to find guesses for today's wordle since I couldn't think of anything that matched my found letters
|
# ? Feb 23, 2022 17:45 |
|
leper khan posted:Clean code is pretty bad. In that it has lots of advice, some good some horrific. But you'd need to already be expert enough to not need the advice to disambiguate between the two. I've read it many years ago and I don't remember any "horrific" advice. Sometimes ... questionable and in the "eh ... maybe" category but nothing completely insane. Do you happen to remember some examples of such horrific advice?
|
# ? Feb 23, 2022 17:58 |
|
So what would you all suggest instead of Clean Code?
|
# ? Feb 23, 2022 18:06 |
|
cleaner code
|
# ? Feb 23, 2022 18:35 |
|
Funny stuff. Anyway, I am struggling because comp-sci and software engineering books or courses focus on Java or C# or Python and I'm going to be using JavaScript/React almost exclusively. I still really want to learn and I know lots of it is transferrable, but it's difficult to know where to dive in.
|
# ? Feb 23, 2022 18:43 |
|
Volguus posted:I've read it many years ago and I don't remember any "horrific" advice. Sometimes ... questionable and in the "eh ... maybe" category but nothing completely insane. Do you happen to remember some examples of such horrific advice? Studies have consistently shown that longer functions are easier to read and understand, and have fewer bugs over time, than short methods. I haven't read it in probably a decade either. But here's a writeup https://qntm.org/clean
|
# ? Feb 23, 2022 18:55 |
|
leper khan posted:Studies have consistently shown that longer functions are easier to read and understand, and have fewer bugs over time, than short methods. I’ve heard this before, but it doesn’t really track with my personal experience. I dislike long functions mostly due to the overhead of how much context you have to keep track of. Clean Code does go way too far in the direction of short ones though. I seem to remember his recommendation being 1-3 lines each or something insane like that, though I’d have to check the book to be sure.
|
# ? Feb 23, 2022 20:30 |
|
chglcu posted:I’ve heard this before, but it doesn’t really track with my personal experience. I dislike long functions mostly due to the overhead of how much context you have to keep track of. Clean Code does go way too far in the direction of short ones though. I seem to remember his recommendation being 1-3 lines each or something insane like that, though I’d have to check the book to be sure. Yeah he disallows functions longer than 4 lines, and will write functions that are one line long.
|
# ? Feb 23, 2022 20:37 |
|
leper khan posted:Studies have consistently shown that longer functions are easier to read and understand, and have fewer bugs over time, than short methods. Haha, I remember now, yes the code presented in many cases was quite bad. But, the advice given was usually good and reasonable. Had good ideas and even now (for example) when I write a method and I have 2 bools as parameters, I stop and ask myself: Is it fine? Should I have an enum? Should I do something else (a struct)?Maybe I should refactor? Without reading that book I don't know if I would have even asked myself those questions. Sometimes the answer is: 2 bools are fine, or most likely, gently caress it I'll fix it later (never). And sometimes not, refactoring of some sort feels necessary. No book, no set of ideas should be taken as gospel and either accept everything or throw it all away. I agree, however, that maybe a junior developer does need some set of hard rules to follow at first until they get some experience and then can make up their mind on what to follow and when. Everything is and must be treated as being flexible and subject to change depending on the situation at hand. That's probably the only rule to treat as the inflexible one, to follow always. edit: speaking of gospels, not even the Christians treat the actual gospel as ... gospel, but pick and choose what they like. So, don't fret, just write better code today than you did yesterday and you're good to go (better by your current standards at least). Volguus fucked around with this message at 22:01 on Feb 23, 2022 |
# ? Feb 23, 2022 21:34 |
|
Which comes back to the original point:leper khan posted:Clean code is pretty bad. In that it has lots of advice, some good some horrific. But you'd need to already be expert enough to not need the advice to disambiguate between the two. If you're recommending texts for juniors to read, try picking something that doesn't have so much awful garbage that sounds like good advice mixed in with the actual good advice that other people will also tell you to do.
|
# ? Feb 24, 2022 02:19 |
|
I wonder what these good recommendations are!
|
# ? Feb 24, 2022 02:28 |
|
The best way read Clean Code is at a company book club, where you can sit down once a week, eat company bought pizza, and all agree that this week’s chapter was insane. Code Complete is better. Much longer.
|
# ? Feb 24, 2022 21:48 |
|
leper khan posted:Relo is generally available for internships, to the point some of them put you in corporate housing. Most larger orgs will relo entry level. How big are we talking? Is this off-limits to someone who goes to a no-name state school in a flyover state?
|
# ? Feb 25, 2022 01:24 |
|
Oolb posted:How big are we talking? Is this off-limits to someone who goes to a no-name state school in a flyover state? If you pass the interview and they want you for the role, they will get you there. Doesn't really have anything to do with the school you went to.
|
# ? Feb 25, 2022 02:57 |
|
But getting selected for an interview is about having a big-name school on your resume and being the right geographical location, no?
|
# ? Feb 25, 2022 03:28 |
|
Oolb posted:But getting selected for an interview is about having a big-name school on your resume and being the right geographical location, no? It doesn't hurt, but it's not required.
|
# ? Feb 25, 2022 03:34 |
|
|
# ? Jun 3, 2024 22:49 |
|
Oolb posted:But getting selected for an interview is about having a big-name school on your resume and being the right geographical location, no? Not really. A big name school will help you in some places, but not really that many. If you want to go straight into FAANG a good school can help a bit, but then internships and whatnot are probably much more important (though a good school can help with that too). Outside of FAANG honestly the kind of doors that are opened just by going to a good school aren't necessarily the best ones for a first job anyway for a developer. Once you get experience, schooling matters even less. And even for a new grad, good projects and portfolios are more important than the name of the school. The last, like, 5 people I hired didn't even have software degrees, but instead had other backgrounds and took bootcamps to get up to speed.
|
# ? Feb 25, 2022 03:40 |