Monday, May 9, 2011

Flash Player For Chromium-browser in Ubuntu 64 bit

If you have trouble getting flash working with Chrome on Ubuntu 64 bit, these steps worked for me:

First you need the 64 bit flash player from Adobe. They have it available (called "Adobe flash player square" at the time of this writing. Who knows what they will call it in a year. Just get the 64 bit Linux tar.gz file) from their downloads site.

Next, extract the contents of the tarball you just downloaded. It contains libflashplayer.so, which you will want to place in your chromium-browser's plugins directory. Mine was in /usr/lib/chromium-browser/plugins. If your chromium is not there, run "locate chromium-browser" and look for a plugins directory.

After moving the plugin into Chrome's plugins directory, restart your browser. That should do it.

(Done on Ubuntu 10.04 and Chromium "11.0.696.65 (84435) ")

Wednesday, December 23, 2009

Reward Zone Card, or Dangling Carrot

Best buy has TVs, computers, phones, appliances, games, and quite a few other electronically related consumer goods. It seems like a pretty good shop, despite being somewhat overpriced. For Best Buy one of their selling points for return shoppers is a Reward Zone card, which gives frequent shoppers two percent back on purchases. It's this card/system that I intend to pick on with this blog. Here's how my story goes.

I intended to buy a TV and a few other larger items from an electronics store, so I thought that Best Buy might be a good choice. What drew me in was the rewards card, which gives a $10 reward for every $500 spent. It's only 2%, but what the heck. Evidently I didn't read the email closely enough (thank you for your nearly-all-images-email, which doesn't render by default in gmail, but that's another story) because when I got to the store to buy a mouse, I presented my reward card at the register. The total came to the sticker price, which confused me a bit.

One would think (Best Buy will correct me here) that a rewards card would be able to redeem its earned rewards. But no, that's not correct at all. Once you register your email and address in their system, buy enough from their store to get a reward, you get an email letting you know you have $10 for free. But all this electronic transaction, even in the thick of our age of information, still must be printed at home and physically brought to the store.

Now I'm forced to spend another however-much, lest I lose my 'reward.' I want to know who designed such a system. If I knew who that person was, I would congratulate them. I wish I would have thought of this system a long time ago. Congratulations, Best Buy, for being so inventive with your trickery. Take my money and go have a good time with Wal-mart, who probably is one of your fellow corporate whore friends.

On a side note, because I don't want to write another blog about Best Buy, (and I'm on a good rant) I just want to say one more thing. Geek Squad: most of you don't know what you're doing. I'm glad you can hook up a router, but when I come in with a legitimate problem, the best answer usually isn't "reinstall your operating system." OK that's all from me for now.

Thursday, August 6, 2009

Getting Members of a System.__ComObject type

For C# ...

The problem: there is a dynamic parameter being passed into my function as an object, so I needed to use reflection to get a property from it. But here's the gotcha: the object is of type System.__ComObject! This sounds innoccuous, but getting members from this __ComObject can not be done directly. Here's the link where I found the info that fixed my problem:
http://msdn.microsoft.com/en-us/library/system.reflection.methodbase.invoke(VS.85).aspx

And here's my summary:

Reflection (which is a way to access object properties and methods at runtime instead of at compilation) needs to use a Type to do its work. Like this:
Type myType = objectInQuestion.GetType();
PropertyInfo name = myType.GetProperty("Name"); //here's where the reflection happens.

BUT! This won't work if objectInQuestion is of type __ComObject.

So ... you have to work around this. Use the following:

string name = (string)objectInQuestion.GetType().InvokeMember("Name", BindingFlags.GetProperty, null, objectInQuestion, new Object[]{});

NOW name will be the Name property of objectInQuestion, as if you had been able to cast it in the first place. Don't ask me why this is so tricky, or why it was so hard to Google, but now it's done and I'm very happy.

Tuesday, July 14, 2009

USPSucks

In fine fashion, another organization under direction of the US gov lives up to expectations. Don't think those are high expectations, because the only high part of the USPS is their employees. Without fail, neither Rain, nor Sleet, nor gloom of night can stop these folks from flubbing up my mail. Or so it would seem.

In the month I've lived here, no mail has arrived. This includes a diploma, a first salary paycheck, and a test letter sent from a friend in Iowa. Now, keep in mind that I'm only a recent college grad, thus I have little or no rights (I'm pretty sure that's in the Bill of Rights somewhere ... all people are created equal, except those meddling young folk, who shalt receive only hot air in their mailboxes).

I even went to the post office to see if I could dig into the situation; see what the problem might be. Arriving a couple minutes to five, I found the doors locked and an unfriendly "only people who arrive earlier get service" as the door was re-shut in my face.

Thanks, USPS. I'm indebted to the ineptitude of your bureaucracy.