Level Headed Diatribe Against LGAT “Impact Training”
This material represents over a year's worth of reading, researching, and careful professional and personal studies in order to provide a informed, well-reasoned, educational viewpoint rather than my initial knee-jerk reaction to the topic. Presented here is my final conclusion on the matter for your review.
I run the risk of offending a number of people that I am close to with the material that I present here - both because of my assessment and opinions of the LGAT organization "Impact Training", and because I may also cite religious materials in the process. Normally I leave personal relationships out of my posts, as well as religion - this is a public forum after all, and the materials I'm likely to discuss here have nothing to do with either (it's a personal geek blog, after all). I am willing to take this risk because the alternative is to say nothing, and I find this far less palatable than being despised for standing by my scruples. I'm saying it in public in the interest of helping and inspiring others.
First up, what is this all about?
LGAT stands for "Large Group Awareness Training." It is a model of presentation whereby groups (usually large ones, hence the name) are exposed to selected materials under circumstances designed to elicit compliance and predictable responses. That "designed to elicit" part is my take on them - most of the definitions of the format include language such as "teaching simple but often overlooked wisdom" etc., which has more to do with content (and their opinion of it) than the delivery mechanism itself. More on this in a moment.
"Impact Training" is an organization operating locally in Utah as a purveyor of content using this format, which has gone on to combine its own origins with pop psych, a warped version of LDS theology, hard sales, and MLM practices in order to operate a for-profit organization for its own enjoyment and aggrandizement. It leverages several key principles of psychological manipulation to deliver its content under the guise of improving confidence, self esteem, relationships, and material success. The remainder of this article will be broken into two sections, "Method" which describes the tools of LGAT, and "Madness" covering the specific philosophies and principles of Impact Training.
Method
To best describe LGAT methods it's appropriate to pull in some primers on its history and evolution, and some principles of modern psychology and their background.
Impact Training specifically comes from an individual by the name of Hans Berger, who has been involved as a founder and controller of both Impact Training and the "Harmony Institute" here in Utah. Hans got his start with "Lifespring", which itself is an offshoot from the "Landmark Forum", which came from "est" (erhard seminars training [capitalized as branded]), which came from "Mind Dynamics", a component of "Scientology" (done with the "quotes" for now). The basic premise remains essentially unchanged from the abreactive therapies on which it was founded and are visible even now in the Dianetics that Scientology still deals in. Abreaction itself is simply a form of catharsis - the release of previously repressed emotion. This release typically takes the form of reliving events, but can be disembodied (which is to say, not linked to a specific trauma or episode) as well. The military looked at a formalized proposal for Abreactive Therapy following WWII, and concluded that though potentially effective it took too long and the results were not on par with other therapeutic techniques available at the time1.
In more modern psychology, catharsis and abreaction are occasional tools but are some distance from main line practice because of some significant drawbacks. The emotional release, while temporarily pleasing, does not absolve the original sensitizing events or traumas of their sting (repeated desensitization can be used to help, though that has more to do with controlled exposure to traumatic memory in a safe and productive environment than simple expulsion of pent-up emotion), and suffers from re-interpretation (experiencing memory in the light of the present state of mind) and false memory mechanisms (fantasy and invention, even unintentionally). Which is to say that, based on the presentation of the technique it's possible to elicit an abreactive response from an individual solely in response to the environment, without basis in any specific or even real emotional injury.
The Impact Training LGAT utilizes several techniques to produce abreactive responses to its own ends. I'll go into both the techniques in play and the intent with which it does so (which both still fall under the "Method" part of this discussion). First, the techniques.
Visualization, Guided Imagery, and Hypnosis: I myself am a practitioner of hypnosis; it's an excellent working toolset for the application of behavioral psychology at the subconscious level, and if used properly can help to re-wire aberrant or undesired manifestations of motivation (e.g., behaviors) in non-conflicting and gestalt ways very quickly (specifically through the use of the hypnoanalytic techniques developed by Milton Erickson, rather than the more commonly portrayed authoritarian or sensationalized stage versions of hypnosis). I enrolled in certification as a hypnotherapist in 2002 in light of the bad tech economy as a fallback career which was never required (I landed with Overstock and things picked up from there). To date I've only ever used its therapeutical practices on myself, to reasonable effect. In the case of Impact Training, however, the analytical approach is avoided: the specific accounts of the imagery used there indicate standard induction practices (descending darkened staircases, presentation of doors, contextualized environments, etc.) and are then followed by very selective exercises. What and who the subject encounters and the means of their interaction with the same are dictated, and while the content of that interaction is up to the subject it's predictable given the setup. It is meant to be confrontational, potentially provide some resolution, but mostly be empowering to the subject based on the transference of emotional responsibility that is the essence of the Impact Training philosophy.
The results of the repeated visualizations are reframed by the "Trainer" (I say "Trainer" in quotes as a branded(tm) title rather than an earned honorific, as the Impact Training staff are not licensed or certified by any governing body and are in fact students of the program themselves working off the volunteerism required to advance rather than credentialed therapists). Reframing is the practice of interpreting content (usually carefully selected content) according to preferred ideologies, prescribing "this is because of that" and "x is due to y" correlation to imply causation and inculcate those ideologies in the subject or other observers.
This same reframing is applied to lots of emotional responses, produced not only via the guided imagery but a host of other exercises and activities. One of the most distressing for me to learn about was the experiential reframing: an exercise where one participant discloses to another an event wherein they felt victimized, specifically a personal and meaningful such episode. After mutual disclosure from the other participant both are instructed to repeat their original story but from the vantage as though they were somehow responsible for the event themselves (this touches somewhat on the "Madness" content that will be explored in greater depth later). Having a person make such an assertion about their own experience, even if they are predisposed to discount such an assertion (and the preparatory exercises to that point do their best to reduce or eliminate such a predisposition), is tragically manipulative.
Why would a person go along with such an exercise? The key psychological tendencies which make LGAT sessions successful are that:
- People are wired to trust one another. If you are given a written statement, and told in advance that any portion of that statement written in red ink is false, you will still be influenced by it to a degree as though it were true.
- People are wired to listen to authority figures. As illustrated in the Milgram Experiment, and relied on especially heavily in LGATs via the establishment of the Absolute Authority of the Trainer (usually through overt authoritarianism and over-the-top bullying of non-compliant participants: anyone arriving late or otherwise not adhering to the strict and stressful schedule, for example, is deeply berated as a public example in front of others)
- We are influenced by the behavior of those around us. Through the use of mirror neurons which inspire observed behaviors and reactions within the observer, and the natural tendency toward conformity, it's possible to expand the affect of an exercise and its reframed response from one to many, and to use the many to reinforce and enhance the intensity of the same so it really sticks. LGAT sessions frequently have plants as well - prior participants and other accomplices placed throughout the audience who already know the anticipated response and play along (either to earn the favor of the Trainer and advance, or in order to help things progress in a controlled fashion).
- Emotions produce endorphins. Eliciting extremes of emotion causes a cocktail of endorphins to be secreted throughout the brain, as effective as if administering mind or consciousness altering drugs via syringe. The "Love Bombing" stages of LGAT depend on this, specifically the production of endogenous opiates that both block pain and create a social-bonding specific high that reinforces desired attitudes and responses and inspires a need to return to the same (behavioral/chemical addiction).
- Emotions trump rationale. There are 2 paths of analysis in the human psyche: emotional and rational. The rational is the one that says "it's unlikely that person approaching from the other direction means me harm" and it's the emotional that says, "yeah, but if they do I'm in for a world of hurt" and makes us cross the street anyway. Statistics, oddly enough, seem to act as the antidote for this by grounding the rationale in something concrete.
- Distraction induces suggestibility. The schedule of the LGAT is structured to be demanding, high-paced, and run extremely late into the night/early morning in order to keep the energy ramped up and reduce the amount of time for digestion, critical analysis, or rejection.
As to the intent of these methods then, and to finish up the line of discourse regarding abreaction, the authority figure produces dramatic and intense (intentionally dramatized and intensified) responses from participants, frames them according the the preferred ideologies, and uses the group setting to amplify the emotional response in an environment designed to make people susceptible to suggestions regarding the same. This falls under the "predictable response" and "compliance" parts of my initial description of LGATs.
Other tools in use are standard propagandist indoctrination (refer to the Institute for Propaganda Analysis, 1938), and some cultic persuasion practices: secrecy, isolation, and specialized dialog.
On the point of secrecy, attendees are counseled that they are not to reveal anything of the proceedings to those who are not also themselves participants in the program, and even then only up to the level of that participant. They are requested to sign "non-disclosure" agreements at the beginning of the sessions to reinforce this fact and provide an authoritative standard on which they can rely, and this point is hammered home with remarkable force.
This secrecy lends itself to a form of isolation - unable to discuss the nature of the experience (which, from the perspective of the participant so affected can be a subjectively remarkable experience they are eager to discuss, or an unsettling one for which they require consolation), with any other than the group or prior attendees associated with their program, sets them apart from the world (and frequently from family and friends). They must rely on the new special-status group of co-participants or the Trainers who are in a position of authority over the same.
New terminology or new definitions for existing concepts are regularly introduced and strongly reinforced, creating a specialized dialog for discussing the experiences that makes little sense to those unfamiliar with the glossary. The loaded words and phrases create an extra layer of distance between participants and the uninitiated, and are used to prop up the philosophies of the training: much the same way that experiential reframing is used to instill a particular perspective in the subject, altered dialog is used as a means of manipulating thought through manipulating language. One of the remarkable attributes of the psyche is its ability to create contiguous reality out of disparate sensation - in many ways the condition in which one finds oneself is based on an almost external level of observation: "Am I smiling? I must be happy then." Language is a part of this - the words we speak reflect attitude and belief, and if the words are altered it changes the regions of the brain in play (exciting some, suppressing others) and by association the expressed attitudes. In Impact Training, for example, "need" becomes "deserve", and all such "needs" are discussed as the things a person "deserves."
The final steps of isolation come from Love Bombing: the literal bombardment of affirmations of acceptance and even physical affection that overload the limbic system (responsible for secreting those endogenous opiates in response to positive social contact) and overwhelm rational barriers and any negative self-assessments. This exaggerated display of endearment creates a sense of belonging within the group that draws a very distinct line with what is now the "outside world" that fails to understand the participant and their budding transformation. It creates a very real chemical high and associates it with that social environment - the same one wherein any misstep concerning the schedule or authority of the Trainer results in massive public beratement. The combination of control and reward have a deep and profound effect, lasting a few weeks to a few years, though other times waning without refreshers (which is where the sales tactics come in to solicit further participation).
Though minor by comparison, there's also the very human tendency to throw good money after bad - these "courses" cost several hundred to a few thousand dollars, and people are likely to see them through in the interest that their money not be wasted, rather than cut their losses early (or ask for a refund, which results in more hard-sales tactics and stiff opposition).
These components follow the basis for all "coercive persuasion" that is the foundation of cultic indoctrination: breaking down resistance and existing psychological structures, introducing new "preferred" ideologies and doctrines, and reinforcing those into the new structures on which the subject is meant to rely (as well as working to limit threats to the same so they remain in affect). These methods produce predictable psychological and emotional responses in the vast majority of the populace - not any specific sub-group of gullible nitwits looking to sign over their concept of reality to the first authority to offer them one, but in fact just about anyone subjected to the battery. They (the methods) are specifically geared to overcome barriers and alter one's general conceptual orientation of the world, and in that goal they tend to be distressingly effective.
Madness
The specific philosophies (especially at the introductory levels of the program) of Impact Training follow the standard Mind Dynamics and other new-age empowerment paradigms. They assert not only that the unclouded mind has immeasurable potential to affect the reality around it (the literal world, not just conceptualized experience of the same), but that ultimate responsibility for the condition of one's existence is entirely up to the participant, and in fact always has been.
This assertion is both positive and negative: one can purportedly "manifest" the reality they "deserve" with the right kind of "spiritual action" (yes, the "quotes" are back), and there are special tools and abilities open only to the initiated to assist them in so doing. It also means that everything that has ever happened to an individual has somehow, consciously or otherwise, been a similar controlled "manifestation" of their own intent, even those involving external entities. All the way up to the weather they've experienced or the drunk driver who killed their family, whatever you've got: the more personal and dramatic the better. Through the indoctrination received, one supposedly inherits the ability to "choose" or "choose out" of first the influence of these events upon them, and then the events themselves as a component of the physical universe.
Beyond the simple laws of physics and conservation of energy revealing such a thing to be impossible (or so comically improbable as to not be worthy of consideration), this philosophy taken to its final conclusion would pit every individual in the world against every other individual, as well as all forces of nature both terrestrial and cosmic. Were this philosophy and its influences to be real, what would be the final arbiter of conflicting manifestations, and how could suffering exist in any form but to be the responsibility of the sufferer? It belies the compassionate humanitarianism (which is nothing at all like the humanized version of vegetarianism) that I believe is the responsibility of every member of organized society and encourages a self-centered orientation of the universe.
Impact Training, as is the standard for LGAT, uses hard sales tactics to persuade, beg, and bully participants into enrollment for successive and increasingly expensive courses. No excuse is accepted, as the tools already imparted to them will supposedly enable them to overcome any obstacles to procuring necessary funds. Any questionable fiscal wisdom or responsibility of the participant to continue is irrelevant - if they have truly accepted the doctrines as presented and are capable of genuinely committing themselves they "deserve" the continuation and can't afford to not continue. Shared pressures from the rest of the group are asserted, and those opting not to continue are either praised for their pledge to continue as resources and timing coalesce to their favor or belittled for not choosing to adhere to the path of enlightenment (though in their defense I've heard that recently the personal attacks for non-continuation have been toned down somewhat).
The Trainer at this point is usually a volunteer of the program, someone demonstrating their dedication to its efficacy by the number of recruits and continuing participants they can manifest. Any inability to effectively do so means the Trainer is simply failing in the execution of the reality-altering concepts, and needs additional training and reinforcement themselves, and any success belongs to the methods and system. This kind of self-fulfilling assertion begins in early levels of the program as participants are strongly urged to recruit family or friends to first attend closing ceremonies and then go on to enroll, with credit and advancement awarded to those successful recruiters (and in some cases "advancement" being conditional on exactly those circumstances).
The hard sales and Multi-Level Marketing style of recruitment as requirements for continuation in the pseudo-cultic program are in my opinion a horribly destructive combination: either one manages a continual stream of inductees and is heralded as a success to the program, or failures become their personal responsibility and grounds for mental and verbal abuse. Accounts of burned-out Trainers putting on the best face for the crowd as their lives fall apart (both within and without the organization) are repeatedly available online, and the responses and rebuttals from Impact Training adherents frequently resonate with double-speak and "blame the victim" tactics that quite honestly creep me out.
At advancing levels of training the overt LGAT tools are no longer necessary due to the depth of the indoctrination and reliance on the group it has created. It is here that the warped LDS theologies are introduced and used to play on LDS members' (of which there are of course a great many in Utah) beliefs as a means of turning spiritual and religious devotion into yet another mechanism of attachment to the organization. I will not repeat any of those specific assertions in public, because I do not feel they warrant repetition of any kind - I'm willing to discuss it privately with anyone (no secrecy here), I just don't ever want to be associated with the words in a public and searchable place. It is also in these levels that the highest amount of volunteer commitment to enrolling others in the program is required until one breaks into the inner circle or burns out and departs.
I have seen a few people go through the program, and I've been genuinely scared by the amount of unrighteous influence I saw exerted upon them and to which they seemingly wholeheartedly subscribed. On the LDS side of things this very much smacks of priestcraft (doctrine for sale), the "philosophies of men, mingled with scripture," and the flattery and telling of pleasing things in order to lure people away from the truth (or their beliefs, such as the case may be). Abandonment of principles and morals associated with those beliefs followed, including a complete falling away from the organization of the Church itself (which has also issued an open letter to its membership specifically targeting these kinds of organizations, but does so in the light of day).
I count myself among the rational participants of the world, and have specifically chosen my religious affiliations (and am willing to discuss this with others, including how I can use the word "rational" and "religious affiliations" in the same sentence). I claim the privilege of worshiping according to the dictates of my own conscience, and afford others the same freedom. What saddens me here is not so much that others do not share my own beliefs as it is to see a core cultural and personal/spiritual conviction undermined by con artists and hucksters for the purpose of turning a buck without regard to the potentially destructive consequences. If they believe their own schtick, I pity them. On the other hand, if they perpetrate these acts knowingly, then Gentlemen: I drop my left glove at your feet and await your response to the challenge.
Any of those of you affected by the teachings of this or other such organizations, I continue to regard you as I always have - I may be saddened by the current state of affairs and the distance it has created between us, but only because I continue to love and cherish you. Loving from across a chasm I cannot bridge yields sadness is all.
For more information I highly recommend searching around for "Impact Trainings" and "LGAT". Take the materials on both sides with a grain (or fistful) of salt and draw your own conclusions. For those open to considering direct challenges to LGAT practitioners (as opposed to those who would rather hear no such thing) I have a thoroughly bookmarked and dog-eared copy of Cults In Our Midst by Dr. Margaret Thaler Singer I'm willing to loan out (though I would like it back after it makes the rounds).
iPad Press
The iPad has garnered tons of attention before, during, and after its release. It was heavily anticipated, eagerly watched, and has created a firestorm of reviews after its announcements that range all over, but are generally whiny in some capacity or other. There is a lot about the iPad that was hoped for and that it is not delivering. Apple knows that - it also knows something else, and stated it during the keynote, that is usually lost in all of these reviews.
The biggest disconnect is coming in the form of, "this is not what I expected," and extrapolating from "I" to a broader technical market where that may not actually be the case (or skewed toward an overtly vocal minority). We'll see how the numbers actually play out when models begin shipping in 60 days or so, but chances are those who are complaining about its failings are not actually in the target demographic.
It's all well and good for me to be dismissive about the knee-jerkery of others, but can I back it up? I hope so. I'll actually start by borrowing a jab from the product's biggest detractors: it's a basically an over-sized, over-powered smart phone that can't make calls. This is largely what Apple themselves said during the unveiling (and to which I referred above): they're looking for a product need in between smart phones and laptops:
Smart Phone:
- Good battery life (compared to laptops)
- Highly portable
- Ubiquitous data accessibility
- Limited computational power
- Limited local data storage
- Limited interface
Laptop:
- Computationally capable
- Large local data storage
- Large and capable interface
- Limited battery
- Limited portability (they don't work well in all environments)
- Potential data availability issues (or at least costs)
The concepts of application availability we can largely throw out for now based on the demonstrable market forces in developing applications based on anticipated demand, as shown by app stores (iTunes being the largest, but not the only example).
So the complaints about the iPad seem based around the expectation that it was going to be everything that MacBooks or other notebooks (or even netbooks) are, and somehow fit them into a different form factor. For the most part, Apple's done that previously in the the MacBook Air: given the constraints they were shooting for (screen size, usability, battery life, and dramatically enhanced portability/nifty form factor) it's an over-powered netboo0k and/or an underpowered notebook: bigger than a netbook, not quite as useful as a full notebook due to its processing and data capacity limitations - I can't comment on the sales figures for the product line because I haven't seen them, but simple economic sense suggests that they haven't penetrated the lower-priced netbook arena where it would be able to compete in features because the price point is set around the same level as full notebooks (which in turn best its own feature set handily).
To the iPad then:
- Excellent battery life (if the 10-hour figure is to be believed)
- Good portability
- Ubiquitous data accessibility (if you go for 3G - if not, you're as constrained as netbooks w/WiFi)
- Moderate computational power (custom silicone augments the software to almost total hardware acceleration for common operations, which makes things both snappy and gentle on the power-consumption; a good move, overall)
- Large and capable interface (the usability of the on-screen keyboard in real-world situations has yet to be seen, but the first large scale multi-touch platform lends to new worlds of possibilities)
- Moderate data storage (unheard of for a smart phone, but underwhelming in notebook standards)
This hits Apple's intended mark squarely: it is between smart phones and netbooks, and addresses the market segment which needs, or could effectively use, just a little more than they get out of a smart phone, but not as much as would make them require a note/net- book. It is the convergence of the tangents along which both smart phones and netbooks have been evolving, hoping to capture the market segment suggested by that intersection rather than really competing with either and is intended to live along side both.
The smartest move though is a pricing point along the same lines (or vectors, even): this will cost a little bit more than an unlocked smart phone, and a little less than lower-end netbooks, and while I'm confident that deal-hounds will be able to best it on a dollars-for-Xflops in terms of computational capacity (and Xbytes on the reciprocal data figure), that Apple has stepped out into a new territory - it is not yet the Dream Tablet or convergent communications device of sci-fi near future, but it is a competent offering by an established technical competitor with the kind of force that they can bring to bear. In this new territory everything will be discussed in terms of how it compares to the iPad, which acts as an initial bar and corresponding litmus test. Other providers will see how this performs and respond either by avoiding or competing, including Apple, whose first forays usually miss the mark in some capacity and require a generation or two of evolution to properly adapt to the also-evolving niche that forms around it (OS X, iPod, and iPhone being excellent examples of iterative improvement).
It's definitely not for everybody, and will take a few releases or at least OS upgrades for them to figure out how to incorporate the feedback that will help to capture and refine the market. If you don't like it, don't buy one - but quit whining.*
*Except about the camera. Why on earth does this not have a camera?
Torpor 1.0
As of this morning, after extensive testing and its first production beta deployment (which did result in a few minor bug fixes), I am pleased to announce that Torpor has reached release 1.0 (slightly delayed to allow for other DataStore adapters and management of pigfluenza in the home, but close enough for open source).
Things to check out:
- Torpor distribution page on Google's Code Hosting
- TorporPHP_1.0.tar.gz archive download.
- Prior blog posts:
On the whole, everything works. Case sensitive collations under SQLite and SQL Server have issues, but mostly due to he limitations of those particular databases, and SQL Server cannot enforce DISTINCT selection when returned records include TEXT/CLOB columns (so DISTINCT is temporarily disabled in SQL Server - I've chosen to go live with the bug). All told, these are fairly minor issues when everything else works so well. All major features work in:
- MySQL
- Oracle
- SQLite
- SQL Server
An identical database has been ported to each of these database engines in turn, and the same code and same configuration XML (with minor adjustments to specify the new DataStore adapter) pass, exercise the full suite, on each. Additionally, the provided Memcache adapter allows for distributed read/write-through caching for horizontal scalability at the app layer.
All DataStore and Cache adapters use generic interfaces, and the provided code serves well as examples of working implementations. It should be possible with minimal effort to add additional DataStore components (even non-RDBMS adapters for XML, SOAP, etc.) or Cache's.
The 1.1 road map is being assembled, to include better performance through leveraging bind variables in those adapters which support it, Postgres (which will almost certainly come as an earlier component release), inferred joins and a join hint syntax, and custom reports / aggregate functions, etc. Have a suggestion? Create an issue in the project home page (same goes for bugs).
While it sounds like there's a lot to do, this is still an incredibly strong 1.0 offering especially in the PHP world (did I mention it passes E_ALL|E_STRICT error reporting?), and is being made use of professionally at the day job with excellent results.
The one lament, and this will be remedied over time, is the lack of end user documentation. I've settled on the use of TiddlyWiki as a convenient mechanism for creating, storing, and distributing the documentation with the project, and will begin adding this as time permits (though it's now in competition with other projects, so not likely to move at the same speed with which Torpor has also matured).
For now: download, use, enjoy!
Middling MIDI
About 12 years ago, while playing around with a friend's recording studio equipment, I had a chance to try out a Casio DH-100 - "DH" for "Digital Horn." Basically a small saxophone-esque MIDI controller in the Electronic Wind Instrument (EWI, pronounced EE•wee - not especially dignified) category. I was astounded at how, with the simple addition of air-pressure sensitivity, the possible range of expression increased so significantly. Furthermore, that this could be mapped through other MIDI controllers or patch banks in order to play nearly any instrument in this fashion (though not all accept the full range of expression very gracefully).
I was hooked, but couldn't do anything about it. My budget at the time was less than meager, and I had other factors of budding bachelorhood to attend to. I kept the idea in the back of my mind, every now and then checking on prices for used Yamaha WX-series wind controllers but otherwise simply sighing it off and going back to other things. I was happy enough to have our Alesis QS 8.1 keyboard which I'd been introduced to about a year after the first EWI, and which Rachelle and I bought shortly after getting married on account of A) it's cheaper than a piano, B) easier to move up and down stairs (we were living in a 3rd floor apartment), and C) can be used with headphones. At least, those were the official reasons: the prevailing one for me was the re-enactment of the classic Wayne's World "Oh yes; it will be mine..." scene I'd done when I'd first played one. That, and how much possibility was potentially held within good studio equipment for the eager practitioner.
This was our musical mainstay for nearly 10 years, through 2 apartments and into our 2nd home (where we are now). We were fortunate enough to "store" my aunt's old upright piano for a while, and enjoyed it immensely, but had to make other arrangements while we were trying to sell the house, returning it to its rightful owner who by that time had space for it. During this time, in order to keep the place in a state of perpetual showability (or within 5 minutes of), Rachelle even had to keep the keyboard stashed away, and I didn't have room to take it with me up to Washington. I did eventually make this all up to her by the way, with my "I'm so very very sorry for everything" / "welcome home" present: Her Baby Grand.
So then, we found ourselves mostly tuneless, at least of our own making, for many months while we were unwillingly separated and trying to make the best of our situations. I briefly toyed with getting the flute out of storage (packed away in Utah), but I wanted to be a good neighbor - especially in the 2nd apartment I had in Seattle, where walls/ceiling/floors were as thin as they could be and still maintain structural integrity. The keyboard still wasn't an option, since I didn't dare trust it to anyone to ship it nor could I very well bring it back with me from one of my visits, so I returned to the EWI idea after having a Homer Simpson Tom Landry's Hat moment: "I can't buy that. Only management-type guys with big salaries like me can afford things like that. [gasps] Guys like me! I'm a guy like me!"
I purchased an Akai EWI USB controller - a fairly cheap but eminently capable device, so long as you have a machine to hook it up to. Which I did, so I did, and it was. I used it to pass the time and play sad songs, practice scales, and improv along with classical music.
Now, whether or not the device is capable, it still relies on whomever is playing it to do anything worthwhile. I don't know that I pass - I would like to think so, but I know I'm still a crude amateur next to any kind of real musician. I offer a few samples below, which lose a little in translation through the tracker back through the VST filter from the original performance, but it's close enough (yes these are all me, and I'm sorry they're all me):
What's interesting is what prompted me to finally record at least a little bit of this. I have other music projects under way (and geek projects), and have been letting the EWI gather dust since shortly after I returned from Seattle, but upon hearing yet another phenomenal cello performance in the background track of something or other wondered to myself... "How much does a cello cost, anyway?" And have found myself once again bit by another instrument bug (there are more than just these 3, too). The thought has even crossed my mind of making a steampunk style electric cello myself, in order to have something to play and practice extensively without offending others (works well with headphones), because steampunk is fun even if it is getting a little too close to mainstream, and because it would be musical and geeky at the same time. I'd even make an interchangeable fingerboard, one with and one without frets, in order to support different styles of performance (or lever-actuated retractable frets, but imagination needs to give way to reality in terms of practical implementation sometimes).
I whipped out the EWI, set the VST to cello, and started playing that instead. Maybe someday...
Weight Reduction
This post is about my personal challenges with weight, and managing it in light of a metabolic disorder. None of it is meant to be self indulgent or congratulatory, and I promise there are some geeky bits near the end for those patient enough to wade through the content or who want to skip to the end. Sorry for being boring, but not for being me. On with the story:
Back in the day I could have been considered a "bean pole." I was highly athletic, and though moderately muscular any of the definition was overshadowed by being wiry (though I eventually outgrew the designation "gangly," thank heavens). This is back when I could afford to be so physically active, and before the effects of the McArdle's disease steadily clamped down on the stamina. More importantly, it's when I was also getting sufficient rest to compensate for the effects of the activity I pursued regardless.
I got married, and gained the requisite 10-15 lbs. that generally comes with it, simply due to a change in lifestyle - eating more frequently, and in the company of others on a schedule of well prepared food rather than "when it suits me" and consisting of "whatever's around." Even with that gain though I was smack in the middle of the Healthy band of the BMI (though individual results vary depending on body type, I'm fortunate to be a good match for the algorithmic archetype). That weight stayed steady for another year.
Then: The Desk Job. In the interest of advancing my career and furthering the capabilities and savings of our family, I changed from the more free-form telecommuting gig to one that met those requirements but also required standard office attendance. I have no issue with the work, or with good work ethic, but I had been liberally making use of the telecommute arrangement to rest as necessary in order to recover from the day's strain. With the desk job, that luxury was forfeit. Ignorant of the specific nature of my disorder at the time, I didn't realize how disastrous this would be.
Seated at the console, plugging away on the code (Object Pascal cum Delphi RAD environment for MS IIS ISAPI filters on the MetaStorm e•Work product) I found myself wearied as usual, but unable to deal with it. I compensated by being exceptionally stubborn, and when that fell short, supplemented with anything available to increase my blood sugar (I was also drinking a lot of water, which I attributed to the poor transition from Washington's temperate and moist environment to the Utah dessert two years before - but probably only half of what I now know would be required. Whatever the case, whenever Rachelle called I seemed to be in the bathroom). This latter strategy came with predictable side effects, and in the course of five months I put on some 40 pounds.
The rapidity of weight gain was certainly off-putting and distressing, especially as the combined weight of the entire supplemental caloric intake during this time didn't seem to be adequate to account for the change. I did my best to stabilize and cut back on the snacks, suffering through the stupor instead, and plunging into another round of medical inquiry to find out why I was so tired so I could hopefully do something other than eat to manage energy levels - these of course were ineffectual. Later, changes in jobs, the production of very very cute children, and general demands of the conditions of life slowly edged the weight upward until finally peaking at about 250 lbs. (113kg), at the same time that the last vestiges of regular physical activity (Kishindo martial arts) feel by the wayside.
I was frustrated, to say the least, but also largely to blame - by putting myself and my needs very last, I was doing myself this dramatic (and visible) harm until it interfered with my ability to continue to serve my family. I was so bogged down, waking up exhausted (and frequently nauseous), barely pushing through the day, and repeating. Minor gains in understanding, not necessarily of my condition but my reaction to it, gave me some latitude for correction and over the course of about 2-3 years managed to move from 250 back down to about 220.
The most recent improvements have come from a very complete comprehension of the condition and my situation. The management strategy I'm pursuing now allows me to walk that thin line between capacity and injury, and to retain cognizance throughout even the long days (with few exceptions). Combined with that, I've been able to leverage the inability to utilize stored glucose energy to maximize natural ketosis (the same condition the Atkins and other low-carb diets attempt to induce artificially) and consume stored lipids instead - this time without the crippling side effects causing near-comatose stupor. This means that from the first day of the diet I've been able to realize dramatic results, as detailed below:
The weight log starts in late January, testing out the Wii Fit I'd gotten the family for Christmas (but was unable to play with myself, having been separated from them). Return visits to the family explain the infrequent initial measurements, followed by my more permanent return in lat March. Throughout April and May I was completing my research into the effects and side effects of McArdle's before finally establishing the current regimen. This failed to produce any effects on the weight though, so I sought out the advice of my buddy Joel - the most successful dieter I've ever seen. Over the course of a year his appearance completely changed, to the point that when we were re-united for a get-together I recognized his wife, and wondered who the heck was with her. Thus was born the references to the "Sexy Sexy Joel Diet" (as the diet belonging to and responsible for Sexy Sexy Joel, as opposed to the old Joel).
His secret? Has nothing to do with all of those "By following these X simple rules!!1!" ads that are all over the internet, nor with fad products, "cleansing," etc. He wasn't even exercising - just following the old Weight Watchers™ formula for calculating caloric intake in terms of points (calories / 50 + ( grams of fat / 12 ) - ( min{ grams of fiber, 4 } / 5 ) ) and his allowance for consuming them. Using a calculator and log on his iPhone he followed the simple principles over time to great effect.
I adopted the same pattern, and am pleased to report that, per the graph above, have dropped 32 lbs. in the course of just over 3 months. At this rate I have another month and a half or so to meet my long term goals, after which I can settle into a maintenance pattern. Looking at the trend line it's very slowly leveling out. It also has that cyclical up-tick I'm at a loss to explain - though I also admit that I haven't gone into an in-depth analysis for them yet, as they are inconsequential to the average / long view.
For the geekiest bits: the point system, whatever its failings, works. In order to make sure all measurements are taken consistently, they've all been done within the same hour of the day, in the same general outfit (light sweats, t-shirt), immediately following my carefully metered exercise (metered to avoid undue metabolic or toxic distress) in the morning before any kind of intake. This does mean that I've artificially skewed the measurement to the lowest point in a day's fluctuation, but given that I'm moving 10-15 lbs. of water though my system throughout the course of a day it makes sense to take a low baseline, since the peak water retention will fluctuate unpredictably (or according to parameters and timings I'd rather than make explicable by mapping when there's an easier solution). Doing it the same way every day is what makes the biggest difference in collecting the samples, which allow me to apply a general trend analysis instead of a specific margin of error per day. All measurements have been taken on the Wii Fit in order to keep the analysis consistent and to provide a log of the output as well, which I have carefully transcribed and reproduced above using Perl's GD::Graph module.
I have several other observations as a result of the experience, mostly regarding psychology and sociological trends, which I'll save for another time. For now I'm excited for the day when I can stabilize enough to buy new pants (which I'd rather only do once, an account of being a cheapskate). Also, while it's true that I may have an unfair advantage due to the super-charged ketosis, Joel's experience demonstrates the viability of the approach without such an inside track (a track, I might add, that is not worth the side effects if it can be avoided).
Bon (pétit) apétit!
Zend Devzone PHP Abstract Podcast: Torpor
Recently I had the pleasure of being interviewed by Eli White of Zend, "The PHP Company," for the Devzone podcast PHP Abstract (by and for PHP developers). The topic of discussion was Torpor, what it is, what it offers, and why it's being developed.
Despite my rambling on there's some useful information to be found - hardly all inclusive, but it should stand on its own as an introduction to the level of forethought that's gone into an undertaking of this complexity.
The ~20 minute recording posted today - go check out Episode 46!
Torpor 0.9β Released!
The 0.9 beta release of Torpor (all major features work, but only in MySQL and there's some definite clean-up and organization to be done) is available now:
TorporPHP_0.9b.tar.gz (via Google project hosting)
I also need to correct a statement I made earlier during the introduction of Torpor - this is not the first mature persistence layer abstraction. I've come across others (turns out the buzz word for googling is "PHP ORM", not "PHP persistence abstraction") since I delved into this foray in the first place, though I can say I'm not especially impressed. I can also say that Torpor easily stands on its own among these, with its philosophies fitting an appropriate niche and providing some of its own innovations (especially the intermediate cache interface and the complexity of the intrinsic deep-loading and relationship introspection).
Those feeling adventurous, enjoy!
Those without the cycles to spare, 1.0 should be available in 3-4 weeks, enabling additional database interfaces and cleaning things up. Between 0.9b and 1.0 there may be some minor changes in naming conventions, but overall structure will remain the same. Much documentation will be forthcoming as well.
Good luck, and good night!
Torpor
Torpor
Pronunciation: \ˈtôr-pər\
Definition:
- Temporary or short-term hibernation, characterized physiological activity.
- The first mature persistence layer abstraction for PHP, provided by Yours Truly under the MIT license.
Link: torpor-php (via Google Project Hosting)
The name is a direct take off of Hibernate since it provides very similar functionality for Object Relational Mapping. It is not, however, a port, emulation, reimplementation, or imitation of it or any other specific ORM/Persistence abstraction out there. This is all new code from the ground up, with the project started in the last half of July 2009.
The premise is simple: having written a significant amount of database-centric code over the years, in a variety of environments and in several different development languages, I have come to understand what I feel are the basic features every good database abstraction should have in order to be genuinely useful. I have very frequently been without those features, and spent a great deal of time re-implementing and refining them in each of the different environments in play.
By doing this so many times over I have realized that, for a well defined (preferably 3rd-normal) schema, the feature set can be deterministically derived. In order to test that theory, and potentially save myself an inordinate amount of tedium and re-invention in the current employment-selected language, I have written Torpor (though not until after thorough examination of other potential offerings, which I found to be thoroughly lacking and usually tied to other larger frameworks which most certainly did not meet my needs).
There are a few features left to do before the code will be packaged for distribution under the 0.9β release, which should be available in the next 1-2 weeks. This beta release will be for MySQL only, and while it's been coded with PHP 5.1.0 in mind I can't guarantee full compatibility with less than 5.2.8 (have not yet tested it with the target prior version). SQLite and Oracle adapters won't be far behind, but Oracle probably won't be making use of the OCI bind variables yet - though this is definitely planned for a later release
Features in a nutshell:
- Configuration is controlled via straightforward XML (produced in large part by a helper script).
- Objects have rich accessor and mutator interfaces with just-in-time fetching and optionally selective publishing.
- Objects are capable of acting as intelligent factories for other related objects (and sets of objects), allowing for simple and powerful code for navigating from one portion of a database to another (intrinsic deep-loading, even in data engines lacking explicit support for foreign key relationships).
- Full support for associating related un-published objects, with optional (on by default) cascading publish of dependent objects (deep-saving) - useful for those tables whose primary keys are generated on publish.
- Full support for multi-column keys, multiple unique keys (with or without multiple columns), and multiple reference relationships between similar object types (e.g., a User may act as both a Seller and a Customer on an Order and be accessed as each in turn).
- Extension of provided primitives is supported and encouraged, with event-based call-back hooks and a hierarchical overload/override scheme that's easy to configure.
- Custom SQL support for Load, Publish (optionally differentiated by insert vs. update), Delete, including stored procedures and pseudo-bind variables (SQL placeholders filled by order of occurrence and/or named variables).
- Criteria based select, optionally using arbitrarily nested AND/OR collections and a rich set of criteria types and controls (including custom SQL) with support for automatic joins to related tables.
- Intermediate read/write -through caching interface support (can be used in distributed network based cache settings, such as memcache, for nearly-free lateral scalability).
- Fully extensible and customizable.
That's a pretty big nutshell, and it's not anywhere near complete. There are just a couple gaps between this list and the current revision (no. svn:35 as of this writing) on both sides: a few features which need better testing and a little internal wiring, and some features provided but not listed. Eventually the full user documentation will fill in the gaps, but so far this list and the actual available feature set have a > 90% overlap.
Implementation example snippet:
// Singleton context; support for instance-context
// and automatic config loading also available.
Torpor()->initialize( "myconfig.xml" );
$user = Torpor()->getUserById( 12345 );
$orderHistory = $user->getOrderSet();
foreach( $orderHistory as $order ){ /* ... */ }
$order = $user->newOrder();
$order->setSeller( Torpor()->getUserById( 54321 ) );
// OR $order->setSellerId( $user->getUserId() ), etc.
$order->setPurchaseDate( date() );
$product = Torpor()->newProduct();
$product->setName( 'Something Pink' );
$product->setUnitPrice( 49.95 );
$orderItem = $order->newOrderItem();
$orderItem->setProduct( $product );
// causes $product->publish(), $order->publish() cascade:
$orderItem->publish();
Code is available now via Google's project hosting: Torpor: Persistence Abstraction for PHP
Feel free to poke around, make contributions, revisions, remarks (snide or otherwise), and generally check it out. The official beta release will be announced here with great fanfare and tremendous sighs of relief, followed shortly by the tension of worrying whether it's good enough and trying to polish user-docs.
Update (2009-08-28 09:16)
Torpor has been submitted as a potential topic of discussion for the Utah Open Source Conference 2009, October 8th-10th! This is a rather late submission, so your votes will count to help get this one on the board!
From The Wrong Side of the Condensor
This is a horrible picture, because I didn't bother with setting up the right kind of lighting and/or moving the specimen to better conditions. As a result, the tungsten filament light was refracted through the side of the ornamented glass pitcher, resulting in the bands visible here (correcting for tungsten is easy - uneven lighting, not so much).
Informationally speaking it's a rather rich photograph, and a fairly intriguing accidental science experiment. The more I think about it the more I'd love to have a good lab setup, for proper handling and chemical analysis - they're making rapid improvements to the "lab on a chip" configurations for field work that I hope to eventually benefit from. Until then I can't really justify the expense of my curiosity. Not even when there's Science to do.
Credit Card Fraud Redux
Once again, I've found myself the target of credit card fraud, and once again it had absolutely nothing to do with our activities as cardholders. Not sure how they got the card number this time, probably from a weak link in the processing chain at a miscellaneous vendor.
What's interesting though was the savvy shown by the fraudster - instead of shooting for the moon with $3,500 in jewelry, there were only 2 relatively modest charges: $1 at iTunes, ostensibly to test the validity of the information on hand (in talking to others to whom this has happened in recent memory, iTunes has been the unwitting accomplice as the verification service in those cases as well), then on to ~$230 in wireless charges and hour and a half later, which, if they were smart, went into equipment and prepaid services rather than traceable account goods.
Also unlike the first time, the credit card company did not catch this one with their normal fraud watch. It was left to me, the consumer, to catch the abuse when reviewing my account.
The moral of this story? Check your accounts, and check them often - the customer service numbers are open 24x7.
Anybody interested in a legitimate looking credit card number to test their MOD10 algorithms with can use 4768 0001 9098 5014. I wouldn't recommend trying it out online though, as the card in question was cancelled a week ago and the number is most certainly on The List.
Cheers!

