Pages

    Wednesday, December 30, 2009

    Social Media: Capturing Knowledge in a Self-Organized Way

    It's the early 80s and you sit at your terminal with a stack of papers, a document holder and a keyboard. Your mission: Enter as many of the paper forms into the terminal as possible. Exciting work, isn't it?

    The problem is that this is not an inaccurate way to view data entry today. Granted, a lot of the brute force work has been done and legacy systems exist from which to pull data. Further, the forms are now entered directly into the system as opposed to copied from paper, but as regards entering novel data the situation has changed little.

    The other major problem is that this type of raw entry, which is generally entering data into a form, only captures defined phenomena. The data that is being entered, especially into a form, is often classified and defined in advance. There is no elasticity to what can be captured.

    This is problematic in that you must have a clear picture of what you are capturing in advance. For hard problems and complex situations you very rarely know much, if anything, in advance. If your only valid form of capturing data is via traditional predefined methods, such as forms, then your ability to capture data, and eventually knowledge, is vastly compromised.

    This revelation is nothing new, of course. People have been trying to innovate data entry and knowledge capture for several decades. But, what other types of data can be captured and how?

    The Army is asking this exact question, if indirectly. In reading several SBIRs the concept of capturing the knowledge inherent in soldiers heads is coming to the forefront. It is being recognized that not only do experts have valid perspectives and answers, the boots on the ground do, as well (keep in mind, this is probably not a new perspective in the military, but is one that I have seen in several SBIRs recently). Beyond that, though, they are starting to explore how to bring that knowledge into existing systems.

    The how of this is a serious question. Computer systems today are clearly defined and generally purposeful to a single end. Human thought, on the other hand, is often multi-purposed and the field of understanding human thinking (philosophy) has been around for as long as humans and has yet to reach one shared conclusion on how we think. Even if we could get some Matrix-like data jack implanted into soldiers heads could we really transfer the knowledge as it is represented inside their brains into a computer system?

    Perhaps we need another way of gathering data since it would seem that direct access to the human mind would avail us little. There is a new(-ish) movement which is providing an answer: social media.

    Probably one of the most useful aspects of social media is how important and interesting knowledge percolates to the top. This is done in various ways. For instance, if I see an interesting tweet on Twitter, I will retweet it. If I read something worthwhile on Facebook, I may comment on it or repost it. It's this interaction with the content that causes the interesting bits to rise to the top.

    The exciting thing, at least from a systems perspective, is that this is self-organizing behavior. It is through the interaction of the components of the system (here, the components are the people) that the interesting bits are being obtained. While it may be difficult to capture human thought and knowledge in its native form, it's not as difficult to capture the important pieces as they are being defined by the social system already.

    Further, the nature of social media, in that it tends to interact in bite-sized, discrete pieces, means that the computer system needs not have much understanding of what it is capturing at all. The knowledge is already distilled into its core component, often with attribution, and the computer system merely need remember it. It can be stored without pre-defined labels and fields.

    The thing which the computer system must crucially provide is a robust search capability. Whether this search capability is enacted after the fact, or whether there is a component of the system which searches as knowledge comes in is immaterial. As long as the system can search through the knowledge is what's important.

    Eventually, this captured knowledge can be used and reused as more people interact with it. Each interaction would in essence refine the knowledge, making it more useful to the computer system and the people in general.

    Friday, November 27, 2009

    Toys R Us - Minutes to Midnight


    Linkin Park's song "Minutes to Midnight" would have been a fitting accompaniment as Dalynn and I were preparing to rush in to the Virginia Beach Toys R Us tonight at the stroke of 12 am. My heart was pumping and I was curious as to whether or not I would have to do battle to get through the door and claim our spoils.

    Yes, Dalynn and I went to a midnight Black Friday event at Toys R Us, and boy, was it something!

    Waiting in line was an event all in itself and quite festive. There were a ton of teenagers in line, all waiting to secure their $199 iTouch 8GB with a $50 gift card attached. There were a lot of parents mine and Dalynn's ages. There were also plenty of people missing teeth. Quite an eclectic crowd.

    And the smoke! Seemed like every 5th person was puffing away, one after the other. I've never been outside and felt like I was in a pool hall before.

    Then the line started to move and in we went! It was a bit like going over the drop on a roller coaster. As we rolled through the front entrance we realized that the line actually wrapped completely around the building, back to the front entrance. This is basically a strip mall, the line was ginormous!

    I did not, in fact, have to do battle to claim my spoils. Being prepared to wait was more the order of the day. We waited in line outside (see above) from 10:45 til 12, then waited in line inside the store (see below) as people piled up trying to get to one thing or the other. The biggest traffic jam occurred at the electronics station and it backed traffic up to the front of the store.

    The layout of the store was completely insane. Imagine the main aisles of a Toys R Us being turned into one-way streets and you might have a good approximation of what it was like. Everyone was funneled in the same direction, with people branching out to claim a prize then merging back in to the main flow. And nothing was moving quickly. You basically had one chance to grab what you wanted and then hunt for the checkout.

    And hunting for checkout was the truth! Once you had claimed your spoils you had to venture against the flow of traffic, back to the middle of the store. The exact middle. From there a line ran out to the front of the store where you could pay for your spoils. I've never seen a bigger cluster in my life!

    We made it out, having paid half of what we would have, to see that a rain storm had passed while we were inside. The line still wrapped around the building and people were soddenly and vainly hoping to make it inside for the real deals.

    It was actually really fun! I imagine that we might do it again.

    Wednesday, November 25, 2009

    Shifts in Perspective - Addiction

    Addiction is an insidious thing. It worms and weasels its way in, altering how someone thinks. Because so much of it is taking place in the mind it is often not apparent to the one that is addicted how their perspective, how they see things, has been altered.

    Though I am no expert here, simply having been a passenger on this boat, I see that there are two ways in which something can be addicting: physical and mental. I don't intend to address the physical portion here, but by physical I mean the way in which the body gets used to, and consequently needs, the addicting substance. It is a physiological response with physiological repercussions. Anyone who has attempted to quit smoking will have experienced physical addiction and withdrawal. The physical portion of an addiction is often most apparent to the addicted individual.

    The mental aspect of addiction is often not realized until much later, if at all. As I sank deeper and deeper into my addiction I was unaware of what the substance was doing to me. I was not cognizant of the aggression and moodiness, the anti-social behavior, the sheer arrogance that I was exhibiting. Those that were around me saw it writ boldly and clearly, especially Dalynn, but these changes were happening to my mind. How I thought was being changed, I was completely unaware of the changes because I couldn't see them, it was as if I was blind to them.

    Imagine, if you will, that your ability to see a color, let's say green, is changing over time. There's no one time you can point to where you can say "Here I can see green, there I can not", it just goes over time. After a while, you can be looking at green and not know it is there, or not realize that that gray color you see is actually green. So it is with addiction. Your mental self-image changes over time and you become blind to all of the changes that are taking place within you. Some of this blindness is due to your obsession with whatever you're addicted to, some of it is due to the changes that are taking place in your mind as you start to think differently. After a while, you just lose the ability to tell that anything at all has changed.

    Except, there are some times where you are shocked back into a realization that something is wrong. Times of misery, times of hurt, times where you suddenly wonder how you came to this terrible, lonely place. It is during these times that a shift in perspective, how you see the world and yourself, can take place.

    Truth be told for many it will probably take countless times of misery to drive home the point that something is wrong! I know it did for me. It took losing my family as Dalynn left me and took Cole with her, due to her fear of me, to drive home to me that something was wrong. But, even that wasn't enough! I had to suffer through endless days of loneliness and contemplation of the unimaginable before I realized how perversely my mind had been altered, to see how shockingly my thoughts were warped. It was like looking in a mirror after thousands of days without seeing myself and finding a wretched, wan reflection of who I thought I was.

    These are times of shifts in perspective. These are saving moments, when reality can reassert itself. These are horrible moments that the Lord in all His mercy lets us experience. The worst thing that can be done for an addict is to save them from the consequences they have inflicted on themselves!

    A shift in perspective need not always be a horrible thing, though it often is. It need only be a life-altering thing (as if those come along all that often). The birth of a child, for instance. During these times I think we all can step away from ourselves and introspect on to what we are, but for the addict, this time can lead to realization.

    Seeing what I had become gave me the will to fight the addiction and ultimately conquer it. Self-realization, looking in a mirror, did for me what my wife had been praying so diligently for. That led me down the road to breaking the addiction and then recovering my life, piece by piece, that has brought me to where I am today. By no means complete, but in a much better place.

    Had someone stepped in during that time and attempted to "rescue" me, I doubt I would be recovered today. Had I not been able to partake of the consequences of my actions I don't believe I would have ever changed. It is a terrible thing, but then again, so is addiction.

    Wednesday, November 11, 2009

    Two Years of Cancer


    November 12, 2009 marks the second anniversary of Cole's diagnosis of ALL (leukemia). In light of this Dalynn and I have spent the last several days preparing to post an update for this momentous yet silent event. In that time, we have spent many hours looking through pictures we have taken over the last two years. The effect it has had on me, personally, is profound.

    It's amazing what you remember, and how you remember it. I don't remember Cole as looking sick. I remember him much as I see him now, vibrant, alive, talkative and energetic. In my memories, I place the Cole of now back into the settings that we were in back then. Cole chatting away in a hospital bed, hooked up to an IV. Cole, picking at food and talking to me on Christmas day.

    The reality, especially of those first few months, is very different and much grimmer. My little boy was so sick. He was swollen to near-unrecognizability from steroids. He was so weak. He talked very little and had to have help to eat. His legs were mere sticks and if he could walk at all it was with a pitiful gait, dragging his legs almost behind him. I cannot believe that I lived through that time and have forgotten so much of the detail.

    But, perhaps, it is that same forgetfulness that is a blessing. I remember that things were hard, I remember that it pushed me to my breaking point, but it's a bit like remembering facts. Oh, it has left an indelible mark on my soul, I have been forever changed by this tangle with cancer. But I don't remember these events in crystal clear detail, and thank the Lord for that.

    Cole has fought long, and he has fought hard. As I have said, marrying the images of the Cole of then with the Cole of now is almost impossible, and oh, how thankful I am for that. For, you see, Cole is more than winning this fight, he is thriving in the midst of it. He is facing it with an indomitable spirit that does not even recognize that the option of surrender exists. I can see in his actions a heart that will continue to strive for life regardless of what the circumstances say. In looking back at these pictures I am amazed by what an inspiration my little boy is.

    I was telling a friend the other day that I am hopeful that Cole will remember his fight. I hope that he always carries with him the realization that if he can overcome this heinous demon he can overcome anything. So much better for him to draw strength from this later in life than for him to forget.

    Yet, at the same time, I can also say I hope he does forget. I hope he forgets the pain, the suffering, the terrible days of misery. I hope that he can continue to live life as a normal little boy, vibrant and fully certain of the safety and continuance of life. It would be terrible for cancer to have taken away his sense of security in his childhood. So many children lose that so young, how much better if my boy is not one of them.

    For all of my hopes and aspirations, though, I must leave them, and indeed Cole, in the hands of the Lord. God will shape Cole and mold him as he grows older, into a "big boy", into an adolescent and finally into a man. I can only pray that the Lord will allow me to instill in him the values and character that will see him in good steading later in life. As a fallible man, one who is so utterly human and ultimately inconsistent I know that it will be the Lord that shapes and molds Cole, not I. Let Him make of him what He will.

    Please join us on this wonderful day in saying a prayer of thanksgiving for the gift of Cole's life that the Lord has given to us. I cannot remember what life felt like before him and I hope that I never have to experience life without him. He is truly a blessed boy and I am a blessed father.

    Join with us in thanking the Lord for all the good that has come out of cancer. We are a stronger, tighter family than ever before. We are each individually stronger. We have a reference on what tough times truly are and the certainty that we will make it through the tough times ahead. Most of all, pray with us that the Lord will use this to His glory, to carve a path straight to Him. What better way could Cole's illness serve the world?

    Tuesday, November 10, 2009

    Git vs. SVN (I know, right, another one?!?!)

    I've been endeavoring to set up a code repository (or even a document repository, if that need should arise) and have been weighing the merits of both Git and SVN.

    At the very heart of the comparisons lies the manner in which Git and SVN operate. SVN is a central repository. When you "checkout" a file in SVN, you get only the most recent version. Should you need to do backwards comparisons you must communicate with the server for this. You get no history, either. SVN relies on the availability of the central repository to operate.

    Git, on the other hand, is fully distributed. There is generally a "blessed repository" from which everyone will start and ultimately commit to, but when you "clone" that repository you get a full copy of it. Backing up a Git repository with many contributors is actually trivial as there are countless copies of that repository floating around.

    Branching

    Another major difference revolves around branching. In Git, branching is a way of life (as is the subsequent merging of branches). You want to develop a new feature? Branch on your local box and work on it there, then merge it back into your local main repository before committing back to the blessed repository.

    This is not so in SVN. Branching is not done as often (nor as easily). Branching must occur in the central repository and is not a way of life. In this area Git outshines SVN.

    Client Tools

    One area where Git does not outshine SVN is in the client tools. SVN has been around forever (in digital terms). There are very elegant clients for SVN (such as TortoiseSVN) which allow for an incredible ease of use when working with repositories. Further, most modern IDEs have SVN repository manipulation as a core capability. There are several options for working with SVN in Eclipse, for instance, one of which is core to Eclipse itself.

    Git, on the other hand, is young. The tools out there are not nearly as elegant nor are they as wide-spread. What's worse, Git is incredibly Linux centered. There are two Windows clients for Git (with the advent of JGit, that will climb to three), all of which require one to work with the command line. Some GUI projects, such as TortoiseGit, are in the works but will not be ready for prime-time for a while. The last issue here is that there is only limited integration with IDEs. With time, these situations will change, but for now it is a major draw-back to adoption by those other than the most determined.

    Ease of Setup

    To the end that I would like to work with both systems I decided to set up both on our Windows Server 2003 server. I chose to use Cygwin and OpenSSH, along with Gitosis (a Perl mod for Git), for Git. I used Shannon Cornish's tutorial to set things up (along with a little help from scie.nti.st on matters Gitosis). This turned out to be a rather easy and relatively painless way to go about things.

    The basic gist is that you install Git when you install Cygwin then install and setup OpenSSH (by far the most difficult part). At this point you can connect to the server using SSH and clone any repository you would like. Installing Gitosis on top of things (recursively using Git, no less, which is so cool in my book) allows you to use public/private key pairs to authenticate users. You can then use Git to clone the control repository of Gitosis and admin the system remotely. Very elegant and one which doesn't require the anticipated user to have to input a password or create an account on the server.

    Setting up SVN was more difficult. The differences, though, are myriad. While the above Git scheme works on SSH the method I chose to use for SVN works over HTTP/HTTPS, which has advantages all of its own. I worked off of several tutorials, but the most significant was this tutorial.

    The real difficult part here is that you have to rely on Apache. It seems a bit overkill to have to install Apache and get it running in order to serve up your repository, but this is the accepted way of doing things. Once you have it running you must still log into the server to create a username/password combo for any user that wants to use the system, and you must also log in to the server in order to administer the repository.

    The Best of Both Worlds

    I have to say that the thing which gets me most excited about Git is the notion of branching it carries with it. I really like the thought of creating a local branch for every new feature. It seems natural to me.

    On the other hand, I don't think that I want to saddle everyone else around me with command line tools and vi if they want to work with our repositories. So, can a compromise be made?

    In fact, it can! Git has the wonderful ability to clone and commit to SVN repositories. The real details are outlined here by Clinton R. Nixon. In this way, I can take the pain of the command line on myself without foisting it on anyone else, but I also get all of the wonderful features Git brings with it.

    Conclusion

    In light of all of this, we will be hosting our repositories using SVN. However, I will be keeping an eye towards the maturity of the Git clients. If they should ever advance to the level where any "power user" can attain them, then we very well might switch.

    Wednesday, October 7, 2009

    A Thought on Environments: Portability

    My friend asked me yesterday what I thought of the Kindle. My response was that I was a fan of actually holding a book, feeling the paper, reading in a full fidelity mode. I spoke of how tired my eyes could become from reading on a screen all day. I made a decent case for not adopting the Kindle.

    Then, on a whim, I checked out the Kindle app for the iPhone and immediately found myself sucked in.

    The first thing that did it was the free availability of a book that we have all been discussing here at the office, Bertrand Russell's "The Problems of Philosophy". Turns out that it is a "classic" and Amazon offers many of the classics for free. I have now downloaded 10 free classics for my iPhone Kindle app and am well on my way to finding book reading Nirvana.

    Free content put the hook in my mouth, but what set it was the concept of WhisperSync. WhisperSync is a service that Amazon offers which will sync your content between devices. Now, this is not just the raw content, this is the detailed content, the state content.

    For instance, let's say that I am on page 50 of "The Problems of Philosophy" on my iPhone. Further, let us say that I have a Kindle at home on which I do the bulk of my reading. As I read on the iPhone, the Kindle app updates the state for that book. When I get home and fire up my (physical) Kindle my place in the book comes right up (in computer terms, the state is restored). No futzing around with finding my place, everything is just magically the same.

    This got me thinking about the synchronicity of environments. In our research the environment you work in is of paramount importance. That environment can be unique to you, or you can share it with others. Everyone can have their own, if necessary. The environment is at least partially reflected in software.

    One thing Dr. Sousa-Poza and I talk about a lot is the ability to "save" environments. Environments should be transportable and shareable. If you need to see what I see then you should be able to load up a copy of my environment, see things just as I see them with the data I've been using. What's more, your environment should be able to subsume my environment! Environments should be nestable yet discrete.

    WhisperSync brings an interesting possibility to my mind. Shouldn't the environmental changes that I enact on one device translate to another device? What if I access my environment from my iPhone and then switch to my laptop or a web browser? Shouldn't the environment be exactly the same?

    This necessitates two things: A place of storage (centralized or decentralized, makes no difference) that all environments have in common and the ability to capture state.

    Ideally, the system would operate like this (from the 10,000 foot view):

    1. I access my environment and make some change to its state.
    2. That change is transmitted to the "server" which keeps track of environment state. ("server" is in quotations as a means to capture an idea. It need not be an actual server. It might be better to think of it as a state oracle)
    3. I switch to a different device.
    4. As I start up my environment on the new device the state is restored from the "server".
    5. I continue my work.
    Such a system would be truly powerful from a portability standpoint. I could do my work wherever I needed to be and have that work mirrored wherever I go. I could work from multiple devices and not lose a thing.

    Wednesday, September 2, 2009

    Movies Movies!

    Here are some videos of the boys from our trip. Both videos are from the hotel room.

    First off, here is Logan singing a Jesus song. Whenever I pull out my guitar and ask him what he wants to hear, he yells "Jesus". I don't really know what song he means, so I generally play one of my Dad's, which seems to satisfy him.



    Next, we have Cole performing a series of "gig moves". Gig moves were coined by Cole and Doug White together one evening. Cole was showing off his dance moves to Doug, and Doug responded by showing off his own dance moves. Somewhere in all of that, "gig move" was born.

    Cole's signature gig move is one hand on the ground, one hand in the air above his back. Here, you see a "new" gig move. Cole seems quite satisfied with himself, I have to say, and well he should!

    Wednesday, August 26, 2009

    True Determination

    Sometimes you know someone that lives through something that redefines for you what a word means. I had one of those experiences this week.

    A friend of mine, Nerissa, had to have a c-section with her first child. Her son was breach and wasn't budging. Nerissa had been completely prepared to do natural childbirth, having gone through classes to help her and her husband, Anthony, get ready. They were very disappointed when things didn't work out as planned.

    After their son was born, there were some nursing complications. Namely, their son could not latch on. Nerissa was determined, though, to do what was best for her child. She decided to syringe feed her son. She syringe fed him for 4 weeks while she attempted to teach him how to latch on. After 4 weeks of nursing failure, she shifted to sometimes bottle feeding her son pumped milk and sometimes syringing him. All the while she went about the painful process of trying to teach her son how to latch on. After 12 weeks of this, her son finally overcame his complications and was able to latch on.

    Fast forward the clock 2 years and Nerissa is pregnant again. Once again, she and Anthony are preparing to have a natural child birth, though this time Nerissa is categorized as higher risk VBAC. They had been preparing with the same material as last time and had literally been studying up. They were ready.

    Nerissa entered pre-labor on Friday (8-21-09). Due to the discomfort of labor, she was not able to sleep as her labor progressed. She went into active labor on Sunday, when she was admitted to the hospital. All this time she had very little rest.

    Upon entering the hospital, she was not allowed to eat and could only drink in sips. At this point, Nerissa was exhausted form all of the work that she had been doing, but she was only 3.5 cm dilated (where a woman needs to be close to 10 to deliver). She decided to continue on, however, in order to do what was best for her baby. She was so exhausted that she agreed to take some medicine for pain, in order to help her get some rest.

    She continued on, finally receiving a low-grade epidural so that she could sleep again on Monday night. Come Tuesday morning they broke her water in order to help her progress further, faster.

    By Tuesday afternoon the decision to deliver vaginally was taken from her hands, however, when she spiked a fever. Alas, Nerissa was wheeled into an operating room for her second c-section.

    My family and I were intimately involved with Nerissa's latest attempt to deliver, with Dalynn helping Nerissa and Anthony in the delivery room. I even got a chance to contribute by keeping their oldest son one night so the whole family could be at the hospital. They tried and tried, striving to continue where many others would have given up.

    Nerissa's latest attempt to deliver, combined with her struggles to nurse her first son, have really re-defined for me what the word determination means. In my mind determination was a thing of short time. It was OK to give up once you had said you tried.

    I don't believe I'll be able to take that stance anymore. Now, determination will forever be a thing of striving til there is no option left, til you either succeed or the opportunity is completely closed in your face. That kind of determination boggles my mind, and I feel truly blessed to have my perspective changed by Nerissa.

    I am happy to report that the c-section went well and that both baby and mother are recovering nicely. Their latest son is as healthy as can be and momma is already up and about. I do wish that Nerissa could have succeeded in her goal of delivering naturally, but I am so impressed that she persisted as long as she did. That's true determination.

    Sunday, August 23, 2009

    Vacation Day 9: Water Parks and Arcades

    Wednesday morning we ventured out to a water park called "Wild Water and Wheels". It's one of those combo parks with go-carts and bumper boats attached. Cole especially loved it. Logan had to warm up to it as the water in the kiddie pools were a little deep for him, but he eventually did just that. The neat thing about this park is that it had at least 3 kiddie pools with different things in them. We spent time in each, but the boys had the most fun in the pool that had a kiddie slide attached. We all played and played and played til the melt-downs started happening. We trucked it back home and had lunch, then put the kids down for naps.

    That afternoon we headed south of Myrtle Beach and went to Garden City. I have to admit, this turned out to be the pleasant surprise of the trip. We at first attempted to go to a place called "Crabby Mike's". It's a calabash seafood bar. It, however, was packed. We veered off and went instead to a Ryan's Steakhouse.

    It's been a long time since I've been to a Ryan's and I have to say that we will probably be going back. The food was good and the people were so nice. It's a buffet style setup so you can eat til you drop. I got a decent sirloin steak along with some other tasty sides and the boys enjoyed the food they ate. Dalynn, who is on some dietary restrictions due to nursing and her gall bladder, was able to eat her fill since there was such a variety. All in all, we all came away from Ryan's very happy.

    After that, we headed in to Garden City proper. Garden City is a quaint little beach village that is so typical of small beach towns. It's just far enough away from Myrtle that it's not built up and you can find some real gems there. One of those gems is where we were headed: The Garden City Pavilion.

    The Garden City Pavilion is an arcade with an attached grill. It's open air and the night was very comfortable. What really sets it apart, though, is that the employees are incredibly friendly. It's not the over-solicitous friendliness you find in a lot of places, it was the good, honest friendliness that you can often find in small towns. The boys each got $5 worth of tokens and they played skee ball and a bazillion other games for tickets. Cole actually surprised me by bringing in 50 tickets with one token on a game I tried to dissuade him from playing!

    The boys managed to cobble together 148 tickets and spending their tickets on loot was just an absolute blast. I used to work in an arcade, so they are near and dear to my heart and watching my boys spend their tickets with wild abandon was really a great thing for me and is something I relished.

    After the tickets were spent we bounced over to the grill for some ice cream. There again we found a wonderful woman who was so friendly. The boys and I each got a big ol' scoop of ice cream on a cone and we ate with zest. Dalynn got a smoothie, but the ice cream was better! We really, truly had a great time in Garden City and I would love to go back some day.

    As with everything on our trip, the water park, Ryan's and Garden City Pavilion were all provided due to Jason's House. Such an amazing time.

    Tuesday, August 18, 2009

    Vacatoin Day 8: Mirror Mirror

    We spent the morning in the lazy river and on the beach. It's amazing what long naps the boys are taking, it's like they're exhausted when they get in from the morning... Logan has been consistently taking 3.5 hour naps since we've been here, and Cole is pushing 3 consistently.

    Of course, I say consistently but we've only been here in Myrtle Beach for 4 days now. It seems much, much longer than that. There is so much to do here! It simply boggles the mind. I wish that we could come back for this when our kids are older, it would be so much more fulfilling. As it is we are still packing in every adventure we can, but when you have to be home by around 8 and when there's a 3 hour block taken out for naps, you're kind of limited to what you can do.

    The real adventure came this afternoon. After naps we headed out to Angelo's Steak and Pasta for a pasta buffet (once again, provided by Jason's House). It was good, but man, the kids were cranked up! I felt bad for the 2 couples sitting behind us and there were a few times where I was a tad embarrassed. Angelo's is a slightly upscale restaurant. Even Ava was getting in on the action, adding in periodic squeals and yells.

    With dinner down we headed to the strip! Street performers and little hole-in-the-wall shops and people crammed cheek-by-jowl. There were a lot of people there.

    Parking proved to be a challenge and boy, did I get lead like a lamb to the slaughter into this one. I was following the parking signs and made a "wrong" turn down a little alley. There, at the end, stood the gnarliest and most grizzled old coot I think I've ever seen wearing a yellow shirt and jeans and waving me on into a parking lot. I'm sure his name was something like Hank (pardon to all the Hanks out there). A little hand painted sign proclaimed "All day parking" for a two row dirt lot. I stopped and asked him how much, to which he pointed and said "He'll tell you."

    He was pointing to his counter-part. Where Hank was rail-thin, this other guy, who we'll call Bubba (pardon to all Bubbas out there) was overly portly, wearing a sweat-soaked grey shirt and shorts. Now, in all of this, I didn't notice the hook that they had put in my mouth. I meekly rolled our van into the slot that Bubba was standing next to, rolled down my window and asked "How much?"

    Bubba, looking all the world like a man who is being reasonable and even kind, replied "Ten dollars." If the man had been within biting distance I just might have bit him! Ten freaking dollars?!?! But, alas, I had taken the bait, our van was parked and my wife (bless her heart) thought it was OK to be taken advantage of in this manner. I think she said something like, "We don't have to pay for the Mirror Maze, we can afford to get ripped off this time."

    Resigning all dignity and manhood, I pulled my children out of the car, made my payment to Bubba, waved to Hank, and walked on to the evenings entertainment.

    That entertainment was Ripley's Mirror Maze! The picture today is from that same spot. Now, imagine with me: A dark room, cold as ice (and blessedly wonderful after the 90+ degree heat outside), 3D glasses and lots of neon light strips and mirrors. The room was layed out in a large group of triangles. A mirror (or glass) could be placed in a slot in the floor but the slot was there regardless. You would think that walking around in a bunch of mirrors would be easy, I mean, don't walk into yourself, right?

    Man, you couldn't be more wrong! Since the mirrors aren't dead-on facing you, you're often getting an image of the corridor to the side of you. At one point I almost walked into a mirror thinking Dalynn was in front of me, only to hear her at the last instant behind me to the right. What's worse, some of the slots are filled with just glass! Every time you had to step through one of the triangle sides you have this sensation like you're about to walk headlong into a sliding glass door.

    Cole thought it was the coolest thing ever. Logan, on the other hand, got about half-way through and started signing, "All done!" frantically. It was really completely disorienting and I imagine that for a 2 year old, with a more literal sense of the world, that's a very disturbing thing. Logan was ecstatic to get to the end and didn't want to go back in whereas Cole and I went back through 2 more times. It got easier the more you did it. You developed a sense of the space around you, it was quite strange.

    After that, we moseyed on over to the Ripley's Believe It or Not museum. Did you know that Ripley's got its start as a clearing house for freak shows? I found that out tonight. As did Cole. Do you know what kind of imagination Cole has? At one point we stepped on a pressure plate and a mummy coffin flew open and made a whooshing sound like a big-rig's brakes releasing. Cole bolted! He headed back the way we had come and I had to chase him down in the room we had been in last and drag him physically back through the mummy room. When we hit the same pressure plate again he started screaming.

    Do you know what my precious wife did? She laughed. Hysterically. For a long time.

    We hustled through that museum after that, only stopping in a room that spun on it's horizontal axis. It left you with the impression that you, and not the room, were spinning. Cole didn't appreciate that very much. I had to carry both Cole and Logan through the rest of the museum after that.

    Now, Ripleys ain't run by a bunch of dummies, and I got a true sense of that tonight. The exit through the aquarium (also a Ripley's establishment) was through the gift shop. Did I mention that we didn't make it out without purchasing these awful guns that light up and make lots of noises (see the attached picture)? Well this freak show museum exited through an arcade. Do you know how hard it is to get a couple of toddlers out of an arcade without spending any money? It's impossible! So, we played ski ball and the like and someone donated us all of their tickets. We got the boys the typical junk that arcades are known for and headed home.

    All in all, a very good day!

    Monday, August 17, 2009

    Vacatoin Days 6 and 7

    First, today. We had a great day. This morning we went to Ripley's Aquarium (of "Ripley's Believe it or Not" fame). It was really, really cool and the boys had a blast. They have an aquarium tunnel that takes you on a moving walkway through a shark tank, which is just way too cool. Cole got a little frightened part way through but was all right by the time we left it.

    Next we headed over to Hard Rock Cafe to celebrate Logan's 2nd birthday. It was the perfect place to take Logan. He loves drums and guitars and they were in serious evidence there. He kept wanting to play the drums that they have hanging on the walls and he kept asking me to play the guitars they have there. They also brought him up in front of everyone and announced it was his birthday and had the whole restaurant scream "Happy Birthday!" to him. He loved every minute.

    We came home for an extended nap and then headed out to the indoor water area at the hotel next door to us. Cole loved the lazy river (which I have been hyping for a while) and Logan even went so far as to swim in the lazy river without me holding on to him (both boys have swimmies they swim with). It was a fun afternoon. Then, pizza, a little play, and bed.

    So, let's talk about yesterday, which was traumatic and almost a vacation killer. Let me set the stage.

    Our hotel is called "Holiday Sands". I don't know if it is associated with Holiday Inn, but that is the impression I received. We called about our room and the amenities and were told our room was a 2 bedroom with a kitchenette. We were also told that there were numerous pools and a lazy river on premises.

    Now, the last hotel I stayed in was a Holiday Inn, and it was new and nice. Dalynn has also recently traveled and she had a similar experience. All of this is to say that we were expecting a new and modern building and room.

    What we now have is a 30 year old building. This, in and of itself, is not a problem. It did lead to some disappointment on our part, though. I'm simply being transparent in order to set the stage and I am not at all ungrateful for what Jason's House has given us. What almost killed our vacation was the condition of the first room we were shown.

    It was filthy. There was hair all over the bathroom floor, it smelled of smoke and someone had been shaking and exploding soda cans on the ceiling. The balcony smelled like an ashtray and the carpet was in pitiful condition.

    We called the front desk as well as Jason's House and someone was sent up to clean, but it was too little, too late. Jason's House was told that there were no other rooms available and that we would have to make due. We decided to leave and head back to Wilmington. I was going to make a couple trips down to Myrtle Beach with the boys to do some of the attractions but we were going to cut our vacation short.

    Thank the Lord for the foresight and kindheartedness of Jason's House. They had put together a bag of toys for the boys. I put the bag on the floor and told them to go at it and Dalynn and I talked. We decided to take everyone down to the front desk and see what the management could do.

    Management came up with another room which we found acceptable. Thus, did we stay.

    Now, the layout of the room has lead to some comedy on the part of Dalynn and I. The entire suite is two rooms with a kitchenette and bathroom splitting them. There are no doors! There are only accordion sliders. We have put the boys in the larger of the two rooms and Ava in the smaller, in hopes that one waking up and fussing will not wake everyone.

    This has lead to the quite comical situation that when the kids are asleep Dalynn and I stand in the bathroom with the door shut to talk. We spent 45 minutes there this afternoon during nap time! It really is something to behold.

    In light of that our days are starting and ending with the kids' sleep schedule. So, it's early nights and early mornings.

    Seems that my typing is bothering both boys, so I'm going to call it a night.

    Saturday, August 15, 2009

    Vacation Day 4: Fishin'

    Cole and Logan really had a good time all day. We spent the morning with Ma' Fuller. Ma Fuller's house is not, how do you say, kid friendly? She has tons of little extremely breakable nick-knacks and keeping toddler hands off of them can be a disturbingly mind-assaulting task. I came prepared and herded the boys out into the back yard with some balls. We eventually ended up on the side porch and rolled/tossed the balls back and forth. It was actually a pleasant time, despite my misgivings of how I was going to entertain them. Thank God for toys!

    From there we went to Boomie's for some fishin'! We took a quick detour down to Wrightsville beach to visit a Wings and Trolly Stop, then we piled out onto the pier to the very end on the floating dock. I was videoing with one hand and attempting to keep all of my children on the dock with the other . There were a ton of boats in the water towing skiers and this made the dock bob. All told the boys were bouncing around like a bunch of druken' sailors.




    The expedition started slowly, but after a bit the boys both showed hot hands, bringing in numerous fish! Cole brought in a "rare" fish called something like a "Papanou". Other than that it was all pinfish (the type of fish Cole is reeling in in the video).

    Upon commencement of melt-downs we headed home and the boys slept til about 4, which is way later than they normally do. The rest of the afternoon was spent in the pool and then we went on to dinner at a nice seafood restaurant.

    All in all, it was a great day!

    Friday, August 14, 2009

    Vacation: Day 3

    Wow, what a day.

    The day started off bright and early as always at 6:30 am. I did get a little extra sleep, after we got the boys up and rolling, but we were all ready to roll by 7:30. It was on to the beach ASAP despite the rain and overcast. The boys were able to work out their fear of the water and after a couple hours Cole, Logan, Gary and I were all bouncing in and out of the waves on the shore. I actually had to start restraining the boys from going in too deep.

    With that we moved on to the pool where Cole honed his swimmie skills and Logan got used to wearing his. We swam for about an hour and then headed in for some lunch. My brother Todd showed up and so we all had some lunch.

    About 12 Logan was ready to drop and asked to go to bed, which is always so cute. "Bed. Me. Bed." Todd left shortly thereafter and Cole went down at 1. Dalynn and I grabbed a quick siesta and then Ava was up.

    From that point on, the day went a little crazy. I took Ava so Dalynn could take a shower. Ava and I woke Cole up after he'd been down for about 45 minutes. Cole was up and he, Ava and I then woke up Logan. So, no one really got a sufficient nap!

    I took the boys to the park and then we all piled into the van to go to a birthday party for some family friends. We went down to Wrightsville beach and the boys played, and played, and played, and played, and... Holy cow, we ran and ran til they were ready to drop. We left the beach at their normal bed time.

    We all got home, they got rinsed off and now their in bed. I have a good salad to eat. Man, I'm tired. I wonder if all of this vacation will be this exhausting? If it is, it'll be fine and we'll have an awesome time.

    Wednesday, August 12, 2009

    On the Road

    Today we left for our week and a half family vacation. This will be the first real family vacation we've ever taken. I'm quite excited and am ready to kick my feet up a little bit and do what relaxing I can with 3 children under the age of 4.

    On the right you'll see a picture of what the back of our van looked like before we left. If you can believe it we had the middle of the van completely full, too! As one friend asked, "Was there room for the kids?" Yes, on the roof. Some full coverage face masks and they were good to go. Cole wouldn't have abided bugs in the teeth...

    We headed south towards the Port City! We had a stop-off in Washington, NC to see Grammy for about an hour, and then we headed on down to Wilmington, NC to spend several days with Granddaddy Gary and Gradma Ira.

    The really cool part of our trip comes Sunday, though (not that half a week spent on the beach of Wilmington isn't cool). We have been blessed with a trip by an organization and ministry called Jason's House. Jason's House is in the business of giving week long trips to Myrtle Beach to the families of children with cancer.

    We're being put up in a Holiday Sands on the beach with a ton of amenities. We'll be given a stack of coupons for food and attractions as well as some cash to even things out. We're being put up for a week. To say we're stoked is an understatement.

    I'll be keeping you updated throughout our

    Monday, August 10, 2009

    An Analyst's Development Environment


    Here in the land of academic research we're working with a "new" take on mashups. It seems like a no-brainer to me but a lot of people have expressed interest and surprise when I explain to them what we're doing. For now let's call it an analyst's development environment (ADE).

    One thing that mashups are really, really good at is taking disparate data sources and allowing "momentary" relationships in the sources to be created. This in effect creates a new data source that is a fusion of the inputs. As is often the case in fusions, this new source tends to be more than just the sum of the parts. You often come up with new views on the data as you add extra sources.

    Most people stop here at the fusion stage. Once they have the new view onto the data they rely on other tools outside the scope of a mashup to do interesting things. They might pipe that data into a tool such as Fusion Charts in order to visualize it or they might pipe it into an analysis tool such as a model or sim. But, why do they need to leave the scope of the mashup to do this? What if that analysis or the creation of the Fusion Charts XML was an automated part of the mashup itself?

    Mashups deal with web services primarily (though there are some nifty products out there that allow you to mash more than just web services). A web service is usually considered to be a data source. But, in practice they are much more than that. Consider all of the specialized web services provided by Google for geolocation or Amazon for looking up aspects of books. The simplest example I can give you is Google's web service which converts an address to a lat and long pair (called geocoding). With these in mind let's take a different look at web services. Let's look at them as processing units.

    A processing unit has 3 criteria: it takes input; does something interesting with that input; and provides output. Processing units are the basis of modern programming. They're known as methods, functions, procedures, etc. depending on context. We can most often build bigger processing units from simpler units.

    Web services fit these 3 criteria handily. You can easily provide input, they can easily do something interesting with that input and then just as easily provide output. All communication is done in a standardized protocol driven environment.

    The interesting thing about web services is that we can string them together (with the right tools) rather easily into processes. That's exactly what we're doing here. Each web service is either a data source or a processing unit. Given the ability to ferry data from one web service to the next (in an easy way) it is possible to create mashups that do more than just mash data. They actually do some form of processing.

    Consider what it would be like if you had a web service endpoint attached to a model? You could pre-mash your data from various sources then run it all through the model and create a new output that would be very interesting. It would be so easy.

    Using Presto we recently put together a demo which worked along these lines. It made our demo come together in several weeks rather than over several months. We used Presto to access databases then ferried that data (in XML format) into a custom built web service that took said data and ran XSL transforms on it. That produced Fusion Charts XML which we then piped into our presentation layer for visualization. It was easy.

    Here is a diagram of what the actual flow of the mashup was.

    Here is a screen shot of the actual chart produced by the generated Fusion Charts XML.


    An ADE would work in a similar way. Using provided tools which allow for ferrying of data from one endpoint to another and given a grab-bag of analysis and transformation web services an analyst could create some amazing things with little effort or technical know-how. The only developer support would be in the creation of any custom web services. It could be a very powerful tool.

    Wednesday, July 22, 2009

    The Walled Garden

    Let me hereby declare that I love my iPhone. It is useful and wonderful and keeps me connected all the time. I have been using it in lieu of my computer at home for quite some time now. I write emails on it, craft witty 140 character tweets on a regular basis, listen to books on iPod and even play extremely enjoyable games. It is a great experience.

    I have, however, begun to chafe under the strictures placed on my iPhone by both AT&T and Apple (often in conjunction with each other).

    My gripes against AT&T are especially aggravating. I pay them enough money as it is for the privilege of using my iPhone, why do I need to pay them even more in order to use my iPhone as a modem? It does not seem fair that I will have to shell out an additional $30/month to do what is freely available on other, older and less capable smart phones.

    What's worse, if AT&T sees an app as competitive to it's business model, it will limit that app, or flat out deny it! Consider Skype: Skype offers free calls over the Internet to other Skype users, yet AT&T will not allow Skype to make calls over its 3G or Edge networks. They pull the undue competition card.

    On the Apple front, a nifty app came to my attention recently that I thought was a truly innovative and awesome use of the iPhone. Given an iPhone 3GS (with its video capabilities, compass and GPS) an "Augmented Reality" app has been developed called TwitARound.

    TwitARound looks at the tweets from Twitter in your area and plots them on a map. The AR part, though, comes when you hold your phone up. The app takes your GPS position and your bearing from the compass and lays the tweet on the screen. So, as you move in a circle with your iPhone in front of your face, you can see the actual locations on your iPhone of the tweets as they would appear if the tweets were layered over real life. It's quite awesome and I would like to see more apps like this.

    However, because TwitARound accesses APIs which Apple has not, but should have, made public, it cannot be published in the iTunes store.

    Apple plays the non-public API card too much. For instance, they did not make their "find my phone" APIs public so that they could charge you a monthly fee through mobileMe. There are already jailbroken apps which can do this, but since they didn't make the APIs public, you won't see legitimate apps show up in the app store.

    Call me naive or non-business-savvy, but all of this seems like bad business to me. As a consumer, I want freedom. It's my device, I should be able to do with it as I choose.

    So, while I love my iPhone, I chafe. Yes, I chafe.

    Update: (on 7/29/09)

    First off, it turns out that Apple will release the video camera APIs with iPhone OS 3.1 (per Ars here). Yay for Apple on this one. It's good to see that some of the "hidden" functionality is being exposed. Now, let's see if they expose the "find my phone" API or if they milk it for more money.

    Secondly, the app denial shenanigans continue. In a story here (also on Ars) it appears that all apps relating to Google Voice are being pulled and any apps which feature Google Voice are being denied. The scuttlebutt is that AT&T is pulling the strings here. Some disagree, but my vote goes towards AT&T.

    The Dark Side of Twitter

    I've seen a very interesting phenomenon going on in the Twitter-verse recently. It has brought to my attention that Twitter (and micro-blogging in general) can be used for reasons that are not above-board. What, pray-tell, is this dark and nefarious phenomenon?

    I keep getting followed by prostitutes.

    The first time it happened I just thought it was some random individual with a sick sense of self. However, the next day, another woman of the same ilk followed me, and the next day another. That's when I started getting curious (not about what the women offered, but about what was really going on).

    Invariably, they all posted a provocative picture of a woman with at least one post which was anywhere from lewd to slightly suggestive. That post would have a link attached. The link takes you to some triple-X "dating" service. Within a couple of days the account is shut down (you get the "Nothing to see here, move along" message when you try to visit the account).

    No doubt, for some reason I am not aware of my twitter user name has been picked up by this "dating" service and they keep following me with fake accounts, all in vain hopes of promoting their "service". It's all at least partly automated, it has to be, and there's probably one person sitting behind a desk creating profiles then running those profiles through some tool they had custom made to follow a few thousand people.

    The practice, though, really brings questions to my mind about what twitter can't be used for. If it can be used for prostitute marketing, why not black-market marketing or subversive political marketing? Why even marketing at all? I once had the privilege of speaking with an individual that detailed how an anarchist group used Twitter to attempt to disrupt the RNC in Colorado.

    Of course, far from being upset by all of this I tend to think of this as rather ingenious. What uses can Twitter serve? What's the most creative use any of you have seen?

    Monday, June 1, 2009

    Nothing Left to Do...


    There is a girl going through treatment with Cole named Lauren Cootes. As hard a path as we've had to walk, it pales in comparison with what Lauren and her family have had to endure. Lauren is 17, almost 18, and in her senior year of high school. She has ALL, just like Cole, but has been in the "first" stages of treatment for a year solid. In comparison, it took Cole 5 months to make it through delayed intensification, whereas Lauren has been in treatment since Mother's Day of '08 and is still not through delayed intensification.

    If there is a side effect, Lauren has suffered from it. And I do mean suffered. Most recently she has been in the hospital with a blood infection that was very serious and very dangerous. I had the privilege of talking with her last night and she commented that she was in pain. Last time I had talked with her (a few weeks ago) she was in pain. I asked if it had lightened up at all, and she responded, "I'm always in pain, I'm just getting used to it."

    And yet, whenever I picture Lauren in my mind I see her sweet smile. It's a tired smile and sometimes it's a little worn, but she always has a genuine smile.

    Last night, while I was thinking about Lauren's latest encounter with the demons of cancer, I realized that Lauren's smile epitomizes something that we (my family and I) have been experiencing for quite some time. When everything has gone wrong, when you just can't catch a break, when nothing seems to even remotely be going your way, then you have nothing left to do... But live.

    I think that's the amazing thing about living in cancer land. We see people who, day after day, are dealt the worst hand possible, yet they continue to play the game. Not only that, they continue to play the game with a smile on their faces.

    Our struggle, and these people, people like Lauren, have made this scripture real to me:

    Ephesians 6:13

    Therefore put on the full armor of God, so that when the day of evil comes, you may be able to stand your ground, and after you have done everything, to stand.

    We all have nothing left to do but live (or stand).

    Join with Dalynn and I in prayer for Lauren and her family. They desperately need a break, a respite, anything. They have been hit so hard, so fast, for so long that I truly believe that it's becoming their normal. No one should have to live like that.

    Pray with us that Lauren's sweet smile will stay on her lips and pray with us that her family will be bolstered and strengthened. Pray with us that they will have some time of rest and peace, some time where it's not in and out of the hospital. Pray with us that Lauren will be able to fully enjoy her first year at college and get to live life in the dorms. They need it, and by God, they deserve it.

    Thursday, May 28, 2009

    A Plea for Help

    First, a quick update. Cole is doing well. He feels great and we have had no low blood sugars. Cole is now back on 6MP and another of his chemos, methotrexate. The plan is that he will receive his usual dose of steroids and vincristine this coming Tuesday. So, things are getting back on track.

    The big news, the normalcy changing news, is that the decision has been made on how to treat Cole's fungal infection going forward. He will be getting an older anti-fungal called Ambisome (brand)/amphotericin (generic) which is very effective in treating aspergillosis (the fungal infection which Cole is believed to have). The side effects are mainly infusion toxicity (which he can be pre-medicated against) and renal damage/failure (which can be monitored). As Dr. Owen said, it is not a matter of "if" he has some kidney damage, it is a matter of "when" and to what degree. They will be monitoring him very closely.

    What makes it normalcy changing is that amphotericin can only be given by IV infusion and it must be given at the hospital in order to monitor for the two major side effects. This will necessitate Cole being at the hospital twice a week for the foreseeable future (Tuesdays and Fridays). It also means that he will be accessed (via his port) from Tuesday to Friday. Given the stricture that we are not allowed to bring our children to clinic with us, we will now need child care for Logan and Ava on most Tuesdays and Fridays.

    We are asking our church family and immediate friends for help with this. If we can find 6 to 8 volunteers then we can arrange it so that no one person will watch Logan and Ava more than once a month. This is obviously a lot to ask, and we do not ask it lightly, but we really have very little choice. So far, we have had 3 awesome folks offer to help us out, so if we can get 3 more, we will hit what we consider our minimum.

    If you would like to help, please contact me via email or this blog.

    Wednesday, May 20, 2009

    Faith Stretched Thin

    My faith is stretched thin. There is very little of it left, to be frankly honest. God often seems far away, if he seems there at all. I constantly feel futility when I pray and therefor do very little of it. Having a live, vibrant faith right now is daunting and nigh on impossible.

    It would be so easy, right here, right now, to throw away the faith that I have been given as a gift since it seems of such little use. After all, does something that seems of no immediate value have worth? Quite honestly, I almost did decide to throw away my faith, so frustrated was I.

    I did not and will not, however. I have decided to hang on to my belief and pray that the Lord strengthens it. "Lord, I believe, but help my unbelief!" Up til this point, I had never realized that faith, and being a follower of Christ, is as much, if not more so, a decision as it is anything else. When we are hard pressed, when we are beaten down, when God seems so far away, then is the time to decide to continue to follow him. It is such a blessing that even though he seems far away to us, we have an innate immediacy to him. He may seem far from us, but we are never far from him.

    Here's an update.

    We were discharged a week ago and sent home on no chemo and no anti-fungals. Cole has felt awesome for the last few days and is now behaving as any normal and extremely talkative 3 year old. Gone are his constant belly pains and we have had no repeat low blood sugars.

    The doctors are pretty certain that the low blood sugars were a result of the 6MP (mercaptapurine). Last Friday, we started back on them, but at a half dose. As well, we altered the time he is getting them. Previously, Cole would get his 6MP just before bed, and would not eat again til he woke up. Now, he can have a snack right after he wakes up from his nap (normally around 3) and will then get his 6MP at 5. We then eat dinner at 6 (there are food restrictions in giving 6MP).

    We check his blood sugar in the morning when he wakes up and every night at 3AM. So far his blood sugars have been no lower than 71, which is awesome.

    The really big thing on the horizon right now is how to continue to treat Cole's fungal infection. Our infectious disease doctor has bluntly stated that we need to have an outside consult, if not several. Cole's case is "complex and difficult" (I cannot tell you how sick I am of hearing that) and our doctor would feel more comfortable if there were more than one doctor in on his treatment. Currently, none of the treatments for his fungal infection are very palatable and we're going to be seeking that second opinion.

    Please pray for wisdom for all of Cole's doctors and that we find a good alternative to treat Cole's fungal infection.

    Sunday, May 10, 2009

    Jedi Mind Powers!

    I want to take a moment to thank our families.  Since we've been in the hospital this time, we have painted and redecorated two rooms, taken down a huge oak in our backyard, power-washed our house and swing set, sent Dalynn on a mom's night out and dedicated our two youngest children at church.  We had most of this planned for the near future, if not this weekend just past, and so we had my mom, Susie (aka:  "Grammy" or "The Gramminator") and Dalynn's dad, Gary (aka: "Granddaddy Gary" or "Great Day Granddaddy") on tap to come on up under the auspices of seeing their grand-children dedicated.

    Now, in all honesty, I was planning on doing the painting and curtain hanging, contrary to popular belief by He-Who-Did-All-the-Work (Gary), but it seems like whenever there's painting to be done around our house, Gary does the bulk of it.  I still haven't quite figured out how that works out, but I suspect it's some form of latent Jedi mind power on my part.

    Then there's the Grammy-Granddaddy effect to be taken into account.  When the two of them end up in our house at the same time it becomes this mad dash to see who can accomplish the most in the shortest amount of time.  One thing Dalynn and I have definitely noted is that if one of them arrives before the other, they immediately attempt to do all of the laundry before the other shows up.  Gary was the first to arrive this time (by a full two days).  He took that opportunity to put painting on hold and spend several hours catching all of the laundry up (he is a laundry machine, I might add).  Grammy has been known to do similar things (she is also a machine).  Having two people in your house hell-bent on outpacing each other in the chores that they do can really work to your favor!  Once again, I believe it is some latent Jedi mind power on my part.

    The power-washing came about when I found out that my cousin, Jeff Steele, is doing some power-washing on the side for a very reasonable price (if you'd like his info, let me know).  Our house was in desperate need of it, so we hired him to come out and do it (and what a good job he did).  He heard that I was going to sand the swing set and suggested that he could power-wash it to the same effect, so Dalynn told him to have at it.  It is now ready for staining with nary a bit of elbow grease on my part!  That's right, more latent Jedi mind powers.

    Jeff, while he was at our house, heard tell that we wanted the gigantic (and sickly) oak in our backyard taken down.  Jeff recommended someone who had taken several very large pines down for him.  We called this person (Steve) and Steve said he could do it that day for the best price we had been quoted.  He did, and we now have copious amounts of oak ready to be split in our back yard.  Should you wish to retrieve some of it for your own personal use, please let me know, I'll let you have it for free (be forewarned, this is a Jedi mind power in use).

    All of this was done while Cole and I were in the hospital.  It was only made possible by our families, but it illustrates a point that I've felt for a very long time now:  We cannot let cancer dictate our lives to us.  We must make some concessions from time to time, but life must go on, and it will!

    Cole is doing well.  We had a "leave of absence" from the hospital today (Mother's Day, 2009) so we packed up the fam and headed out to our church.  We had Logan and Ava dedicated (we were in the hospital last Mother's Day as well, I believe, and missed the chance to dedicate Logan then) and then spent a quiet and semi-restful afternoon at home before Cole and I had to make our appearance back here at CHKD.

    Cole's AHTC test came back and it showed that he does not have adrenal suppression.  This puts the spotlight on the extremely rare side effect of 6MP.  We still don't know how we're going to go about addressing it if it is the 6MP side effect (or, for that matter, how we're going to confirm that it is), though.  One thing about being on furlough today is that we didn't get to spend a lot of time talking with doctors about what to do from here on out.

    Cole is NPO tonight and will have an endoscopy and a sygmoidoscopy tomorrow.  This will hopefully rule out any major GI problems which could be causing his belly pain.  The slots that we could possibly go in are 12:30 pm and 3:30 pm.  I don't really want to have to keep Cole without food til 3:30 pm tomorrow, so please pray that we get slotted into the 12:30 slot.  We may work a bone marrow in there, as well, for peace of mind.

    Tuesday we are slated for a head MRI and a full-body CT scan, so Cole will be NPO again, but we are also supposed to be discharged Tuesday afternoon/night, so we're seeing the light at the end of the tunnel.

    Friday, May 8, 2009

    Sugar, Sugar Baby

    So, we're in the hospital again.  Life has been pretty crazy these last few days.

    Cole has been suffering from episodes of extremely low blood sugar for the past several months.  On Thursday morning Cole's blood sugar was 36 but dropped lower to 21, even after juice and crackers.  Dalynn called rescue and Cole got to take an ambulance trip to CHKD.  I arrived shortly after they did (I had to stay behind to make sure Logan and Ava were situated).  Thank God that Gary had come to help us paint.  He always seems to be here when we need him.  He's a good Granddaddy!

    Thursday we spent most of the day going through test after test.  Cole had an ultrasound of his gall bladder, an echo of his heart and and EEG.  They admitted us in the afternoon and we came up to 8B in room 813.  It has a really nice view and is a very comfortable room.

    The basic gist of what's going on is that they ("they" being the doctors) believe that Cole has adrenal suppression brought on by the steroids he takes on a regular basis and a steroidal skin cream called Vanos.  The adrenal gland is responsible for producing cortisol, and cortisol is involved in blood sugar management (among other things).  The belief is that, since his adrenal gland isn't producing enough cortisol it's causing his blood sugars to plummet.

    If it is adrenal suppression the fix is to put him on a low dose of another steroid called hydrocortisone.  This will help with cortisol production and will alleviate the problems he's having.

    To find out if it really is adrenal suppression they've taken Cole off almost all of his chemo and steroids in hopes of inducing a blood sugar below 40.  When his blood sugar goes below 40, they can run some specialized tests which will confirm or deny the adrenal suppression theory.  So far, his blood sugar has stayed well above 40...

    Barring his blood sugar dropping naturally the plan is to introduce a medicine called AHTC which will stress his adrenal gland, causing it to produce as much cortisol as possible.  They'll then take blood and measure the levels.

    There is another theory being kicked around.  Dr. Owen came across a case study of a patient with similar problems to what Cole is experiencing that was caused by another of his chemos, 6MP.  It's only one report, but it's something else to consider.  Right now, he's off of 6MP and no blood sugar issues.  We'll see.

    While we're here we're going to also take advantage of the situation to see if we can find the reasons for Cole's constant belly pain.  He'll be having an upper and lower scope on Monday to take a peek at his GI tract.  He'll of course be sedated for all of that. 

    He'll also be undergoing a head MRI on Tuesday and we're hoping to slide a full body CT in there, too.  The scans will be in order to take a look at the fungal infection in hopes that we can take him off of his voraconazol.  His bilirubin and liver enzymes are way up, and they believe that the voraconazol is the reason.

    We're definitely here til Tuesday, so I'll try to keep you informed of any new developments.

    Monday, April 27, 2009

    JavaScript: Callbacks in Loops

    I just finished a mashup that had to be blogged about. I suffered to find this solution, and I wanted to share what I learned with the world.

    In the mashup I took a twitter feed and plotted the tweets onto a map based on the location of the tweeter. Let me set the stage.

    The Google Map has already been set up and the list of tweets has been obtained. It is now time to plot the tweets onto the map. This will be done within a function called addMarkers. The HTTP Geocoder that Google provides will be doing our geocoding. For more information on this service, see this.

    Keep in mind that I'm doing all of this in a Presto Mashlet, and will be calling out to the HTTP Geocoder via a URLProxy call that is undocumented but available for use.

    At first blush, the following approach seems appropriate. Here is an excerpt from the addMarkers function:



    However, this suffers from a very serious drawback, and that drawback revolves around the scope of the function as it exists on the stack. Remember that you are calling out and receiving an asynchronous response via the callback. There's no telling where this loop will be when a callback returns, but the scope of the function is maintained on the stack until all of the callbacks have been completed.

    When a callback returns, the current value of i will be used to index into tweets! Since all of these calls take time, the most common result is that i will actually be out of bounds of tweets. Recall that updating the loop variable is the last operation done in any JavaScript for loop. Once you have looped through all of your indexes you, of necessity, must set i to be out of bounds of tweets. Therefor, i will be equal with tweets.length.

    The result is that you pass an undefined object into placeMarker in place of what should have been the tweet.

    The next logical step is that you should create a variable to hold the value of i, like this:

    var myTweet = i;
    ...
    this.placeMarker(point, tweets[myTweet]);

    However, this will fail as well!

    The problem here is that myTweet is still within the scope of our addMarkers function. addMarkers will therefor have only one copy of myTweet. Once again, you end up in a situation where the loop will probably finish before any of the callbacks return. The net result this time, however, is slightly different. You will pass in a valid tweet to placeMarkers, but it will be the last tweet in every instance. You'll have the same tweet attached to all of your markers on the map, the last tweet in the list.

    So, how do you remove the timing issues? This is where I suffered. I hunted and pecked out half-solutions for quite a while. Finally, I had to start thinking outside of the normal box to come up with a solution.

    The whole problem revolves around all of the callbacks returning to a shared scope in the stack, that being the scope of addMarkers. Once you consider it that way, it becomes obvious that providing each callback with its own scope on the stack is what is needed. The way to do that is to have a function fire off the HTTP Geocoder request. The function will get its own spot on the stack and will have its own scope. Let addMarkers maintain the loop and call this function whenever it wants to fire off a request. Pass in the tweets and the desired value of i to be remembered.

    Consider the following:

    This approach will result in the correct tweet being displayed with the correct marker on the map.

    Saturday, April 25, 2009

    Swingsets and Horse Rides

    There is now a gigantic swing set dominating our backyard. Lindsay Johnson was kind enough to find us a swingset on Craig's List which we purchased a couple weeks ago. Last weekend Travis Jones and I went and dismantled it. Today, Eric Johnson and Anthony Watkins helped me "man-beast" it into our backyard.

    When I say "dominate", I truly mean it. As you can see in the picture to the right, it pretty much takes up all of the yard. To get by it, you have to go to the extreme left or right of the yard.

    When we got it home and started moving it into the yard (a process made a bit perilous when we had to lift the tower over the fence) the boys came rushing out and had to inspect everything. We'd barely gotten it set and the monkey bars on before they were all over it. We didn't even have time to bolt the ladder and slide on before they were using them. Eric just stood there like a true champ making sure the lip of the slide didn't come off the tower platform and dump whoever was going down it on the ground.

    Once we started actually bolting things in place, I believe Logan found his true calling. He would go to my toolbox, pull out a single tool, then climb up onto the swing set and start acting like he was using the tool. He'd most often climb up and get right next to me as I bolted some new piece in place. It was really quite cute.

    The swing set still needs some work, though. I need to sand it and re-stain it, but it's well worth it. It's a Rainbow and they don't come cheap (unless you buy them used!).

    The kids are going to get a lot of use out of it, and Dalynn and I can't wait til we can just start turning them out into the backyard and letting them go play for a few hours.

    In other news, we also started Cole on some horse back riding lessons! Horse back riding was recommended by his physical therapist. It will work all of his core muscles and his leg muscles and should help strengthen him. We've really been fighting a lot of weakness and neuropathy, which has been a bit disheartening. I want to see my boy get stronger, not slowly move backwards.

    We recently got him some new orthotics which will give him a lot more stability when he runs and walks. We're really hoping that it will help him get stronger. So far, they've worked wonders. The hard part has been finding shoes that they'll fit in! We have to go a size or two larger, and they have to be wide. We found that they'll fit in large Crocs, so we got him a pair of those to fill the gap til we get him some newer shoes.

    All in all, things are good, though. We're all doing well and we're acclimating to having one more member in our family. Having three is certainly a whole new kind of circus (hmmm... three ring, maybe?).

    Wednesday, April 22, 2009

    I Haven't Forgotten About Y'all!

    I know it's been a while since I updated. I just wanted to say that I haven't forgotten this blog or about y'all. It's just been pretty crazy around here for a while, now. Having 3 is nuts!

    In way of quick update, all is well in the Rollins household. We are putting in a swing set this weekend for the boys and Ava is sleeping through the night. What more can you ask for?

    On the leukemia front, Cole is still in remission, which is awesome and we're coming to grips with some of the side-effects. Still battling constipation and poop issues, though, which is a real bummer. Things on the sleep front are good, and Cole now gets into bed with us most nights early in the AM. That's led to a happier house all around.

    Anyways, I'll put up a more in depth post soon!