## Grok it, Rock it, Drop it February 20, 2012

Quickly evaluating ways to simplify your problem space is an essential problem solving skill.^{1} However, this is extremely difficult to do in fields where possible solutions are rapidly growing (like software). To overcome this, I present **Grok It, Rock It, Drop It**.

The goal is simple: Continually be learning something new. Experiment and explore the new material or technology. Integrate the knowledge or technology and use the integration as the platform to launch into a new learning area. Following these three steps will allow you to quickly evaluate technology and effortlessly adopt it.

## Grok It

Continual learning is essential for producing an ideal solution to a problem. Getting in the habit of constantly reading, discovering, evaluating, and discussing new technologies grows your toolbox of approaches and maps out solution spaces for classes of problems. Deciding what to learn and how much to learn is tricky. Follow your own curiosity or try *Just Enough Learning*.^{2}

Identify areas of your problem that are high risk (if you get them wrong, your entire solution is guaranteed to fail) and areas of deep impact (where an ideal solution greatly reduces the overall problem). Spend no more than one hour quickly searching Google, Google Scholar, and tech news resources. Identify the few ideas, concepts, or tools to *Rock*.

## Rock It

Pick the technologies up and USE THEM. Go beyond recreating an example. Use the technology to solve a subset or possible subset of your problem. Your goal should be understanding the benefits, tradeoffs, and limitations to the technology. This is raw validation by means of a prototype.

## Drop It

Integrate. Right now, do it. Integrate the knowledge you gained in better focusing your own approach or integrate the technology. The more often you integrate smaller pieces that simplify your problem, the quicker you’ll arrive at an ideal solution. The natural byproduct of integration is a new perspective to tackle another area in the problem space, launching you back into a phase of learning and exploration.

- This is greatly stressed in Polya’s How to Solve It [↩]
- This term is glommed from the book, Just Enough Software Architecture [↩]