Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

UraniumAnchor posted:

Dewey Decimal doesn't apply to fiction works. :eng101:

My library has different sections for historical fiction, sci-fi/fantasy, mystery, romance, and whatever other things. I'm not good enough at library to know how or why they're split up, but the point is they should be split by whatever shelf they'll be put on. :eng99:

Adbot
ADBOT LOVES YOU

Slash
Apr 7, 2011

leper khan posted:

I bet far more than 50% of drivers today have never used a manual transmission. They're not even easy to buy anymore.

Unless you live somewhere other than the US, where manuals are more common than autos. In the UK 90% of students pass their test in a manual.

fishmech
Jul 16, 2006

by VideoGames
Salad Prong

Slash posted:

Unless you live somewhere other than the US, where manuals are more common than autos. In the UK 90% of students pass their test in a manual.

At some point that's going to have to stop regardless, as electric cars don't have any transmission due to their nature, and hybrid vehicles tend to use an automatic or CVT for the fossil fuel part, in order to work better with all-electric modes and electric assist. (And some of them, it's only ever the electric motor driving the wheels while the gas/diesel engine solely runs to recharge the battery on long trips).

Rubellavator
Aug 16, 2007

After failing a lot of interviews for my first job I was pretty proud of myself when I finally landed one. Stopped feeling that way immediately after realizing the other guy they hired didn't understand variable scope.

feedmegin
Jul 30, 2008

Cuntpunch posted:

This sounds a lot like asking someone to pass a driving exam with a manual, and having them take their ball and go home because IN THE REAL WORLD they drive automatic.

I don't know about the US, but in the UK you don't have to do this; you can take the test in an automatic, but you are then only licenced to drive automatics. Seems pretty reasonable to me.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings
It occurs to me in all of this to twist FizzBuzz on its head as a more complete representation of software development:

Explain existing requirements(basic FizzBuzz).
Explain new 'feature'(Bazz) requirements.
Provide the existing implementation, but with a problematic bug(using division against an int iterator, instead of modulo).

At which point you've got a reasonably complex, but still 5-10 minute problem that demonstrates:
-They can absorb and comprehend existing code.
-They can understand how new requirements will affect existing code.
-They can work with / extend existing code.
-Bonus points if they spot the existing bug during analysis or implementation.

boo_radley
Dec 30, 2005

Politeness costs nothing

leper khan posted:

Good, they should stack them based on their Dewey Decimal code.

Thank you for your time today. We have your resume on file if we feel that we should contact you again.

fishmech
Jul 16, 2006

by VideoGames
Salad Prong

feedmegin posted:

I don't know about the US, but in the UK you don't have to do this; you can take the test in an automatic, but you are then only licenced to drive automatics. Seems pretty reasonable to me.

In the US the issue of what transmission you know how to use is completely ignored. Someone who's never driven manual obviously isn't going to get around in a manual car in the first place, at least until they learn the ins and outs of shifting, and someone who's just kinda lovely at shifting a manual isn't really a road safety concern so much as a fuel bill concern and a mechanic's shop dream client.

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
Someone who's lovely a driving a manual is a minor safety concern on steep hills, but starting from a stop on a 20% grade isn't a normal part of a driving test anyway.

Blue Footed Booby
Oct 4, 2006

got those happy feet

Plorkyeran posted:

Someone who's lovely a driving a manual is a minor safety concern on steep hills, but starting from a stop on a 20% grade isn't a normal part of a driving test anyway.

It is in some countries. It's sometimes as strict as zero rollback or you fail.

Doom Mathematic
Sep 2, 2008
It should be.

PT6A
Jan 5, 2006

Public school teachers are callous dictators who won't lift a finger to stop children from peeing in my plane
Back in the day when smoking was common, one of my friends said the driving instructor made him put his pack of cigarettes on the ground just behind the rear wheels of the vehicle and made him start on a hill. No better way to learn than when there's a bit of pressure on you.

Ghost of Reagan Past
Oct 7, 2003

rock and roll fun

Cuntpunch posted:

It occurs to me in all of this to twist FizzBuzz on its head as a more complete representation of software development:

Explain existing requirements(basic FizzBuzz).
Explain new 'feature'(Bazz) requirements.
Provide the existing implementation, but with a problematic bug(using division against an int iterator, instead of modulo).

At which point you've got a reasonably complex, but still 5-10 minute problem that demonstrates:
-They can absorb and comprehend existing code.
-They can understand how new requirements will affect existing code.
-They can work with / extend existing code.
-Bonus points if they spot the existing bug during analysis or implementation.
For one job I applied to, I had to write a web service that did FizzBuzz and ship it off to them.

That was an interesting use of FizzBuzz.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

PT6A posted:

Back in the day when smoking was common, one of my friends said the driving instructor made him put his pack of cigarettes on the ground just behind the rear wheels of the vehicle and made him start on a hill. No better way to learn than when there's a bit of pressure on you.

But but but but, even most manuals these days have hill holders! What's the point of validating basic competency with a motor vehicle?! If you fit in the seat and can reach the pedals, that should be good enough, right!?

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

Cuntpunch posted:

But but but but, even most manuals these days have hill holders! What's the point of validating basic competency with a motor vehicle?! If you fit in the seat and can reach the pedals, that should be good enough, right!?

Please construct a working computer from this pile of 10000 7402s to verify that you can write computer code.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

leper khan posted:

Please construct a working computer from this pile of 10000 7402s to verify that you can write computer code.

Hardware != software, this isn't a tough concept. You appear to be arguing that understanding the difference between quicksort and heapsort is pointless to know or use as a conversation entry point because...we're all just going to call .Sort() anyway, right?

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

Cuntpunch posted:

Hardware != software, this isn't a tough concept. You appear to be arguing that understanding the difference between quicksort and heapsort is pointless to know or use as a conversation entry point because...we're all just going to call .Sort() anyway, right?

I'm more arguing that your car analogy where everyone should be tested on things that literally no one needs to worry about is hot garbage.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

leper khan posted:

I'm more arguing that your car analogy where everyone should be tested on things that literally no one needs to worry about is hot garbage.

How's the view up there, too good to spend 30 seconds writing a trivial algorithm?

RandomBlue
Dec 30, 2012

hay guys!


Biscuit Hider

leper khan posted:

I'm more arguing that your car analogy where everyone should be tested on things that literally no one needs to worry about is hot garbage.

Cuntpunch posted:

How's the view up there, too good to spend 30 seconds writing a trivial algorithm?

code:
void FizzBuzzBazz( int die )
{
	for ( int x = 0; x < die; x++ )
	{
		string shutUp = "";
		if ( x % 3 == 0 )
			shutUp = "kill ";
		if ( x % 5 == 0 )
			shutUp += "your ";
		if ( x % 7 == 0 )
			shutUp += "famil!";
			
		if ( String.isNullorEmpty( shutUp ) )
			Console.WriteLine( x.toString() );
		else
			Console.WriteLine( shutUp );
	}
}

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

RandomBlue posted:

code:
void FizzBuzzBazz( int die )
{
	for ( int x = 0; x < die; x++ )
	{
		string shutUp = "";
		if ( x % 3 == 0 )
			shutUp = "kill ";
		if ( x % 5 == 0 )
			shutUp += "your ";
		if ( x % 7 == 0 )
			shutUp += "famil!";
			
		if ( String.isNullorEmpty( shutUp ) )
			Console.WriteLine( x.toString() );
		else
			Console.WriteLine( shutUp );
	}
}

Typo in family. I'll keep your resume on file :v:

RandomBlue
Dec 30, 2012

hay guys!


Biscuit Hider

Cuntpunch posted:

Typo in family. I'll keep your resume on file :v:

Go ahead and shred it, I can't work for a company that obviously doesn't value meme magic.

Doom Mathematic
Sep 2, 2008
Gosh.

kitten emergency
Jan 13, 2008

get meow this wack-ass crystal prison
how many people involved in this inane debate regularly interview other people

i hope the answer is 'very few of you'

fritz
Jul 26, 2003

uncurable mlady posted:

how many people involved in this inane debate regularly interview other people

i hope the answer is 'very few of you'

I regularly interview people and I'm staying out of this except to say that the question I ask is intended to be easy and involves (ascii) string manipulation plus use of a standard data structure and is a stripped down variant of a thing i find myself doing every couple years in one job or another. (I'd estimate failure rate is on the order of 5%, and some people give me a 'that's it?' look and write down a solution in 5 lines of python, which I'm totally happy with)

