Archive for the ‘Uncategorized’ Category

Really Terrible Joke 2016

Happy April Fool’s day! In lieu of a prank, here’s this year’s horrible pun:

Setting a world record by wrapping yourself in duct tape is possible, but it will be really hard to pull it off.
Categories: Uncategorized

Really Terrible Joke 2015

April 1, 2015 Comments off

Happy April Fool’s day! Here’s this year’s awful joke:

I replaced an ethernet cable with a live trout. I was expecting catastrophic results, but the worst it did was flip a bit.

Categories: Uncategorized

A Bad Solution or No Solution?

August 26, 2014 Comments off

Solving problems can be hard. There’s always a temptation to do something about a problem, even if that something is less than ideal, to meet deadlines, appease stakeholders, or just avoid feeling helpless.

There’s certainly nothing inherently wrong with implementing a partial solution. Solving part of the problem is, all else being equal, better than not solving any of it. In programming, partial solutions are an industry standard: Nearly every methodology I know of is iterative to at least some extent, and at any rate, I’m pretty sure the waterfall approach is not a good fit for any project that takes more than five minutes to complete.

There are other cases, though, when it’s better to wait until you have a complete solution before implementing anything. Take politics for instance: Iteration is extremely slow, as you have to get solutions hashed out by one or more legislative bodies and then probably turned over to other parties for final approval. This all depends on your particular form of government, of course, but if your government lets officials make decisions quickly and without opposition, I’d suggest that you may have other problems. (That’s a discussion for another time, though, and probably another blog.) Depending on the situation, it may be prudent to design a solution that can be approved and implemented in pieces, but in other cases it may be better to wait and come up with a solution that works as a coherent whole, and then work on getting that approved.

With partial solutions, the most important thing is to ensure that everyone knows it’s a partial solution. Thinking that your partial solution has solved your entire problem is one of the many ways to create a bad solution.

A bad solution is one that doesn’t work, or worse, causes more problems. Often, they get implemented without anyone (or at least the decision-makers) knowing how bad they are. Even once you know you have a bad solution, it’s often more difficult or time-consuming to fix it than it would have been to come up with a good solution in the first place.

That, for me at least, is why no solution at all is better than a bad one. When you have one unsolved problem, you have one problem and you know it. When you implement a bad solution, now you have two problems and you may well not know it. In software development, this means increased deployment time and cost, and possibly re-training users. In politics, and probably most other fields as well, you’ll face additional opposition in implementing a good solution: You’ll probably have to work to convince people that the problem isn’t really solved yet, and it’s likely that people will be too afraid of losing face to admit that the previous solution was bad. Another example is the medical field, where the damage bad solutions can do should be obvious, but I’ll leave the gory details to your imagination.

I admit there may be cases in which even a solution that does some harm might help more than it hurts, so arguably a bad solution would be better than none, though I’d think that might qualify as a partial solution rather than a bad one. In general, however, I’m pretty confident in saying that a bad solution is worse than no solution at all. It’s better to put the time and effort into a good solution than to do something for the sake of having done something.

Categories: Uncategorized Tags:

Really Terrible Joke 2014

April 1, 2014 Comments off

Continuing the tradition from last year, in lieu of a prank, here’s a thoroughly awful joke in honor of April Fool’s Day.

Why couldn’t the repair tech see to upgrade the RAM in the laptop?
Because it was SODIMM.
Categories: Uncategorized

The Problems With “Agreeing” Without Agreeing

January 30, 2014 Comments off

Contracts are a part of everyday life in the digital age. We agree to something or other just about any time we download music, install software, and use social networks or other Web services, just to name a few. Few people actually read these agreements, and fewer still understand them. I think we reached the point a long time ago when people stopped caring what these agreements said and decided to do as they please, especially when they’ve paid good money to “buy” some piece of software or media. In my allegedly-humble opinion, this is a huge problem.

In times gone by (which I’m sure were horrible, but that’s beside the point) intellectual property was simple: You bought something like a book or a record, and you were basically fine as long as you didn’t violate copyright law. These days, however, most things come with some kind of license agreement attached, which (being legally binding contracts) can obligate you to to do (or not do) things beyond the requirements of the law. A common example is the First Sale doctrine: Ordinarily, a copyright holder’s right to control distribution does not extend to control of what someone does with a copyrighted work once it’s been lawfully sold/transferred for the first time. However, it’s extremely common for license agreements and terms of use (like those for Google Play, Amazon’s MP3 store, and probably iTunes) to make the license non-transferable. My student-licensed copy of Adobe Creative suite and a copy of AutoCAD that led to an infamous district court decision had similar restrictions, so don’t think this applies only to downloads.

