Funniest IT Related Boasts You've Heard?
Karma asks: "The other day I saw a Slashdot comment which read, '[Projects] don't start getting interesting until you are dealing with Staff Years to develop them. Anything under that and you can actually keep the full design in your head'. An immodest boast, but not too funny. This made me wonder, in the macho worlds of IT and developers, what are the funniest and silliest boasts or bragging claims you've made, or heard? Tell us how they came back to haunt the overconfident."
I see that on resumes all the time. So I put them in front of a white board and ask them to show me the code to add an item to a singly linked list, using the language of their choice.
1 out of 15 pass. It's pathetic.
Can you pass this test? Post a link to your resume, we are hiring in the East Bay, California. C#.
Besides, it's clear you don't have a three digit UID. Bagdad Bob says so.
--
Evan
"$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
So what, the kid is a genius. He will probably grow up, with zero connections to the outside world and either be stuck working away in a lab for the rest of his life. Or he'll kill himself at 25 for depression.
8) I don't need a real girlfriend.
If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
Since then I've realized that at some companies, resumes really ARE expected to be fiction, and they select the fiction they enjoy the most.
You should get (Score: 6, Insightful) for that comment as today, November 2, 2004, millions of American voters go to the polls and select a candidate for the topmost job in the land based on exactly that same criterion.
"Provided by the management for your protection."
Was this supposed to be funny? Cause it was just stupid and rude.
It take more faith to believe in evolution than it takes to believe in God
Why would anyone ever use a linked list?
You want a specific example? Okay, the kernel process queues. These are linked lists that store information about which process is waiting on what: there's a queue for processes that are waiting for a CPU to become free, a queue for processes that are waiting for activity on a filehandle (for example, all the preforked web servers waiting on the accepting filehandle), etc.
They cause memory fragmentation
You can use a free list of processes, or have the processes in an array and just link them onto the queues as needed without pulling them from the array.
screw up your cache
I have no idea how you come to that conclusion
add two pointers of overhead per item (quite possibly in a different memory location from the data)
The link field is in the process data structure, so it's one pointer per item, and always in the same location as the data.
are slow to access thanks to all that dereferencing
Ah, that's a big deal there. For example, the run queue is a sorted list. You almost always pull elements off from the head. Moreover, you put elements on in the middle, sorting on their PRI.
If the run queue were implemented as an array, you'd have to move stuff on every insert. If you're smart, you're putting the soonest-run process at the end, so you don't have to move everything when you delete. But now you're also having to track the length so you can find the last one, instead of just having a pointer straight to the element you're about to access (ie, the head).
Also, you can move processes between queues quickly. When a SYN comes into your HTTP socket, you can move one of the preforked processes from the accept queue to the run queue by changing a few pointers, instead of having to do laborious copies of array chunks.
In general, arrays are good for indexed access, and changes at the end. But they suck at changes in the middle. They also don't let you walk a list as it's changing, at least, not as easily as a linked list does. Also, linked lists let you very easily move items between multiple lists. There's lots of reasons to go one way or another. You implied that you've read Knuth; I find it surprising that you didn't pick up that there are different structures for different needs.
This is just one example; there's many others. Don't make sweeping assumptions about what the right data structure is in all cases. If the interviewer tells you to write a linked list, then write a linked list; don't argue that no-one would ever use a linked list.
meep! meep!
You kids...
-davidu
# Hack the planet, it's important.