Archive for the 'Hitchhiker's Guide To SW Dev' Category

Mouse Gestures

Wednesday, May 24th, 2006

Mouse gestures are the latest word in user interface usability.
After years of research, numerous focus groups, and endless discussions with world famous ergonomics specialists, the Software Usability Consortium (SUC) has decided that the one feature that will make software more usable and natural to users is the ability to represent common commands as an intuitive […]

Coding Standard

Friday, April 21st, 2006

A Coding Standard is a common document defining a set of simple, mainly structural, rules for writing code. Software companies tend to sanctify this document and see it as the ultimate answer to their quality problems.
In 1990, the Software Coding Standards Consortium (SCSC) has decided that words in the name of software-related consortiums should be […]

IDE

Saturday, April 1st, 2006

Integrated Development Environment.
A software development tool with capabilities such as visual designer, code generators, code formatting, auto-completion, etc. Many IDEs also support the addition of plug-ins to enable more functionality to be added by third parties.Many people in the software industry still consider IDEs to be less productive tools for writing software, which should never […]

Crisis Mode

Tuesday, March 28th, 2006

A general term referring to any activity done to address an unexpected problem revealed at a highly inconvenient time, although it should have been anticipated and handled earlier.
Psychologists who studied closely the software industry found out that working in a crisis mode usually brings the best out of people. A group of researches from Boston […]

Deadline

Friday, March 24th, 2006

A deadline is a managerial tool widely used to maximize the performance of employees. Its main purpose is to increase the earning of the company without investing more money in human resources (see also: Unpaid Overtime).

It is a strange, but well-established, observation, that a deadline can never be met. The reason is not the poor […]

Multitasking

Tuesday, March 21st, 2006

The term Multitasking originally referred to the ability to run two or more processes on one computer at the same time. This is usually achieved using a context switch mechanism, which means that each process is executed for a given period, and then replaced by a different process, while storing the state of the previous […]

Priorities

Tuesday, March 21st, 2006

The lexicographical definition of the word Priority is “Precedence, especially established by order of importance or urgency”. For years, tasks prioritization was successfully used for managing companies, projects and people.

At about the same time scientists first witnessed the hole in the Ozone layer, software developers around the world discovered a strange anomaly in the Priorities […]

It Works On My Machine

Sunday, March 19th, 2006

Soon after the extinction of punch cards, when programming became a task one could do using a personal computer, a new natural phenomenon was discovered. It seemed like software has a tendency to behave differently when executed on different machines. What seemed like an arbitrary behavior at first was then found out to be consistent […]

No Silver Bullet

Friday, March 17th, 2006

A classic.

Originally, the title of a paper by Fred Brooks suggesting software development is forever doomed to be a complex, unproductive and error prone task.

Until a while ago, this phrase was used mainly by managers trying to justify the quality of the work they are supposed to be responsible for. This usage was widely spread, […]

This Is By Design

Thursday, March 16th, 2006

While the origins of this phrase are not clear, it is widely accepted that the most probable place to find it is in the support knowledge base of a well-known software company, which would have copyrighted it if she could. The reason this sentence cannot be effectively copyrighted is that it is an essential part […]