Another common restriction is that the software or other digital goods be used only for personal, non-commercial use. This comes up a lot in relation to anti-virus programs and other software that has both free and paid versions. One particularly bizarre instance is Google Play, which actually goes so far as to say that copy-paste functionality in any text-based apps is for non-commercial use only. I suppose if you use an Android device for work, you’re not allowed to copy and paste. Or you could do what I suspect most people will do and ignore that restriction, because it is ridiculous.

That brings me to the main issue: Most people don’t actually agree to any of the license terms they “agree” to on a daily basis. Generally, when it comes to EULAs and Terms of Service, people just click “Agree” without reading to get through the process as quickly as possible. I admit I don’t have statistics on this, but I have plenty of anecdotal evidence. Off the top of my head, I can’t think of anyone I know personally who bothers to read them. I’ve even heard lawyers (in various episodes of This Week In Law) confess to not usually reading the terms.

I also have at least some anecdotal evidence of people knowing what’s in the terms and not caring. I’ve had people tell me that they have no intention of abiding by license terms that they describe as stupid or unfair. In fact, it’s hard not to do that in many cases, when license terms are so unclear or so broad that it’s hard to tell what is a breach, and easy to breach the terms unintentionally.

The reason I think this is a big deal, when it would be so easy to ignore it and go about my day like everyone else, is that whether people read these agreements or not, they are still binding contracts! Indicating that you agree to terms you have no intention of actually fulfilling is basically fraud. (I say “basically” because I’m not sure that it meets the strict legal definition of fraud; I’m not really the best person to ask about that, as I’m not a lawyer and have not studied contract law in any rigorous fashion.) Even if it’s not technically fraud, it’s still a breach of the terms, which usually results in loss of any rights granted to you under the terms. That probably means you’re on the hook for whatever you’d be on the hook for if you didn’t agree to the terms in the first place, which could be anything from copyright infringement to violations of the Computer Fraud and Abuse Act, depending on what terms you violated.

One thing that worries me is the potential for selective enforcement. Agreements frequently include language indicating that just because a company doesn’t pursue all its rights under a contract doesn’t mean they waive those rights. In other words, “You didn’t say anything when everyone else did it” is not a valid excuse. It’s entirely possible, albeit unlikely, that some company will decide to make an example out of you.

Let’s assume you’ll never get in trouble for violating TOS or a EULA. Even then, I still think ignoring the agreement is a bad idea, because I think it’s a bad idea in general to become desensitized to contracts.  Sooner or later, you’re going to get into a situation where you need to agree to something and will be expected to hold up your end of the bargain. Besides, getting into the habit of lying about whether you agree to something or not is ethically problematic, to say the least.

Finally, willful breaches of contract being a social norm makes life difficult for people who do want to try to abide by terms they agree to. In many cases, the terms impose inordinate obligations on people, but the alternative to accepting them (or willfully breaking them) is to do without the product or service they govern, which can be a big deal in the information age. However, companies can get away with imposing essentially any restriction they want, because they can always argue that the restrictions aren’t hurting anyone: After all, look how many people have no problem agreeing to the terms every day!

I admit I probably get bent out of shape about this sort of thing a bit too easily. I still think that, in principle, this is a serious problem.

Categories: Uncategorized Tags:

Kids (and Everyone Else) Can’t Use Computers

January 19, 2014 Comments off

A common pet peeve of mine is that people just can’t use computers very well. They can get done whatever task it is they need to accomplish using the computer, as long as everything goes perfectly smoothly (which, as I’ve discussed before, manufacturers seem promise that it will). If any little thing goes wrong, they’re lost. Worse yet, they usually refer the problem to friends or relatives who are supposedly “good with computers.”

I won’t be going into any more detail here, because I’ve whined enough about this already, and anyway it would be redundant after Marc Scott’s excellent post on Coding 2 Learn entitled “Kids can’t use computers.”

Hat tip: Nikolay’s comment on the Server Fault question “People think a ‘hidden’ save file dialog box means the computer is frozen.”

Categories: Uncategorized

Really Terrible Joke

April 1, 2013 Comments off

I’m not a prankster, so in honor of April Fool’s Day, here’s a joke. Not a good joke, mind you, but a joke.

I invented a pot roast scented body wash. I plan to market it to astronomers, because they’re always looking for a meatier shower.
Categories: Uncategorized