Evil_Greven
Feb 20, 2007

Whadda I got to,
whadda I got to do
to wake ya up?

To shake ya up,
to break the structure up!?

Cuntpunch posted:

It occurs to me in all of this to twist FizzBuzz on its head as a more complete representation of software development:

Explain existing requirements(basic FizzBuzz).
Explain new 'feature'(Bazz) requirements.
Provide the existing implementation, but with a problematic bug(using division against an int iterator, instead of modulo).

At which point you've got a reasonably complex, but still 5-10 minute problem that demonstrates:
-They can absorb and comprehend existing code.
-They can understand how new requirements will affect existing code.
-They can work with / extend existing code.
-Bonus points if they spot the existing bug during analysis or implementation.
The constant hand-wringing of FizzBuzz is simply indicative of the Dunning–Kruger effect. You see this very same thing in the responses to the 'swap two variables' question.

There are no tricks. People who can code tend to overthink it. It's simply "here's your requirement - implement it." That the requirement is trivial is the entire point.

I couldn't believe FizzBuzz results when I first came across them - that so many people just didn't get that, but were applying for software jobs. Then I remembered the do-nothing assholes I had for group mates, and I suddenly 'got it' - they weren't assholes, they were just incompetent.

It was depressing to realize I almost certainly could have landed a software job many years before I did, as I had convinced myself that I needed a college degree to get into software as a career.

