Tell me again why the hell am I taking all these calcium pills?!?

People who know me know that I have enough food ‘peculiarities’ to warrant their own blog post.  I don’t eat the ends of hot dogs, my sandwiches must be “level”, and I won’t eat anything that has ever come in contact with mayonnaise or a mushroom.  I despise certain color/texture combos, (Green and squishy, orange and crunchy, all things purple….) and under NO circumstance will I ever drink anything I can’t see through. I feel as an only child, this pickiness is my birthright.

For years those close to me have tried to trick me into trying “something new” — sneaking milk into a fruit smoothie or cream cheese into a cake but nothing ever passes the “sniff test”, and if by chance it does, it certainly doesn’t make it through “phase two: dissection”. How does MEB deal you ask?  Well in the same way that he has chosen to sign on for a lifetime of sleeping with a box fan, he has also decided to learn to love a gal with the palette of a six year old. (Okay, maybe more like four and a half)

(* NOTE * All pickiness aside it should be known that I am not one of “those girls” that custom order everything – I just take the cards I am dealt and re-assemble it when I get it.)

While I see nothing wrong with the way I eat and prefer to chalk it up to a refined palette I will admit that a diet of bagels (with nothing) and Quaker Oats peanut butter granola bars  (so good!) do little for me in the calcium department. Actually they do nothing for me unless you count the calcium that came from the milk that went into creating the tiny little chocolate chips interspersed in my precious granola bar.  Normally I wouldn’t care about all this but I feel I am getting a little too old to keep breaking stuff (like the knee I broke last year…well at least I think I broke my knee but I never really verified this with an actual real-life doctor…, my elbow or my toe – sadly all “self-inflicted” (Get it?? Self joke?) ). Soon Myles is gonna be pulling me around in a wheelchair.

So this January, with MEB out of the house I finally decided to start doing what he had been asking me to do all along (but with him gone it is now more of a ‘my decision thing’ then a ‘him telling me what to do thing’) and get myself some of those cute little calcium gummy bears. (I also opted to start eating yogurt every day but I fell off that wagon pretty quickly.) For the last month I have been suckin’ down the recommended dose of calcium bears every night with dinner, sometimes even tossing in an extra bear for good measure.  If the hype around all this calcium stuff is accurate I should be completely unbreakable. If only…

Gangsta shot

Gangsta shot

Fast forward to Tuesday, when with temperatures finally climbing out of the single digits I decide to go for a run outside. Five minutes into my run and just far enough away from my home to be inconvenient, my foot catches my pant leg and the next thing I know I am sprawled (un-heroically) on the pavement with my head bleeding and a shattered left hand. Seven stitches, a tetanus shot and a pending surgery later all I can ask myself is why on earth am I investing $6.74 every month for a bottle of those damn calcium bears.  Perhaps if I had never taken them in the first place I would still be standing upright.  Possible side affects for other medications include dizziness, fatigue, trouble breathing, heart murmurs, death…. why would that not also apply to these sugar coated bears with a dusting of calcium???  Hmmmmm?

owwie

My owwie. Stitches + black eye.

Ok, so maybe is was my size 10.5 feet coupled with my cat like sense of balance but I have to think the calcium didn’t help.  At the time of this blog post I am currently pursuing legal action against uh, Haribo??…stay tuned?

fashion challenge

fashion challenge

Anyway at least I did my part for the economy. As I told the ER doctor while he was trying to figure out the last time I had a tetanus shot (I was 9 my dad tells me) I don’t have a PCP ‘cuz I don’t get sick, I just get hurt; he replied, “good, at least depend on you to keep us employed”.

Advertisement

Modifying the Quickr 8.1 DE Default Place

Okay, I am far from a regular Quickplace/Domino user or developer. But because I have made it my point to customize all software products IBM I was roped into one of the biggest challenges of my career (and no, it wasn’t installing WebSphere Portal Server!) – modifying the default Place in Quickr for Domino.

So in order to spare you many a sleepless night here is how I did it:

  1. Create a new Quickr Place. Let’s name this new Quickr Place “Team Aniston”
    Launch Domino Designer 8.
  2. Open the Main Quickr Place in the Designer by selecting File -> Application -> Open and browsing to something like C:\Domino|data\LotusQuickr\lotusquickr\Main.nsf.
  3. At the same time follow these steps to open the “Team Aniston” Main Place at C:\Domino\data\LotusQuickr\teamaniston\Main.nsf.
  4. Now copy two forms in the \teamaniston\Main.nsf to \lotusquickr\Main.nsf by expanding Forms and copying over QDK_h_Page and QDK_h_SubRoom.
  5. Next open a Notes Client and again open both the “Team Aniston” Quickr Place by selecting File -> Open -> Application and navigating to C:\Domino\data\LotusQuickr\teamaniston\Main.nsf and the Quickr one at C:\Domino\data\LotusQuickr\Main.nsf.
  6. Copy all the documents from the System/Customize view of teamaniston to the main quickr place. Also copy the Customize document from teamaniston System/Table of Contents to the main quickr place.

Now all you need to do is restart the Quickr Server! Now when you access the Default Quickr Place you should see a Customize option like you do on “Team Aniston” or other Quickr Places that you create. You can then click that button and taken to a screen that will let you upload new .htm files following the standard steps for editting a Theme.

NullPointerException – an excellent team-builder.

I was recently asked to describe my favorite class in the JDK and why. Yes, this is what my friends and I discuss when we have finished pondering why Jessica Alba named her baby Honor Marie or if Paris Hilton is really preggars or just trying to pull a fast one on us. Yes, we go straight from “People” magazine to computer programming.

