Programming made for humans
Writing less code and using an interface to program on the web
Bret Victor did a talk recently called “The Future of Programming.” In it, he acted as if he was giving the talk in year 1973 (even using an overhead projector for his slides) and imaged what programming might look like 40 years into the future. The point of the talk was to present ideas from that time period about how we interact with computers and how those ideas are still relevant. This is because we basically still give direct instructions to computers through a programming language designed primarily for the computer to understand instead of the computer doing the additional work to interpret what we want done.
I think the web in particular is a good example of this. When I first started creating web pages as a kid over 15 years ago, there was a web editor built into the web browser itself and all the editing was visual, no writing code required. Sure, a lot of the way the web works now has changed since then, but the fundamentals of viewing a web page are still basically the same. And yet somehow, all previous attempts at website creation tools have failed (Microsoft’s infamous FrontPage editor comes to mind). I’m still having to program HTML and CSS by hand to get a page to look like how I already designed in Photoshop.
Among these new tools, we’re finally starting to see more effective editors for visually designing web pages as well. Webflow is one of the more recent tools to do this. What makes it different from previous editors is that the tool works around the code in generates, making it readable for computers to output a web page as we would expect it, a feat former editors were never able to fully grasp. This allows us to more easily work on complex concepts like responsive websites for multiple devices, a process which has greatly increased the programming effort of even the most basic site in recent years.
We may have been stuck in the past in how we program for the web, but it definitely looks like things are changing.
Keep in touch and get updates on what I'm working on and thinking about.