Wednesday, July 28, 2010

Wikileaks To Leak 5000 Open Source Java Projects With All That Private/Final Bullshit Removed

EYJAFJÖLL, ICELAND — Java programmers around the globe are in a panic today over a Wikileaks press release issued at 8:15am GMT. Wikileaks announced that they will re-release the source code for thousands of Open Source Java projects, making all access modifiers 'public' and all classes and members non-'final'.

Agile Java Developer Johnnie Garza of Irvine, CA condemns the move. "They have no right to do this. Open Source does not mean the source is somehow 'open'. That's my code, not theirs. If I make something private, it means that no matter how desperately you need to call it, I should be able to prevent you from doing so, even long after I've gone to the grave."

According to the Wikileaks press release, millions of Java source files have been run through a Perl script that removes all 'final' keywords except those required for hacking around the 15-year-old Java language's "fucking embarrassing lack of closures."

Moreover, the Perl script gives every Java class at least one public constructor, and turns all fields without getters/setters into public fields. "The script yanks out all that @deprecated shit, too," claims the controversial announcement.

Longtime Java programmer Ronnie Lloyd of Austin, TX is offended by the thought of people instantiating his private classes. "It's just common sense," said Lloyd, who is 37. "If I buy you a house and put the title in your name, but I mark some of the doors 'Employees Only', then you're not allowed to open those doors, even though it's your house. Because it's really my house, even though I gave it to you to live in."

Pacing and frowning thoughtfully, Lloyd continued: "Even if I go away forever and you live there for 20 years and you know exactly what's behind the doors — heck, even if it's a matter of life and death — plain old common sense still dictates that you're never, ever allowed to open them for any reason."

"It's for your own protection," Lloyd added.

Wesley Doyle, a Java web developer in Toronto, Canada is merely puzzled by the news. "Why do they think they need to do this? Why can't users of my Open Source Java library simply shake their fists and curse my family name with their dying breaths? That approach has been working well for all the rest of us. Who cares if I have a private helper function they need? What, is their copy/paste function broken?"

Wikileaks founder Julian Assange, who coined the term "Opened Source" to describe the jailbroken open-source Java code, fears he may be arrested by campus security at Oracle or possibly IBM. The Wikileaks founder said: "Today the Eclipse Foundation put out a private briefing calling me a 'non-thread-safe AbstractKeywordRemovalInitiatorFactory'. What the fuck does that even mean? I fear for my safety around these nutjobs."

The removal of '@deprecated' annotations is an especially sore issue for many hardworking Java developers. "I worked hard to deprecate that code that I worked hard to create so I could deprecate some other code that I also worked hard on," said Kelly Bolton, the spokesperson for the League Of Java Programmers For Deprecating The Living Shit Out Of Everything.

"If people could keep using the older, more convenient APIs I made for them, then why the fuck would they use my newer, ridiculously complicated ones? It boggles the imagination," Bolton added.

The Eclipse CDT team was especially hard-hit by the removal of deprecation tags. Morris Baldwin, a part-time developer for the CDT's C++ parsing libraries says: "We have a policy of releasing entire Java packages in which every single class, interface and method is deprecated right out of the box, starting at version 1.0."

"We also take careful steps to ensure that it's impossible to use our pre-deprecated code without running our gigantic fugly framework," the 22-year-old Baldwin added. "Adding public constructors and making stuff non-final would be a serious blow to both non-usability and non-reusability."

The Agile Java community has denounced the Wikileaks move as a form of terrorism. "It was probably instigated by those Aspect-Oriented Programming extremists," speculates Agile Java designer Claudia Hewitt, age 29. "I always knew they wanted to use my code in ways I couldn't predict in advance," she added.

Many Java developers have vowed to fight back against the unwelcome opening of their open source. League of Agile Methodology Experts (LAME) spokesperson Billy Blackburn says that work has begun on a new, even more complicated Java build system that will refuse to link in Opened Source Java code. The new build system will be released as soon as several third-party Java library vendors can refactor their code to make certain classes more reusable. Blackburn declined to describe these refactorings, claiming it was "none of y'all's business."

Guy Faulkner, a 51-year-old Python developer in Seattle, was amused by the Wikileaks announcement. "When Python developers release Open Source code, they are saying: Here, I worked hard on this. I hope you like it. Use it however you think best. Some stuff is documented as being subject to change in the future, but we're all adults here so use your best judgment."

