Dec 30 2008

Business Tweets

As of late I have been more active on Twitter and often I just blast tweets about software development, business, and work life. Here is a synopsis of recent tweets and rants on business and design.

  • Old media is not only old, it is also fat, slow, dumb, and decrepit.
  • The work week: casual Mondays, martini Tuesdays, hump day Wednesdays, hookie Thursdays, and half-day Fridays.
  • If there is blogging, micro-blogging, and nano-blogging, then what is giga-blogging?
  • What about meta-blogging? It seems that a lot blogging is meta-blogging, link blogs and aggregators that rehash, repurpose, and repost.
  • This so called business analyst is asking developers business question.
  • Developing the brand usually takes longer than developing the technology
  • Reading past typos and grammatical errors in technical books, currently reading JavaFX Script: Dynamic Java Scripting for Something or Other
  • Maintaining a network should be more net benefit and not soo much work.
  • No joke but I just had to help an MBA send out a fax, the funny part is that he has our CEO help him with the cappuccino machine.
  • Marketing really exploits and abuses the misconception between free of charge and freedom. Free of charge is not free!
  • 50% off + extra 20% off does not add up to 70% off, it means 60% off. This is Marketing Math, designed to confuse even more than normal math.
  • Here is some more marketing math, ‘buy one and get second item 50% off ‘adds to 25% off.
  • The yogurt container needs to be redesigned, it is not optimal for extracting every last bit of yogurt in it.
  • Best shipping material: air bag used by Amazon. Worst package material: indestructible clear plastic used on electronics such as USB sticks.
  • Scotch tape dispensers need to be redesigned, the protruding metallic teeth used to cut the tape can easily scrape your thumb in heavy use.

I frequently tweet and update my social status. If you like to follow m or befriend me, feel free to hit me up on twitter, identi.ca, and/or FriendFeed.


Dec 30 2008

Software Development Tweets

As of late I have been more active on Twitter and often I just blast tweets about software development. Here is a synopsis of recent tweets and rants on programming and development.

  • Saying that a bug or a problem will be fixed in the a future release does not fix the it.
  • I have heard that some teams follow the Software Development Life Cycle. But I have seen teams follow the Software Development Death March.
  • It doesn’t matter how smart you are, or how smart I think I am. Regression testing will prove us both wrong.
  • Technology books such as those from O’Reilly or Apress need a ‘best used before’ born on date freshness seal. The information in tech books is perishable.
  • When people are too busy to learn, they are not being productive.
  • I am refactoring a 5K LOC class that is a melting pot of half baked design patterns.
  • This class is an exhibitionist, it doesn’t believe in hiding it’s private parts.
  • I go cuckoo for cocoa touch.
  • Obviously, you can’t connect to the server is you are not running the server!
  • If programming platforms where like political platforms, .NET would be republican, Java would be democrats, and python would be green party.
  • You can only stand in front of a client only if you know what you say you know.
  • Detained in Guantanamo Bay or in an Apple Tech Talk, either way I can’t talk about it.
  • The first rule of iPhone SDK is – you DON’T talk about iPhone SDK.
  • In Objective-C, a class is an object… Wow.
  • That is the mind bending aspect of it, an ObjC class is an object and yet there is +class methods… again, wow.

I frequently tweet and update my social status. If you like to follow m or befriend me, feel free to hit me up on twitter, identi.ca, and/or FriendFeed.


Sep 7 2008

Google Chrome

The Browser War is flaring up once again with the release of Google Chrome. Google Chrome is a new browser based on many freely available open source components such as WebKit and Firefox. Chrome is bare bones, chromeless, browser with very little UI fluff and decoration. It is interesting to note that the UI for the Google browser took a note from the companies colorful logo, the Chrome UI is very cartoon-like with a blue pastel color scheme.

Many of the features that are high lighted in Chrome are not necessarily revolutionary, instead I would say that the Google browser is retro-evolutionary. Chrome basically reduced the browser to the location bar, tabs, and content page.

The most touted features in Chrome are its crash control, incognito mode, and safe browsing. Chrome runs each web page on its own process so that if one page fails only that page is effected. Incognito mode is like Safari’s Private Browsing, aka Porn Mode, it allows you to surf the web without caching cookies and history of the sites you visit on your local computer. It’s safe browsing feature will help you to identify web sites with malicious code or applications. Many of these features are not entirely novel, so why would Google go to the efforts of creating a new browser?

What I think is novel is that Google decided to release yet another browser. The browser space is already crowded with Firefox, IE, Safari, Opera, Konqueror, and Flock to name just a few. It is clear that Google will align Chrome with its properties, search, applications, development tools, and user generated content sites. Seeing Google take this approach I wonder if other companies follow suit and release internet browsers that compliment their business. Can you imagine a custom browser from Adobe, Mcaffee, Oracle, Amazon, or EBay?

Chrome Web Development Disturbance
Via Noise to Signal

