Tuesday, November 13, 2012

Gunplay, Adrenaline, and Things to Come

Well, this week has certainly been interesting. I have somehow managed to pick up my third illness in two months - another sinus cold!  I hope this one will go away without the need for medical intervention, but it did cause me to miss my Thursday evening To-Shin Do class. Thankfully I was feeling well enough on Saturday to attend class that day.

Remember how I said in an earlier post that I was worried that "it just wouldn't be the same?" Well, I couldn't have been more right, and it seems like that's a good thing. As it turns out, the training I'm receiving now is more geared towards potential real-life self-defense situations than previously. This is natural since the instructor has worked in law enforcement and private security for decades. Now, please don't interpret this as a put-down to my former school. Those guys know what they're doing, too, and I'm grateful for the instruction I received there. In fact, it's a testament to their awesomeness that I'm doing as well as I am, starting at level 3 at this new place after 2 years off. It's just .. different, that's all.

Now, with all that said, Saturday felt like my brain was going to explode due to information overload. Or was it sinus pressure?  Well .. maybe both. The highlight of the class, for me anyway, was the workshop we did on gun defense. I was able to play the role of a gun-wielding defender and an un-armed defender. In both cases, the idea is simply to not get shot, and therefore staying out from in front of the barrel is the main goal - for both people. In either situation, once the un-armed party decides to try to take the gun, it no longer really matters how it started - both are fighting for their lives at that point. It was pretty eye-opening for me in a few ways. First of all, I learned that if you're forced to use a gun to defend yourself, it's not a good idea to let your assailant get close enough to think he has a chance to take your gun from you .. and if he's already that close, you're better off just leaving your gun in your pocket and going hand-to-hand. It was also encouraging to find that I seem to have the skills and intuition to have a pretty reasonable chance at surviving a close-range encounter with a gun-wielding assailant, or an assailant trying to disarm me.

This was an experience unlike any I've had before .. even though I knew the guns we were training with were safe, I still felt quite a surge in adrenaline each time I had to defend myself. I had tried to put myself into the mindset at the time that all that mattered was not letting that thing be pointed at me no matter what, and that I really was fighting for my life. While I realize that there is no substitute for the real thing, I hope that were I ever to face the real thing, I would at least know that I know what to do to survive, and my training would kick in.

The other neat thing that happened in class was that my instructor told me I'd be ready to move up a belt rank soon. This is an especially big deal to me because I've been at the same rank now for 2 years. Just as a comparison, it look me about 2 years to go from a beginning white belt to where I am now. When it happens, my new belt will be solid green, and it will mean a lot to me, just because of all the struggles, internal and external, that I will have overcome to earn it. In fact, I will probably consider it one of my greater achievements over all.

Thursday, November 1, 2012

Speakerphone Echo on the Samsung Fascinate

Some of you may recall a year or so ago when I released a hacked-up version of the Glitch kernel for CyanogenMod 7 on the Samsung Fascinate. In this kernel was my first of many successful shots at fixing that phone / ROM combination's abysmal in-call audio quality.  Some of you may also remember that the kernel I released made the phone unbearably loud.

Since then, I've released a few more patches, and they've found their way into most, if not all kernels for MTD ROMs for the Galaxy S line of products. The major improvement over that initial release is that the "boost levels" are configurable now.  Thanks to The Immortal JT1134, there is now on most ROMs a nice application to modify these parameters, allowing you to adjust them pretty much on-the-fly.

My In-Call Volume Settings
note the values for Speakerphone
One draw back, though, is that in some distributions, the default settings aren't ideal - especially when the Fascinate's speakerphone is used. This results in an unpleasant echo heard by the person on the other end of your conversation whenever they talk. I've posted to the forums dozens of times about this issue, yet it keeps coming up as a new question no-one can find the answer to.  Therefore, this post.

The speakerphone echo is caused by a combination of too high of a boost in the speakerphone call audio plus too high of a microphone gain in speakerphone mode. Both of these can be adjusted in a few places, but my preferred method is to use the Home Screen -> hit the menu button -> "System Settings" -> "Device Options" -> "In-Call Volume Controls" path.

Once you've got that open, adjust your "Speakerphone Volume" setting down to 1. Some people prefer 0. 2 will almost certainly cause echo. 3 will give you echo with severe distortion and probably melt your eardrums while causing a significant space-time anomaly in your fridge which will immediately consume all your beer, sending it back to 1955. You've been warned.

