My Left Foot

My left foot hurts.

It’s been giving me trouble since foster child O was here. See, O had really bad reflux for her first few months, and the only way to settle her down when it hurt her was to bop her. Almost violently. Jen and I stayed up many nights, pretty much just holding O and doing deep knee bends as fast as we could. Well, my legs aren’t terribly strong (although it has been suggested that they resemble steel sinews), and to give them a break, I would switch to bopping on my feet. At some point, I pulled something or other in my foot.

I didn’t notice right away. It would hurt like a boogie when I woke up in the morning, but I didn’t think anything of it. I figured I was just getting older. So I’d limp around the house until I left for work, and by then it was starting to feel better. By the time I got home, I barely noticed it.

That lasted until about May. In May I started walking with a slight limp from the pain, and my family started noticing. I told them I was fine.

In August, I finally went to the doctor, since it had gotten to the point where I was limping quite a bit. The doctor diagnosed me with Plantar Fasciitis, which is Latin for really bad foot pain. It actually means that I had an inflamed tissue on the bottom of my foot, right in front of the heel. The doctor told me to wear comfortable sneakers whenever possible (and I’ve followed this advice religiously to this day, believe me), to take prescription strength Naproxen for six weeks (which was great: no headaches, no pain of any kind; it was like a pre-emptive strike against any possible pain), and to soak my foot twice a day in a whirlpool. I was also supposed to get some inserts for my shoes, but my perfectly flat feet complicated that situation a bit.

He suggested we check it again after a few weeks. If I still had pain at that point, he was planning to inject an anti-inflammatory directly into my foot.

Like fun, buddy. No one’s going anywhere near my foot with a needle, pal. So I never called back for the follow up visit, and my left foot has given me nagging pain on and off ever since.

But tonight the pain very different. Usually it’s kind of a dull throb, like a sore muscle. Tonight, it’s more of a searing sensation shooting into my heel. I’ve had to stop and take all weight off of my left foot a few times tonight, just walking around the house.

I figure this isn’t a good development, but we’ll see what happens.

Bottom line: respect the foot.

It’s Official

It’s official.

And it’s about time. This turd’s been hanging on waaaaay too long.

UPDATE: Crazy Apple Rumors reports on Steve Jobs’ response: And… um… that other one. Whatzitz. Opus? No. Opera! Opera. I’ve never actually used Opera but, um, I imagine I’d probably choose it before I’d choose Explorer. But, then, I’d probably choose getting whacked over the head with a sock full of nickles before I’d choose Explorer.

The Year In Review

Well, again with the silence.

Apparently I skipped all of November.

Time to remedy that. Time to start posting stuff here again.

I’ll start with a recap of the past year or so, with the intention of showing you why it’s been a quiet year here on truetech.org.

[Six paragraphs have been deleted here, because there is simply too much malice in the world. I never thought I’d need an editorial policy for my own personal site, but maybe it’s time to think about that. Anyway, those six paragraphs are gone now. -Brad]

And I don’t remember if I wrote about this or not, but I’ve also accepted the role of Worship Leader at our church. Each week, I pick out the music, coordinate the musicians, run rehearsal, prepare the computer slides, and lead the service. It’s a lot of work, but I love it and I wouldn’t trade it for anything. 2004 was kind of a dark year for me, with Westwood closing down at the very start of the year. We spent most of 2004 searching for a church where we felt like we fit. NewSong Fellowship Church West ended being that church. Before long, I was asked to lead worship one Sunday morning. Shortly thereafter, I was leading every other week. Next thing I knew, it was every week. Have I mentioned that I love it? It’s like it’s in my blood or something. But it took some time to get up to speed, which is another reason I haven’t been able to devote as much time to this site as I’d like.

Combine all of that with the usual work schedule, the demands of family life, and the ongoing battle against the grubs for control of my yard, and it’s been a busy year.

Penny For Your Thoughts

I don’t often read Penny Arcade (I get most of my web comics fix from User Friendly). But anyway, tonight I was reading a few cartoons and came across this one that made me crack up. Enjoy.

