My uncle always teachs me to think for three seconds before I say anything.
During my IT career, I found this rule can apply in software engineering. "Please thinking for three minutes before you write code."
I need to think more before coding. There are many many effects. I need to consider the whole system, not only the parts of my code. Moreover, the cowboy code will effect the maintenance of code base. This is impossible to follow my cowboy code.(note code: my code can be very very hard to read).
Today, A friend asked me about broadband and Notebook computer. I suggested her to buy something good enough for her current. I suggested a notebook costs around $1000 and an ADSL plan. There are a tons of choices if she spends more. But I only suggests the middle range products. The technologies are changing so fast. The IT products will be outdated very very soon. Why don't save some money, then she can change a new one later. I have a friend, he always disagree my views on this. He has spent three times more than me to buy a high-end IT products. He said he don't change the products as frequent as me. He said at the end, I spent similar amount of him on IT products. Well, that may be the case. But his IT goods life cycle like this, High-end -> Middle range -> low end-> outdated(he needs to buy a new one). Mine is Middle Range -> Low end, sells it -> Buy a new Middle Range -> Low End, sells it. I can have always middle range.