Next, adjust your speakerphone mic gain down some. I've found that 14 is a good value. Some may prefer slightly more or less. I've found that anything above 19 usually results in an echo. You'll just have to play with this one. If you have it above, say, 25, then you will almost certainly get some echo along with over-modulation, and the kernel will freak out and send an email to your parents and grandparents with your entire collection of nasty sheep porn attached. You've been warned.

Finally, make sure you hit OK, or all these settings will not be applied. They *should* stick after a reboot. Mine do.

Sunday, October 28, 2012

Why We Learn to Fight

Continuing my new habit of posting about my To-Shin Do experiences, I'd just like to say that this week was pretty awesome, in no small part because I actually made it to TWO whole classes! Thursday and Saturday both saw me, this back-woods country boy turned nerdy ninja, hanging out in downtown Detroit learning a centuries-old martial tradition. Side-bar:  when I think of everything that had to happen throughout history and in my own life in order to make this possible .. it's crazy .. and pretty cool.

Anyway, the Thursday night class was mainly concentrated on testing, which is very different from the way I am used to testing. For one thing, it seems a lot more detailed and harder, and this is a good thing. This way, I don't run the risk of wearing a black belt someday yet not really being worthy of it (and worse, not knowing it). A twist of fate or someone's administrative screw-up forced us out of our usual facility and into the building's parking garage. This was made even more interesting by two things.

The Michigan Theater turned Parking Structure
(not my picture - found it on the web)
First, the parking garage used to be a very ornate old-time theater. The ceiling in particular consists of the remnants of what was once a grand cathedral-style piece of gilded-age architecture, but is now pocked with holes and crumbling, just like the rest of the place that wasn't converted into parking spaces. Littered about the ground were tiny bits of exploded "plaster bombs" that continue to fall randomly from the once majestic ceiling turned symbol of the sort of urban decay you can only find in the Motor City. It was almost surreal - I wish I had taken a picture - it was beautiful in a morbid sort of way, like ancient ruins of something great that has long since passed.

Second, we weren't the only ones using the parking lot that night. Aside from the birds and bats nesting in the ruins, it seems some local law students decided that would be a great place to have a kegger, blast loud music, and play some game that I'm unfamiliar with, so I'll just call it "throw the bean-bag into the hole in the target thingy." It reminded me of horseshoes, but without the large metal objects and therefore a lot less clanging. These folks were pleasant enough, and a few of them even wandered over to check us out - especially once the swords came out.

After class, we had to walk directly through the party in order to reach the exit, and one of the students who had obviously had a few beers stopped us and asked us a few questions. Of course, once he learned we were ninjas in training, he wanted to arrange a "fight" with one of his co-workers and asked us if we'd like to fight this guy. My friend and I answered with an immediate "No," and the guy then asked, "well, why are  you learning how to fight, then?"

I thought that was a great question, and it deserves an answer. Why DO we learn these fighting skills, if not to fight? There are a lot of answers, really. We practice the art as a way to learn about our minds and bodies, as a way to strengthen and improve our health, and things like that. But why learn combat skills when you can get those benefits from things like Yoga or working out at the gym?

The truth for me is that we learn to fight hoping we never need to. But, if we do, we will have the skills to protect the ones we love, the ones who can't fight for themselves, the innocent stranger, and even, to some extent, to protect the same enemy who would challenge us. That last part seems contradictory, but it's true - most of the techniques we learn are geared towards ending the fight without doing any permanent damage to the attacker. The winner of a fight is the guy that gets to go home in one piece afterwards, but even an aggressor who instigates a fight has a family to go home to at the end of the day, too .. so we learn how to avoid first, and if we have to, diffuse a violent situation with minimal damage to everyone. Sure, someone might end up with a broken arm or at least a bruised ego, but it actually takes a LOT to escalate a situation to the point that would require a ninja to permanently maim or kill. It's this aspect of compassion and giving precedence to non-violent solutions that I think makes this art special and so appealing to me personally.

After all that, I realize I still haven't talked about Saturday's class! I'll try to keep it short and simple this time.  Basically, it was awesome. We had our own room back, for one thing.  I also learned I had been doing my stomp kicks wrong for pretty much the entire time I've been doing this.  I should have known, really .. my kicks always felt awkward to me and seemed to land with not as much power as they should. But .. now that the error has been detected and corrected, holy crap! I feel like I really could kick down a wall, or send a guy twice my size flying across a room if I had to, and with LESS strength and effort than I had been trying to use before.

