Saturday, December 08, 2007

i hate web forums

there, i said it, i hate web forums... i can't stand going to this web forum and then that web forum and then the other web forum (i hate doing that with normal websites too, that's why i love rss feeds)... i wish i could read all these web forums in thunderbird somehow, or better still, i wish these twits who decide they want to run a forum get a clue and use usenet instead - that's what it's there for... gaaa!

and yes, i know some forums have rss feeds, but rss is the wrong format for discussions (there's no threading in rss) and many that i'm interested in don't support unauthenticated feeds so my feed reader has to be able to log on as me, and guess what, google reader can't do that...

Tuesday, December 04, 2007

that's despicable

i read this today and i'm struck by the sheer gall of this woman...

the basic gist is that a grown woman played manipulative games with a young girl (and when i say young i mean barely a teen) on myspace, at some point decided it was time to 'teach her a lesson' and instigated cyber-bullying against the kid resulting in the girl committing suicide... and then the woman has the temerity to start a blog with the title "megan meier had it coming" (megan being the girl) in an attempt to fight back against the vilification she's received in her community and by the media...

she seems to think that because the girl was a bully too that it was ok to lead her on with a fake teenage male persona on myspace only to later crush her with that same persona and leak secrets to her social contacts in some sort of ridiculous preemptive strike to protect her own daughter (rather than teaching her daughter how to deal with bullying)...

regardless of the character of megan meier, adults should not pull this kind of shit with children, they should know better... lori drew is a villain by any standard and it is she who had the vilification she's now receiving coming to her... as ye reap so shall ye sow...

Monday, December 03, 2007

serving many masters

came across an interesting blog post on commenting/documenting code today... i've seen many of the things mentioned before but at the end i'm always left with the feeling "why should i?"... not because i don't think i should bother, i know better, but because these tips never seem to address the key inertial speed bump of "what's my motivation?"...

what one really needs to be asking oneself, however, is "who am i writing code for?"... is it for me? my employer? the end user, perhaps?...

i'll ask another question - "who is going to see it?"... i'm going to see my own code, obviously, but so are other coders - specifically the people working with me on the project now and the people who will be working on it in the future... they are the audience of my code, they are the users of my functions, they are the consumers of my classes... when i write code, i'm writing it for other coders... with that in mind of course i'd try to write the best, most elegant, and meaningfully documented code i can...

it may seem strange that i'm considering my fellow coders as one of the masters i serve as a professional software developer or more specifically why them and not some other master... well, being a coder means mastering the art of serving many masters and they are the ones most directly impacted by the form and nature of my code...

end users, on the other hand, are most directly impacted by the user interface i design - so i design user interfaces for end users... likewise with employers (or direct supervisors, at any rate), they're most directly impacted by deadlines so i try to meet deadlines for them...

and for myself? i solve problems... i solve problems for the sense of accomplishment, of course, but also to make my life easier/better... and i don't just mean solving problems with the product (though that's part of it)... solving problems with the nature of my code means other coders can use it more easily... if they can use it more easily then then don't have to ask me as many questions and i can spend more time either being productive or goofing off... it also means they're less likely to use my code incorrectly and thereby introduce bugs which create more work and complexity for everyone down the line...

solving a problem that affects my productivity of course means that i can better meet my deadlines and that makes my employers happy - and it's far better to have employers that are happy you're meeting a deadline than employers that are unhappy because you are missing a deadline... that kind of stress sucks...

finally, solving a problem with the user interface makes the user experience go more smoothly... if the user experience goes more smoothly then the user is more apt to use the product the way it was intended to used... if the end user is less likely to use the product in unintended ways then they're less likely to encounter unexpected behaviour which would be reported to my employers to be fixed which leads to cluttering the next to-do list, making more work for me and my fellow coders, making the product more complex which inevitably means more questions asked of me, and making the deadlines harder to achieve which makes the employer less happy...

in the 7 years i've been programming professionally that's the realization i've come to... i need to design UI for users, meet deadlines for employers, code for other coders, and solve problems for me...