Поделиться через


Nulls are Evil

Nulls terrify me.

There is something passive aggressive about them.  It's not just that they lurk there in the darkness, unknown, unobserved, biding their time, showing up at the worst possible moments with shotguns blazing, blowing holes into my programs.  It's more than that.  It's something more insidious, deep and unsettling.  

I truly believe nulls are evil.  And not you average run-of-the-mill bad-for-you-like-donuts evil.  I'm talking ground-shaking, god-forsaken, burning eye of Mordor evil.  There is a quality about them that cannot be denied.  A null is a power unto itself, a dark primitive energy, a grey void of nothingness that consumes everything.  Dare not look into one lest you go blind. Dare not try to understand one lest you go mad.

I did look once.  I saw beyond the event horizon and peered into the truth.  I saw the absence of being, the uncertainty, the ambiguousness.  I realized then that nulls were truly unknowable.  That they weren't actually nothing, nor were they anything in particular.  They were any and all, yet still undefined, unpinnable.  Always potential, never anything real; the energy of all they could be and yet never will. 

That's what makes them so dangerous.  They don't just sit there, satisfied with their un-being.  They reach out, surround, and permeate. They are like pariahs, vampires, feeding off everything that is missing, becoming the sum of all that is not there, filling the in-between, becoming the echo of everything left unsaid.

Nulls are antimatter.

Comments

  • Anonymous
    June 01, 2005
    <grin>Dude, what a zero of a blog entry</grin>
  • Anonymous
    June 01, 2005
    The comment has been removed
  • Anonymous
    June 01, 2005
    Nulls can't be anti-matter, since anti-matter is still something, and null is the absence of everything.

    Nulls are a vacuum, and you know nature abhors a vacuum.
  • Anonymous
    June 01, 2005
    Was it too much coffee, a long stack trace, or a late night that caused this blog?
  • Anonymous
    June 01, 2005
    Matt,

    i assume you would be the perfect person to help me in my struggles concerning non-nullable types be added to the clr asap. even a [NonNullable] attribute would be extremely helpful - it would make nullpointer errors, a major industrie problem, go away in a second...

    given the current hooply about nullable types (whoever though that would be helpful... ?) - adding non-nullable should be trivial for the clr guys.

    WM_<G>
    thomas woelfer
  • Anonymous
    June 02, 2005
    Agreed.

    There is something inately incorrect about storing "nothing" or the "absence of something" in your data model and especially your database. When has the assumption of "If it doesn't exist, THEN IT SHOULD NOT EXIST" change into "If it doesn't exist, MARK IT AS NULL."

    Now, I'm not religious to the point of NEVER using them; but they are, at least, a harbringer of pause and a catalyst to momentarily say "Are we doing something wrong here?"
  • Anonymous
    June 02, 2005
    I have to admit, antimatter was a bit of a stretch.
  • Anonymous
    June 06, 2005
    Relax. Embrace the void. Coalesce, even.
  • Anonymous
    June 08, 2005
    Coalescence? That's just pretending the problem does not exist, converting nulls into meta-nulls.
  • Anonymous
    June 14, 2005
    Join the dark side, Matt.
  • Anonymous
    June 19, 2005
    The comment has been removed
  • Anonymous
    June 23, 2005
    The comment has been removed
  • Anonymous
    June 29, 2005
    The comment has been removed
  • Anonymous
    July 18, 2005
    Моё предыдущее сообщение о try/catch/finally вызвало много эмоций и споров. Толь
  • Anonymous
    July 18, 2005
    Моё предыдущее сообщение о try/catch/finally вызвало много эмоций и споров. Толь
  • Anonymous
    July 18, 2005
    Моё предыдущее сообщение о try/catch/finally вызвало много эмоций и споров. Толь
  • Anonymous
    July 18, 2005
    Моё предыдущее сообщение о try/catch/finally вызвало много эмоций и споров. Толь
  • Anonymous
    July 18, 2005
    Моё предыдущее сообщение о try/catch/finally вызвало много эмоций и споров. Толь
  • Anonymous
    July 18, 2005
    Моё предыдущее сообщение о try/catch/finally вызвало много эмоций и споров. Толь