Faulkner shook his head sadly. "Whereas Java developers who release Open Source are code are saying: Here, I worked hard on this. I hope you like it. But use it exactly how I tell you to use it, because fuck you, it's my code. I'll decide who's the goddamn grown-up around here."

"But why didn't they write that Perl script in Python?" Faulkner asked.


Previous article: San Francisco Airport Announces That All Restrooms Near You Are Now Deprecated
The SFO port authority announced today that all airport restrooms located anywhere near you are now deprecated due to "inelegance". The newer, more elegantly designed restrooms are located a short 0.8 mile (1.29 km) walk from the International Terminal. Read more

Next article: Eclipse Sits On Man's Couch, Breaks It
New Hampshire programmer Freddie Cardenas, 17, describes the incident: "We invited Eclipse over for dinner and drinks. Eclipse sat down on our new couch and there was this loud crack and it broke in half. Those timbers had snapped like fuckin' matchsticks. Then my mom started crying, and Eclipse started crying, and I ran and hid in my bedroom." Read more

Thursday, July 15, 2010

Blogger Finger

Well! I've sure had a nice relaxing blog-free year. No worries, no haters, no Nooglers wandering by my office and staring at me through the window as if they expect me to crap in my hand and hurl it at them. Not that I wasn't tempted.

Nope, it's just been peace and quiet and reading and coding and practicing my guitar and stuff. It's been awesome.

And now that everyone's completely forgotten who I am, or whatever exactly I'd said that made them feel all butthurt inside -- as measured by my incoming email rate, which is finally near-zero -- I figure it's probably safe to get back in the water.

I'm not really sure what my plans are going forward, other than staying employed at Google until the day comes when I need one of their comfy, brightly-colored caskets. Other than that, my plans are flexible. I'm feeling downright leisurely at the moment.

I realize now that I was trying way too hard to change the world via blogging, and it made me care maybe just a little too much. This was bad for my mental and emotional health. Caring is fine. Lots of things are worth caring about. Very few of them merit sacrificing your health.

Fortunately during my ad-hoc sabbatical I was able to gain some new perspectives by distancing myself a bit from the constant storm going on in the tech world.

One nice perspective I gained is this: There is nothing on this earth that can make everyone happy. Reddit is a huge, living, breathing demonstration of this, since essentially no reddit post ever goes above maybe 80% approval, and a "good" post seems to hover around 65%-70% liked.

That made me feel better about the haters. Haters abound. They're just a fact of life, part of the human condition. There's no need to waste energy hating haters.

Another perspective I gained was that decorating your mansion with works of art you know nothing about is amazingly rewarding, as long as you can mix it up by leaping across rooftops and assassinating bad guys and hanging with your buddy Leonardo. I swear, if they ever make a movie about my life, the handsome and dashing actor who plays me, when asked on his deathbed which of life's pleasures had given him the greatest happiness, will say something cheesy that makes the audience ooh and aww with appreciation, but it'll be total Hollywood bullshit, because what I really will have said was "gaming".

Yet another perspective I gained is that I now actually agree with everyone who complained that my blog posts were too long. Reddit has ruined my attention span for online material. There seems to be no such thing as too frequent, but there's definitely such thing as too long. So I'll be better about that.

I used to have this pet theory that the length of my blogs is a big part of why they've been noticed at all. I mean, look at this dude. If he'd written only one or two crazy things, he'd be just another nutjob, but by dint of almost superhuman persistence he's managed to get the entire world to laugh at him.

I was sort of aiming for getting people to laugh with me, but I used the same basic recipe as Time Cube Dude. And the formula seemed to be working, modulo the haters.

However, Dave Barry -- my Personal Childhood Hero (66% liked!) -- always wrote his columns in chunks of 800 words, even if it necessitated inserting filler words such as "booger" and "legislative session" into his articles about wine tasting or car engines or bat guano, or whatever it was that caught his fancy that week.

Overall it seems likely that post-length is less important than factors such as quality, consistency, passion, relevance, and legislative booger session.

So I was originally thinking of writing up to a maximum of 800 words today, and I'm at about 500 now, but I've been really successful at my Not Caring Too Much Initiative, so... later! Nice chatting with ya. Cheerio!


Just to ensure this post isn't entirely devoid of content I'll share something important that I learned last year.

Here's what I learned: after Carpal Tunnel Syndrome, the second most common hand ailment is known as Trigger Finger.

