not genuine

I just got a new laptop, and it came with dozens of annoyingly bloated applications that I really don’t need. At least 4 different media galleries and organizers were pre-installed. To get around having to delete and uninstall everything, I just wiped the C: drive and installed a fresh, albeit cracked, version of Windows 7.

As it turns out, a lot of the terrible annoying applications were actually there for a reason. They made my computer work. Specifically, they made all the features that originally made my laptop badass work. Not only did a bunch of features stop working (touchpad scrolling, bluetooth, the Fn key), Microsoft somehow found out that the new version of Windows I installed was not genuine, and they reminded me that they knew every 5 minutes.

I called Sony to see if I could buy a restore disk, which I was hoping would be able to restore all of the lost functionality. After a lot of confusing phone calls, I found out that a restore disk doesn’t even exist for my computer. They said that it’s most likely because it’s a new model, and often restore disks aren’t created for at least several months after new products are released.

Which makes NO sense.

Maybe that is in fact the case, but don’t you think it’d be easy enough to create an install disk BEFORE you start selling a specific model. But whatever.

Anyway, I eventually was told that my computer actually has the restore “disk” built in. When I was installing the fresh version of Windows, I noticed that there was at least one extra partition on my hard drive. I had no idea what it was for at the time, but I decided not to erase it…just in case.

Thank god I didn’t. That extra partition contains what is essentially a snapshot of your computer when it left the factory. It had a backup of the original operating system and custom applications Sony spams their new computers with. Ultimately, it was entirely painless going through the restoration process, and within an hour or two, my computer was back to normal.

What I’ve learned (aka the moral of the story):

  • Don’t delete mystery factory-created drive partitions…just in case.
  • Uninstall shit like Norton 60-day free trials, but if it says “Sony” and you don’t know what it’s for, simply don’t touch it.
  • If a cracked product requires activation to work, always activate it OFFLINE if possible.
No Comments »
date May 2nd 2010
author Mike
category Geek
tags,
  No Comments »

MyUS

This morning I was lying in bed coming up with great ideas that could change the world. One such idea was a concept for a service that I think is desperately needed. I got the idea while thinking about the iPad’s limited release, and how it’s not yet available outside the US. I bet there are some people in other countries that would pay well above retail prices to get one early, and whoever provided this service for them could make a hefty profit. And it doesn’t have to be limited to useless Apple gadgets.

Then tonight — literally less than 15 hours after my stroke of inspired genius — I was reading about absolutely awesome websites, and I found out that somebody had my idea first. MyUS is apparently a pretty big deal. Though I’m not going to make any money off of it, I at least know that my original ideas are worth millions. Awesome.

No Comments »

nothing much

I have a backlog of posts that I’ve just never finished. I tend to start posts, make them much longer than they were originally supposed to be, then lose interest 3/4 of the way through. It’s a bad sign when a blog’s content bores the author.

So until I come back with some real content that’s worth a damn, check out duplos.org. It’s incredible what’s possible with some jQuery and a pinch of creativity. Ah creativity, how you elude me.

2 Comments »
date Mar 23rd 2010
author Mike
category Life
tags(none)
  2 Comments »

(none)

Not that it was a living hell. It wasn’t. But it sure as hell wasn’t heaven, either.
—Markus Zusak, The Book Thief

1 Comment »
date Mar 15th 2010
author Mike
category Life
tags(none)
  1 Comment »

how to talk with a 5 year old

Ally and I are going to a Bar Mitzvah in Miami later in the year, and when I found out about it I started panicking about all of the 5 year old cousins I’d be surrounded by.  I’m not so good with the lil’ ones, you see.  I don’t know how to talk to them, or what even to talk to them about.  They’re quite dumb creatures if you think about it.  They have few reasoning skills, and their abilities to carry on complex conversations are limited (to put it lightly).  They’re still in that phase of their life when they’re not psychologically capable of handling emotions in an appropriate manner, so they cry a lot.   Hell, when I introduce myself and hold my hand out expecting theirs in return, I’m usually met either with silence and overwhelming shyness, or a crusty booger-covered set of toothpick fingers.

So how am I going to deal with a long weekend—mere days before I begin taking upper division university courses about complex algorithms and low-level machine representations of data, no less—talking with these developmentally primitive miniature humanoids?  I’ve decided to come up with a few talking points to initiate conversations that would both be engaging for me, and dumb enough for them to understand and relate to.  Here’s what I’ve come up with:

  1. “I can solve a Rubik’s cube in about 1 minute.  What colorful toys are you that good at?”
  2. “I see you have hot dogs in that mac & cheese you’re eating.” [side note: I totally expect to be referencing the food on their bibs] ” I once ate an entire package of 8 hot dogs—including buns!—in under 5 minutes.  Boom goes the dynamite!”
  3. “Come on, think about it logically.  What sort of physical explanation can you come up with for how those reindeer stay in the air?  It’s just not feasible.”
  4. “If you were an animal on Arthur, what kind of animal would you be?  I call lion.  I’d never go hungry with all of those aardvarks around, that’s for sure!”
  5. “Don’t hang out with little Suzie too much.  Before you know it middle school will roll around, and you’ll be stuck in the ‘friend zone’ when it actually counts.”
  6. “Back in my day, garbage men used to hang off the back of the truck!  It’s never too late for you to change your aspirations, kid.  If you really put your mind to it, you too could hang off the back of a garbage truck someday.”
  7. “So your twitter background is a photo of elmo, huh?”