Ninja with Sword
I also had what is probably my most extensive lesson on swordsmanship ever. I learned what is basically one technique (there are literally thousands), but I feel like the guy teaching me really knew his stuff and conveyed it to me in a way I won't forget. I didn't notice how long the session lasted, but it felt like hours based on the amount of information I was absorbing and the amount of perspiration dripping into my eyes. We stopped when it felt like my brain was going to explode, and that's just one technique. I have a long, long way to go before I master even that one weapon, let alone the assortment of others for which the ninja are so infamous. But, that's why this is a life-long journey and not just a phase or something to be "in to" for a while. Anyone can take a few months of any martial art and learn a few basics, but to really learn and master even the smallest fraction of what they have to offer takes a lifetime. Think of how long it would take you to walk a thousand miles if you only took one or two steps per week because that was as fast as you could physically go.

That proverbial journey of a thousand miles which begins with a single step never actually ends, nor should it. Rather it becomes a way of life - a part of your that's inextricable from the rest, nurturing and growing your spirit, with each step giving you the strength and perseverance you'll need for the next.

Thursday, October 25, 2012

The Infamous "We're Hosed" Incident

My first "real job" upon graduating college was, among other things, a lot of fun and more than a little educational. This was in 1997, which was probably one of the best years in history to have graduated with a 3.0 GPA and a BS degree in computer science. They were hiring programmers off the street back then! I'm not even kidding. I had an interview and accepted an offer to work as a contractor at General Motors before I even took my last final exam. This was the job that brought me from western New York to Michigan, and as far as life-shaping decisions go, this one was pretty big.

A Complete Tech 2 Kit
Back then, I was working on a vehicle diagnostic tool called the Tech 2. It was a small (for its time) hand-held embedded computing device that could connect to any GM vehicle's communications bus, read, analyze, and store diagnostic information in real time, as well as reprogram all of the on-board computers. We frequently tested the tool's ability to test and modify a given vehicle's fuel-to-air mixture, and detect when a sensor had gone bad (or we'd just disconnected its power), for examples.

My assignment was with the team that developed and maintained the core operating system for this tool. Our code was the first bit of code that ran in the system, bringing it from power-up to functional, and providing all the real-time scheduling and communications protocols for the rest of the more vehicle-specific stuff. It was pretty challenging stuff for a newbie fresh out of college, but I ran with it and enjoyed it a lot.

One of the challenges we faced was that we basically had a 10MB flash "hard drive" that we could only access 1MB at a time, and that flash drive was filling up fast.  Mind you, there was no file system, so we addressed the flash directly by address and used a card page register to pick which 1MB we wanted to see at any given time.  This made for some .. interesting .. code constructs, and made it necessary to copy certain  parts of the software into RAM at boot time - things like the OS's API layer, which was contained on the flash drive at an addressed specified in a look-up table that started at address 0.  You still with me?  Good.

I had written the code that would locate this API code and transfer it from the flash drive into it's designated spot in the RAM during the tool's boot-up sequence.  In the name of defensive coding, I had written a block of code to detect the absence of this file and react accordingly - by disabling all interrupts and entering an infinite loop after printing an error message in the center of the screen. My downfall was having the error message read, simply, "WE'RE HOSED."  I figured it was ok, though .. the API binary was an integral part of every release .. surely this error message would NEVER be displayed, right?  Right??

Wrong.  In fact, during the very next release cycle, the CDs that were shipped to every registered GM dealership in the WORLD were pressed without including that particular file.  As soon as a few dealers updated their Tech 2s with the new software, the calls started pouring in from around the world - Australia, South Africa, Sweden, and all over the USA, to name a few.  Everyone wanted to know what the heck does this "we're hosed" message mean, and why had their expensive diagnostic tool become nothing more than an expensive paperweight with a display proclaiming this ambiguous message to the entire world?

Needless to say, I was mortified. We quickly rushed a new release into production that not only replaced "we're hosed" with a more appropriate error message, but also made sure the API binary was included this time.  As far as I know, the more appropriate error message was never seen .. which is a good thing.

The moral of the story?  When you're coding error messages, never ever assume they won't be seen, because if you make that assumption even once, chances are that's the one time you'll be ... hosed.

Tuesday, October 16, 2012

Continuing the Journey

A few weeks ago, I wrote about re-starting my To-Shin Do training. I thought that perhaps a good way to stay motivated and keep up with my training would be to blog about it here.  So, if you keep an eye on this particular topic, you'll hopefully see an update now and then.  It's not meant to be a "brag-reel," even though it might sound like one .. it's just a way to get my thoughts out and maybe hold myself accountable.  And hey, if it manages to get one of my devoted readers interested in martial arts, that would be a nice bonus.

