> "I don't understand why you give this stuff away, it's worth a lot. I mean screw capitalism, yea I get it I mean right there. But Universities pay a lot of money for these things. Why make them for free? How does that get you rich"
It's not the first time it's come up, though this was definitely a more direct line of questioning then is typical. It's these promptings though that convince me [sic] that we live in a simulation, or at least that I am. Nothing else could explain why these mile markers are placed in my path except divine intervention (which a simulation would surely be someone more powerful then us placing the VR googles on the Matrix bodies; but to be less silly...)
We are reaching a critical inflection point in the near future. The point of singularity where I don't know where the road goes. It's one thing to project in 2015 the things we'd be working on by 2020. It's another to present an idea and call it Structured Anarchy about the systematic messiness of application development in institutions (education being just one). And.. it's an entirely different feeling and experience living the pieces falling into place. Seeing the alliances and relationships form, feeling the momentum (of what?) and the hair on the back of your neck stand up in disbelief that things could keep going the way they have been going. As we progress, let me assure you of one thing:
## _This was all according to plan._
See, it's like the human genome project. It takes years of effort to get the first 1% done and then after that a long time but less so to get to 2%. Then, after hitting that critical theashold (whatever it is, 10% we'll say) the rest is finished in a matter of weeks. How is this possible? There are 100 things and you did 10 in x time, the other 90 will surely take x*9.
It's because programming (and deprogramming in the case of genome) can stack and repurpose knowledge and capabilities. Unlike lifting 100 boxes one at a time into a truck, with patterned software development once we lift 1 box we've liften 10. And once we lift 10 boxes we now can lift 100. The pattern of exponential growth in capability to solve problems is because of the field itself. You solve one problem in a modular way, you roll out the modular way in a pattern, and now you've got an exponential amount of capability just in that one problem space. Now modularly solve the next, and the problem those create, and combine these solutions to solve that one. Suddenly your exponential capabilities are solving things exponentially.
Now, I saw a huge aspect of the problem space solved in a single day. Is it because we already built that and now know what it is? Partly yes, past knowledge of the problem helps frame future solutions for sure. But the libraries and techniques we can now leverage mean that when we solve 1 problem (say... a button design) we're now solving that "problem" in every future project we take on. In this way, things that once took weeks and months of development (I'm not talking planning / ideating, coding, typing things, testing, etc) now can be done in hours and days.
This is because our backend modularity and pattern based design now has a place on the front-end thanks to Webcomponents. Now we can pattern based deploy our modular front-end assets. Meaning that when we make a button better, we've made them all better. Meaning that when we need to build a new thing, the button can be assumed. Now button sounds small (and it is) but let's replace button with modal, card, menu, block, layout, grid system, navigation pattern, form entry method, json data loading, ANYTHING. ANY. THING. If we can build it as a component then we can repurpose it into others. This almost doesn't feel like coding based on how coding has felt the last 10 years, this feels like building things with legos (and I looooooved legos growing up).
## Tiny things
So while we trickle out small pieces (a [outline](https://github.com/LRNWebComponents/lrnsys-outline), a [grid system](https://github.com/LRNWebComponents/responsive-grid), a [PDF](https://github.com/LRNWebComponents/pdf-element), a [mp3 player](https://github.com/LRNWebComponents/paper-audio-player), a [video player](https://github.com/LRNWebComponents/video-player), a [gallery](https://github.com/LRNWebComponents/lrndesign-gallery), the list goes on) that's not really what we're building. These are just by-products of our new found capabilities. We don't have just these either. We've got [122 repos of these little pieces](https://github.com/LRNWebComponents) and these are just the ones we've shared so far. When we get into full on apps (powering parts of elmsln) there are another 10 full on headless applications that are running there.
These little pieces; these little things. While we've been putting out these ripples ([and some are very cool](https://www.youtube.com/watch?v=dhD6Y77eXmc)) I implore you not to focus on them. But look out a bit further and see the tidal wave that's brewing. A wave which I assure you, is coming a shore soon.