Hopefully Ally has seven or fewer 5 year old cousins.  I’d be completely stumped with what to talk to number eight about.

Let me know if you can come up with any.

2 Comments »
date Mar 7th 2010
author Mike
category Life
tags(none)
  2 Comments »

disqus

I’m a fan of Disqus. It’s a great commenting system, the Gravatar support is a plus, and the comment tracking they have for your profile is awesome. So a few months ago when I was still in the process of creating this blog, I installed it here on Rhymes With Milk using the official Disqus WordPress plugin.

As the process of creating this site started to wind down, I started thinking about validating my code (as any good developer would do). Essentially this just means that I check to see if the organization that governs internet standards thinks my XHTML is up to snuff. And whaddaya know, the homepage alone has over 3 dozen errors*, but none of them are errors I made. They mostly come from the code Disqus adds to the page (with most of the others coming from an embedded YouTube video).

This really rubbed me the wrong way. These weren’t simple negligible errors like “you shouldn’t have a border size declared on an iframe because that’s not allowed” (this in fact is an error on Mark’s blog — I think it’s a Tumblr thing, so give them shit for it, not Mark)** but ones like “there’s an extra link closer-outer tag for a link that doesn’t even exist.” Seriously, Disqus? You didn’t test the plugin before you launched it?

So I decided to hack it. The php files that actually define the plugin’s actions are a bit more advanced than I was prepared for (I can usually pick my way through other people’s code pretty well. Just take a look at my archives. You think those looked like that out-of-the-box? Hell no.). I Googled the problem with very low expectations (Disqus dev documentation is surprisingly scarce) but stumbled upon this gem. This blog takes you step-by-step on how to correct the invalid markup that Disqus adds to your page. Awesome, it just saved me at least 4 hair-pulling hours.

I think the post was written at least one plugin version ago because some things looked a bit different on mine than in the examples, but for the most part I was able to do just what it said verbatim. And happily it worked. My site’s validation checked out (aside from that stupid YouTube video), but for some reason I lost comment count. All posts said that there were zero comments. With my tail between my legs, I got rid of the hacked Disqus and reinstalled a factory-fresh version, complete with its terrible markup.

But not all is lost. The site doesn’t really visually or functionally “break” because of the poorly written code (at least not on good browsers), so in the short run I can ignore the validation issues. And hopefully “the short run” is all that I’ll have to worry about. 3 days ago Disqus posted this on their blog:

We’re nearing the release of our new WordPress plugin that contains bug fixes, better importing, compatibility fixes with themes and other plugins, as well as offers new improvements in performance and speed.

And one of the comment moderators (aka a Disqus employee) said that the plugin is supposed to be released this week! It feels like Christmas in the RWM household. Hopefully they get it right this time. All the way right.

* Take a look for yourself. Click here to see all the errors.

** The only reason I looked at the validation info for his site was because he also has Disqus installed on his blog and I wanted to see if it generated the same errors there, too. It does not because the Tumblr and WordPress inclusion codes are different.

1 Comment »
date Feb 22nd 2010
author Mike
category Geek
tags,
  1 Comment »

a sneak peek…

…of Ally’s new blog design. Dustin and I worked all night on it.

1 Comment »

Deichkind – Ich betäube mich ft. Sarah Walker

Fresh it up!

No Comments »
date Feb 5th 2010
author Mike
category Life
tags,
  No Comments »

lost night

The LOST premier last night blew me away. Maybe I just do a poor job of holding in my emotions, but I couldn’t help but smile through the whole thing.  I do have to admit, though, that it was partially due to the company.

MarkGordonAlly and I got together for (almost?) every LOST last season and made something of a tradition out of it.  Each week a different person would have to cook the whole group dinner.  I somehow got branded as the motherly one, cooking (baking mostly) things like potpie and lasagna, you know, the kind with ricotta and spinach.

We all got together last night (plus Annabelle) for the first time in 8 months to keep our traditional LOST nights alive through the final season.  With Mark living in Denver and Gordon living in…unemployment? things are a bit different this year, so coordinating it happened all at the last minute. To make it easy on everybody else while we get back into the rhythm, I volunteered to cook for the premier.

I then realized only 20 hours before dinner was supposed to be served that I was going to spend 7 of those hours sleeping, 10 of them at work and school, 1 of them in transit, and the other 2 getting ready for bed/getting out of bed.  Nowhere in there would I have time to find a recipe, go shopping, or cook. So Ally stepped up and took the responsibility off of my shoulders even though she had NO time to herself either since she had class AND and had to get ready to leave the state the next morning…er, this morning.

