« December 2003 | Main | February 2004 »
January 27, 2004
Cars and More
Is it cold in here yet? I haven't been doing much facing inward lately... well, that's not true, I actually have... I just haven't been doing it here. My work blog is coming along nicely, however... it's all novelty (or more like the fact that I've been working my ass off trying to figure out Visual Tools for Office).
News of the week: My child got hit by a car. It could have been tragic, it could have been so much worse than it was but thank the Goddess it turned out with only a banged up knee. So the story goes that my niece ran away from home again (another saga in and of itself) and after finding her, dealing with some issues, she was here at my house and both of us were exhausted so we each took a nap. At some point, The Husband brought a crying The Daughter to me... I thought he said that The Son had hit her with the car (I'm thinking little Fisher Price car) and that she was sad and wanted me. I wondered, in my groggy state of mind, that he would wake me for this seemingly minor incident but.... I laid her in my arms and we fell asleep together. About an hour later The Husband came up and shook me awake. He said that ____ was really upset about what had happened and he wanted to see if everything was okay so he could set her mind at ease. Having absolutely no idea what he's talking about and not such a great waker-upper, I mumble "Huh?" When he tells me that my daughter was hit by a REAL LIVE car by our neighbor I sat bolt upright! We still don't really know what happened -- 3 adults were outside watching the kids and none of them actually saw the impact. We do know that The Daughter was on a tricycle, on the sidewalk and that the other kids were all playing in the street. As our neighbor backed down her driveway she could see all the other kids but The Daughter must have been in her blindspot. Since The Daughter was actually on the sidewalk and ended up under the front wheel, we can only figure that she was either too close to the car when my neighbor turned her wheel or, for whatever reason, The Daughter didn't stop(!?!) The neighbor heard The Daughter scream, pulled forward a bit, jumped out and my daughter was under her wheel! As I said, it could have been worse and it certainly could have been tragic but The Daughter only has a couple minor road burns on her knee and a big scare under her belt. Our neighbor was literally freaking out and we all realize now just how easy these types of accidents can happen.
In yoga news... no news is more like it. Given the situation with my niece, The Husband being out of town and my yoga teacher/babysitter out of the country, I've literally practiced once (last night) in a week and a half. Fortunately, Kiran taught last night. We played around with pincha mayarasana (I know I spelled that wrong but I'm too tired to look it up)... I can't even begin to lift my legs... just the preparation for it hurts my arms to no end.
The whole business with my niece has made me realize just how different I am from my family. Now, I already knew this and it isn't hard to discern if you spend even 5 minutes in a room with us together... but I never knew that at the core of our beings I am from another planet. Maybe I am really full of pyscho-babble but I truly believe the heart of our souls are simply feelings. We are all energy and our energy shines through our feelings -- not our attachments to our material objects (those sometimes those make us feel like ourselves). Our relationships are mirrors to our soul and if we'd just stop for a minute and look at the RELATIONSHIP instead of the other individual, we'd see that we each have a hand in that relationship and that no one person can change .... only we can change, our reactions, our judgments, our perceptions. When our kids fear or hurt or cry out for help in all the wrong ways, we need to take a step back and realize that we have a hand in these actions... there might not be anything we can do, we might not be able to change ourselves, we might not even understand how we've played into them but it's a fair guess that we have, either here and now or at some point in the past.... but it isn't fair to lay all the blame at the feet of a 15 year old child. For my part, I take responsibility for failing my niece... I promised her special time with me and I didn't follow through. Sure, I can use the excuses, which are quite valid... I have two kids, they had the flu, my work was really intense and I lost my babysitter... but the bottom line is, those are excuses. I failed her. I own that and I must own that that betrayl has probably wounded her soul and contributed to the emotions she's playing out now. It might not be something that had a huge impact on her and what she's doing now certainly wouldn't be happening *just* because of me....but I don't fool myself into believing that the hurt doesn't exist just because I don't want it to or don't want to face my own mirror in that relationship.
Posted by shanti at 10:12 PM | Comments (1)
January 21, 2004
My Poor Personal Blog
In light of the fact that I created a new work blog, Facing Inward has become neglected. It's okay, really, I'm sure the novelty will wear off soon... so, for now, let me say only that I have finally found an organic wine that I truly like. In fact, I found two of them. The first is called Vida Organica from Argentina. I've had the cab so far and just both the Malbec yesterday. Whole Foods has a really nice selection of imported organics. Last night I tried a Spanish one that went wonderfully with my Saffron, Sweet Potato and Roasted Garlic Bisque with Meyer Lemon Cream sauce (all vegan by the way). Which brings me to... if you are a vegan cook (or just like cooking vegan) you simply cannot go wrong with The Artful Vegan from The Millenium Restaurant... it is absolutely fantastic and, so far, everything I've made has been relatively painless and absolutely fantastic (yes, even the Drench lentil soup).
Posted by shanti at 4:28 PM
January 14, 2004
It's Time for an Update
I rarely look at my archives or at the extended entries of my blog...but I just realized reading that previous post about Office that I have never updated my template for archives.... nor have I ever updated the About Me stuff you can get to from there. It's funny how things change... someday I'll get to that.
Posted by shanti at 9:31 PM
It's An Office World
Though I rarely actually discuss my work here on my little websphere, today I was turned onto a new "blogging community." Before you all gasp and moan, I promise not to turn this place into a techno-geek love affair, but I was genuinely surprised and thoroughly stoked to read all the blogs at Office Zealot today after somone sent me a link to a posting there.
If you're seriously bored or really interested in Word/.NET/VSTO development read further... if you're here for my frills, just skip on by :)
Truth be told I have been solely a Word developer for the past 10 or so years. Sure, I have dabbled in things here and there... windows applications, etc. but my expertise and my resume consist of mainly Word development highlights and I've banked my career on being a self-described expert in "document automation solutions" (I'm still not sure if that's a widely used phrase or if I coined it to look good at some point). This current employment, the one I started back in April, has been good for me. It burst my Office box and, after my initial rollout (remember those posts people..surely you do) of the critical set of automation templates for our litigation department, I've actually done nothing but web services, ASP.NET web applications and a host of LDAP programming -- all using C# for those techno geeks who are interested. I just lucked into a law firm that prefers to homegrow all their applications, has a complicated database that drives the entire legal practice from one department to another and, basically, likes to develop software. Most law firms don't have developers like me in-house and rarely put as much energy into programming as this law firm does. So, yea, I love it. But oddly enough the past two days I've been really missing my Word development. In fact, I actually got nervous enough the other day to ask my IT Director when I could pick up my VSTO conversion project again -- this is my field, my expertise and I surely want to be on the cutting edge. He only laughed (I know he has 2 other web services and a whole 'nother web application sitting in the wings waiting for me) so I took it upon myself to get back into the groove in my spare time today and therein I found Office Zealots.
If ever there was an Office Zealot, I am likely one. It was with utter shock that I interviewed for my current position to find that they had, no typo here folks, 1400 templates (well, not actually templates). 1400 .doc files, acting as templates, all created with Word's mail merge feature and connecting to some funky, bizarre, still can't figure out how the hell it actually works, datasource in a Sybase database (which has now, thankfully been upgraded to SQL) which datasource created a datarow on the fly but NEVER purged them. Horrendous. I was hired to come in and basically re-engineer their entire process.
Unfortunately, when I started, I was informed that their current system did not work under Office versions greater than Office 2000 so I was stuck from the beginning in VBA but new, at some point, we would upgrade to 2003 and, hopefully, into VSTO. I developed a class library in .NET (COM wrapped - don't even get me started into the nightmare I think that is and the problems I've had with it...if I knew then what I know today I'd have just done it in VB6 and upgraded later) to house objects correlating to the database structure (which is like 57 tables all of which are wierdly intertwined and have bizarre business rules) and providing data access on, basically, a table by table instance (if the object is referenced, it populates itself, if it is never referenced, it never populates).
My schematic was simple, create the class library, have my data objects populate only when referenced (this way I'm not populating an inordinate amount of objects when I have no reason to), use VBA to call the engine. When I got to looking at the 1400 templates I realized that basically I needed to recreate an engine. Using something like HotDocs (which I hate by the way) simply wasn't going to work. The data structure was too custom, too complex and too iffy. So here's what I did:
I created a custom set of "merge markers" (e.x., "xLitigationPlaintiffShortName"). I populated my document templates with these merge markers wherever the document should have that data. To date I think have 14 pages (in two column 12 pitch mode) of merge markers. For each template (and the templates are mostly very large packages containing anywhere from 2-10 different documents inside a single template package) that required user input more than a yes or no or single input box, I created a "wizard type" interface. For each textbox on the interface I used the Tag field and populated the tag field with the merge marker that the text box correlated to (so for textboxes being populated from the data source they would have a tag of "xLitigationPlaintiffShortName" and I created "xTemplateVariable" for user input text boxes). At the initialization of the user form, I load in the data source text box data by calling my little DLL engine. When the template processes I simply loop through all the controls on my form, determine if it is a text box and if so do a search/replace for the merge marker identified in the tag property. Works really well.
For templates that required no or very, very little user input I created secondary functions in my DLL that return to me an array of "merge markers" -- so if I'm returning all the litigation markers available to me I have an array with rows like this "xLitigationPlaintiffShortName|Joe Blow" and I simply parse out the array and do my search and replace that way. Obviously this is the less preferred method because the array might return 50 lines and I only need 10 so I do this only if really necessary.
Now you have the basic gist of my project.... I did 30 templates for a single department in this fashion and rolled them out. I was able to cut processing time in HALF compared to the merge field implementation of the same templates (which was cool).
But the overhead of my COM wrapped DLL is driving me insane... any little change (and like just adding another element in my array) can break compatibility for some reason and Word acts a bit more crazy when compatibility is broken with this .NET DLL than with a traditional VB6 DLL. Since many of my templates deal with a lot of the same data source data but have vastly different user input data, I want to create user controls that correlate to my class objects (so I'll have a litigation panel control that has textboxes for all my litigation markers) then I can just drag and drop the litigation user control onto any template form that I need it in instead of having to copy and paste, etc., like I do in VBA. I was to use Hashtables to populate my user controls (just pass the hashtable into the user control, let it populate itself based on the control name and the hashtable key). More than anything I want to get away from this DLL hell of writing the DLL engine and worrying about compatibility.
If what I hear is correct, VBA will be dead in a number of years so I figure why not start now. This is the largest and most complicated project I've ever undertaken so I figure let's go! Now if only I was given the time to do it.
FWIW, I've been thinking about how I could do this with XML but I think the issue will come back to the complicated manner in which the data source has to be worked with. It is not easy to get a single XML file written of the data I would need for a single template. Not only that but each template would have its own separate XML schema. The way I've written my DLL now is that any other application we might want to create some day can use it and get the data it needs. I could probably even turn this into a web service one day if necessary.
Now I know none of my usual readers (excepting likely B and the few other techno-geek nerds I know read here :>) made it this far... but, if you did, you've just been given a glimpse of what I do all day. Fun, isn't it?
Posted by shanti at 9:21 PM | Comments (5)
January 12, 2004
All In The Breath
Friday night I hurt my wrist... or, shall I say, reinjured my wrist. For the better part of a year I had a hurt wrist, wrapped before practice everyday... laying off things that put a lot of strain on it. Against my own better judgment, after having been slightly sick all day and knowing it was coming on, I went to a first series practice on Friday night and halfway through, felt the wrist pop again. So it was no surprise that even downward dog felt off tonight. Determined to reclaim the emotion of the practices I've had over the past two weeks, I led myself by my breath. I'm finding that during Sun Salutations I have a much easier time concentrating if I close my eyes through most of it. Someday I'll be able to find as much concentration with the dirshti but, for now, it is working for me. Finding my groove tonight was awesome... no emotional signposts came up but a good, solid, focused breath practice. My teacher even commented that my jump throughs were "much better, much more controlled." :) So while the emotional breakthroughs weren't as apparent, tonight I actually saw my feet for the first time in Sirasana B! Held there for a split second before returning upward, I saw them! Toes never looked so good!
Posted by shanti at 8:49 PM | Comments (1)
Drenched & Embarrassed
Today I went to the bookstore and picked up The Artful Vegan. This is the second cookbook for chef, Eric Tucker, from The Millenium Restaurant in San Francisco. Millenium is my favorite all-time restaurant. Now before some of my readers, well, okay, one of my readers whose name begins with a B, has a coronary, I've had some amazing meals, in some pretty fantastic restaurants that, technically, would rank up there on my all-time favorite lists if Millenium wasn't around. The thing is that my experience with Millenium was personal, intimate and an eye opener. I had been vegan for a number of years and, as most of you vegans know, finding a substantially elegant, classy and innovative restaurant that serves *only* vegan dishes is downright impossible, when I took a job in San Francisco that required me to travel up there once a month. This is how I found Millenium (after a few horrible failures such as the time I went to Masa because it was attached to my hotel, by myself, not realizing it was one of the most expensive French restaurants in the city). Each month I'd make my reservation and go to Millenium alone (excepting the time Debra came to visit me) and have the most amazing meal. It was always exciting to see if the menu had changed or what new thing I could try. So when Millenium released their first cookbook I bought it before leaving my table. I liked that cookbook. In fact, I loved that cookbook but, frankly, I simply wasn't a good enough chef to handle that cookbook. Maybe I was but the recipes were long, detailed and complicated and way too much for a mother with two small children and little time in the kitchen. I would drool over the recipes every time I made a menu for the week and think "One Sunday when everything is right, I swear I'm going to make those fresh tamales." So today while at the bookstore I noticed their second cookbook, The Artful Vegan. I had already read some reviews of it that indicated the recipes, while still intricate, were a little less complicated to prepare and had a little more variety so I didn't even stop to look through it before I took it to the counter. Over a veggie burger at my kitchen table I looked through it and the drool has not stopped. I haven't been this excited about a cookbook in eons. I can't wait to try some of the recipes.
One of the important things to remember about a cookbook like this is that, due the nature of the food, some ingredients can be downright obscure. For example, have any of you tried to find Star Anise at your local health food store or even, as I did yesterday, at Ralphs. It doesn't exist (but using Chinese Five Spice powder works in a pinch). Do you have any idea what Teff is? Neither did I but there is this amazing recipe in the book for African Teff cakes (turns out Teff is a type of flour -- I already placed my order for some). So, I wasn't too surprised when I read the ingredient list for the first recipe I want to make, Meditteranean Five-Lentil and Chard Soup with Walnut Gremolta, to find a type of lentil I had never heard of before. The recipe called for green lentils, red lentils, Drench lentils and Beluga lentils (which, btw, are amazing if you've never tried them). To determine how important the Drench lentils were I read through the cooking instructions. The Drench lentils played a staring role next to the rest of the lentils "place the green, red, Drench and Beluga lentils...." With the Internet as handy as a click of the mouse I googled "Drench lentils" and found no hits. I looked at the Gourmet Shop at Amazon... no luck. So, frustrated and confused (dear Goddess, there's a lentil I don't know about?), I decided to look and see if the chef had an email address. He didn't...but computer sleuth that I am, based on some things on the restaurant web page I was able to deduce what it would most likely be... so I emailed him "What are Drenched lentils and where can a person buy these obscure legumes." I've been laughing all day at his reply: "Drench Lentils!!! Really!!! What page???!!!! Amazing what proeditors will miss!! French Lentils Obviously!! Unless you want to leave some plain lentils out in the rain and let them get drenched!"
Posted by shanti at 5:50 PM | Comments (1)
January 8, 2004
Yoga Groove
A couple weeks ago I went to yoga really really angry. So angry that I wasn't sure it was a good idea for me to walk into a yoga class -- all that negative vibe. I went anyway and stayed in the corner. I had the best practice... just really peaceful and meditative, physically connected with my breath and my body seemed to be strong. Ever since that day my practices have been dramatically different... where I might fade in and out of awareness, I'm able to go right back to the breath. I've been centered and focused and, for some reason, much stronger. Last night's practice was just profound for me. It wasn't overly strenous of a class - Wednesday night is usually a prep class with vinyasas between sides and Hanumanasana thrown in - but I had such a sweat -- the same amount of sweat I get doing a full first series class. I was feeling really good when we got to Utkasana and I was simply just amazed when I jumped back from standing for my Vinyasa -- I actually felt like I didn't squat as much, my legs were straight, I "floated" more. I'm not sure that physicall I did any of that, in fact, I doubt it, but the feeling was there... maybe everything was just physically clicking but it was very cool. I was able to successfully capture that feeling several more times in the practice. More importantly to me though was that, though my mind wandered, I was able to quickly come back to the breath throughout my practice. None of this was the mind blowing part for me though... I've heard of this... in fact, Kiran mentioned it when I saw her on the street the other day... but I've never come close... and last night I did. While in one of the forward bends (and right now I can figure out which one it was) I had this overwhelming sensation of tears. I didn't burst out but, if I had let go, I certainly could have. I couldn't place the emotion and I was fully connected with my breath at that point so I don't have any idea what the thoughts could have been but I felt it. It was dramatic and it was also a little scary. In other news, coming up against the wall from my backbends I've discovered if I give myself a little tiny push off the wall about half way up then I can let go of the wall and come up the rest of the way on my own. I'm not sure if this push forward is what I need to figure out to do with my legs in order to get up on my own but I imagine it must be something close to that sensation of pushing out with my legs.
I am officially in my new office today. It's very lovely and as soon as I can find the cables to my camera I'll post a picture. Now it's back to work to pay off the lovely office :)
Posted by shanti at 12:16 PM | Comments (4)
January 5, 2004
Squeaky Wheels
So I did my first practice in my new little room on Saturday.... unfortunately, having the time and the space and not a lot of determination left me mostly playing with my practice. So halfway through the first series I sorta withered out and just started playing... first with kurmasana and then with backbends. So after coming up against the wall I tried to go down the wall... only I had put some blocks down 'cause I was trying Kiran's suggestion of coming up from the blocks and had forgotten they were there... I was bent over far enough to see the ground and the blocks but, once again, fear pushed in and I didn't think I could land safely on the blocks... but I was down far enough that I couldn't pull up either... so, I twisted... and it hurt :(
Sunday the teacher, G, was teaching first series at the club... Surprisingly, I actually like him teaching first series (in comparison to my other choices now that M is on 9 weeks of vacation). As a matter of fact, my last two practices with him have been 2 of the best practices I've ever had... I don't quite know if it is the energy he brings or just that I was having good days... but regardless... on Sunday I was attempting the backdrop again just to make sure I didn't scare myself out of even trying to get down..... he came and helped me and just doing one dropback made my back feel all better :) For whatever reason, those dropbacks really *get* right at the place in my back that has, for years, given me aches. In supta kurmasana I was *this* close to binding on my own. I actually held Titbhasana for like 3, maybe even 4, breaths.
My office/yoga room is officially done... DONE! Now just to figure out how to put it together to maximize the space for yoga and minimize the space my office takes up. On Sunday I met up with Angel for the first time in like 4 years and found these cool little stick things that I need to get a vase for. The Container Store which I had heard was like an orgasm was seriously disappointing. I did find a Buddha that I really liked but it was too expensive for my current budget.
So far 2004 is going well. Apparently, The Husband decided to be "more romantic" this year... I'm not sure if what he's doing is romantic but he's certainly being more attentive. Dental work today so no practice tonight... maybe I will practice in my little room tomorrow :)
Posted by shanti at 7:11 PM | Comments (2)
January 2, 2004
Happy 2004
I suppose today marks the anniversary of my blog ... two years of blogging which hardly seems possible but there it is in 1s and 0s, right there over on the left. The other day I read through some of those archives and smiled at where I've been (did you know that there is even birth video up in those archives... I can't figure out where I actually stored the birth video but its there somewhere in the ether of the Internet). It was fun to read about my first ashtanga class and the passion I've developed for my practice since then. With mixed emotions I read the trials and tribulations of nursing The Daughter... and realized I didn't make much fanfare about the fact that The Daughter weaned (though its all relative... when she was sick last week she nursed and every now and again she says she wants to be my baby and try the na-nas). Though I read through some of the archives, I didn't read much from this past year. 2003 was a hard year for me. A lot of growing pains both personally, in my marriage, in my parenting, with my family. Growing pains always bring change and new perspective and I will take that into my New Year and hope that what I give to the universe comes back to me in the form of some semblance of understood intelligence (I can hope, right?).
We spent New Years Eve with good friends (waves to D). We drank a few bottles of wine, ordered some Thai food, played some games. For the first time in years we stayed up until midnight, watched the ball drop then went straight to bed. I had been hoping to honor my history of doing my own practice on New Year's Even again this year -- in my new yoga room/office but, sadly, I started my moon and the first two days are always horrendous so no practice for me. Tonight I should be well enough to do the first series class with the substitute instructor :( We'll see how that goes.
Last night The Husband & I went to Reverend Horton Heat at the Belly Up. We realized it was the first show we'd been to together in years and years. We had been really psyched to go out, do dinner, have a few drinks and stay out late (we're usually home by 10ish so my mom can drive home) but then The Husband's family ended up having their Christmas celebration and we spent the whole evening at his brother's house. We came home around 8 and left around 8:30. As we were getting in the car we both seemed so tired and finished with the day we actually laughed... 6 years ago 8:30 would have seemed like way too early to venture out anywhere and, yet, here we were two kids later feeling like it was nearly bedtime. The changes that kids bring! We started off at this nice little bar, I had a mocha (as a side note... if you want to really feel what a nice legal drug feels like, stop drinking caffeine for about 5 years. Then go an order a coffee that you swear you are only going to take a few sips of because you just need a little pep... then proceed to drink the whole thing) and a glass of Qupe Syrah. We are talking about the year and the coming year when we see this girl get up and leave... a few minutes later two waiters and a manager run out after her. She apparently fell over outside, was yelling that the man she was with was going to "get her" and then tried to get in her car and drive away. The restaurant called her a cab and sent her home. When they came inside and told the man she was with he got obnoxious... said he wouldn't pay the bill because, though they had sat together and shared some food, she had ordered it all and he would not pay. He didn't know her, had met her at the door and he knew his legali-teeees for, of course, he was an attorney. The Husband and I watched as this man grew more and more obnoxious, ego driven, loud, beligerent and basically made himself out to be the biggest asshole on the planet. The management and bartender handled the situation well... they eventually ate most of the bill themselves and the guy left. While the drama was entertaining, it really makes one feel for someone like that.
After that we went over to the show and really enjoyed it. They rock as always and they played a couple of my favorite RHH songs :) I was surprised that The Husband liked it as much as he did as he isn't always a fan of music that fast but he genuinely enjoyed it. The place was totally packed -- nice to see -- and I'm not a fan of being right in the front so we hung out in the back and just listened and watched.
It was a good way to bring in the New Year... and hopefully 2004 will rock equally as much as RHH does.
Posted by shanti at 10:12 AM | Comments (4)