The desktop is missing crucial quality-of-life features
01 Jan 2023It was after I asked myself “why does setting the second bit of the keyboard controller’s port to high enable 21-bit physical addressability in x86 real mode?” that I realized my academic education had sunk too deep into the details. I know we need the nitty-gritty architects to construct a solid foundation of knowledge and best practices, but more so we need fresh dreamers to drive innovation beyond the conventional boundaries and find better ways to solve old problems. It’s the reason Nintendo banked on Miyamoto in 1977, a complete outsider to the gaming industry, and now the world has Donkey Kong, Mario, Zelda, and Pikmin.
Perhaps the most conventional computing field is systems, where its ancient roots yielded ubiquitous, Unixy solutions that persevere to this day. Resource constraints explain the uniformity in low-level design in the kernel, but advancements in computer engineering has allowed middleware to be ripe for innovation. As an iconic example, the Wayland protocol is improving both isolation and protection in window compositing. But what if we depart from the traditional scope and limitations of middleware? LLMs have cheaply added a formidable amount of robustness to today’s programs. So I thought over the course of a year, “what do I dream for my laptop to do for me?” After some Black Mirror deliberations, I landed on a list of realistic quality-of-life improvements. But here are a few of those deliberations off the top of my head.
Under the assumption that people’s routines are very predictable, intelligent programs can automate to a high degree of accuracy. They’re easier to predict than whether Schodinger’s cat is still alive or whether Overwatch 2 will ever have PvE (the answer to both is yes, but no). Everyone’s daily problems can be accurately summarized as the following:
Problem | Current solution | Ideal AI solution |
---|---|---|
Trouble waking up on time | Set 17 alarms to counteract snoozing | Tracks your wake up patterns and opens the blinds, plays your favorite music, and turns on the shower to coax you out of bed. |
Deciding what to eat | Research recipes and meal prep at the start of the week | Automatically picks a recipe you’ll like, pre-orders the ingredients to your refrigerator, and uses AR to guide you through the steps in your kitchen. |
Managing stress and mental health | Ignore it | Monitors your physiological signs through wearable tech and suggests therapeutic techniques in key moments. |
Trouble focusing on current task | Excessive time setting up task managers and note takers | Optimizes your schedule for your peak mental performance, sets up your workspaces for the next task, and filters distractions based on cognitive load to minimize interruptions. |
Balancing social life and hobbies | A calendar and enough discipline | Schedules social activities and personal time based on the user’s energy levels and commitments. Ensures consistent social behaviour to avoid feeling overwhelmed or lonely. |
Trouble getting quality sleep | Read a book and end up playing a mobile game until you get tired | Examines sleep hygiene (room temperature, noise level, light level) and controls home devices to optimize those conditions while enforcing consistent sleep timing. |
These features are clearly achievable with the state of today’s AI models, and wouldn’t they significantly benefit your life by automating the tedium seamlessly? Now I am aware of the countless third party solutions, but after the initial excitement and discipline wears off, they often become background annoyances that you try to force into your routine; software should be simple enough that you don’t even know its there, or at least that its not a default. Google can stop marketing that they value our privacy and don’t harvest every possible datum and sell said data to any interested company. They could be doing so much more to make our lives seamless, so why am I still setting my own alarms and looking up recipes?
- Complexity of tasks: Some tasks are simple to compute (
int am_hungry() { return 1; }
), while others are extremely difficult. Having a model that guesses what the user wants with acceptable accuracy, with low enough latency that the user doesn’t notice, and with minimal input from the user, is like wielding the whole Triforce; be ready for some compromise, unless you’re Ganon at the end of A Link to the Past. - Privacy concerns: The truth is there are two types of people in the world: the ones who deep down are ok with the fact that the Chinese Communist Party knows about their new Pilates routine as long as they can use their social media, and the small minority who use Tor browser for things that aren’t video game piracy or hard drugs. Maybe don’t pretend to care about Big Data while also publishing your life.
- Hardware constraints: Every computer is not yet running an Nvidia GPU and thus cannot parallelize with CUDA. But there is a silver lining… Even though the “in” trend in ML is using unimaginably large transformers that eat my 16GB RAM for breakfast, there are also itsy bitsy “edge-computing friendly” architectures that use clever compressions and pruning to run on even your decades old ThinkPad.
- Diverse user needs and environments: The way I use my computer is indeed far removed from the average user. I’m sure you have better things to do than configuring your window manager to open new terminals in the same directory. But most problems are universal to every computer owner. We can have different models that are tailored to different groups, rather than a one-size-fits-all solution.
- Economic considerations: Now here’s the kicker. The problems I’m describing are likely too niche to be profitable. But that’s the glory of open source software.
I belive most people prefer convenience over privacy after the initial creepiness wears off. Especially because technical limitations are subduing in the face of innovation in computer hardware and data science. I’m very interested in what professionals in this field think, about whether the productivity boost of intelligent software outweighs the long-term risks of automating our lives and potentially becoming dependent on big companies. It seems clear that open source programs would sidesteps these privacy risks, albiet at the cost of slower development and adoption. I would have no problem using OSS that implements decentralized machine learning, i.e. federated learning, which I could configure to my personal liking. But for now, how about we start smaller and make some quality-of-life improvements that could seamlessly benefit everyone.
How about the fact that my OLED laptop screen can display true blacks, but a sudden white image at night feels like watching a supernova with front row tickets. As display technologies converge to the infinite-contrast screen I’m looking at right now, the battle between dark mode and light mode users will only get more violent. Though my screen can move between complete darkness and lightness at 1/60th of a second like an Olympic sprinter, my eyes can only do so slowly like a lethargic, obese dog. Or how about the fact that battery doesn’t even last till the end of the day because of my power-hungry 4k OLED screen that is only used to render a terminal emulator and ChatGPT session, like using a Japanese chef’s knife to open a bag of cheetos. Alas, no one will make money off of software that dims your screen when you’re not around so the void can continue looking at the internet’s ostensibly white websites, but while saving battery. So until the government gives everyone a UBI and programmers can live happy Marxist lives under the tutelage of Richard Stallman, I will continue to use TLP and Dark Reader in the hopes that I can make it to the nearest charger before my beloved XPS’s battery enters the spirit world (seriously though, Dark Reader is an amazing plugin).
But somehow, I am glad that somewhere in the world, AI researchers are investigating topological neural networks and their implications on nudging me to purchase one brand of wireless earbuds over another. But Sony’s market capitalization will not capitulate to Bose if a handful of AI engineers solve my less profitable problems instead of making bank and taking vacations to Switzerland where they snidely remark about their h-indices while eating caviar out of gilded chalices. I may be using a pair of QuietComfort Ultras instead of WF-1000XM5, but the world will not be reduced to ashes. Although my laptop battery may last a couple hours longer…