My Rackathon Donation

Standard

The OSU Open Source Lab has been good for open source. In my time there I learned about what makes open source tick, and that it’s not some mysterious cloud of elitist developers, but rather a group of people just like you and me who work hard everyday to keep things going and end up doing extraordinary things. Kind of reminds me of where I work now:)

So it wasn’t hard to join the Rackathon and donate some bucks to help support all of the projects they host. It’s the least I can do. If you enjoy the projects they host, send some money their way and help support them.

Every little bit counts.

Pac-10 Refs Suspended

Standard

Interestingly enough, the issue I talked about in my post about how the Pac-10 Refs Blew It in the Oregon vs. Oklahoma contest came to its conclusion today ending up in a suspension for the entire officiating and instant replay crew.

I understand these guys were under a lot of pressure, but there is no excuse when you have instant replay. It becomes less of a judgment call and more of a controversy at that point.

Maybe we should investigate further? Maybe congress will hold an emergency session! They did it for steroids… idiots.

Games shouldn’t come down to this. Period.

AMO Code Freeze

Standard

addons.mozilla.org code will be frozen for both the public v2 pages and the developer control panel code, aka v1 while we work on our planned rewrite of both tools over the next month and a half.

Security or major, major bugs, of course, will be worked on, but for the most part we would like to focus on knocking this next version out of the park. Join us in #amo at irc.mozilla.org if you have questions about any outstanding bugs you think are of high importance, or if you want to discuss the next version.

More information:

Sometimes moving forward is the same thing as learning better habits.

Pac-10 Refs Blew It

Standard

This Saturday I went to the UO vs. OU game (Ducks vs. Sooners) at Autzen stadium. The game was awesome, and the Ducks pulled off an amazing come-from-behind victory. Not a bad choice for a first time at Autzen. It was easily the craziest football game I can remember going to (except for Civil War of course).

Scout is exhausted after hiking

But while I was very impressed with the stadium, the fans, and the play of the Ducks… I must say the refs sucked, and they did so at the worst times of the game. Not that I’m a Sooner fan or I’m nay saying the victory — but those two calls they botched were pretty obvious on instant replay.

Now don’t get me wrong. I cheered for the Ducks, and it was frickin awesome to watch the stadium erupt. But if I were the head coach of the Sooners I’d be pretty pissed off too.

Bob Stoopes is right — the kick interference should have been called, and the pass interference call was incorrect because the ball was tipped (plus I didn’t really see the PI in the first place). It doesn’t take an expert to see this in the replay.

I wonder what the refs were saying during the 5 minutes they took to review each of the plays. It was probably, “If we change this shit, there will be a 60,000+ riot on our hands.” Hopefully it wasn’t, “But I put so much money on the Ducks!”

But hey, it’s too late now. Even Stoopes and the Oklahoma fans have accepted the loss and moved on.

In the bigger picture, it’d be cool to see Oregon go on and win the national title this year. If they do, it’d be pretty amazing, especially considering they could have lost this game if the refs made the correct calls.

Sometimes instant replay doesn’t help when you’ve got 60,000 plus screaming at you to hurry up.

Dogs, Cats and the Humanimal Bond

Standard

The humanimal bond is a word I just made up, but it’s something you probably already know. I first saw it back in high school when I was a part of the Animal Assisitve Therapy program, where I spent hours upon hours delivering pets to terminally ill clinics in the Honolulu area. It’s no question that people change when they are around animals (especially cute ones) and the bond between humans and animals was at play those days in high school.

I found it hard to believe that a rabbit or guinea pig could make such a big difference in someone’s life. But it did. And it’s not just anybody, it’s someone who knows they are going to die and is battling with the acceptance of their own death. Think about it.

So two weeks after adopting my first puppy I’ve had some time to understand the difference between dogs and cats. I’ve had a newfound appreciation for the humanimal bond in my life — in my family, which is what it is. My pets aren’t just accessories to my life like an appliance or piece of furniture. They are my children, really. Strange, right?

When I adopted them I entered an unwritten agreement with them. I promised to protect them and provide for them in return for their love and loyalty. So far I’ve done my best to hold up my part of the bargain. They’ve done their job.

From watching Rio and Junior chase Maia around to having the privilege of watching Scout grow up, it’s all been such great fun, and rewarding in so many unquantifiable ways.

Having been primarily a cat person, my first puppy has been a great experience, and I can see why people are so excited about their dogs. At the same time, cats do offer a bit more individuality and are less needy. So, I’m not going to enter the cats vs. dogs holy war, but if it were up to me I’d recommend getting at least one of each. It’s worth the hassle as long as you know what you’re getting into. It’s just like having a kid. If you’re ready, you know it, and you can do it and be happy.

There are skeptics. Maybe animals don’t affect us in some unseen way, changing our chemical balances and our overall demeanor. But, I’d guess those people don’t have pets. It wouldn’t take long to turn them around, I’d guess.

So, I guess I don’t really have a point except that I have grown to really love my pets — where in most situations I never thought I would be so attached to them. Even the most rational and technical of people have this part of them that is… human. And that part of them has room in its heart for a fuzzy something or other.

Friendship is something you can’t quantify. Maybe because there’s no number big enough to measure it.

USA Basketball Falls Victim to Ingorant Journalists

Standard

Chris Sheridan, you should shut up. All of this stupid buzz about USA basketball being a failure and a disappointment needs to end. Critics of USA basketball all have this belief that USA players, from the NBA, are the best players in the world and should be infallible. Oh really?

Just like our economy is perfect, and our diplomacy is always right, and whatever our president says goes?