RandomBlue
Dec 30, 2012

hay guys!


Biscuit Hider

Evil_Greven posted:

The constant hand-wringing of FizzBuzz is simply indicative of the DunningKruger effect. You see this very same thing in the responses to the 'swap two variables' question.

There are no tricks. People who can code tend to overthink it. It's simply "here's your requirement - implement it." That the requirement is trivial is the entire point.

I couldn't believe FizzBuzz results when I first came across them - that so many people just didn't get that, but were applying for software jobs. Then I remembered the do-nothing assholes I had for group mates, and I suddenly 'got it' - they weren't assholes, they were just incompetent.

It was depressing to realize I almost certainly could have landed a software job many years before I did, as I had convinced myself that I needed a college degree to get into software as a career.

I worked with a guy once that was tasked with creating some simple code to convert numbers into full words for printing checks in a VB6 app I believe. The guy apparently took the first GoogleYahoo? result he found, copied and pasted it exactly into the app, checked in his code and said he was done. Didn't even try to run anything, let alone do some minimal testing.

The code was VBA code from an Access app and of course unusable in VB6 without quite a few changes. This was indicative of everything that guy ever did, or attempted to do, until the cheerleader that hired him finally had to let him go.

lifg
Dec 4, 2000
<this tag left blank>
Muldoon

uncurable mlady posted:

how many people involved in this inane debate regularly interview other people

i hope the answer is 'very few of you'

I think you can tell where in the interview process people come in based on their opinions on FizzBuzz. The people doing tons of screen shares with barely-vetted candidates need a coarse, initial filter.

Jaded Burnout
Jul 10, 2004


From the other side of the table I very nearly hosed up implementing fizzbuzz in an interview because who the heck needs to do modulo maths on the reg in web development.

"Oh yeah, fizzbuzz, this thing I've not seen in a decade" while my brain tried to dredge up the details and the interviewer looked on impatiently.

To that end I think expectations play a big part. If you're choosing a trivial problem for graduates to work on then they're all as good as each other because they don't have ingrained experience with any chunk of the language/framework. If you're giving the problem to supposedly-seniors and choosing something whose solution isn't in the common path of their job then you can't expect them to instantly bash out a solution because the human brain doesn't work like that.

Hence the people here with lots of specific experience saying "fizzbuzz is dumb" and the people who interview in bulk for lower level positions saying otherwise.

RandomBlue
Dec 30, 2012

hay guys!


Biscuit Hider

Arachnamus posted:

From the other side of the table I very nearly hosed up implementing fizzbuzz in an interview because who the heck needs to do modulo maths on the reg in web development.

"Oh yeah, fizzbuzz, this thing I've not seen in a decade" while my brain tried to dredge up the details and the interviewer looked on impatiently.

To that end I think expectations play a big part. If you're choosing a trivial problem for graduates to work on then they're all as good as each other because they don't have ingrained experience with any chunk of the language/framework. If you're giving the problem to supposedly-seniors and choosing something whose solution isn't in the common path of their job then you can't expect them to instantly bash out a solution because the human brain doesn't work like that.

Hence the people here with lots of specific experience saying "fizzbuzz is dumb" and the people who interview in bulk for lower level positions saying otherwise.

