October 2009 Archives

Food-Grade Hydrogen Peroxide?

1 Comment

Recently, I was having a conversation with a friend who is an esthetician and she mentioned a conversation she’d had with someone recently, who had begun asking about ‘food-grade’ hydrogen peroxide. With some further investigation, the person said that they had heard anecdotal evidence (my words) of a man who drank food-grade hydrogen peroxide to make him healthier, and that he had lost weight because of this practice, however, the health food store where this person found the product indicated they’d only used it for cleaning tables. Knowing what this person was planning, my friend said that she didn’t know where to find the product, and had to offer to talk to a nurse client about the practice in order to convince this person not to run out and start drinking the hydrogen peroxide.

My first question was what is food-grade hydrogen peroxide? According to the website foodgradeh2o2.com, it appears to be a 35% solution of h2o2 (what you buy in the drug store is usually only 3%), and they claim that the ‘stabilizers in it are not the toxic stabilizers used in industrial and pharmaceutical grades of hydrogen peroxide’. I’ve been able to find absolutely no documentation for the stabilizers used in ‘pharmaceutical grade’ hydrogen peroxide, but given that we often apply this stuff to open wounds, I can’t imagine that they’re that bad.

Of course, in addition to people talking about using hydrogen peroxide for weight loss, there are also sites that talk about using hydrogen peroxide for cancer treatment, which apparently works both via ingestion and injection. The basis for this is the idea of ‘oxygen therapy’, which, incidentally, the American Cancer Society does not advocate, and in fact claims has been linked to several deaths.

Hydrogen Peroxide has some solid uses, like as a disinfectant, stain remover and bleaching agent. But the way Hydrogen Peroxide accomplishes these tasks chemically, should make anyone wary of using this stuff internally. When the chemical, H2O2, breaks down it generally results in 2H2O2 -> 2H2O + O2, part of why it makes such a great rocket fuel, but it also means that there is a lot of free oxygen running around, just looking for atoms to rip electrons from (remember, ‘oxidation’ is just another name for rust!). Yes, we do use this tendency of oxygen to rip electrons from atoms to generate our energy we use, but there are a lot of dangers to over-exposure to oxygen. That bubbling you see when you put hydrogen peroxide on a fresh blood stain (or cut for that matter)? That’s caused by cells rupturing as the oxygen released when the peroxide decomposes begins tearing apart proteins and cell membranes.

Food-Grade Hydrogen Peroxide might have better stabilizers in it than what’s available at the pharmacy, but I’m not entirely sure. And the chemical can often serve as a better replacement for chlorine bleach as a cleaning agent, but what drinking it is doing to you internally (if it causes weight-loss at all, it’s probably because it prevents your body from actually absorbing nutrients after a long time ingesting it), is pretty much exactly what it’s doing when used externally. Tearing cells open. Denaturing proteins. Use it to clean and disinfect, but anything that can be used to kill bacteria, is going to cause you problems internally, and should be treated with care.

Corporate Charity Crappiness

I’ve got a pet peeve regarding the way large companies handle their charitable donations. Mostly, that they use the fact that they are considering being charitable as a means to drive direct sales of their products. Like Yoplait’s Save Lids to Save Lives campaign, or Dawn’s 1 bottle = $1 to save wildlife campaign. Okay, so instead of just donating a sum of money to charity and making announcements about that to try to drive sales, they make you buy their product in order to donate a small sum of money per sale. Fine.

Dawn Donation's 2009What bothers me more are all the caveats they put on the donation. Yoplait requires you to collect the lids and mail them to them. Dawn requires you to go to their website and enter a code to ‘activate your donation’. Look, I’m not the one donating to charity. You are. Track you god damn sales, and figure things out that way. These companies are hiding behind these processes which most people aren’t going to follow through on (people are lazy about this shit, I know I am), in order to try to keep from actually having to donate. According to Dawn’s FAQ their donation program ran from July 1, 2009 to October 1, 2009. Their donation counter as of right now? $126,991. You can fucking bet that Dawn has sold more bottles of their dish detergent than that over third quarter of this year.