Its more formal name is digital tenovaginitis stenosans, which is ancient Latin for "electronic hand inflamed vagina without writing", which I believe is why most people prefer to call it Trigger Finger.

I have it, you know. Trigger Finger, I mean, not an inflamed vagina.

Although Trigger Finger is "idiopathic", a fancy word meaning that doctors don't have a fucking clue what causes it, it is widely known in musical circles as a musician's injury. It happens to musicians who overpractice, usually in preparation for a recital, performance or recording session.

I found all this out after being diagnosed with it.

It is not idiopathic in my case. I have the benefit of hindsight, and I know exactly what caused it. It turns out that if you play a certain right-hand arpeggio on a classical guitar enough times -- where "certain arpeggio" here refers to Hector Villa-Lobos' Etude No. 1, and "enough times" is approximately 650,000 times in a 5-month period[wtf?] -- you acquire Trigger Finger. That's not precisely what I was playing, but it'll serve.

Trigger Finger is a painful, debilitating, demoralizing injury. I highly recommend not letting it happen to you. Your body will begin telling you when it's time to ease up on the practice sessions. Listen to your body when it says that.

As for specifics, there's not much to tell. My hand started hurting. Then it hurt real bad for a month. Ibuprofen and cold/hot packs didn't help. It got steadily worse. Even quitting guitar altogether for another month didn't help. I could no longer use my right hand, and it was beginning to feel permanent. I wasn't even sure why it was happening. I was terrified and I began to despair.

My Google doctor was great. She referred me to a specialist -- a hand surgeon. I told her I didn't really want to see a hand... S-word. I could barely say it aloud. She reassured me that seeing a specialist didn't necessarily mean surgery. They might have other tricks up their sleeves. So I decided to brave it.

My first trip to the specialist only took about 15 minutes. She listened to my disoriented bleating, asked me a few questions, gently felt my hand here and there, and informed me that I had Trigger Finger. She said she was going to give me a cortisone shot. She was pulling out a giant needle as she told me this. It just sort of materialized from under the table, the way a knife appears in a bar fight. It was a very large needle. She explained calmly that the cortisone is a steroid that stays wherever you inject it. They use it on athletes to reduce inflammation from certain injuries.

Then she stuck the giant needle all the way into the base of my right middle finger and squeezed. Compared to the pain of my trigger finger, the injection felt like a mosquito bite.

She told me that I'd start feeling better in a week, and in a month I'd be pretty much all cleared up. If not, I should come back and see her for more treatment. And no, I wasn't going to lose my hand.

It was kind of weird, but on my way back to my car I think someone had been cutting onions in the elevator. A lot of onions. In the last fifteen minutes my whole life had been handed back to me with an almost casual lack of concern. I was overwhelmed with onions.

A month later I was back to see her. The cortisone had helped a lot. I gave it a 66% approval rating. She said she could give me another shot, or do surgery. This time I'd done my homework. I elected for surgery. That was back in September. It was an interesting story in its own right, but the upshot is she did great. And then after that there was a lot of physical therapy.

I typed the word "September" in the previous paragraph three times before I got it right. The word doesn't even have letters that need my right middle finger. My right hand, which had shaped itself into an unusable, agonized claw between March and July, is still afraid to flex and extend my middle finger. It's up to, oh, a 95% approval rating now, which I believe is phenomenally successful. Who could ask more of a hand surgery? It could have been much worse. Much much.

But that last 5% is rough. The haters in my hand are a constant reminder of the old pain. When I type, or play piano or guitar, my right-hand fingers twist and curl in elaborate, incomprehensible dances to avoid a pain that is for the most part no longer there.

Yep, I think it'll be easier to keep my blog posts shorter going forward.

Ironically, some good came out of the experience. I've switched to a sustainable new guitar style and a new repertoire, one I enjoy greatly. And I now pay much more attention to economy of motion in my typing. And I spend more time finding pain-saving Emacs shortcuts. It makes me wonder what I might have achieved had I focused on it sooner.

Surgery notwithstanding, on the whole I still think it was a great year. The year was in fact more complicated and more painful than I've let on here, but that's life for ya.

And now that I'm rested up, I believe I'm ready to start tech blogging again... in moderation, anyway. The rest and relaxation and research did wonders for me. I used to have lot of open, long-standing concerns about the future of programming and productivity, but my sabbatical last year finally brought me some clojure.

[1] Talk about caring too much. I may explain this 650k figure in a future blog post if I can ever get over my embarrassment.