But she took it like the champ she is and threw together a simple but lovely salad, and cooked (baked! Haha, maybe I won’t be the matron this time around!) a few pizzas, one with veggies and the other with pepperoni.

Oh, I forgot to mention the other big difference between this season and last.  Last year, 3 out of the 4 of us were vegetarian with me being the token omnivore (one that coincidentally hardly ever ate meat, not out of principle or taste, but out of lack-of-opportunity).  All of our dinners were vegetarian, and each week’s appointed chef came up with a damn good meal.  It’s going to be strange this season now that only one of our clan has stuck with vegetarianism.  It’s hard to say whether Ally’s dual pizzas set a precedent of making meals that cater to all parties, or if we’re going to end up cooking strictly vegetarian meals out of respect for Mark (and laziness to not have to prepare two versions).  I guess we’ll find out…

No Comments »
date Feb 3rd 2010
author Mike
category Geek, Life
tags
  No Comments »

syntax highlighter

I just installed a syntax highlighter tool here on Rhymes With Milk and am pretty excited about it so far. What it means is that I can paste snippets of code into WordPress’ post editor essentially verbatim, and a JavaScript function translates it into a nicely formatted version for the blog.

I had seen this sort of thing on other websites before, but only just realized that I might have a use for it, too. I wasn’t quite sure how to go about finding something like that, so I asked Twitter if it had any recommendations. True to form, Twitter offered me no help, so I started doing my own research. Finding the right set of keywords to search for one of these wasn’t easy, but I eventually stumbled onto Alex Gorbatchev’s webiste. It was exactly the one I was thinking of when I set out to find one.

After a super simple install (you just have to FTP the files to your server and add the right file calls in your header) and some custom styling, it was all ready to go. I did have a few problems personalizing it though.

toolbar functionality

The program has an optional little toolbar that pops-up when you hover over the syntax highlighter div with buttons for printing, copying, displaying as plain text in a pop-up, and a small “about” pop-up. I initially thought this toolbar could be pretty handy, but that some of the buttons could probably go—namely the print one. I hardly believe anybody is ever going to see my code examples, a small fraction of them are actually going to care about what they’re looking at, fewer would actually want to use it for reference, and none of them would want it physically represented so badly that there should be just a single button for them to accomplish that. But despite digging around in the core JavaScript file for quite a while, I wasn’t able to figure out how to selectively remove buttons. It looked like for me it was all-or-nothing.

I decided that I should go with “all” at this point mostly because of the copy button. The way the lines are displayed within the div make it so that when you manually highlight-and-copy, you also get stuck copying the line numbers. This little cumbersome detail made me think that having a single copy button that only grabs the relevant code would be convenient, but there’s some sort of XML file that the function looks for but could not find. Something like that. Again, digging around in the core files didn’t help me any, and unfortunately the official website has pretty poor documentation and troubleshooting help.

line wrap

The line wrap function, unlike the ones dictating the toolbar buttons, can simply be switched on or off with an appropriately placed “true” or “false” respectively. When turned on, lines wrap nicely (although no line wrap is generally all that nice when looking at code), expanding the height of its table row, pushing the following lines and line numbers down further. When wrap is turned off a scrollbar appears at the bottom. I almost prefer this method, but it doesn’t display everything beyond the edge of the box very nicely. For some reason, the lines alternating colors end at the edge of the box, and a solid background color is displayed beyond their right ends, and depending on the CSS, this color might not ever correspond to either of the line colors. Lame.

solution?

I found this guy who has created a modified version of the original syntax highlighter. His previous documentation claims that a few of the issues I mentioned above had been fixed, and a ton of extra (and helpful) functionality had been added. I downloaded it and started testing the different functions…and it fell short of the claims. For all that I could tell, I had downloaded the same damn thing as the original. And again, explanations on how to implement said added functionality was minimal. I gave up with it much quicker than I normally do with things mostly because the test html file that comes with the download (it’s meant to test whether the program works or not) was out of date. It was the test file for the previous release, not the most current. I couldn’t even use his own test file as reference on how to implement the various features. I can think of other ways to find reference, but I stopped there because even that kind of small oversight makes me lose faith in the developer.

Therefore, I stuck with the official release (not the mod) and just turned the toolbar off, and line wrap on.

I was going to leave you with a small C++ example since that’s the language I’m currently using the most, but it’s syntax mode is actually kind of lacking. So instead, how about we try doing a PHP program (which has much better syntax support) that uses the accumulation plan.

<?php

$myArray = array(12, 102, -44, 61, 0);
$total = 0;

for($i=0; $i<count($myArray); $i++)
{
	$total += $myArray[$i];
}

echo 'The total amount in my array is ' . $total . '!';

?>
2 Comments »
date Jan 31st 2010
author Mike
category Geek
tags
  2 Comments »