A few months back, Andrew flaccus, writing about math, absolutely nailed how I feel about programming a lot of the time: I keep having epiphanies, but they're all incredibly trite.
6:00 p.m.: I've been thinking about this all day. I start to write: "Class::Std is good and all, but I want a convention for distinguishing internal fields from fields that you can pass to the constructor. Oh, and I want automatic getters/setters."
6:15 p.m.: I go to bullshit-check myself and discover that Class::Std can provide automatic getters/setters by way of the
:ATTR marker. Awesome.
6:17 p.m.: I get excited. I wonder, "Why aren't we using this?! Dude! We could have so much less code! Especially in Resources::Object, it being the frickin' base class and all!" I go to look at the frickin' base class to see how much code we're wasting! Oh, man! Jesse jes5199 is going to be so proud of me!
6:19 p.m.: Right above where I'm about to start writing code, I notice a comment that Jes wrote:
# I drafted this using the fancy parameters that you can pass to ATTR
# but they were too rigid to be useful.
Of course he already thought of this, six months ago.
(Is anyone not thinking either "Give it up, Lindsey. Stop trying to use Perl and switch to a real language", or "Give it up, Lindsey. Stop trying to use Perl and go hug your friends, call your family members, pet your cat, and eat some fruit"?)