37 Signals does it right with mobile

A perfect example of what should be done. It doesn't take a company with the power of Google to create a proper web app. A small team can recreate a good app too. The need for a native app is just not there. The team at 37 signals have opted to not have 4+ versions of a basecamp mobile (ala 1990's) and instead take advantage of the technology available right now. This is why web apps are where it's at. As a regular basecamp user, I can say this app is good. I'm only missing the ability to reorder the todo lists …more

hey! bad programmers!

Listen up. Yea you. Please stop writing code that intermixes presentation with data. Please, please don't create a class that abstracts out the model and then rely on POST superglobals! Damn! What was the point of writing that class anyways? Coupling is bad. Now I can't reuse this >:/ .

Yea, I'm on a project that looks like it was written in the late 90's. Only...it wasn't. Written in PHP with intermixed presentation and data handling all over the place. Tracing through it is necessary to find out wha…more

The Outsourcing Low Cost Lie | Lessons of Failure

The Outsourcing Low Cost Lie | Lessons of Failure. I have to agree here. I find that the cultural differences between the US and other countries are astounding. We as a country give little instruction and expect the professional to use some of his/her time for discovery and using their professional judgement. After all, that's why we pay them. I have found that a lot of time is spent using a waterfall approach to the…more

Hacking bad code to make it work

Should we ever put up with hacking bad code to make it work for right now? Is there such a thing as a temporary solution? Every so often I fight this mentality at work to just patch the code and make it work for right now. The "we need this yesterday" solution without ever thinking about the future consequences of our actions. As much as I fight against, sometimes I have to do it. I hate, hate, hate hacking something up. I preach the fact that there is nothing more permanent than a temporary solution. I know it's…more

Css hacks

I was just reminded of some css attacks that I had used just toying around. I was reminded because an update came across my rss feeds - yammer updated it's Adobe Air client.

This started when we started using yammer for inter-office communications among the programmers. Of course we had one who always tested the bounds of security, not for anything illegal, but for an excercise. He instantly started to try and find holes with yammer. I can't remember specifics, but I think he started with script in…more