Anyway, the journey got off to a rough start. I was not actually able to start until last Thursday, a week after I had planned.  Tonight, I won't be attending class because I've got the Martian Death Flu or something. I hope I feel even slightly better by Saturday so I can go to class that day. Sometimes I wonder if the universe enjoys screwing with me like that when I commit to doing something that's going to be challenging anyway.

The one class I have attended so far, though, was really good!  I got a good work-out, managed to not get hurt, and even learned a few things. I was actually surprised at how much of the stuff my body just remembered to do, even though I hadn't thought about it for a couple years. We concentrated on various ways of applying a choke-hold, and getting out of one.  I was once again reminded that as physical as this art is, it is still mostly mental.  Let me explain.

As is usually the case when I'm learning something new, I screwed up the first few times I tried the technique. It felt difficult, un-natural, and ineffective. However, once my instructor pointed out what I was doing wrong and my mind was able to apprehend the science behind it and allow me to correct the mistakes, I was surprised at how physically easy it actually was!  The real challenge was not having the physical strength to brute-force something - in fact, using my strength with incorrect body positioning and alignment proved difficult and futile. The hard part was comprehending in my mind what was actually happening and how to respond to it. Once that part clicked, the technique itself became easy, natural, and yes .. very effective.


Friday, September 28, 2012

Liberty and Security

On September 11th of this year, I wrote about a terrible day my country had experienced eleven years before, and shared some of my experiences from that day.  As everyone knows, that tragedy (the attacks, not my blog post, lol) has changed this country and the world in more ways than anyone probably realizes.

For one thing, we Americans showed the world once again that we won't be kept down, we won't be oppressed, and we will not be victims anymore. The heroes of Flight 93 demonstrated that spirit on that same day, sacrificing their own lives rather than allowing themselves to become weapons against their own people in the hands of terrorists.  Since then, there has not been a single successful airline hijacking or attack that was not thwarted by other brave men and women acting in that same spirit, and I think it's a pretty safe bet there won't be for a very long time.  That ship, as they say, has sailed.

On the other hand, I remain suspicious about our government's response to the attacks, especially here at home. While I fully agreed with and supported the invasions of Afganistan and even Iraq, I have always been suspicious about the domestic responses like the so-called "Patriot Act," the creation of the DHS and TSA, etc.. I also really hate having to travel anywhere by air. So far, I have managed to avoid having my private parts groped (that's a "pat-down" for you sheeple out there) in the name of national security, but I have been forcibly irradiated on one occasion ("body-scanned").

What I am seeing in America today is the mindset that preventing another 9/11 is worth sacrificing just about anything, including our constitution and bill of rights - the very freedoms the terrorists hate us for, as we were once told. Sure, we ought to protect innocent lives. But I am one of the apparent few who believe we, the people, can do, will do, and have already done a far better job of that than our government can or should. And, we can do it without abusive random body searches, warrant-less surveillance, expensive (and completely ineffective) body scanners, and allowing ourselves to become subjects rather than citizens.  Flight 93 proved that, and those people did it without the Patriot Act or the TSA.

At this point, I only hope the trend reverses itself soon enough so that we can get back some of the liberties we've lost without having to endure the same kinds of struggles in which we won them to start with. Otherwise, by the time we're done "defending freedom," there might not be any of it left and we will have done bin Laden's (may he rust in pieces) job for him.


Thursday, September 27, 2012

Beginning the Journey .. Again

About 5 years ago, I began a journey that has changed my life more than I ever could have imagined it would. In fact, I would even go so far as to say that at one point along the way, what I had learned actually saved my life. With everything that has changed since then, I guess it's no surprise.

The journey I speak of began when I walked into a nondescript dojo in Ann Arbor, Michigan and earned my white belt in To-Shin Do, a form of Ninjutsu brought to America by Stephen K. Hayes - a martial arts legend I had never heard of until that time.  I'm not going to spend time here covering the history of the art. I've left enough keywords in this paragraph that anyone interested should be able to find whatever they want through some creative Googling.

For the first few months, the training was hard for me. This was the most athletic thing I'd ever done. I'd never played sports or exercised on a regular basis before, and initially my body was not at all happy with the change. Eventually, though, it became easier. I began to lose some weight and feel better in general, and the techniques and mindset started to become familiar, even natural. I slowly learned things about myself that amazed me as I began learning how to do things I never thought I could. What's more, I found that the techniques and mechanics of body motion I was learning didn't apply only to fighting, but to many other things as well. Moving large pieces of furniture became easier, and if I got clumsy and fell, I could roll out of it and be back on my feet without getting hurt.  The latter is an especially amazing thing for a 6 foot tall, 250 pound nerd, let me tell you!