Actually, I laughed out loud at my computer a few times tonight. Check out this capture of an Easter egg from the upcoming Revenge of the Sith DVD (best if viewed under Windows; the Mac version of WMP messes something up, as usual).

Updated: link to dancing Yoda removed. The original was removed at LucasFilm’s request. Click here to see how to access dancing Yoda on the Revenge of the Sith DVD.

Update: 21 Things

Wow. It’s been a while. Almost a month. Sorry about that.

This is the time of year when everything gets crazy for my department. Hopefully it will ease up around Christmas.

So, anyway, here’s what I’ve been up to. Since my last post I…

  1. cleaned someone else’s vomit off of my PowerBook. 
  2. made huge changes to Tangelo (mostly in the area of FTP publishing).
  3. took my family on our annual trip to Ocean City, NJ.
  4. cried several times because I miss our most recent foster daughter so much.
  5. received a ridiculous amount of compliments on how cool our stroller/backpack combo is. Although, truth be told, it is pretty cool.
  6. took two vacation days.
  7. released an updated version of Kodiak.
  8. made lego versions of my coworkers.Lego Brad, Casual
  9. went back on Atkins. Several times, in fact.
  10. ate pizza at Mack & Manco’s.
  11. finally made another batch of my homemade raspberry iced tea.
  12. helped my church purchase a Korg Triton LE 88 to replace the out of tune piano our host building lets us use as part of the rental.
  13. ran my USB jump drive through the wash. Still works, though. All part of my “data cleansing” project at work.
  14. rented a dumpster and began the monumental task of dejunkifying my house.
  15. was quoted in a REAL Software press release about the REAL World conference.
  16. had quite a few long discussions about what Pennsylvania really means when it says “Attribution School” on PSSA results.
  17. couldn’t think of any more witty death matches.
  18. got to visit Tanya.
  19. bought some new jeans.
  20. acquired yet another hideous green PowerSchool t-shirt.
  21. attended Parent Visitation Day at Gracie’s school. I got to eat lunch with her. It was really, really nice.

Pushing My Buttons

My continuing adventures with composite windows, listboxes, toolbars, and HTMLViewers

I am a happy user of Electric Butterfly’s MaxiToolbarPro. I use it because it makes it so easy to maintain a nice set of cross-platform toolbars, and they look native enough for me on OS X.

And then REALbasic 2005 shipped, with a feature I’ve been waiting for: the HTMLViewer. The HTMLViewer is a platform-native control for rendering HTML. On OS X, it uses WebKit, the rendering engine behind Safari. On Windows, it uses IE. On Linux, it uses Mozilla if available. But I don’t plan to ship a Linux version of Tangelo anyway.

But this great feature comes with a price: on OS X, it can only be used with composite windows. I didn’t think that would be a problem. Of course, I hadn’t used composite windows before, but I didn’t see why it should cause any trouble.

Then the trouble started.

My toolbar buttons would randomly disappear or draw incorrectly. I spent a few weeks going back and forth with Dave from Electric Butterfly, and in the end, we determined that it was a bug in REALbasic itself, that only occurs when using a custom canvas on a composite window with a listbox. Which describes my interface pretty well, actually. Dave was incredibly helpful, but since the bug is in RB, there wasn’t anything more he could do.

Time passed.

I finally decided that instead of waiting for RB to fix the bugs with listboxes on composite windows screwing with the toolbars, that I’d just go ahead and use native toolbars on that window (REALbasic has support for native OS X toolbars, but they’re not cross-platform, of course). No harm done, just a little extra code to shift things around a bit. So I add native toolbar buttons to the window and write a bunch of conditional code to put things in the right places depending on the platform (because Windows is fine, and I can still use MaxiToolbarPro without a hitch). Now it crashes on quit. Every time.

