Sorry, no more commenting allowed

As if to mock me, I had three comment spams added to the blog last night.  While I would like to continue allowing comments, especially since sometimes readers post code fixes and useful information, but I refuse to allow spam and don’t have time to implement a captcha.  If you’ve got one working for dasBlog, email me and let me know, otherwise commenting here will be turned off until I find the time to integrate one myself.


New project

For those curious about what I’ve been up to, I’m working on a thing – can’t really name it, but it’s longer than an article, but not quite a book.  Think of a 3-chapter technical book.

The working title is “Communication with VB.NET” but it’s somewhat misleading.  When I say “communication” I mean data marshalling.  It’s going to cover intra-thread, inter-thread and inter-process data marshalling.  Basically if you have one Form and you need to get data to another, how do you do it?  How about from one thread to another?  Or one process to another?  These kind of questions come up frequently in the newsgroups, so I’m putting together a definitive guide. 

As you may know, I think print media is dead for technical subjects, so I’ll be PDFing it and selling it through OpenNETCF Consulting.  It’ll probably be in the $5-$10 range.  If it’s successful, we’ll try to do a series of them on several topics and in several languages (think C# or VB, not English v. French).  Any topics you think need to be covered?

This one will be unusual in that it will apply to desktop developers in many instances, but all code will be targeted to run under the CF.  It’s a real pain when CF developers have to “down-port” desktop code in a book to use it.

New Blog Engine

Well I’ve migrated my blog engine to dasBlog.  I’m not happy about the fact that it has poor FireFox support (readable, but not editable), but it does add the ability to edit and delete stuff without having to manually modify the XML and since it was based on BlogX it was pretty simple to migrate the content.

The primary motivator for the migration is blog spam.  Neil‘s using dasBlog and hasn’t seen any spam yet, so I’m hoping just changing engines will work – at least for a while.  I implemented a CAPTCHA in the Wiki, but adding it here is a bit more work and I’d really rather do other things.

Success! For now anyway…

Well, I’ve added a CAPTCHA ( Completely Automated Public Turing Test to Tell Computers and Humans Apart  ) to the OpenNETCF Wiki.  That should just about kill all this Nigritude Ultramarine SEO Challenge (no link intentionally) bullshit going around from our perspective.  While the challenge itself is interesting, it’s taken many people down the spammer path to try to get to the top, making me hate the challenge presenter Dark Blue (again I refuse to link there).

Spam is out of control

Alright, someone needs to do something about this spam problem.  Over the last 3 days I had to clean spam from the OpenNETCF Wiki several times, delete two spam comments from this blog, and on one email account I had 198 emails, 177 of which (89%) were spam.  Sure SpamBayes caught 95% of those (168 to be exact), but the point is that it ate network bandwidth and server storage space all the way until my PC, where it finally landed in a “to be deleted” box.

Anti-spammer laws have no teeth, and if they did, enforcement is near impossible since they are often not in the US.  Trying to get a “global” law passes would be a bureaucratic nightmare and I think would still be unenforceble.  You want to solve the spam problem?  To me it seems rather simple – put the onus on the ISPs to solve it.  Imagine if you said “ok ISPs, we’re enacting a new law.  For every piece of spam you forward to the recipient, we’re fining you $1.  You have 6 months grace period starting now.”  That would sure as hell get the wheels of ingenuity rolling to solve it.  Put the enforcement in an area where you have jurisdiction.

Sure, signing all email would be ideal, but until they make it simple enough that my grandmother can do it, it won’t succeed.  I’d think validating the sender’s email address would be a damned good start for filtering.  If the sender’s email is invalid, the email is obvious spam and it gets dropped at the ISP relay.  Sure, that leaves open email spoofing, but look at any block of spam you get and I’d bet a vast majority has completely invalid sender addresses.  Something has to be done.  The cost in lost productivity and wasted network resources has got to be phenominal.

Die spammers!

Spammers up with current technologies

Well it didn’t take long.  Those loathesome spammers are now targeting Wikis and Blogs.

I’ve noticed the the OpenNETCF Wiki routinely gets crap posted to it as links to some other site, in an obvious attempt to generate better search engine ranking.  I delete it as soon as I notice it, but it’s annoying.  I also notice that it seems to only happen in the Sandbox, which makes me think it’s probably robot generated.

Last night I got what seems to be half a dozen comments to various posts in my blog, all with crap names and text, but with valid “home pages” which again provides inlinks to their sites in an attempt to improve search engine ranking.  This is even more annoying becasue my blog engine doesn’t have a simple emthod for deleting them, so I have to manually edit the xml.  Looks like it’s time for a new blog engine.  Any recommendations?  I need cross browsert compatibility, simple to set up and simple to maintain.

I think it should be fully legal to do denial-of-service attacks against these jackasses. 

How to build a nation of Ignoramuses

Yes, I checked the spelling there – it wouldn’t bode well to misspell ignoramuses because I was an ignoramus myself.

On my drive in this morning I heard that the State of California has backed out of their “promise” to high-school students that if they took advanced courses and got good grades, they’d be accepted at a state school.  All I could think was, “what the fuck are these morons thinking!?”

It’s yet another example of short-sighted political bullshit.  Education is probably the most important asset we can build as a country and over the past few years education budgets have been getting slashed at the federal, state and local levels to make ends meet.  College tuition is skyrocketing in most areas, and it seems there’s no end in sight with the current administration’s crazy ass Lafferian decrease-taxes-to-increase-revenues “plan”.

People love to whine about the loss of manufacturing jobs, and now that it’s biting into white-collar jobs with “offshoring” you’re seeing even more knee-jerk reactions.  The reality is this – if someone somewhere in the world is willing to build a widget at a rate of a bag of rice a day, there’s just no way you can get a manufacturer to instead choose the worker that wants 50 bags for the same work.  Capitalism just doesn’t work that way.  Sure, if you’re the guy losing your job, that sucks, but hey – if you were running a business and you could cut the costs of doing business by 90% what would you do?  Bet your ass you competitor will make the choice, so you can “offshore” the job or close your doors.

So what does that mean for the US?  Well we have a higher cost of living and a higher standard of living.  We’ll never be able to get those low-skill jobs back, so it’s pointless to try or to even bitch about it.  The solution is educating the work force to perform the *skilled* labor that isn’t available in some third-world sweat shop. 

The way to keep our economy at the top of the game is to always ensure we can deliver what others cannot.  It’s no different than economics at a business level.  Why beat yourself up trying to produce a commodity (low-skill labor) when there are higher margins in high-skilled work?  Well you can’t provide skilled labor when you refuse to educate your workers, and expecting them to foot the bill is bullshit.  You want to strengthen the economy?  How about an education program to give everyone who wants it a 2-year degree and heavily subsidise 4-year and graduate degrees.

“But that’s too expensive” many will say.  Well sure it’s expensive, there’s no free lunch here jackasses!  Expensive sure seems arbitrary in today’s global climate.  $87 billion for 3 months of “work” that doesn’t help our economy a bit (unless you think paying Bechtel, Halliburton and others is really boosting our economy), but do you realize that for the same price we could give every single teacher – kindergarten through high-school – a 10% raise each year for the next three years (doubt it? do the numbers yourself)?  Let’s see – give the money to those entrusted to educate our children, those who spend more waking time with our children than many of the kid’s parents, or give it to build things like new prisons to replace the ones we have to tear down because we torture people in them?  “Ooh, ooh, I’ll take the latter!” Morons!

So why won’t someone stand up, write a bill, push it and pass it?  Because there’s no political capital in it.  Major improvements to educational funding would be expensive on the front-end, so it makes a politican look bad to the legions of other ignoramuses voting for them.  It *will* pay off in the long-term, but in order to do any good, it’s going to take a minimum of 4 years – since that’s how long a 4-year degree is supposed to take, but the reality is that it’s probably more like 6 or 8 years before you see a return.  That’s beyond the term of a president, representative or senator, so not only would they have to run for re-election before any results are seen.  Add to that the fact that their successor, who is probably going to be in the opposing party since such high expenditures would likely get you voted out, is going to be in office when the gains begin to appear. 

So the equation looks like this: Propose a bill that spends probably more than any program before, short of defense.  Fight for it to get through both houses, confirmed in committe without being amended to the point of uselessness.  Get the president to sign it.  Alienate voters for the rest of your term because of the higher taxes and/or reduced services.  Get voted out at the end of your term.  The opposition takes over and takes credit for your work.  Any idea why no-one’s jumping to try it?  And where does it leave us?  Slowing atrophying into ignorance, with the middle-class shrinking and the poverty level rising.