Mike’s Dump

February 22, 2006

Complex Software

Filed under: Code,Links — mikesdump @ 11:43 am

So I started reading Domain-Driven Design: Tackling Complexity in the
Heart of Software

tonight and I have only made it through the first couple of pages
before saying, “Argh”!

Here is my issue:

…Although all three projects delivered useful software, only one
achieved its ambitious objectives and produced complex software that
continued to evolve to meet the ongoing needs of the organization…

If you finish writing an application and sit back and say, “Wow, that’s
a complex piece of software”. Would you feel good about that? Is
something you’d brag about? I’d hope not.

At my previous job we set yearly goals with our managers. One goal my
manager set for me was to develop complex software. I didn’t think all
that much of it at the time because I thought she was just trying to
make my goal non-specific to my current project. Part of the process
was my manager reviewed the goals with her manager (if it sounds like a
lot of red tape it was). Anyways, her manager laughed when reading that
particular goal and said, “We don’t want anyone writing complex
software we want people solving complex problems”.

The goal of any software developer should be to develop the simplest
solution possible for a business problem no matter how complex the problem is.
By simple I don’t mean no structure or throw out all ideas of good
design.

Simple software is easier to support and for new developers to jump in
and become productive sooner. Sure sometimes complicated problems
require more complex solutions but I think how simple an application is
should be a measurement of success not how complex.

February 20, 2006

The Dad’s Survival Guide to Puke

Filed under: Kids — mikesdump @ 1:22 pm

My older daughter turned six over the weekend and my younger daughter
is two and a half tomorrow. In my six years of being a dad I have seen
my fair share of puke. I’ve seen chunky puke. I’ve seen liquid puke.
I’ve seen puke that has made me ask, “When did you eat that”? I have
been puked on more times than I care to think about but fewer times
than my wife, which according to the official rules on the subject means I’m winning.

I wouldn’t consider myself an expert on puke but with the experience I
have, I thought it would be good to share a few pointers with new or
expecting dads.

Pick your puke carefully
While being a dad you are going to have to clean up some puke so pick your puke wisely.
Not all puke is created equal. Some puke you are going to want to clean
up and other puke you are not. I see three main categories:

1) Puke while eating.
This is the tamest puke you’ll find. If the child is old enough you can
try to explain the hard part with this food is done (it is already
chewed). If they look like they are buying into the idea but they are
sitting on the fence offer a straw and turn it into a game. Cheer them
on if you like. “Show that food who’s the boss”!

If they don’t like the idea of slurping up their own vomit with a straw
you can also try suggesting they lean their plate to one side so the
vomit doesn’t mix into the rest of their food. I would recommend you
get them to eat quickly though because you wouldn’t want to put that
plate in the microwave to heat it up.

Before you start judging me, no I have never done this to my kids. Sandy keeps telling me “that’s gross” and she won’t let me.

This is a puke you want to volunteer to clean up. Usually it is on the
plate and it is simply a matter of scrapping it into the garbage and
putting the plate in the dishwasher. You probably won’t earn many
brownie points but cleaning up puke is cleaning up puke.

2) Puke within 20 minutes of eating
This type of puke is usually caused by kids twirling around until they
can no longer stand right after they eat. While laughing hysterically
and falling all over the place it happens, {insert vomiting sound
effect here}. It is a pretty strange sight because this type of puke
really doesn’t faze the child and before the puke is cleaned up they
are probably asking for a snack while they continue to twirl.

Again, volunteer to clean up this puke. This close to being finished
eating the food is still chunky and probably doesn’t smell all that bad
yet. If you are lucky perhaps you had corn with the meal, we all know that stuff
never digests anyways right?

3) Puke 20 minutes after eating
Twenty minutes is just a rule of thumb. This value will vary from child
to child. At this stage the food is starting to digest. The supper is
mixing with the unprocessed lunch and breakfast and the florescent
green coleslaw from KFC that just doesn’t want to leave the body.
Once the child blows it is going to be scary and it is going to be
smelly.

This is the type of puke that I would try to avoid cleaning up. Perhaps
this is a good time to rush off to the can and start moaning. After you
are behind the locked door yell out, “it must have been something we
ate”.

If it didn’t smell good before´┐Ż
From a puke perspective don’t feed your child anything, I mean anything,
that doesn’t smell good before they eat it. I’m starting to be able to
eat a little bit of feta cheese in some things but I still think the
stuff stinks. Feta cheese or anything equally as pungent probably
shouldn’t be a first choice when planning a meal for a child. If it
smelt bad going down it isn’t going to smell better coming up.

Is the carpet really worth saving?
Now I don’t mind being the hero when it comes to fighting off floating
shampoo bottles
or beating the fluff out of, well, fluff
but I’m not the type of hero that will dive with open hands to catch
puke before it hits the carpet. Carpet deodorizer was invented for two
reasons: pets and kids. You wouldn’t want to be responsible for putting
the hardworking people that create these products for us out of work
would you? I don’t discourage Sandy from making these incredible saves
because in the end it means less puke for me to clean.

