Hope you folks are doing all right, staying at home, and wearing masks if you must go out. Last week was my last working day with Uber Engineering. It was a fun 16 month ride (I’ll write more about it once I have digested it a little) and now I’m sitting back and relaxing for a while.
It’s a pleasant fiction, of course. I cannot relax if I have a computer and internet.
Instead, I have been thinking a lot about Peter Thiel’s Zero to One. The idea that I keep coming back to is about how a lot of things we do today haven’t changed a lot for a very long time – houses, clothes, books, cars. After reading that, I’ve grown a heightened sense of “old” about the things we run into everyday, and more than earlier I have this craving to build some new-ness into my own life – a more seamless merging of technology into the day-to-day existence (I started by putting laptop and mobile chargers in every corner of every room – seamless charging is a good start!).
Here are some ideas which have stuck with me for some time on this theme. I’m happy to know if these are solved problems, and even happier to know what you guys think about them.
E-books should be more fun!
I read lots of e-books and I love the instant availability and access that this is simply not possible with physical books. However, I am beginning to feel that there is a lot more that can be done with e-book. The entire current “experience” of an ebook is identical to the physical book – bunch of words on a two dimensional piece of digital paper with perhaps the ability to highlight and take notes. Then there are separate audio-books where the same uni-dimensional experience is repeated, except with spoken word.
Given all the different forms of media that a browser can deliver today, it seems subpar that we should still have to consume a book in exactly the same way. Can we put together audio, video, text, and hyperlinks to build a richer experience that is also more seamless across devices and modes of consumption (e.g. I start reading a book textually, need to drive so switch over to audio podcast style, and cut-back over to text once I am back home).
Another way to think about this is in terms of what the difference is between a website and an ebook except that the book has a specific narrative while a website is more “undirected”?
These are a bunch of disconnected thoughts and I’m not really what I want the ideal ebook, but it is something I’m thinking a lot about.
Support this blog on Patreon
Like my ebook objection, I have a problem with the how software architecture diagrams have remained the same boring 2D structures which can talk about only one perspective. One thing to be said before anything else is that programmers don’t really know how to do diagrams in the first place. There are no universal standards, though UML comes close and the C4 model is gathering steam recently. But even so, is there really no other way to deliver architectural context than the ad-hoc boxes-and-lines scheme we use today?
In line with the narrative approach to software architecture I recently wrote about, How would it be to be able to use our architecture diagrams to interactively navigate a 3-dimensional space from higher level views to lower level views with the temporal element of data/call flow mixed in? Would this be better or worse than the current way of building a narrative using multiple different diagrams? I don’t know, but a good delivery mechanism might finally put an end to feedback like “can you depict this visually – all this text is not very intuitive”.
Can we meld images, explanations, text etc together to deliver that “intuitive” experience? I did a little Twitter and Reddit enquiry for this, with Simon Brown (the author of the C4 model) and many others sharing great insights, but eventually not a strong leaning towards yea or nay.
A Distributed Web
A distributed, semantic web is not a new idea. The idea of owning ALL my data without losing the insane power of the internet platform appeals to me tremendously.
Last week I wanted to buy a song and use it (without any copyright claim) in a presentation I was putting together. I couldn’t find a way to do this simple thing! The way I look at this is if I pay for something, it leaves the seller’s control and comes into mine, and it should be mine to do with as I please, where I please (within legal limits). But that apparently does not work – An iTunes song will play in one place, a Kindle book is elsewhere, and my calendar is running elsewhere.
I want all of my stuff in one place. In MY place. I want to be able to access it regardless of what the seller thinks of me these days, and I want other people to be able to build applications that can work with my data to give me experiences without me having to surrender the data to them.
The launch of Inrupt by Sir Tim Berners Lee and all the Solid related work being done has put ideas of democratizing this in my head. I’m thinking super-accessible self-sovereign identity, everyone in complete ownership of their data, and companies that use this data to build delightful experiences without having to resort to data thievery and criminal privacy violations. I imagine everyone with their own digital homes on the web, with all their data and little tools to work with it available anywhere.
I had friends before there was a Facebook – I want the internet to enable that for me again. I didn’t know the trends around the world instantly before there was Twitter, and I want that too. How can we get both?
This is what I’m spending my idle days thinking about. I’d love to hear what you guys think about these – drop a line in the comments.
If you are working on some other cool ideas, put it here and we can share the excitement!
I write about once a week about books, software architecture, and building platforms. Sign up for the mailing list at the bottom of the page to receive more updates directly in your inbox.