Even worse, as far as I’m concerned, is that these companies then put these artifical caps on their donation size. For Dawn, it was $500,000 (not that they even came close). For Yoplait, it’s $1,500,000, and that’s at $0.10 per lid. That means they need to recieve fifteen million lids to reach that figure. And after that? Fuck you, breast cancer. So what, the company can afford to donate $0.10 per lid they recieve up to fifteen million sales, but not a dime after? Now, Yoplait has guaranteed a minimum donation of $500,000, which is awesome, but I’ll be really interested to see what their final donation is, after all this is said and done.

I’m all for corporate sponsorship of charity. And I have no problem with these companies making a big deal of the fact that they’re donating to charity. But imposing artificial limits on their donation, and requiring me to jump through hoops for them to make these donations is flat ridiculous and dishonest. Make a promise to donate a percentage of all sales or profits over a given timeframe to a given charity. Great. But don’t create extra work for your customers, who you know full well are unlikely to follow through, in order to try to get the PR boost for being charitable, when in reality, you’re probably going to be donating a lot less than you imply in your marketing and outside of the fine print on your advertising and labeling. That’s just being dishonest. At least in Yoplait’s case, they’re a lot more upfront about the requirement to mail in lids, and the max donation, then I ever saw on Dawn’s advertising.

JSON Encoding of .NET Objects

For a recent project, it was a user requirement that we be able to save a snapshot of some statistical data on demand. I decided that the best way to do this would be by saving a JSON representation of the data, since I was going to be providing a JavaScript method to render the data, and for comparisons, at a later date. I knew that .NET had a mechanism to convert an object to JSON, because ASP.NET MVC has a JsonResult object that returns data as a JSON string to the client via the browser. However, my Google-Fu failed me, and my searches didn’t return the mechanism to do this.

I’m using .NET 3.5, and I was appalled at the difficulty I was having, especially since ASP.NET AJAX is standard in .NET 3.5. But all I kept finding were items off the list of C# parsers from the json.org. Those libraries and projects are probably fine, but I was trying to avoid adding a new dependency, and again, I knew this had to be possible in core .NET 3.5.

After cracking open the MS-PL source for ASP.NET MVC, I found my answer: The JavaScript Serializer class!

Now, JSON is a data-interchange format that happens to be syntactically compatible for JavaScript, so I think that name sucks, since I’m storing this data as JSON, but fine Microsoft, call it what you will. And using the class is dead simple.

var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
string json_string = serializer.Serialize(_model.getData());
DataObject obj = serializer.Deserialize<DataObject>(json_string);

I’m not completely happy with this API. My first reaction was that I shouldn’t have to instantiate the JavaScriptSerializer class at all. Apparently this requirement is because I can define a custom JavaScriptTypeResolver to aide the serializer in converting my object to a JSON string, but I would still like to see a Singleton implementation of the JavaScript Serializer that allows me to call the Serialize and Deserialize with the default type resolver, but given that this doesn’t appear to be changing for .NET 4.0, I should probably just get over it.

Angel Financing and Pitch Fees

Jason Calacanis has been on a crusade lately, one which I can fully back. Frankly, this was something of a surprise, since I’m generally debating unfollowing Calacanis on Twitter, and his voice grates on my ears from too many episodes of This Week in Tech where I grew to tire of his elitist attitude. While I acknowledge and respect his success, I’m generally far less sure about him being right than he is.

That said, I really like Calacanis’ focus on helping startups. He’s been involved with TechCrunch50 in the past, and lately he’s begun a crusade against Angel Investors who actually charge startups to pitch, including a followup where he discusses that one of the firms is threatening to sue him for telling the truth and expressing an opinion in an ugly fashion, something I can certianly relate to.

