Showing posts with label how-to-organize. Show all posts
Showing posts with label how-to-organize. Show all posts

Wednesday, October 23, 2013

Deliberately build a shared vocabulary of effective terms

How many ideas are in the title?
 There are two separate ideas in the title:
1. The first is to deliberately build a shared vocabulary
2. The second is to build a vocabulary of very specific terms that represent effective ways of working.

Why is a shared vocabulary useful?
It quickly communicates the intention of the speaker and the listener quickly understands what's being communicated.
 What's a more effective way of saying "terms that represent effective ways of working"?
Say ewow words instead; the word ewow stands for effective ways of working.

What is the take-away from this post?
The thing to do then is as follows:
1. Identify an effective way of working from studying cases where it has been used.
2. Associate an ewow term with the identified effective way of working
3. Use the ewow term individually and in groups and communities

Other open questions:
What are cases of shared vocabulary contributing to success?
- I'd imagine in highly specialized activities e.g. surgical rooms or air traffic control
What are cases of not using shared vocabulary contributing to failure?
- Cases of failure from misunderstanding - would a shared vocabulary have helped?
What are cases of using ewow words contributing to success?
- I'd look for highly effective teams with some ewow terms e.g. extreme programming practices?
What are cases of not using ewow words contributing to failure?
- Need some work here.

Saturday, July 20, 2013

Preconditions for a self-organizing system based on Lyapunov Functions

Self-organizing systems based on Lyapunov Functions

Lyapunov functions can explain how a city/system self-organizes.

Consider Disneyland with 5 rides and 5 customers. Each ride can only service one customer.
  • Each customer first waits at the gate and writes down the sequence of rides they plan to take
  • Once the gate opens, each customer goes to the first ride on their list
  • If more than one customer goes to the same ride, then someone have to wait and a ride somewhere is empty.
  • To avoid waiting, customers in queue will then choose rides with no queue.
  • This behaviour collectively result in every ride being occupied and no queues.
  • The system self-organizes.

Pre-conditions for self-organization

However, self-organization happens only if certain preconditions are true:
  1. Perfect information - e.g. all customers know exactly which rides are empty (say within visual range)
  2. No cost to switching - e.g. customer can switch to another ride without cost
  3. No barriers to switching - e.g. all customer can switch to any other ride at any time
  4. No externalities - e.g. customers behaviour are independent, one taking a ride does not affect another taking a ride
Consider if the the opposite conditions hold:
  1. Imperfect information
    • e.g. customers cannot see which rides are empty (e.g. rides are in housed the buildings) so they'd rather continue queuing rather than risk going to another ride which may have a longer queue
  2. Costly switching
    • e.g. rides are very far apart and to walk to the next nearest ride takes half a day - then customers may rather stay put
  3. Barriers to switching
    • e.g. rides are segregated to VIP zone and normal zone - normal customer cannot access VIP rides even if they are empty.
  4. Externalities
    • e.g. when Customer A is a sloppy person and leaves behind a trail of food and grime everywhere - other customers will then be reluctant to go on a rides that Customer A has been on

Other examples of self-organizing systems

  • Checkout queues in a hypermarket encourages self-organizing customers
    • Consider what happens if the checkout queues are split into 3 separate groups
  • Multi-storey parking buildings with the number of free slots at each floor prominently displayed
    • Drivers get better information and make better decisions
    • Consider a crowded parking building with zero information

Structure, Behaviour, and Presentation


The separation of a system's internal structure, behaviour and external presentation is inherent in application domains:
  • GUI Applications: Model-View-Controller
    • structure = Model, behaviour = Controller, presentation = View
  • Web Applications: HTML, CSS, Javascript
    • structure = HTML, behaviour = Javascript, presentation = CSS
  • HtDW Applications: Data definitions, Function definitions,
    • structure = data, behaviour = function, presentation = missing

Structure is  internal.
Presentation is external.

Tuesday, July 9, 2013

Reusable Building Blocks

Reusable Building Blocks

Reusable logic offers predictability and performance enhancements over time. Predictability comes from standardization while increasing performance comes from competition.

Example: Code Libraries

The Standard C library is a standardized collection of header files and library routines used to implement common operations, such as input/output and character string handling. Users of the library can rely on the functionality provided and build on top of that functionality thus becoming more productive. The performance of the library can also be enhanced over time by developers of the library and these performance enhancements benefits all users.

Example: Game Engines

A game engine is a system designed for the creation and development of video games. Developers can rely on the functionality provided and build on top of that functionality thus becoming more productive. The performance of the game engine can also be enhanced and all users of the engine benefits.

Example: Amazon Web Services

Amazon Web Services offers a complete set of infrastructure and application services that enable you to run virtually everything in the cloud: from enterprise applications and big data projects to social games and mobile apps.

See also:
  1. http://en.wikibooks.org/wiki/C_Programming/Standard_libraries
  2. http://en.wikipedia.org/wiki/Game_engine
  3. http://aws.amazon.com/

Sunday, July 7, 2013

Redefinition of Meritocracy by The Habari Project

Redefinition of Meritocracy

I like the definition of meritocracy found on the homepage of The Habari Project.
Habari is a vibrant open source project that embraces the concept of Meritocracy. In a nutshell, if you are a positive force in the community you are given more authority. This applies to people from all walks of life, not just developers. We are always looking for help in one of the following areas.
Which contrasts with the usual definition of meritocracy:
  1. A system in which advancement is based on individual ability or achievement.
    1. A group of leaders or officeholders selected on the basis of individual ability or achievement.
    2. Leadership by such a group.

Solution to What Problem?

This Habari Project's definition of meritocracy solves, for me, the issue of who should be given more authority.
Question: Who should be given authority
Answer: Those who are a positive force in the community