No I will not do your homework

I received email today at both my work and home email from the same person. I have no idea where he is from (or for sure that it is a he) but they claimed to be a university student taking a VB course. They need help with their projects that are due next Thursday. They appear not to have started at all. In fact they probably do not know how to start.

They ask if I know someone who can help them.  If that is all they are looking for why send the whole problem descriptions? I get these all the time. If I let them they would get me to do the whole project. In fact doing the whole project would be a lot easier and take less time than trying to actually help. I did the first project they sent me in under 3 minutes – design, write, and test. That’s less time then I spent writing this blog post. I imagine if they ask enough people one of them will send them a solution.

The next step, if history is any guide, is that they will ask for an explanation of how/why it works so they can hand that in as well. Am I being cynical? Perhaps but I’ve seen this before.

Some people believe that a diploma somehow magically makes them smart and knowledgeable. They don’t want to do the work of learning things. Just give them the grade so they can get the job they want. I actually had a student (at a so-called college) ask me to just give him a B because that is what he needed to get his course paid for and to graduate the program. He told me he didn’t have time to do the work but I should still give him the grade. Bah! That wasn’t going to happen.

Now I don’t mind helping people learn. In fact helping and teaching are great and wonderful things for me. If someone comes to me with code and needs help understanding why they are seeing a syntax error or why the answer is coming out wrong I’ll happy to help. I will look it over and explain things until they "get it." Debugging code is fun and I am always (well almost always) willing to give it a shot. But I refuse to do it all and let someone pretend them know something they don’t,

OK that is out of my system. Thanks for listening. Or Ignoring me. What ever. 🙂

One Response to “No I will not do your homework”

  1. Matt says:

    A stranger e-mailing you at two addresses is borderline creepy. I’m also not quite sure what would motivate them to contact random strangers. If you were an old friend of theirs and owed them a favor, it would be one thing. But e-mailing random strangers on the Internet asking them to do your homework? (Why didn’t I think of that?!)

    I’ve found that, as backwards as it sounds, it’s way easier for me to write code than it is for me to read and understand someone’s code. (Or, actually, even my own code… I’m embarrassed to confess how many times I’ve looked through snippets of code thinking, “What the hell is this?” before remembering that it was mine.) So even if you wrote the code for them and walked them through it, they’d probably have no idea how it worked.

    The mean part of me thinks it would be awesome to write the most bizarre Rube-Goldberg solution you can think of… Include some libraries for compression, and compress each variable before passing it to another function. For performance reasons. (Compressed variables use less memory!)

    Don’t ever use print() (or whatever it’s called in VB), but write an incredibly complex function to take a string, compress it, pass it to another function which will uncompress it and convert each character into an array element, with each array element being compressed. (Mainly because compressing a byte makes no sense.) And then compress the array itself (I have a feeling the compiler won’t allow this, since it makes no sense), before passing it to another function, which loops over every character and finds the ASCII Value. (Or, better yet, convert to Unicode… Compressed Unicode.)

    Of course, ASCII value alone is no good. You need to run it through a conversion/optimization formula, something along the lines of $ascii_val = sqrt($ascii_val * $ascii_val) + (($ascii_val / $ascii_val) – 1) ^ ($ascii_val^0) Compress the result and pass it your next function, which will decompress each character, convert it back to ASCII/Unicode, and then return this value.

    I hope no images are involved, because you don’t even want to know how to deal with them. (Hint: you need an array containing an HTML-style RGB code for each pixel, and a big dynamically-created array of 1×1 ‘squares’ which are colored based on the array… Heavy compression of variables is involved.)

    Of course, some of the code will test whether he’s paying any attention. Squaring something and taking its square root is a pretty tell-tale sign that someone’s pulling your leg. So isn’t adding (x/x – 1). Raising it to the power of (variable^0) is slightly more subtle.

    Imagine his relief when his professor explains that strings can be printed with one line of code, and that there’s no such thing as a “string optimization function,” which is, in actuality, just an identity function. (You could maybe work in some trigonometric identities when dealing with images?)

    I’m oddly attracted to the idea of compressing variables internally, though… Of course it’s actually a terrible idea: not only do you waste CPU cycles twice every time you pass a variable (once to compress, once to decompress), but you also make memory usage worse. And yet I’m oddly tempted to write such a piece of code.

Leave a Reply