Why is it so unreasonable to charge investors to present? Simply because these angel investors (a term I consider to be somewhat dishonest) are usually given a pretty significant share in a company in exchange for their investment. I’m not saying this isn’t a deserved share, this is after all an investment, but these investors are looking to make money, plain and simple, and startups happens to be a pretty good way to potentially turn a good profit. Sure, there is more risk, but when a startup pays out, it pays out big, generally.

Anyway, enough complaining about the term ‘Angel’. The fact is these investors occupy a really import market segment. Of course, reading some of these rebuttals, it seems that the people charging are firms that represent investors, not the investors themselves, which says to me that they simply have a flawed business model.

Ultimately, what’s coming out of Calacanis’ post is simple: If you’re a startup, looking for venture capital, don’t pitch to any organization which requires fees to pitch, or put you in contact with investors. Investors want to invest their money in startups they believe in. Sure, finding investors can be difficult, but starting with people like Jason Calacanis, who know a lot of VCs, or any of the investors on the panels at TechCrunch50.

When you’re chasing a dream, make sure you don’t get screwed in the process.

Know Your Farmer, Know Your Food

I’ll admit, I was skeptical when Tom Vilsack was appointed US Secretary of Agriculture. Vilsack’s entire political career had been from the heart of the corn belt. He’s a noted supporter of corn-based ethanol. In short, he seemed like another Big-Ag shill who had taken over the chief role in US farm policy.

It appears I was wrong.

While I wouldn’t say that Vilsack is anti-big agriculture, he’s done a lot of work promoting farmer’s markets, and other activities that I do support, including the USDA’s new “Know Your Farmer” campaign, which provides support to small-scale local farmers, and even talks about the health importance of a diet based more around fresh fruits and vegetables and meats than the processed fare that many Americans, especially lower-income families, live on today.

Now, I’m still not a supporter of this administration. I think that the USDA needs to do more to revamp the agricultural system, but the work that is being done to encourage the development of local and regional food systems is exciting, and needs to be encouraged.

Classic Adventuring in JavaScript

Ajaxian more than earned it’s spot on my RSS Reader this week when they told me about sarien.net. Now, if you’re around my age, you have really fond memories of the old Sierra Adventure games, and sarien.net is the perfect way to honor these classic games, by making them playable in your web browser.

Now, there have been other browser-based retro gaming sites, but in this case, it’s implemented in JavaScript and Canvas. Of course, this means it only works in new browsers (Safari 4, Firefox 3+, etc), and that it doesn’t work in IE at all, but this is a seriously cool hack.

Martin Kool, the guy behind the site, has a pretty decent write-up about the tech, though I’d like some more techy-details, that I’ll have to go to the source for.

So, how’s it work? Well, Martin has extracted the data files from the old Sierra games, and run them through a special parser that converts the AGI code to JavaScript. This is no small feat, really, as JavaScript has no support for things that AGI requires (like GOTO), and using the Canvas support in modern browsers to render the images. He does add support for the Q42 multiplayer engine developed at the company he works for so that you can visit with other players while you’re playing, though I’m unsure how interested I am in that, luckily, you can turn that bit off.

Martin’s rewrite of the javascript code, converts the application into an enormous switch-case block which allows a reasonable equivalent to the ‘goto’ that AGI uses. I haven’t had a chance to analyze the exporter, so I can’t say much about it, but I agree with Martin, that I hope Activision-Blizzrd (the current copyright holders of the old Sierra games) allow this site to remain as what it is, a beautiful shrine to these fantastic games, and hopefully it might encourage more movement on the adventure game front in the modern world.

Flock of Dodos

Randy Olson earned his Ph.D. in Biology from Harvard University in 1984 as an environmental ecologist, primarily in reef ecology. In the late 90s, he decided to go into film making, and caught a lot of attention for 2006’s “Flock of Dodos: The Evolution - Intelligent Design Debate”.

Okay, so it’s a documentary about the ‘debate’ between ID and Evolution from a guy who, quite simply, firmly knows that Evolution takes place. It’s probably stands up to logical rigor as well as Michael Moore on a treadmill, right?