Technorati Tags: , , , , , ,


Sep 3 2008

Juixe TechKnow Software Quotes 2008

Here is a pile of quotes and anti-anecdotes relating to software development and programming in general. The quotes where compiled by digging through the mining the rants from Juixe TechKnow. The collection of programming quotes is available as a PDF document and can be found on scribd.

Anonymous Code Monkey

Your code does not start at the compiler nor does it stop at the JVM.

One lesson that most developers don’t learn is to debug outside the debugger. As an engineer there are times when you need to troubleshot, problem solve, and debug not just your software from the comforts of your favorite IDE but the whole software stack, network, hardware, user’s environment, and even the user himself.

You can unit test and statically analysis software, but you can’t probe your users.

Every problem, issue, and bug experienced by the end user directly and indirectly with your software eventually needs to be implicitly and explicitly dealt with by your software development team.

I wish development teams spend more time streamlining their process rather than prematurely optimizing their code.

It is OK to have software with bugs, bugs can be fixed. It is not OK to have software with excuses!

Learn, plan, design, code, integrate, build, release, rinse, and repeat.

Management has a way of over emphasizing the blatantly obvious.

I’m a lazy loading type of programmer.

I’ve discovered that Windows security is an oxymoron!

I know that techies, myself included, are always bragging about how their code is poetry but I have never meet a poet laureate in a development team.

Remixing and mashing up Google Maps and Flickr is like the ‘Hello, World’ first program of Web 2.0 mashups.

Open Source code equals community.

As a rule of thumb, I never cache, pool, or use as singleton mutable objects.

Bugs by nature are out of the box, as a developer, you need to expand the box.

WWGD: What would Google do?

At some companies, the term Spec stands for Speculation.

I went to school to learn how to program software applications, which inevitably have bug defects. There was no course at my university on testing, debugging, profiling, or optimization. These things you have to learn on your own, usually in a tight deadline.

To most Java developers, Ruby/Rails is like a mistress. Ruby/Rails is young, new, and exciting; but eventually we go back to old faithful, dependable, and employable Java with some new tricks and idioms and we are the better programmer for it.

You might as well hire your your customers and pay them 50K/year because they are your new QA.

There is a saying, those who can, do; those who can’t, teach. It can be said that in software engineering, those who can, code, those who can’t, manage.

The greatest thing about Ruby on Rails is neither Ruby nor Rails, the best aspect of Rails is that it questioned the ‘best practices’ (and worst nightmares) of the current state of web development with its philosophy of Convention over Configuration and Don’t Repeat Yourself principle.

Continue reading


Aug 28 2008

Hug a Developer

Devshop has created a satirical video of developers in tough times. The video is of software developers standing on street intersections or sitting on the floor outside coffee shops holding up small cardboard signs. Here is some of the text from the cardboard signs.

We’re 4 months into a 5 month schedule and I just received the final requirements yesterday. (and they’ve changed again!).

I spend half my days in meetings about how to get more work done. (instead of working).

My boss read in a magazine that developers using “____” programming language are twice as productive. So he bought us a copy and cut our schedule in half.

This is funny because it is true.

Technorati Tags: , ,


Aug 17 2008

Favorite Programming Quotes

The first 90 percent of the code accounts for the first 90 percent of the development time…The remaining 10 percent of the code accounts for the other 90 percent of the development time.
Tom Cargill

Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris.
Larry Wall

Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
Bill Gates

Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
Brian W. Kernighan

Once a new technology starts rolling, if you’re not part of the steamroller, you’re part of the road.
Stewart Brand

In theory, there is no difference between theory and practice. But, in practice, there is.
Jan L. A. van de Snepscheut

The hardest part of design … is keeping features out.
Donald Norman

Before software can be reusable it first has to be usable.
Ralph Johnson

If debugging is the process of removing bugs, then programming must be the process of putting them in.
Edsger Dijkstra

Software and cathedrals are much the same – first we build them, then we pray.
Sam Redwine

The goal of Computer Science is to build something that will last at least until we’ve finished building it.
Anonymous Consultant

The software isn’t finished until the last user is dead.
Anonymous Support Group Member

Better train people and risk they leave – than do nothing and risk they stay.
Anonymous Technical Trainer

Programming is 10% science, 20% ingenuity, and 70% getting the ingenuity to work with the science.
Anonymous Scientist

All programmers are playwrights and all computers are lousy actors.
Anonymous Hack Actor

Bad code isn’t bad, its just misunderstood.
Anonymous Code Behaviorist

It is easier to measure something than to understand what you have measured.
Anonymous Analyst

The sooner you get behind in your work, the more time you have to catch up.
Anonymous Scheduler

When a programming language is created that allows programmers to program in simple English, it will be discovered that programmers cannot speak English.
Anonymous Linguist

Benchmarks don’t lie, but liars do benchmarks.
Anonymous Tester

Why do we never have time to do it right, but always have time to do it over?
Anonymous Code Monkey