About a year or so into my training, my personal life fell apart as I went through a bitter divorce. I won't write about the details here, but suffice it to say that the mental training I had received through To-Shin Do played a significant part in my getting through the situation with my sanity intact. I kept at it for a while, but balancing everything was now suddenly a lot more difficult.

Finally, when the divorce was finalized, I was forced to move very far away from the martial arts community I had grown to love so much.  I kept at it for a while longer, but eventually finances and the pressures of life forced me to put my training on hold.  I had just advanced to the rank of green/white when I made the decision. I was 10 belts in, and another 6 away from a black belt. That was 2 years ago.

Today, it feels like everything is different. I like most of the changes that have happened over the last 2 years, for sure. I've re-married, and we're very happy together. We have a beautiful baby girl and a decent place to live. I've changed to a much better job than I had before, and the financial situation is getting better slowly but surely.

I miss my friends and training, though, and my body certainly misses it too.  I've gained a lot of weight back, old aches and pains have returned, and I'm sure I'm no-where near as agile as I was. With all that come lots of regrets and things I wish I had done differently. Mostly, I wish I had just stuck with it. I regret making the decision to go on hiatus, even though I still feel I had no choice at the time. This all adds up to what is basically a profound sense of loss.

But .. today, in a couple hours, I plan to start over.  I'm going to a new dojo where the same art is taught, and I'm going to start training again. This time, I'm going to stay with it - especially now that I know first hand the consequences of stopping.  Still, I can't help but feel a sense of trepidation in this. It won't be the community I was used to. It won't be the same instructor or the same people .. it just won't be the same, and that worries me. I'm also about to find out just how far I've fallen off the bandwagon and how much of what I've learned I will now need to re-learn. It's not going to be pretty, and honestly, I'm worried about finding and keeping the motivation to continue at all.

What I must understand, though, is that the situation simply is what it is. The only way I'm going to change anything is to actually do something - it won't get any better if all I do is think about it and worry. I must act deliberately and with consistency. I must focus my intention and attention on what needs to be done rather than what should have or could have been done in the past. The past is done and immutable .. but the future remains to be written, and I hold the pen in my hand, trembling as I move to set it to the paper.

In To-Shin Do, we have 14 "codes of mindful action," each one corresponding to a rank above white belt. We're supposed to memorize and mediate on them, and find ways of applying each one to the way we live and think. Some, of course, are easier to internalize than others. The one that's speaking to my heart today is still a few belt levels ahead of me, but still appropriate:
"I strive to be so strong that nothing can disturb my peace of mind. I avoid the negative effects of worry, doubt, and regret." -- To-Shin Do code of mindful action #13
I'm learning that this does not imply that we are to avoid worry, doubt, and regret themselves, but rather the negative effects of those emotions. From now on, I need to avoid allowing my legitimate worries, doubts, and regrets from becoming the kind of fear that keeps me from moving forward. And if they do become fear in spite of that, I need to maintain the courage to act in spite of that fear. As has been said, courage is not the absence of fear .. courage is doing what is right despite your fears. Courage, therefore, is peace of mind in the face of worry, doubt, and regret.

Five years ago, in a moment I remember vividly, I stood in front of my friends and fellow ninjas at the end of a class. I held what will one day be my own black belt over my head, affirmed that "I will be a black belt," and began the journey of a lifetime thinking I could make it on my own.

Today, I look to my friends and family for the support and encouragement I know I will need, especially in the weeks to come, as I start that same journey once more.

Tuesday, September 11, 2012

September 11 - 11 years later

Oddly enough, I'm starting this post at 9:11 am on September 11, 2012.

As everyone undoubtedly knows, eleven years ago this very moment, the world was changing before our eyes.  Thousands of lives were lost or in the process of being lost, and we were all staring silently at television screens or the sky above in horrified disbelief.  That day was my generation's Pearl Harbor - our very own 21st century Day of Infamy.

Lit Candle, Up Close
I'm sure there will be thousands upon thousands of blog posts similar to mine today. Some will be peppered with images of the attacks themselves .. mine, however, will not. Frankly, I don't want to see it all again - it was bad enough the first time. The first image I'm going to post today is one I've used before .. a single lit candle, up close.  Today, I'm sitting in my cubicle, sipping a cup of now-lukewarm coffee and tapping away at my keyboard. Just another day at the office. Probably the same thing everyone was doing at the WTC and Pentagon 11 years and a few minutes ago.