I’ll admit a bit of bias, in that I find the ‘debate’ around Evolution ridiculous, but Olson gives the ID people ample time to try to convince him of their world view in his movie. Probably close to 75% of the movie centers around discussions with ID proponents, and they generally are glad, and quick, to show how little they truly understand about modern evolutionary theory.

I’ll be getting to that part in a bit, but I will say that Olson, for his part, doesn’t let the evolutionary biologists off free and clear. He paints an, unfortunately somewhat accurate, portrait of the modern evolutionary biologist as a older, white male, who is completely incapable of expressing their work in reasonable terms, and who tends to become belligerent when presented with someone who doesn’t accept a well-understood (by those who’ve read any of the literature, at least) scientific fact like evolution.

In fact, both sides of the argument fail to provide a rigorous platform with which to convince people of their cause. The ID proponents use ridiculous comparisons and poor science to push their agenda, while the scientific establishment has tried to pretend these people don’t exist in the modern age. Sadly, these people do exist, and so do people who honestly believe that the Earth is flat.

The core argument that the ID proponents put forward is that Darwinian Evolution can’t explain everything. Which is certainly true. But then, Darwin didn’t really try all that hard to describe how common descent began, and Darwin’s On the Origin of Species was published 150 years ago (next month, actually). To suggest, as ID proponents surreptitiously do, that evolutionary theory hasn’t progressed in 15 decades, is ridiculous. In fact, the biological community no longer believes with one of the core ideas presented in “Origin”, that the primary driver of evolution was ‘survival of the fittest’. Certainly that’s viewed as a driver, but not as the most important one.

The, there is Michael Behe, a well respected biochemist, who is basically responsible for the modern face of Intelligent Design. I’ve seen Behe speak, the video from the talk being available online. Behe is, as one might expect, the consummate Intelligent Design proponent. He mentions that he’s a professor at Lehigh University, but that his department clearly states that they disagree with him on the issue of Intelligent Design, regarding it as unscientific.

It’s not so much that he mentions this, but how he mentions it that’s offensive. He says it, to suggest that he is somehow being persecuted by his peers, when really, if he was being truly persecuted, he wouldn’t likely even be on the faculty at Lehigh anymore. All his department has done is said that, while they respect Behe, and his science, they don’t believe the Intelligent Design is science, and don’t want his affiliation with Lehigh to lend credibility to it.

Why doesn’t the Biology Faculty at Lehigh University believe that Intelligent Design is Science? Because it isn’t. Science is defined as follows:

  1. The collective discipline of study or learning acquired through the scientific method; the sum of knowledge gained from such methods and discipline.
  2. A particular discipline or branch of learning, especially one dealing with measurable or systematic principles rather than intuition or natural ability.

Intelligent Design fails to live up to either of these definitions. The most trumpeted principle used by ID proponents, irreducible complexity, states that some systems are too complex to have been arrived at via gradual evolution, and small steps and changes over time. Behe’s favorite example of this one, is that of a flagella, specifically the protein ‘motor’ that drives the filament. Admittedly, this is a complex mechanism, one that, to my knowledge, Science is currently unable to explain the origin of. However, that doesn’t make irreducible complexity a scientific principle.

Science, and the scientific method, are based around asking questions. Even after Darwin wrote “Origin”, there were a lot of things he didn’t understand. Darwin didn’t know the mechanism by which traits were passed from parents to offspring, but we’ve answered that question, because someone formed some intuition that they could then measure and test via ‘systematic principles’. Irreducible Complexity says “I don’t know how this happened, so clearly, it must have been implanted by some sort of designer.” That’s not science. That’s anti-science, and a classic application of the logical falacy of ‘argumentum ad ignorantiam’.

This is also to ignore the outright lies that ID proponents will tell in order to push their agenda. The focusing on the term ‘theory of evolution’, even though in Science and Mathematics, something can only earn the title ‘Theory’, when it has passed scientific rigor to the point where it is universally accepted. The lies which talk about Ernst Haeckel’s embryo drawings as if they were still being used in modern teaching. In the movie, Olson takes an embryology text book on the bookshelf of the gentleman he’s talking to who is making this claim about Haeckel’s embryos, and they can’t even find a mention of Haeckel in the book.