So I narrow it down and discover a conflict between RB’s native toolbar support and the HTMLViewer. Grrr. I filed a bug report and tried to drum up some support on the NUG, but no bites. So start thinking and I remember Thom McGrath wrote some wrapper code for using “real” toolbars, not just the partial RS implementation. I download it, start to add it to my project. Now it won’t compile. Thom’s classes require the app to be Mach-O, one of two executable formats available for Mac OS X (the other being PEF). OK, so I compile it as Mach-O and now it crashes on startup. SQLitePluginPro error. I confirm the bug with Will from SQLabs, but there’s no fix yet. Crap! Well, I’ll just switch to using REALSQLDatabase, the new database engine in RB 2005, since that’s based on SQLite, right? Wrong! REALSQLDatabase is SQLite 3, but SQLitePluginPro is SQLite 2. And they’re not compatible. And there’s no way to migrate without the SQLitePluginPro working. More thinking.

I end up downgrading SQLitePluginPro to 1.1 or something like that, and it starts working on Mach-O. Cool. Finally some progress. But now I hit another problem: using Thom’s HIToolbar classes, I can apply stock Apple icons to my toolbar buttons, but no custom icons. Well, that sucks. So I go back and forth with Thom a bit, and in doing so, I find that it works with RB 5.5.x, which, of course, does me no good since the whole point was to use the HTMLViewer in the first place! After a bit, Thom tells me that RB2005, all of his declares to Quartz need to be declared to Carbon instead. So I change about four or five methods making those declares, and after only three weeks, my window works now!

So, long story short, expect a new Tangelo beta real soon now.

Lying Here, Doing Nothing

This morning, as Jen and I lay in bed, nearly motionless, at an hour far past that which should have seen us up and about, she said, “I feel really lazy, just lying here doing nothing.”

“Hey,” I said. “You’ve earned it. You deserve to lie here doing nothing for a while. Go back to sleep.”

On Thursday morning, I woke up and went about my routine, just like every other weekday. I checked my email, took a quick look at NetNewsWire Lite, shaved, took a shower, gathered my gear, packed my lunch, kissed Jen goodbye, looked in on Grace, and looked in our foster daughter.

But it was the last time I’d look in on her.

The social worker arrived at 2:45 PM, a full fifteen minutes early, to come and take her back to her mother.

I had left work a few hours early so I could be home when she left. Her departure was kind of anticlimactic in the end. The social worker took the baby, strapped her in her car seat, and drove her out of our lives.

Jen, Gracie, and I stood in the front yard for a moment or two and blinked back tears. She was gone. We walked inside and closed the door, and then started cleaning up and packing up baby gear. More tears came, but we were okay.

We had picked up this baby from the hospital when she was two days old, in mid-February. She’d been with us ever since. Now, at just over five months old, she was going back to her mother.

I tried not to get attached. But she wiggled her way into my heart, and she had become my girl, a title I’d previously bestowed upon only Jen and Grace. She knew me, and I could see in her face that she thought I was her Daddy. When I came home from work, she smiled and giggled. She knew my tricks. When I held her up, she arched backward to get me to swing her gently back and scoop her up again. Then she’d smile a crooked smile at me and lean back again. I knew her most ticklish spots, and I knew which of my silly faces made her smile and laugh.

As I stood in the yard and watched her drive away, I wondered what would go through her head as she cried for us. Would she wonder why we weren’t coming? Would she think we’d abandoned her?

The consolation, of course, is bittersweet at best: within a few weeks, she’ll forget all about us.

Last night, Grace went to sleep at my parents’ house so that Jen and I could have the first night to ourselves we’ve had since February. This morning, we slept in, more for Jen’s sake than for mine.

Jen’s the real hero. She was the one who did the late night feedings and diaper changes. She was the one who carted her to the doctor. She was the one who still took care of Grace and me while she took on this baby. She was on who hadn’t had a decent night’s sleep in five and a half months.

So this morning, as Jen and I lay in bed, nearly motionless, at an hour far past that which should have seen us up and about, she said, “I feel really lazy, just lying here doing nothing.”

“Hey,” I said. “You’ve earned it. You deserve to lie here doing nothing for a while. Go back to sleep.”

And she did.