Group project horror stories are the “in” thing these days, so here’s mine:
This was a computer science course back at university (so probably about fifteen years ago now). The project was basically an exercise in black-box coding: each group member had to write a different class, which we’d then work together to integrate into a larger application without being able to see or modify the code “inside” any other group member’s class – we had to work purely via the documented functions.
As part of the assignment materials, we were given a set of simple unit testing scripts that would bounce a representative sampling of input values off of each class’s functions, and compare the outputs to the expected values. Handy, right? Well, we had one member of the group whose class always passed the unit testing with flying colours, but exploded hilariously when used interactively, and nobody could figure out why.
(The experienced programmers in the audience have probably already spotted where this is going, but bear with the rest of us!)
We eventually ended up putting together a rigged demo that worked around the defective class’s inadequacies – basically by ensuring that the inputs that were sent to it would never fall outside the ranges covered by the relevant unit testing script – and managed to pass off the overall integration as a success. The punchline, however, arrived when the assignment was over and we actually got a look at each other’s code.
It turned out that dude had simply taken the input/expected output table from the unit testing script for his class, chopped it up, and pasted the relevant portion into each function. It was basically just a set of massive switch statements that checked the input value against a table and read out the corresponding expected output. If the input value didn’t appear on the appropriate table, it threw an unhandled exception.
And the kicker? This was a third year course. This genius didn’t even have the excuse of being, like, a business major taking a computer science course as a required elective, or whatever – dude was on the degree program track!
Tag: computer science
Eight mystical programming languages
1. There are no variables; everything is a constant. Change is merely an illusion. You get out of each program exactly what you put in, but somehow you feel that you understand it better.
2. You are the compiler, and thus the code is written in whichever form fixes it best in your memory. There is an interesting algebra to account for the probability that some instructions will be forgotten. A number of papers have been written on the subject.
3. We consider all programs as living entities, of a sort. Ethically, therefore, we have some problems with the idea of a program that terminates. Instead, we write programs that will live for ever, assuming suitable infrastructure to live on. Because of this requirement, we are always short of resources. New programs are written only rarely, when we have had an equipment delivery. Of course, we lose many to crashes each year; but we are always careful to offer up a prayer for their souls.
4. Programs are myths, myths are programs. Each encapsulates the instructions of fate. It does not matter which queen sleeps with the fire god, or which flint is thrown down the well. The outcome is always the same in each possible world. And at the end all worlds will reach the terminating conditions by one path or another.
5. We offer up the code to the machine cautiously, hoping that it will approve. Based on certain tropes, intutions, and appreviations, we believe we have made the code more palatable to flow through the prayer wheels of our silicon angels. We have added more brackets, in the hope that they will be experienced as hugs. We loop only to the extent that it will not induce dizziness. When we receive our output we do so in respectful silence.
6. Errors and mishandled information are sins, and we have a heavy responsibility on us to eliminate them. Our languages are written above all else to minimise the number of bugs. It has been necessary to eliminate a certain amount of flexibility, choice and human input to do this. But at least we can be assured that our pope writes infallible code.
7. We indent with three spaces. This was the original intention of the developers. It is not correct to indent with four and is offensive to their memory. All such incidents of disrespect shall be dealt with.
8. We consider human languages to have developed greater and greater levels of abstraction, further and further from the underlying code. As such we work backwards, trying to reverse engineer ourselves. We learn the oldest languages we can. At night we fall asleep with the obsessive repetitions of Gilgamesh in our ears. We pray to Sapir and to Whorf that we can get back at last to the original instructions, so that we might debug them.
LOL: Guide to software dev job ads ;)
Looking for a developer
(stupid) Entrepreneur: I’m looking for a developer Developer: Ok, I’m a developer E: I need some information about you D: Ok, what kind of developer are you looking for? E: I need a full stack developer who can code in C++, C, JS, HTML, PHP, Ruby, Java, Visual Basic, Pascal, C#, Python, Perl, rust, and ADA. I’m looking for somebody with at least 10 years of experience with artificial intelligence. D: In fact, you’re looking for Superman. There are many expert entrepreneurs and HR manager but also many people who don’t know what are they looking for
😝
😝
😝
Computer Science Stim Board!
[STIM BOARD REQUESTS: OPEN!]The glow, the circuits, the web, technical precision, the flow of information.. these are my inspirations for this stim board.
If you sent me a request, be on the look out! I have a bunch of stim boards queue’d up in the next few days!
Requested by: @hashtag-med-school
It’s proper etiquette to occasionally shut down your computer so it can get its rest.
It is also important to make sure it consumes the necessary nutrients as a computer.
It is also important to treat it gently, as it is only technology and therefore as nothing against you. It is trying its best.
Make sure to tell your computer when it is doing a good job, as they do better under positive reinforcement.
I was street viewing instead of doing work in computers (listen the classes were much shorter than usual) and I tried to street view Saskatoon and it didn’t work so is Saskatoon even real
This one kid says… pretty often, more than necessary, that she doesn’t consider herself liberal or conservative.
I mean welcome to the club I guess but you don’t need to say it every fucking day you can just believe what you believe and move the hell on. And anyway not considering yourself part of the two main parties isn’t a fucking moral high ground.
This bitch is testing my ability to not drop kick her into the next era