This undying faith in the infallibility of ourselves is scary. For one, we aren’t indestructible. We aren’t the best. We used to be, until we messed it up with this arrogant attitude of ours.

Maybe we should realize that we haven’t changed, and the rest of the world has worked harder because of us. Certainly we could understand this concept — being a free market economy that encourages competition. Did we expect to have a monopoly on all talent and all championships worldwide?

Are we that naive?

Last night I stayed up late yet again to watch USA lose to Greece. Our players fell victim to poor coaching, in my opinion. Coach K has done a great job with creating a good environment, but they needed a pure coach last night not a mentor.

If you dissect the game, it came down two a couple of things:

  • Greece adjusted by utilizing the pick and roll offense
  • Coach K didn’t adjust to that — ever

So you really have to ask a couple questions:

  • Why were all of our best rebounders and shot blockers on the bench? You sit Dwight Howard and Elton Brand?!?! Are you retarded? No wonder Greece had more offensive rebounds in the second half. No wonder their point guards had clear paths to the basket.
  • Where’s the fricking zone? From an NBA coach, maybe I could understand obliviousness and a reluctance to play zone, but what is this stupid belief that, “oh yeah we can guard them one-on-one”, even though in the NBA nobody has figured out the pick-and-roll either except for teams that have played together for years? And from a college coach that actually understands zone defense? Unbelievable.
  • What is this Lebron James 1-on-5 bullshit? Don’t we have point guards to bring the ball down? Lebron, please, don’t play 1-on-5 on a zone defense then start complaining to the refs when you can’t penetrate from the top of the key. You’re stupid.
  • Where’s the full-court press? We saw it once in their 20 minute run. You have so many players and 20 minutes to catch up so why not press early? Use your depth. Drive them crazy. Don’t just sit back against the wall — fight! God, where’s the fight? Players should have just pressed on their own if their stupid coaches didn’t tell them to.

Overall, it was a good run. I think they will learn from this and move on. I’m sure when they watch the tapes they’ll realize their lack of adjustments and complete obliviousness, which lasted just about 20 minutes — during that time Greece went from 12 down to up as much as 14.

Next time I think they’ll react a bit quicker. It’s okay to go to a zone, guys. Just play the game and stop playing scared. A big part of that might be supporting our team better, and offering constructive criticism instead of the, “you’re a disappointment to your country” routine that is completely uncalled for and detrimental to progress.

They played a good tournament, man. Played hard except for a 15-20 minute stretch when their coach failed them, and they let their youth and nerve get to them. Let’s not crucify them for it.

USA Basketball isn’t perfect, and they don’t have to be. As soon as we start ditching the idea that we are infallible, we can learn how to be better. If we don’t, we will fail and point fingers.

Testing Habits Are Your Friend

Standard

As I’ve gone farther down the road I’ve learned the value of testing. My first introduction to unit testing was through JUnit in a Java project I worked on last year. Now, there has been a recent push for testing in PHP web apps that used to be homegrown in the worst ways and need to extend past the typical “what, it works, shutup” approach to PHP testing.

Not testing is not healthy. Sooner or later you’ll be wrong, which will make you a huge jackass. And nobody likes being that guy. I know I have been on occasion. It sucks, and it can make people second guess you, which sucks even more down the road.

So cover your ass by making a paradigm shift when it comes to your development habits and approach:

  • Create tests that you know would work if you wrote your scripts right — as best you can, don’t go for 100% coverage, just get something up there to mimic the typical “yeah okay it works at least, but not quite” once-overs you do
  • Assume what you’ve written is wrong
  • Run your tests, and see if they work

I’ve been convinced that this approach to programming is much healthier (thanks Shaver) because it forces people to think before writing the bulk of their code — possibly alleviating problems before they happen. Duh, right? Everybody knows that, right? Well, not everybody does it, and there’s a big difference.

I think that ideally, everybody would create tests for just about everything possible, but I do have some reservations when it comes to that.

For one, sometimes you just don’t have time. This is a terrible excuse, and I guess it depends somewhat on the scope and sensitivity of your project. But, if your project is planned right you should have the time and resources to get in a fair amount of code coverage without jeopardizing your timeline. And, arguably, if you’re already used to a test-oriented approach to development things might actually be faster.

Another thing I’ve tried to identify is when I’m overdoing it (this is more of a fear). So, okay, you want to test your code as much as you can, but there’s a line I wouldn’t want to cross. It’s the line between having a complete and working end product and having an incomplete product with complete and exhaustive tests. In that case, I’d vote to let some of the testing slide, but not all the way, in favor of a more complete product.

The long tail of development can pick up the slack for more exhaustive tests and bug fixes that you ideally would only fix once — write a test for the bug, fix the bug, done. Most of it would probably be doable during alpha or beta releases — it’s what they are for. I’d argue that it’s also more productive during that time because you might have a better knowledge of your app and be in a better position to spot unforeseen problems and write proper tests.

I’ll be honest; for me it’s been a bit of a learning experience. A welcome one, for sure, but frustrating at times because you’re always going to run into “oh shit, my bad” situations when you’re trying to change mindsets and unlearn bad habits. In PHP, I think this is probably a bigger issue than in other languages because it already lacks a bit of structure by nature. There’s also the programmer laziness hurdle to overcome. It’s a big one.

There are some decent PHP testing tools out there that sometimes gather dust — especially in PHP. But, if PHP is going to break more into enterprise development, I think they will gain in popularity. Here are some PHP testing links for you:

So — PHP developers, it’s time to stop being lazy and take a serious look at this stuff. If you get an irritated feeling because I said that, it’s because you’re wrong and you’ve just gotten used to being wrong.

Comfortable and easy doesn’t get you anywhere in the long run.