Now, I was planning on launching into more of a political-oriented speech at this point, but I just now decided that sort of thing will be more appropriate tomorrow.  September 12 was the day the political fallout from the attack began. Today was the day America came together as a nation to stop a 4th attack, to save as many as could be saved on the ground, and to just help each other get through the rest of the day with our sanity intact. I will leave you now with the one image from that day that I feel summarizes how We, The People responded that day...
The Girl with the Flag

Sunday, August 19, 2012

My Android Journey from ICS to JB (and back)

So, the other day I decided to upgrade the ROM on my trusty old Samsung Fascinate to the latest Jelly Bean offering from the AOKP crowd.  It turns out it was quite an ordeal, so I thought I'd detail the steps I took and the mistakes I made in the hope that someone might benefit. At the very least, maybe you can learn what NOT to do.
Challenge .. accepted.

So the first thing I did was download Steve Spear's latest test ROM, dated August 12.  Then I found a JB version of the google apps package on goo.im, and figured that would be safe, so I grabbed it, too.  Steve advised me to try the Devil's 1.1.3 kernel for JB, so I downloaded that as well.

I'm currently running AOKP Milestone 6, with the devil kernel and some of Steve's custom tweaks for Fascinate. So, I reboot into the TWRP recovery that comes with that and begin my journey.

The first thing I do, naively as it turns out, is set up a queue of 3 zip files to flash (in order): the ROM, the Google Apps package, and the kernel.  TWRP is supposed to be able to handle that sort of thing, so why not?

Because the JB ROM file apparently needs to re-partition your device when you flash it, that's why not. Also, apparently TWRP doesn't handle that very well, and leaves me in a recovery boot-loop with some error message flashing a big red exclamation point for about 1/5 of a second before rebooting. Just long enough that I realize I have no hope of actually reading it to find out what it thinks is wrong.

So, I load up Odin and nuke my phone all the way back to the stock, bloated, non-rooted Verizon EH03 Gingerbread ROM. This is the firmware you folks who don't believe in rooting your phones are currently stuck with, by the way.  So I let that boot and do its thing, which is basically a way to wipe the phone clean and start over with a clean slate. Whatever craziness was introduced by my previous error is now gone.

But, so are all the custom goodies I love so very much.  More importantly, so are the Gingerbread bootloaders required by most AOSP ROMs, so now I have to power off and Odin those separately.  At this  point, my only way back to AOSP goodness is via the ancient CWM 4 recovery with the CM7 fix. This particular file should be stored in the national archives. As old  as it is, it can still solve my problems most of the time. So I load that up and try flashing the AOKP JellyBean test ROM straight from that.

Oh hey!  Success!  Great!  Now I just have to get my google apps and the devil kernel on it.  So I reboot into the CWM-based recovery and flash the Google Apps package, reboot recovery, and flash the Devil-1.1.3 kernel, then reboot the system.

This is getting old..
The system comes up, and I sign into my google account, and everything seems good.  So I proceed to restore my apps from Titanium Backup.  Well, now .. where are my apps??  Opening TiBu, I only see system apps. None of my user-installed and paid apps are backed up!  The only place they are backed up is in the nandroid backup of my Milestone 6 install I had made before starting this little adventure .. which means I have to go back to that and run another FULL backup in TiBu.

But .. since the JB ROM re-partitioned my device again, I have to un-re-partition it to move back to Milestone 6. Which means Odin the ancient CWM recovery again, flash the old THS build 2 ICS ROM and let that boot.  Now I can put any ICS rom on my phone, so I flash the Milestone 6 ROM.  Once that boots, I have to reboot into TWRP recovery from there and restore my nandroid. 

Once that is back up, I open TiBu, and do a full backup.  Still with me?  Good.

At this point, I hadn't realized that I need to flash the JB ROM in the Ancient Recovery, so I encounter another recovery loop after trying to flash it in TWRP.  This time, though, instead of going back to stock, I Odin the Ancient Recovery and use that to flash the JB ROM.  After that, use the new JB recovery to flash Google Apps and Devil kernel.

Now, I launch TiBu again and restore all my apps, but without data.  This goes well.  But I have a few apps that I really have to preserve their data, so I restore only those (there are 5 of them out of 80+).  TiBu asks me for my encryption password to access the data, so I enter it.

