Sunday, April 04, 2004

I went to Belton this weekend to spend some time with my family.  Saturday afternoon, Dad was needing some rest, so Andrew, Zack (Andrew's brother in law), and I went and played some golf at Sammon's in Temple.  I am not a good golfer.  The last time I played golf was at Andrew's bachelor party where I threw one of Zack's clubs into the water.  That's another story altogether.

Sammon's has ALOT of water, and has changed alot since Peter and I used to go swimming at the pool there.  I only lost about 9 balls.  I had a few choice shots including a chip-in from about 30 yards out.  Andrew and I were playing the best ball between us and ended up shooting an 83.  We tied Zack.

Dad is doing very well, you wouldn't have known he almost died on Tuesday, except he keeps bringing it up.  We ate at Chili's Saturday evening.  I have some pictures, but they're not very good because it was pretty dark.

The weekend was cut short when some joker left a weird note in our driveway. (Becky stayed home for some rehearsals)  I had to come home to make her feel better.  It was probably a completely innocent note, but we couldn't figure it out because it was so weird.

OK, Jen and Dave are here.  We're gonna eat left over pizza from our Sunday School party Friday night.

 

posted on Sunday, April 04, 2004 3:18:12 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Friday, April 02, 2004

Dad got out of his pacemaker surgery at about 4:30pm yesterday.  I spoke with him on the phone, and he was feeling great, aside from, “an anvil on his shoulder”.  (He was referring to pain at the site of surgery, not an actual anvil)

He's very excited about having such a serious problem fixed.  His EKG is very strong and precise now, much better than it was before.  Since his thyroid surgery years and years ago, his resting heart-rate has been low, and now it cannot drop below 60 bpm.  This should help him have a more active lifestyle.

Anyway, he's doing great and should get to go home this evening.  Thanks for your continued prayers and support.

posted on Friday, April 02, 2004 6:58:51 AM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Wednesday, March 31, 2004

Amidst all the hustle and the bustle,  marklio.com came online!  That's right, I'm taking myself out to eat.  There were some great suggestions, both in the comments and in person with various people.  Among my favorites:

  • www.notdumblikeanaggie.com - This was great, I was worried a certain group of people would be unable to spell it correctly.
  • www.hardaypleer.com - This would have served to forward my and Peter's agenda, but hardaypleer is bigger than just one man.  Peter, do we still have that old site archived somewhere?
  • boogatyboo.com - I laughed real hard on this one, but I think Jenkies should use this one to rebrand his blog.

But, I decided to stick with marklio, especially under the current circumstances.  This was a nickname my dad gave me. It's how he addresses most of his emails to me.

So, welcome to www.marklio.com!  The old address will continue to work so that permalinks can still be permanent.  not much use calling them permalinks if they're not.  Let me know if you have any problems, although that's kind of like telling someone to call you if their phone isn't working.

posted on Wednesday, March 31, 2004 7:06:10 PM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
My dad is in the hospital.  To make a long story short, his heart stopped for a time while under observation for some chest pains he had yesterday morning.  He is stable now, and in pretty good spirits.
 
He had an angiogram this morning that revealed no major blockage in the arteries, which is good news.  He will probably receive a pacemaker, and, if the problem is only electrical, he will likely be fine.
 
Please continue to keep him and our family in your prayers.  During this time, I'm reminded of 2 Corinthians 12:9-10:
But He said to me, "My grace is sufficient for you, for power is perfected in weakness." Therefore, I will most gladly boast all the more about my weaknesses, so that Christ's power may reside in me. So because of Christ, I am pleased in weaknesses, in insults, in catastrophes, in persecutions, and in pressures. For when I am weak, then I am strong.
Paul is describing God's answer to his plea for God to remove the "thorn" from his flesh.  God did not remove the thorn, whatever it was, but rather allowed it to be used to show Christ's power perfected.  When we a presented with overwhelming circumstances, that's when can let God's light shine in and through our lives.
 
posted on Wednesday, March 31, 2004 11:05:37 AM (Pacific Standard Time, UTC-08:00)  #    Comments [2]
 Saturday, March 27, 2004

We ate at Fuddruckers with Dave and Jen and Jen's brother Jerry and Jen's parents.  We had a great time.  I hadn't eaten a hamburger in a long time.

After some Rice Krispie square sculpting (long story), I had this thing with 4 legs.  Someone suggested I make more legs so it would be an octopus.  Dave remarked that I currently had a quadrapus, which I found hilarious.

Then we got to thinking about what other pus creatures might exist, like the millipus, with 1000 tentacles, and the mythical monopus, which must be something like a snake.

posted on Saturday, March 27, 2004 7:57:07 PM (Pacific Standard Time, UTC-08:00)  #    Comments [1]
 Friday, March 26, 2004

I've been thinking about getting a real domain name rather than piggybacking on dnsalias.com.  marklio.com is available, but I'm not sure that's what I want.  Since my name is pretty common, MarkMiller.com and .net are taken.  Since marklio has become my online identity, that will be my default, and it would probably be useful to have.

I'm looking for suggestions though.  Whoever can impress me with the best name gets dinner on me.

posted on Friday, March 26, 2004 5:09:59 PM (Pacific Standard Time, UTC-08:00)  #    Comments [9]
 Thursday, March 25, 2004

I did a bunch of profiling at work today.  I use the Allocation Profiler for memory profiling.  It does a great job of letting you see your allocations visually in several very useful forms.  Today, I took a second look at nprof, a more CPU-oriented profiler that attempts to give you an idea of what calls are taking up the most time.  When I first looked at it almost a year ago, it was not useable at all.  Now, it seems to only have a few problems with GUI apps, and multi-threaded/multi-AppDomain projects.

The app I spend most of my time on at work is a data analysis application.  Data is loaded into the DB from a spool, so 99% of the app is “read-only” access to the DB.  This means I can optimize the heck out of it since I'm not concerned with transactions and such.  The downside is that i must optimize the heck out of it.  A common query can return millions of rows from the database, so taking even a few milliseconds out of the loop can save alot over that many iterations.

My first insight is: Don't use NUnit to run performance tests.  At first, my unit tests seemed to be a very convenient location to put performance tests.  That is a bad idea.  The perf numbers scared me to death.  It appeared as thought I had created a performance monster, and not the good kind of monster.  Turns out, NUnit goes to alot of trouble to isolate the test runs in separate AppDomains so it can unload them easily and you don't get undesired interaction.  This seems to add a great deal of overhead, probably in marshaling across the boundaries.

My second insight is: Use the Allocation Profiler (or some other profiler that lets you look at memory usage)!  I don't want to go into a big discussion on how to use it.  It's pretty straightforward.  If you interested in specifics, leave me a comment.  Remember, allocation in the CLR is cheap, but excessive garbage collection can be costly.

My last insight is: Use nprof (or another profiler that gives you CPU info).  nprof gives you a good idea of where your CPU bottlenecks are.  I was really able to get a good idea about what needed attention.

In a particular performance test of my data access layer, I was pulling over a million rows.  I was able to cut memory consumption in half, and increase my speed by a factor of 10 by using information gleaned from the profilers.  This, or course, means the code was pretty crappy.  He he, just kidding.  Like I said, it's a very tight loop, and a little goes a long way.

If you want a good reference for performance-related stuff, check out Rico Mariani's blog.  He appears to be THE Microsoft performance guy.

posted on Thursday, March 25, 2004 6:41:23 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Wednesday, March 24, 2004

With Mozilla (FireFox, Netscape, etc) becoming a more viable alternative to Internet Explorer, we've had a push for Gecko (the Mozilla rendering engine) compatibility at work, so we've been going back and redoing some things to layout correctly.

We noticed a few things that just weren't working.  When we looked at the HTML source using FireFox, I was intrigued by the fact that all my div tags had become tables.  Turns out, the ASP.NET browser capability detection identifies Gecko as a down-level browser, and gives you an Html32TextWriter rather than a regular HtmlTextWriter.  And, sure enough, digging around using the Reflector confirmed that div tags are replaced by tables when using Html32TextWriter.

This guy, has a solution.  Just thought some of you would be interested.

The browser capabilities section is extremely powerful and insulates you from alot of headaches, but the default configuration is very annoying.  Take a look at your machine.config and you'll see what I mean.

posted on Wednesday, March 24, 2004 3:14:30 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]
 Tuesday, March 23, 2004

No, I'm not gaining weight back.  Becky called me this afternoon and said her Explorer was hard to turn, the A/C stopped working, and the battery light was on.  Pretty simple diagnosis; either the car had exploded, or the serpentine belt was slipping or had fallen off.

When I got home, I popped the hood, and, sure enough, the belt was quite loose.  It had slipped off of the belt tensioner.  As I pushed the belt back onto the tensioner, the tensioner pulley broke off into my hand.  The bearing had frozen, and the plastic pulley had melted from the inside out.  Whoa.

I went to the AutoZone and picked up a new tensioner and belt.  They were incredibly busy, but I was happy to be able to get the parts I needed.  Removing the old tensioner proved to be difficult, as the fan blocked all but the tiniest access to the bolt.  After noticing I had better access to both the belt and the tensioner from the bottom, I got it off and the new one on.

I'm really glad the explosion diagnosis was incorrect.

posted on Tuesday, March 23, 2004 8:38:01 PM (Pacific Standard Time, UTC-08:00)  #    Comments [0]