To be honest I had never been asked this before. I could quickly rattle off my favorite food (cranberry orange mango bagel), favorite color (pink) or favorite animal (dog) but as for the JDK – the answer was just not that straightforward. I mean there are so many great classes to choose from – where did I possibly begin? (Hmm. Perhaps I’ll just spend a crazy Friday night watching 20/20 and pondering just this)

I first thought about carrying on about how something as simple as java.lang.Object had changed my life – transitioning me from a mere employee at a large IT company to a mere employee at a slightly larger IT company. But I thought that would be too easy, so I decided to dig deeper.  I started to remember what really gave me trouble as a beginning programmer – the class that I just couldn’t get my head around. My “vicarious”, as it were. (The word I couldn’t remember the definition for when studying for the SAT and now use all the time!)  But it had been too long and I couldn’t remember one. But then it hit me. I knew exactly where to go with this, the NullPointerException!

I know it is a shocker but the NullPointerException (as well as all RuntimeExceptions) are near and dear to my heart – mostly because I am very familiar with them. I believe I come across a NullPointer just about everyday working with IBM Software (generally displayed to the end user as simply, “null”), But anyway, what better way to make friends with your coworkers, or bond with customers then by staying up for several nights in a row troubleshooting a product deficiency, known as engaging in a “crit-sit”. Some of my “top five” favorite IBMers I have met doing just this, talking about life while waiting for the server to restart. And hey, it’s also the only time that IBM brings in free food – the good stuff too, like pizza and oranges (I have never understood why we seem to always get oranges!).

Anyway, I have a fondness for a lot of classes in java but for most you “code alone”. With a “NullPointerException” you are part of something much bigger than yourself; you are part of a team.

Theme Me Up Scotty: The Banner Image

Note from Self. I am not a “Star Track” fan (ha ha. Get it?!?)  I just thought this was a funny title.  

For those of you who have been living under a rock for the last few years (or at least not an attendee of one of my numerous (and yes, I am trying to see how long I can ride out the “theme” thing here) Lotusphere or Portal Technical Conference presentations; a Portal Theme provides us the “Look and Feel” for our Portal. I could wax eloquent on how important the Theme is to a portal project and how little emphasis we put on all things end user experience at IBM but that will be left for another topic. Due to the lack of, shall we say adequate, documentation on the subject (Theme development) I decided to publish “The Unofficial Guide to Portal Theme Development” – totally uncensoredJ.

So let’s start with the basics. The most common of all requests…change the banner image and ditching that nasty “Launch” menu.

Part that happens before Part One: Disable Theme Caching:

This one seems to cause lots of people lots of problems. Here is how ya do it. And don’t argue on this one. It works – I know it works. So none of this “my portal is messed up because it caches stuff even when I tell it not to” crap. Edit the correct file and be done with it.
Set reloadingEnabled=”true” in the file ibm-web-ext.xmi located under: 

<WASPROFILE_ROOT>\profiles\<profile_name>\config\cells\<cell_name>\applications\wps.ear\deployments\wps\wps.war\WEB-INF\ibm-web-ext.xmi

Restart WebSphere_Portal.

After that is done you can “touch” (force recompile) Default.jsp (for all layout type changes) AND Styles.jsp (color palettes and Style files) – or both if you have no idea what I am talking about here, when you make changes to the theme. This will clear the cache. I promise.

Part One: Adding a Banner to the top left corner of a Portal 6 Theme

Navigate to:

<WASPROFILE_ROOT>\profiles\<profile_name>\installedApps\<cell_name>\wps.ear\wps.war\themes\html\<theme_name> (Yes, I know this one is a doozy!)

Under the subdirectory /colors open the file default.properties (I will go into color palettes and the use of in a different entry – stay tuned!)

Look for the following text – you will mostly be paying attention to the part in radical red.

#banner bannerText=#3161A5
bannerBackground=#E8EBF1
bannerBackgroundImage=url(./colors/default/banner_background.gif) repeat-x
bannerBorder=#3161A5

Place your banner image in:

<WASPROFILE_ROOT>\profiles\<profile_name>\installedApps\<cell_name>\wps.ear\wps.war\themes\html\<theme_name>\colors\default

Change the value for bannerBackgroundImage to reflect your image name. Set the repeat-x to no-repeat. It should look like below:

bannerBackgroundImage=url(./colors/default/newBanner.gif) no-repeat

If you were to view the Theme again through the Web Browser at this point, your new Banner is most likely hidden behind that pesky “Launch” menu. We now need to adjust the height of the row that contains the “banner image” to be able to see our image. (We probably also want to move the Launch menu – we will get to that in a minute)

Open the file styles_theme.jspf under:

<WASPROFILE_ROOT>\profiles\<profile_name>\installedApps\<cell_name>\wps.ear\wps.war\themes\html\<theme_name>.

Search for the following entry and add a value for the height. (brilliant blue below)

.banner { color: ${colors.bannerText};
background: ${colors.bannerBackgroundImage};
background-color: ${colors.bannerBackground}; border-bottom: 1px solid;
border-bottom-color: ${colors.bannerBorder};
margin: 0px; padding: 0px;
height: 40px;
}

Save your files. “TouchStyles.jsp to refresh the cache and view your changes through the Web Browser.

Part Two: Moving the “Launch” button

Once again open the file styles_theme.jspf under:

<WASPROFILE_ROOT>\profiles\<profile_name>\installedApps\<cell_name>\wps.ear\wps.war\themes\html\<theme_name>.

Look for the definition of the “launch” class. Change the position to be “absolute” and then add specific pixel locations (top, right, left, etc) as to where you want the “Launch” button to sit.

.launch {
float:${requestScope.cssRules.bidiLeft};
position: absolute;
top: 53px;
border: 0px;