- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
Sorry, but this story sounds made-up to me. First, he can't convince the dean that these programs are assignments. That alone is hard enough to believe. But then he gets a C because he had to delete the assignments...what? He couldn't just explain the situation to his professor and hand him the assignments? No, not buying it.
Admin
Here's the problem with storytelling: When you mis-characterize a player in a story, it ruins the story.
Deans wouldn't waste two seconds talking to a student about something like this unless it was tell the student, "Good luck with your next degree program." And that one line would literally be the extent of the conversation.
It's a good story, and I don't doubt the that it did happen in some form (it being high school, I'm certain the administrators were as bone-headed as possible). But as laid out here, the freedoms taken unfortunately ruined the story.
(Oh well, one bad day in three hundred and sixty-five? I wish I could be that consistent...)
Admin
Admin
I'm confused...
Admin
Admin
Ah, caught up on the thread now. My take: this was a crappy punch-up job. Without it, the story isn't much of a story, but with it, it's impossible to believe. Weak tea. Maybe the problem is that it isn't easy to find a good TDWTF story every day.
Admin
Well, that's it exactly. It was a weak story to begin with.
If that ever happened to me (taking the write-up at face value) I would immediately be having a conversation with the professor and maybe even bringing him in to see the dean with me to clear my name. At the very least I would explain it to the prof and hand in those assignments another way. The one thing I would NOT do is roll over and take the hit (which, as we learn from the comments, neither did the originator, as that part was what was made up).
However, my observation of people's apparent (lack of) social skills these days suggests that there might soon come a time when just this sort of thing will happen because people are just too intimidated to speak up for themselves or go actually talk to people instead of ranting in anonymous forums.
Something (vaguely) similar happened to me when I was in grade 7 and I used a school Apple ][ to present a slideshow for a science fair presentation. I had essentially written my own crude sort of PowerPoint to display a bunch of graphs and I needed to wheel one of the Apple ]['s from the school library to the gym where the science fair was being held. The librarian refused to let me use the computer on the grounds that "this isn't the appropriate time to be playing games". I tried to explain that I wasn't going to play games, I was going to run some programs that I wrote myself -- she didn't believe that either. So I showed her. And she was totally blown away. And I got to use the computer. At least until my disk started throwing up I/O ERRORs. Sigh.
Admin
Admin
Hmmm, that sounds plausible but it needs punching-up... How about this:
There, that's better -- Remy
Admin
So if you were working in an environment where no sort function was available in the library, and you had a problem where you had to sort what you knew would be a max of 10 or 20 values in real life, you would write and debug a complex but more efficient sorting algorithm, because bubble sort is beneath our dignity? Sounds like a big waste of time to me.
Admin
Hah hah! This has got to be material for a great conspiracy theory! How can you say that you believe this was a real person? We have the actor who played him right here! Or are you next going to tell me that before Hitler became a dictator, he was prospecting for gold in Alaska?
Admin
(1) Personally, I don't know how a "BubbleSort.exe" can be considered an assignment without turning in some source code. If I had to create an assignment to do a bubble sort and just turn in an executable, what's to stop me from using any old sort method? Sounds suspicous. (2) The network policy actually lets students post .exe files on the network? sounds like a receipe for virus infection. (3) The network admin scanned the folder, found .exe files, but didn't look at the file sizes? If this is an intro-level course, the 3 game assignments probably would not have been very complex and resulted in trivially small .exe files. Alternatively, if these were full-fledged graphics-and-animation-and-sound effects games, that's rather beyond the scope of an introductory level programming course.
Admin
So in the end, wouldn't that make it all worth it?
Admin
I had a AP Computer Science class that ran the same way. We called it AP Quake 2.
Admin
Yes. Total waste of time. Of course, using the cheapest, easiest solution that will never scale is the best way to do things. That way whenever you need to utilize the code again for a different or larger list, you're screwed and need to write a new sorter for that list. Then again the next time, and the next..
There are many sorting algorithms that are as easy to write and debug as a bubblesort, but work much better. Even a simple insertion sort is a better option, and can be done with the same amount of code. Hell, a shell sort isn't much more complex and at least will yield o(n^2) performance.
Admin
i can haz new wtf?
Admin
Hrm, the fake story isn't believable. The real story isn't surprising.
a) high school is filled with "bird" classes. Typically, even if you attempt to take all of the hardest classes, you still end up taking quite a few.
b) high school network admins are idiots. all of them. This must be where you go after graduating from ITT Tech and you can't get a job anywhere else.
c) Who didn't play computer games in their high school programming class? We played unreal tournament and.. achaea/aetolia.
d) TRWTF: What kind of school buys zip disk drives?
Admin
Admin
"Hell, a shell sort isn't much more complex and at least will yield o(n^2) performance."
I hope thats a typo... seeing as bubble sort will also yield O(n^2) performance.
Also, do you guys not realize that qsort is in stdlib? http://www.manpagez.com/man/3/qsort/
There are very few situations where you should have to write your own sort outside of school.
Admin
Truth^^. Your much more likely to have to implement comparison functions for use in library provided sorts.
Admin
I had something similar at college, got called up over .exe files i'd created myself in my network storage (not an assignment, however the rules only banned external software so technically allowed)
the network admin was clearly trying to find some way to justify telling me off for it, so i helped him out by asking why it was the tiny .exe files they noticed, rather than the 20+ requests/second hitting the proxy servers for hours on end (remote desktop control, polling for updates), which allowed a "umm ok, don't do it again and let's just leave it at that" type resolution
although we did have a networking class where the tutor had a pile of Quake 2 CDs for "network load testing with real world traffic", we came up with lots of ideas for different network configurations that needed extensive testing...
Admin
Actually he's correct, there IS a cow level in D2.. And I guess those guys must have had some fun with a few crates of beer first before thinking that one up and recording the 'moos' .. :-)
Yazeran
Admin
Obviously the guy wasn't as good as he thought he was. If you spend all your time playing vid's, do you really expect to pass with full marks?
Even when I was at Uni (which was ages ago) they had an assignment submission system. Nothing too fancy. It would copy your source, compile, run, check outputs and timestamp when you submitted the assignment. The fact that a student is expected to leave files in their home directory is what makes it sound like a fake.
Admin
... that's it?
Where's the part where he raised a stink and got the dean reprimanded for being an idiot, ignoring plainly evident facts and interfering with legitimate class requirements? Are college administrations actually this bone-headed in the States?
In that case, I didn't even realize how good we have it.
Admin
Doesn't really ring true, though, does it?
Wouldn't he have left a whole bunch of cpp files for his professor to see? I don't think the professor would be interested in the exe's - he could compile them himself if he wanted anyway.
Eityher Andy was an idiot, or this story has been exaggerated (or even made up) to a point where it is no longer identifiable...
Admin
dunno how it fits in, but hahahahhahahahhaha
Admin
Call me slow, but.... ...and every other means of recording any form of communication ....magnetic tape, punched cards, discs...
Did I miss something? Have I gotten the total wrong end of the proverbial stick? Maybe I'm having a slow day?
Admin
I call shenanigans. I'd imagine five years programming would give you far more knowledge than is included in any Data Structures course. You might get to some data structures you don't use very often in the workplace, but I'd be surprised if someone with 5 years experience wasn't at least vaguely aware of them (which is about how thoroughly they seem to cover them)....
Admin
That reminds me of a TV ad that they used show during the cricket.....
Admin
If bubble sort was the easiest, most intuitive algorithm to implement, I'd say you had a point. I think there are far easier algorithms to implement even in the case where you knew there would only be 10 or 20 elements to sort.
Also, never, ever, ever, even when you are certain that nothing will ever change, assume that nothing will ever change. Incompetence in IT often comes from the fact that people are short-sighted (often consciously) - "Now this wouldn't be efficient if we had 10s of thousands of people using our site, but it's only ever going to be a few at a time". Things change! Programmers have to find a balance between programming with the possibility of change and creating bloated code with plenty of 'future proof' features, that allows enough future use without impacting significantly on development time, resource consumption or supportability....
Admin
You're near graduation and were seen by a network administrator breaking school policy by playing games on the school network. Do you:
a. Get your professor and dean together for a meeting. During the meeting you explain the file name misunderstanding. Further, you provide an brilliant explanation of how you weren't technically breaking school policy, because Starcraft and Quake 2 were stored on a network folder. They recognize your cleverness, willingness to change the rules to fit your desires, and the enterprising approach you took to blowing off a class. You receive an A and are invited to receive an honorary doctorate for your courage.
b. Get your professor and dean together for a meeting. During the meeting you explain the file name misunderstanding. When they point out you were seen playing Quake 2 on the same machine, you cleverly point out that you weren't technically breaking school policy. They then realize that you weren't just corrupting one machine, but instead, by putting them on network storage, you were corrupting the whole network! Buh bye, and good luck paying the $(X)XX,XXX in college loans.
c. Suck it up and graduate. Learn lesson about what not to do.
Admin
I'd like to see your simpler algorithm. (And no, calling a library function does not count.)
Admin
If I know I don't need a complex solution, I don't waste time designing a complex solution. There's no sense in designing/coding for requirements that don't exist.
Admin
Admin
Perhaps I wanted some nice, easy credits to offset my slow death in annoying gen. ed. classes? Being a good programmer says nothing about my ability in chemistry, third-semester calculus, etc, all of which I simply hope to pass so I never have to take them again.
Admin
i call bs on this story
Admin
Of course being a good programmer says nothing about Chem, Calc etc, but I would think being a good programmer would have some reflection on your knowledge of Data Structures.
Or maybe you didn't read either post....
Admin
Most Intuitive? I think the OP was suggesting that if you don't care about efficiency, there might be equally simple ways that are more obvious (eg iterate through array repeatedly, removing the lowest value and adding it to another array). Good? No. Easy? Yes. Easy to follow (inuitive)? Yes.
Frankly, whacking all the values into a binary tree and removing them inorder would be as little effort anyways (especially in a lanuage where wuch data structures are available).
Admin
If you know that nothing will ever change, you don't belong in IT.
Admin
Admin
I should have said "...if I am certain that something will never change...".
Admin
qsort :: Ord a => [a] -> [a] qsort [] = [] qsort (p:xs) = (qsort (filter (<p) xs)) ++ [p] ++ (qsort (filter (>=p)) xs)
Admin
Admin
well i don't know about matt's case, but a data structures course usually includes graphs, and graph theory, and how a tree is really a directed graph that doesn't have any links back 'up' the tree (i can't remember the academic term for this).
I had learned most of my programming on my own before i even entered college, but 5 years of programming pre-school, whether it was an actual job, or self study, is unlikely to expose said programmer to everything in a Data Structures course. I, for example, had never even heard of a directed graph before that class, even though i had read a total of ~5000+ pages of programming text books before even entering college.
So i can believe it, especially since the only time directed graphs were even discussed during college, was in data structures, and theory of computing.
Admin
Thanks for that. My programming was completely out of school. I'm mostly self taught, and was on a high school robotics team (where your code is generally pretty low-level stuff - map this joystick axis to these wheels with some PID control maybe) and had an Software Engineering internship this summer. I was familiar with linked lists, stacks, queues, and the like, but not stuff like red-black trees, hashing, etc. I never really needed that in any of my small personal projects or robotics, and at work I'd just use standard libraries.
Admin
Okay:
That's quicksort in Haskell. I mean, it's pretty trivial to memorize: you grab your first element as a pivot, then the result is the concatenation (++) of "sort everything less than pivot", "the pivot", and "sort everything greater than pivot".
Admin
Admin
Admin
TRWTF - no-one commented about the following:
When did Yale University move to England ?
( and on the off-chance it refers to Yale College - that isn't in England either, it's in Wales... )
I'm assuming the post was intented to be ironic, poking fun at some traditional stereotypes, but if no-one comments, doesn't that justify those very stereotypes...
Admin
There beat that.