TiBu - Y U NO LIKE
MY PASSWORD??
It doesn't work. I think maybe I used a different one .. so I try a few more of my standard passwords thinking surely one of them must be right.  But no. TiBu refuses to decrypt my data.  So, instead of restoring from the backup, I decide to try and restore the data from the nandroid I had made. I was thinking that maybe TiBu would be smart enough to handle this in a compatible way between the two ROMs, but I was wrong.  With their important data restored, every app in question now force-closes immediately on execution.  So .. back to MS6 .. again.

Once I had fully restored the MS6 nandroid, I decided to check the apps themselves and found out how useful OI ConvertCSV is.  It allows me to export the app data to the SD card in a format that the same apps can then re-import once I have them loaded in the new ROM. This should work .. and it does.

So, now I have a nice new Jelly Bean ROM running on my ancient Fascinate, and its AWESOME. It feels much faster than ICS. No lag in the UI, even with the bloated Apex Launcher I insist on using. Everything seems perfect, like this is what Android was meant to be all along.
Accepting defeat .. this time.

.. until it randomly reboots on me twice in a matter of hours.  And did I mention that the modem dies randomly without any warning or indication?  Yeah.  I'm not trying to detract from the awesome work the guys are doing with JB, but I personally can't deal with that level of instability. I have a wife and young child at home who need to be able to contact me reliably, and my Fascinate is the primary way for that to happen.

So .. Once again, I restore to my trusty old AOKP Milestone 6 nandroid, and quietly admit that this whole process was all for nothing.  For now.  You can bet I will revisit JB once the critical errors I mentioned above are ironed out.

Wednesday, July 25, 2012

The Great Marriage Debate

With all the talk about "marriage equality" and "defending traditional marriage" and "gay marriage" and all that stuff, I figured it was time for me to think the questions through and try to come up with a reasonable solution. Of course, what I've come up with is so simple and makes so much sense that it will most likely never even be considered by anyone else...

Let me preface this with some very basic information about me.

Spiritually, I am a Christian - my beliefs would probably fall under a category I'll call "semi-liberal protestant."  With this said, however, do not make the assumption that anyone else who claims the title of Christian speaks for me. Specifically, neither the pope, nor the Roman church speak for me. Neither do Fred Phelps and his ilk. Neither does anyone who wishes to establish a Christian theocracy who isn't Jesus Himself.  In fact, I specifically and vehemently reject most of what those people teach.  My over-riding belief can be summarized in one verse from the new testament: "love the lord your God with all your heart, soul, and mind .. and love your neighbor as yourself" (Matthew 22:37-40).  Specifically, I do not believe that Christianity is about giving up vices or practicing rituals - it's about loving God and loving people.  And it certainly is not about hating people who aren't like me.  "Now these three remain: faith, hope, and love - and the greatest of these is love" (I Corinthians 13:13). See that?  Love is even greater than faith itself!  Chew on that for a while...

Politically, I am a libertarian. What this means, basically, is that as long as I'm not hurting you, leave me the hell alone. I will leave you alone, and the government should leave us both alone.  While I see the need for some laws and government, I believe that these should be limited to what is minimally necessary to ensure everyone's rights are secure.  I really like the part of the US declaration of independence that says, "We hold these truths to be self-evident, that all men are created equal, that they are endowed by their Creator with certain unalienable Rights, that among these are Life, Liberty and the pursuit of Happiness.--That to secure these rights, Governments are instituted among Men, deriving their just powers from the consent of the governed .. "  Government, therefore, is not intended to solve all of society's problems. Rather, it is to secure our God-given rights through liberty and rule of law.

What does all this mean in the context of the marriage question, then?

The fundamentalist wants to "defend marriage" through legislation enforced by the state. The liberal wants "marriage equality" enshrined in law and enforced by the state.  Basically, both sides want their religious views (or lack thereof) to become the law of the land and to be forced on people who don't hold to them.  Both sides, therefore, have it wrong.  "Congress shall make no law respecting an establishment of religion, nor prohibiting the free exercise thereof .." (US Constitution, Amendment 1)

You see, at its core, marriage is a religious institution.  Therefore, the government is not allowed to define what it means for anyone.  What I am proposing here is simple religious freedom.  Rather than pick and choose who's marriage is legitimate and who's isn't in the eyes of the state, I suggest that the state shouldn't be in the marriage business at all. Rather, let each person define what it means and practice their own religion without government sanction or interference.  If a couple desires to give legal force to their marriage vows, let them negotiate, draft, and sign a contract enforceable under contract law.