You don't get it at all. We're not just interviewing for lower level positions. Interviewing for ANY dev position results in the vast majority of applicants being lying sacks of poo poo that couldn't write an extremely basic algorithm (like FizzBuzz) to save their lives. If it makes you feel better to proclaim that modulo is some super obscure mathematical concept that superior programmers like yourself shouldn't have to recall in a "high stress situation", go right ahead.

I also don't recall the last time I had to use "20 goto 10" or gosub, but they are basic concepts (well, I"d excuse lack of gosub/return knowledge anyway) and I'd expect any competent programmer to understand the fundamentals and come up with a working solution for something as easy as FizzBuzz.

If you think FizzBuzz is challenging at ANY level and still consider yourself a skilled programmer, let alone a senior one, you're right in the loving Dunning-Kruger sweet spot.

I've personally never asked or been asked to solve FizzBuzz and the last time I used modulo was a couple of years ago for basic poo poo like performing cleanup every X iterations in a loop and the solution for FizzBuzz was obvious from the start.

"The common path of their job" for any programmer should be solving, at a minimum, basic logic problems like FizzBuzz. Your post just reinforced the entire purpose of that problem.

e: Some of you are acting like we're asking people to explain P vs NP or O(1) vs O(log n) in 5 seconds or less, etc...

The FizzBuzzBazz "solution" I posted above was 18 lines of extremely basic code that anyone who's made it through CS101 or a few months of practical coding should be able to read, understand and come up with on their own (in general of course), yet the majority of dev applicants can't.

If you were applying for a Front-End Dev position, I probably would've come up with something a little more appropriate, but unless you're a pure designer you should still be able to solve FizzBuzz in some manner in a reasonable timeframe without Google. When we say "solve" the majority of us mean code or pseudo-code that implies understanding of the problem and solution, not specifically code that compiles in environment X and produces exactly result Y including whitespace. Typically the only time you'd run into that is when a company is trying to offload stuff to HR/non-devs (or pedantic assholes) as part of the interviewing process and you probably don't want to be working for those companies anyway.

The majority of people performing these interviews are trying to figure out if you're intelligent/can work your way through basic logic problems, know the basics of programming/IT, aren't insane and have basic social skills. I don't even care that much if you know language X vs Y or the specific tech we're working with as long as you have experience with similar things, have shown intelligence and I think you can learn quickly without hand-holding.

RandomBlue fucked around with this message at 09:03 on Apr 4, 2017

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

Dex posted:

i'd ask if your company routinely screws up basic requirements that badly :v:

And that would be fine, but I'd look for some recognition from you that your solution has memory requirements that might prove problematic if the size of the problem were scaled up!

Dex
May 26, 2006

Quintuple x!!!

Would not escrow again.

VERY MISLEADING!

Hammerite posted:

And that would be fine, but I'd look for some recognition from you that your solution has memory requirements that might prove problematic if the size of the problem were scaled up!

most naive solutions are going to have issues like that because it's a toy problem, and if that's where you wanna go when you ask "ok do 1 to 100. no, 1 to a billion. now do it fast, that loop isn't performant, i need it to finish before the end of this interview!" i'd walk out and interview somewhere less dumb tbh. if you want to know if i understand how memory works or how to use iterators properly, ask those questions instead

TheresaJayne
Jul 1, 2011

PT6A posted:

Back in the day when smoking was common, one of my friends said the driving instructor made him put his pack of cigarettes on the ground just behind the rear wheels of the vehicle and made him start on a hill. No better way to learn than when there's a bit of pressure on you.

My Dad used to be a driving instructor, and he would put his Pack on the dash and if it fell over you failed.

QuarkJets
Sep 8, 2008

You guys just don't get it, interviewing a candidate is super easy. Please refer to this 600-page thesis that I've written on the topic

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

Dex posted:

most naive solutions are going to have issues like that because it's a toy problem, and if that's where you wanna go when you ask "ok do 1 to 100. no, 1 to a billion. now do it fast, that loop isn't performant, i need it to finish before the end of this interview!" i'd walk out and interview somewhere less dumb tbh. if you want to know if i understand how memory works or how to use iterators properly, ask those questions instead

