How to write software that is ready for the world

The conventional wisdom in software development has always been that internationalization (i18n) is a very expensive and time-consuming effort, and that it's always better to target just one language first, adding support for more languages later, when the market demands it. Because of that perception, multilingual support is not often considered during the early days … Continue reading How to write software that is ready for the world

Understanding Software Engineering Job Titles

The world of professional software engineering is full of titles and grades. Employers use job titles as a means to help them build new teams with the right mix of talent, attract the right caliber of candidates when hiring, create attractive career paths and assist with compensation planning. However, many companies assign titles differently, making … Continue reading Understanding Software Engineering Job Titles

3 Signs of Narcissistic UI Design

User Interface (UI) and User Experience (UX) design is hard, no doubt about it. Sadly, many software applications appear to have been built by narcissists, because they seem to assume that: We enjoy being constantly interrupted by them We love to repeatedly try out every feature available they have, including things we will never need … Continue reading 3 Signs of Narcissistic UI Design

The Programming Language Skill Scale

Beginner Know nothing about it Know enough to successfully pretend to know it during lunch Know enough to be dangerous with it Know enough to be employed to be dangerous with it Intermediate Know enough to ask intelligent questions about it on Know enough to answer n00b homework questions about it on Know … Continue reading The Programming Language Skill Scale