This way, the government wouldn't be compelling anyone to violate their religious sensibilities by forcing them to recognize a marriage they see as invalid, and, conversely, anyone could marry whoever they want without the government saying they can't because of someone else's beliefs.  We would all simply be free to live our lives the way we see fit.  The only people who are going to be upset about that are those misguided "Christians" and other "believers" who want to force their beliefs on everyone else .. and as a Christian, I'm completely ok with pissing those people off as much as possible.

Monday, July 23, 2012

Recent Events: Mass-Murder in Aurora, CO

Whenever I hear about horrifying events like this, I experience a fairly wide range of emotions .. heartbreak for the victims and their families, rage towards the perpetrators, the desire for justice, the thought and hope that if I am ever faced with a similar situation, I'll be able to make a positive difference in the outcome, and, more often than not, a sense of dread at how the government's seemingly inevitable attempt to prevent future occurrences will affect my personal freedom and that of my children.
My candle for the good
folks of Aurora, CO

While most of these are beyond my capacity to address in a way that is meaningful to anyone, the one thing I can do is to take certain steps to ensure that my family and I do not become helpless victims to some nut-bag like this in the future. Hopefully I can encourage others to do so as well.

So, what can we, as individuals, do to prevent things like this from happening again?  The answer is surprisingly simple:  arm ourselves.  That's right .. instead of clamoring for more restrictions on your right to keep and bear arms, exercise it. Learn how to handle and use a gun. Get a concealed carry license, and carry your gun wherever and whenever you can. Learn basic self-defense skills that don't rely on the use of firearms, too.  Learn and prepare for the day you hope will never come, and be willing and ready to act if it does. Teach your children these things, too. Learn, learn, learn! Your self-defense bag-of-tricks should be very large and very full.
My gun makes you safer - if I'm
allowed to carry it

Admittedly, there are a lot of people who will not see my logic. There are people who think that allowing people to carry concealed weapons is just asking for trouble.  There are people who think that disarming society in general would be a better solution.  I would ask those people a few simple questions:  If you were there, wouldn't you wish you had your own gun and the skills to use it?  How might the situation have turned out differently if just one of the other movie-goers that night had a gun?  How many of those victims would still be alive?

You see, guns are not the problem here. If they were, one would expect to see mass shootings happening where there are more guns - at gun shows and NRA conventions, for example. Can you imagine, just for one second, what would happen if this guy had shown up at a gun show and started shooting?  I can .. and I bet you he wouldn't have even gotten one shot off before being stopped cold in his tracks and nominated for a Darwin award!  No, instead, most of these massacres happen in places where it is already illegal for anyone to possess a gun: schools, workplaces, hospitals, et cetera.

I posit that the real reason these things happen is that there are few people left in society who are willing to take responsibility for their own protection, and too many laws restricting those remaining few.


... Efpophis

Hi, and welcome to my blog. I've been kicking around the idea of starting a blog for some time now, and today I've finally taken the proverbial plunge.  I figured the first post should serve as an introduction and provide a little background information about what you're likely to see and experience here should you decide to stick around.  Therefore, here are a few things about me in no particular order:

I'm a father of three girls. I live with my second wife and our young daughter near Detroit. My older girls live with their mom in the same general metropolitan area.  The details of that story are fairly complicated. I may cover them in another post later on if I feel so inclined.

I am a software engineer by trade, and have been doing that since 1997 - let the reader do the math. I have also been known to do software development work for fun in my spare time, recently on the Android platform. Some folks may recognize me as the guy who fixed in-call audio on the Samsung Fascinate - probably my largest source of "nerd cred," if I have any at all.  I tend to specialize in low-level embedded device drivers, but I feel like I can handle most software and computer-related tasks with relative ease .. and if I don't know something, well, that's what Google is for.

Other interests include martial arts, guns, amateur radio, politics, theology, salt water fish, science fiction, and whatever else happens to tickle my fancy.  I have, at times, seen the need to scale back on some of my hobbies and interests due to temporal and financial constraints .. so even though I don't have a salt water fish tank right now, I will still claim interest in the hobby and knowledge on the subject.

My blog is going to be moderated, and I did this because it's all but guaranteed that I will express a view that will start an argument. You are welcome to express your opposing view points, and I will publish them as long as you make a good case for them.  I'll probably follow some kind of standard debate rule, so the threads will look like this:  initial post -> opposing view -> my first rebuttal -> your rebuttal -> my last word.  Yes, I will have the last word. It's my blog, after all.