September 13, 2019

Putting Science back in Computer Science

I created this website to write and think about mathematics, physics, computation and the interface between these three disciplines. I am an engineer by trade, but lately I am getting more and more worried about the direction towards which this Industry is heading. This is what I call "Computers for computer's sake". When you see a culture where computer programming is treated like an "Art" more than rigid Science, things are ripe for battle. The war between vim and emac, between hard tabs and spaces, frameworks vs libraries, Windows vs UNIX, and countless other battles that have wasted valuable human hours and effort.  

I want to use computers to solve useful problems. Learning about linear algebra, simulating collisions of galaxies, deigning and studying self-organizing behavior, that kind of thing. I want to turn off this white-noise of buzzwords and fanaticism. I want to build something worthwhile.  

Control

We created computers to make human lives easier. These systems are fast, accurate and they don't get tired easily. In our arrogance (and laziness), we kept on adding layers upon layers of abstraction. Thinking it would make things easier for humans, when in reality we unnecessarily added complexity and then shoved it under a rug.  

Because we created these system, we reasoned that we had complete control over them. The complexity is man-made so surely man can handle it. Wrong. No one saw spectre or meltdown coming. No one predicted that one work around to improve CPU performance will have consequences. No one knew that emulating an ancient floppy drive could result in VENOM. In our ignorance, we looked at the harsh reality and rationalized it away. The reality that chaos is just as real for a man-made double pendulum as it is for global weather.  

Equilibrium

Something really interesting happens when we are honest with ourselves about reality. If we face harsh reality voluntarily, and try not to cheat it, our systems show robustness and reliability. If we are humble enough to conceptualize that our security is not perfect, we will be prepared for the inevitable data breach. If we realize that slicing cake won't create more of it, we actually invest in better hardware rather than over-prescripting existing ones. I hope to serve my clients in maintaining this delicate balance between the cold well-ordered realm of Numbers and Ideal cases, and that hot and cruel mess which is Reality itself.