Abstraction: Selective ignorance of certain elements in order to focus on other elements.

In software development, abstraction means you zoom out and see the big picture. You ignore minor implementation details–what are the little pieces? How do they work?–and focus on the whole. These are the systems and how they fit together, and this is the overall goal.

When you employ abstraction, efficiency increases. No longer bogged down with function pointers, memory management, or 16-bit register values, you focus on how to make your software work better.

Similarly, when you’re in the upper echelons of an Islamic organization or project, employ abstraction. Ignore the little details to improve your efficiency. This doesn’t mean you neglect them–someone handles them. But focus on the big picture–don’t do everything.

For example, if you’re planning an event, don’t be the person at the door taking coats, and the person at the registration table, and the person who books the speaker and location, and the person who advertises, and the person who manages food preperation. Focus on the overall event–this is the overall theme, we want one of these speakers and a location in this city. The rest is, as they say, implementation specific.

And this way, you can focus on long-term and overall goals of any event, as well as planning and management of multiple events, instead of being a superstar for one event.

Wallahu ‘alim.