Intelligent Design has to assume that science has stood still for the century or more, because it’s the only way the are able to put together a wide breadth of arguments into the failures (or more accurately, misunderstandings) of evolutionary theory.

What people need to understand is that science doesn’t exclude the existence of God, or a Creator. It simply doesn’t presuppose such existence. It seems to me that because they don’t make that presupposition, because a scientific universe could exist without some sort of divine outer influence, many people believe that it completely precludes the possibility of divinity. And certainly there are some vocal members of the scientific community who routinely mock the faithful, but for most in the community, the existence of God simply isn’t relevant to the work that their doing.

Ultimately, part of the reason ID has gained so much traction is that it’s simply better marketed, in part because the scientific community felt they didn’t need to defend themselves against it’s claims. We need to support groups, like the National Center for Science Education, who seek to defend the teaching of science from the illogical attacks from Intelligent Design, and other fundamentally religious arguments. They are under funded compared to their opposition, however, but you can join for as little as $30 per year, a perfectly reasonable amount to try to change science education in this country for the better.

Undoing a Lockout on an Android Phone

Over the weekend I ran into a major problem with my Android-based phone. While we were moving into our new condo, I had the phone in my pocket, and had somehow triggered the touch screen pattern-unlock mechanism, and proceeded to accidentally lock out my phone badly enough that it was demanding my username and password to unlock the device.

Unfortunately, I apparently can’t remember that password.

Fortunately, if you have debugging over USB enabled, you can hack your way into the phone.

Yes, this is a security vulnerability, but most any device has some security problems when you have physical access to it, and at least in this case, you have to enable USB Debugging, which is only enabled by default on developer firmwares.

To perform this fix, you need to have the Android SDK, and your phone needs to appear on the output of adb devices. Google provides a Windows Driver, and most Linux distributions should work fine. Once you have the device attached, just execute the following.

$ adb -d shell
# sqlite3 data/data/com.android.providers.settings/databases/settings.db    
sqlite> update system set value=0 where name='lockscreen.lockedoutpermanently';
sqlite> .exit
# exit

The effect should be almost immediate. Press the ‘Menu’ button on your phone, and you’ll be prompted for your pattern. If you’ve, for some reason, forgotten what your pattern is, you can follow these instructions to disable the pattern prompt, which was the basis for my solution.

Home Ownership The DIY-Way

My wife, Catherine, and I have finally had a chance to move into the Condo we bought two months ago. Needless to say, I’m exhausted today, but the reason it’s taken so long for us to get our stuff into this place is simply the sheer amount of work we needed to do.

We had to replace the carpet, with a beautiful hardwood floor, including new trim. We had to repaint the walls (which has been painted with a really lousy paint). I had to fix the toilet which started leaking last week after the place had been empty for eighteen months. We had to replace the curtains, which smelled as bad as the ugly carpet, as the previous owner had apparently smoked cigars regularly in the space. This list seems short, but there are many smaller projects that I can’t really name at the moment. Worse, it pales in comparison to all the other projects that we want to do.

Black and Decker Photo Guide to Home RepairMonday has generally been my ‘sustainability’ posts, which I hope to be able to talk more about in the future as we settle into the new place, but I’m going to be working in posts about the repairs and additions that we make into our new condo. My parents had given me the Black and Decker Complete Photo Guide to Home Repair which has helped be a guide to many of the projects that we’ve taken on, and certainly many more we will be. It’s a good guide, and I’d recommend it based on my experience with it.

Some coming posts I have regard said broken toilet, freeing heavily rusted pipe fittings, replacing a bathroom ceiling fan, some wiring stuff. Really, I’ve got an insane amount of work I want to do, and no doubt, each new project will result in a new post here. This is still, and will remain, a primarily technology blog. But this content has a place as well, and I certainly hope it will help someone else.