To summarize: know your puke, watch what your kids eat and don’t be a
hero. If you can follow these steps you can probably avoid some of the
pain I went though. But even if you do go through some pain, it is all
worth it in the end
.

February 19, 2006

The more you do it, the better you’ll get

Filed under: Home,Links — mikesdump @ 2:02 pm

I came across this post
via Coding Horror today. The post
lists off ten common sense rules for writing better. My blog entries
have been a little sparse lately but I still enjoy writing when I have
the time so any help I can get to become a better writer is welcome.
The two rules I believe are the most valuable are:


0. Speak what you write: This is rule zero because all other rules
follow on this. Basically: If what you’re writing is hard to speak,
what makes you think it’s going to be easy to read? It won’t be. So
speak out loud what you write. If you can’t speak it naturally, rewrite
it. Simple.

This is probably the number one reason it takes me a long time to write
anything. I’ll read what I have written over and over. I’ll remove
sentences that don’t fit or expand on ideas when I have no clue what I
am trying to say (which happens often). The best way to catch these
types of problems is to read what you have written aloud.

7. Try to write well every single time you write: I have friends who I
know can write well who send me the most awful e-mail and IMs because
they figure it doesn’t matter how many rules of grammar and spelling
they stomp on because it’s just e-mail and IM. But if you actually want
to be a better writer, you have to be a better writer every time you
write. It won’t kill you to write a complete sentence in IM or e-mail,
you know. The more you do it, the better you’ll get at it until it will
actually be more difficult to write poorly in e-mail and IM than not
(mobile text messaging I understand has more limitations. But I tend to
look at text messaging as the 21st Century equivalent of semaphore,
which is to say, specialized communication for specialized goals).

There really is no excuse for writing poorly in one’s blog. At least
with IMs and e-mail your terrifying disembowelment of the language is
limited to one observer. But in your blog, you’ll look stupid for the
whole world to see, and it will be archived for as long as humanity
remembers how to produce electricity. Maybe you don’t think anyone who
reads your blog will care. But I read your blog — yes indeed I do —
and I care. Madly. Truly. Deeply.

Depending on the situation I have used email as an opportunity to work
on improving my writing. This isn’t the right time to write a
full-length novel but it is prefect time to clearly express an idea,
provide instruction or explain an issue I’m having. Before you get your
panties in a knot, yes emails should be short and to the point but just
because it is an email shouldn’t stop anyone from making sure what is
being said is clear. Writing, the more you do it, the better you’ll get.

February 8, 2006

Document-Driven Documentation

Filed under: Code,Links — mikesdump @ 12:35 pm

Documents are the only “real” deliverable when working on a software
project right? Documents like the CYAD (Cover Your Ass Document), HTCS
(Hose The Customer Specification) and last but not least the critical
IDMWIWBYROOMBID (It Doesn’t Matter What I Write Because You’ll Run Out
Of Money Before I Deliver) Document.

The people involved at Waterfall 2006 know what is important when it
comes to developing software projects. What got me excited (not
something most people should see) was when I read about wordUnit.
Writing documentation because the “Methodology” say so is
challenging but wordUnit offers to help make sure your “useful” documents are
accurate. I’m not sure how it will work but I can’t wait to start using
it!

February 4, 2006

STOP!

Filed under: Links — mikesdump @ 3:06 am

Stop! Stop right now whatever you are doing. It doesn’t matter if you
are working on a cure for Cancer or trying to finish watching your 17th hour
of porn. There is something happening in our world today that requires
your immediate attention.

To get the background information please go here and here.

After you have seen what is at stake and how far this individual is
willing to go you are surely going to want to go here.

Thanks

February 1, 2006

Hypothetical

Filed under: Home — mikesdump @ 12:51 pm

You know, I have tried hard to be good. I have tried to actually throw
some technical posts up on my blog to see if I can fool anyone into
believing I still remember the difference between a loop and an If
statement (is it working?).

Even when putting these posts up it felt a little funny (that would be
funny strange not funny ha-ha). Most days that I feel like writing
something it is usually because I’m pissed off, amazed by something I
found, well, amazing or I’m avoiding doing some work around the house.

Today’s post falls under the categories of amazed and avoiding doing
some work around the house (at least I think I was suppose to do
something´┐Ż I’ll just tell Sandy I was drunk, that’s usually believable).

Let’s say you were building a contact management system. First you
start thinking about the objects in your system. You think a contact
could be made up of one or many addresses, e-mail addresses and phone
numbers. So you build an address, e-mail, and phone number class. Once
complete you decide to tie the 3 classes together by creating private
variables on your user interface (a WinForm for example).

I would hope most readers would stop and think, “that would be really
dumb”. Thinking about the system as a whole you’d think it would be a
no-brainer to have a “Contact” class, would you not? Even if you would
only ever have one contact in the entire system wouldn’t you still have
a contact class?

If you were working on an application in a situation like this adding a
“contact” class probably wouldn’t be all that difficult but it would
make you wonder what other surprises are just under the surface.

Good thing this is “hypothetical” and I’m not really working on this.

Blog at WordPress.com.