If I ask someone to solve FizzBuzz then my expectation is that if they are competent enough to do so, then 99 times out of 100, it's going to involve a for-loop and conditional statements, like the other poster you were originally responding to suggested. (Therefore I don't agree with you when you say "most naive solutions are going to have issues like that", but this isn't what I wrote this post to address.) A solution involving creating a list in memory, mutating it, then spitting it out is going to be relatively unusual (imo) and if that's your go-to solution to a toy problem like FizzBuzz then it's worth exploring whether you're aware of the memory implications of the solution you chose. This might take the form of saying "uh oh, we just found out it needs to be 1 to 1 billion instead of 1 to 100, can we do that?! Will we need to make any changes?" or it might be brought up some other way, but it's definitely going to be brought up somehow, and I don't agree with you if you think it's dumb to want to know whether you're aware that the solution you advanced requires O(n) memory, or to prompt for that recognition in a way that doesn't expressly name the issue at hand (in the expectation that you'll be able to identify it). If you'd walk out of an interview upon being prompted to demonstrate that you recognise your solution to the toy problem doesn't scale, I think you would be saving us both time, because that suggests self-importance and a poor attitude.

QuarkJets
Sep 8, 2008

if you want scalability but don't make that a requirement then that's actually your problem, not his, and if you criticize him for that then I think the right decision is for him to walk away from your bad management

Jabor
Jul 16, 2010

#1 Loser at SpaceChem

QuarkJets posted:

if you want scalability but don't make that a requirement then that's actually your problem, not his, and if you criticize him for that then I think the right decision is for him to walk away from your bad management

Small question, do you think every technical discussion is a criticism of the person who wrote it in the first place?

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

QuarkJets posted:

if you want scalability but don't make that a requirement then that's actually your problem, not his, and if you criticize him for that then I think the right decision is for him to walk away from your bad management

I think you and perhaps Dex are looking at this from the wrong perspective. The point of the hypothetical posing of FizzBuzz in the hypothetical interview is 1) to see whether the candidate has a basic level of competence, 2) to serve as a potential jumping-off point for further discussion. If Dex were the interviewee and presented the solution he/she did, then the hurdle of purpose no. 1 has been cleared. But the choice of method makes for a basis for further discussion, centered around the choice of method and its implications. The point of the exercise is not to be combative and jump down the candidate's throat about it. An interview exercise is not the same thing as a task you might be presented with on the job, and to talk about requirements in the way you did in this post, as though they can't be changed on the interviewer's whim to serve the purposes of discussion, is to miss that. And if you respond with indignation to the interviewer's questions then that does suggest that you are - at best - uncooperative.

Dex
May 26, 2006

Quintuple x!!!

Would not escrow again.

VERY MISLEADING!

Hammerite posted:

A solution involving creating a list in memory, mutating it, then spitting it out is going to be relatively unusual (imo) and if that's your go-to solution to a toy problem like FizzBuzz then it's worth exploring whether you're aware of the memory implications of the solution you chose.

never said it was my go-to, i said it was a solution that answers the question asked but also fell under the list of failure conditions listed. i was explicitly asking if they were using fizzbuzz to find their answer, or just somebody who can do the thing asked even if it's not the most conventional. if somebody knows how to handle list slicing like that, there's probably a decent enough chance they're aware that a billion-entry list is a bad thing, but apparently you need a second puzzle to figure that out

quote:

This might take the form of

see, you've changed your position here - talking about the thing, cool. you explicitly said you'd ask me to implement it for 1b instead of just asking me about it though

Hammerite posted:

If you'd walk out of an interview upon being prompted to demonstrate that you recognise your solution to the toy problem doesn't scale, I think you would be saving us both time, because that suggests self-importance and a poor attitude.

well i wouldn't be saving you any time since you don't interview people

Dex
May 26, 2006

Quintuple x!!!

Would not escrow again.

VERY MISLEADING!
also i never said i'd be indignant. i'd thank you for your time and leave, i'm not throwing chairs around or anything but if your interview process is that terrible i'm not terribly excited to work for you. interviews are a two-way street y'know

Adbot
ADBOT LOVES YOU

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

Dex posted:

see, you've changed your position here - talking about the thing, cool. you explicitly said you'd ask me to implement it for 1b instead of just asking me about it though

You're reading rather a lot into what was a one-line post that I didn't spend a long time carefully wording. Yes I'd ask you about it or prompt you to recognise the scaling issue. That might involve saying "now we need it to work for 1 billion", or "oh the requirements have changed, now it's one billion" or any of I daresay a billion variations on that.

quote:

but apparently you need a second puzzle to figure that out

well i wouldn't be saving you any time since you don't interview people

It was not my intention to needle you, Dex. I will drop this discussion now since I think that all that can usefully be said, has been.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply