I came across two articles about web-based interfaces for source control. The first is a critique of GitHub’s UI. The second is an explanation of some of the design choices for Sourcehut, a new 100% free and open source software forge.
If you’re interested in interfaces, or software engineering tools, I highly recommend reading both. They are short, will only take a few minutes of your time, and maybe make you think about functionality you take for granted, or issues you’ve learned to ignore and live with.
Personally, I like GitHub’s general prettiness, but I agree that there’s a lot of unnecessary UI elements, and not enough of (what I would consider) key features for effectively browsing source. The above-linked article mentions the difficulty of switching between individual files, history and branches, while links to Enterprise pricing, or starring repos are on every page. Part of that can be chalked up to GitHub’s position in between a software forge and a social network (because we’re still in the phase where we think everything needs to be a social network).
To be fair, Sourcehut is a bit too spartan for my tastes. If nothing else, I like good use of whitespace and nice fonts. (Aside: consider using Fira Code or Triplicate for displaying source code.) And I can’t tell how to easily move between code and history views on Sourcehut either. But at least its motivations are more clear, the appearance issues can probably be solved using user style sheets, and if you’re really peeved about its choices, you can fork it (though it’s almost certainly not worth the effort).
I haven’t really used similar tools (except for a pretty barebones code diff and review tool at a company I worked at briefly), so I wonder if there are other examples that can provide interesting lessons.
Around the Web
The Beauty-Happiness Connection
I’ve been living in Boston (or Cambridge to be more precise) for the past few months and it has been good so far. Boston is a quite attractive place to live, with all the universities and the museums, architecture and open spaces. Though there are certain deficiencies to my life here (I haven’t built a solid social circle yet), as this article says, being within easy rich of various forms of beauty has been quite enjoyable.
The Weightiest Question in the Smallest Number of Words: Retelling the Nietzsche Story
Since sitting down and actually reading Thus Spoke Zarathustra a few years, I have been a fan of Nietzsche (and one day I should really sit down and read all of his work). And over the years I’ve become increasingly fascinated by the intellectual webs that writers and thinkers find themselves embedded in (in no small part due to reading Brain Pickings). So of course I found this interview of Sue Prideaux about her forthcoming biography of Nietzsche very interesting. It’s only about Nietzsche, but situates his work in the context of his life and the people he knew and communicated with.
The Freedom to be Free at Work
Talking of things I have become interested in during the last few years, I have been increasingly concerned about how “work” and “productivity” should be situated in the broader frame of our lives. Of course, this is well-trod ground and in this case we get to see Hannah Arendt’s footsteps in this region as she ties together notions of work, labor, creation, consumption and humanity’s connection to the “metabolism of nature”. Hopefully a thought-provoking read on a Sunday afternoon before starting the workweek anew.
Spotify CEO Daniel Ek on Apple, Facebook, Netflix and the future
This is probably the most balanced interview I’ve ever read from a software company executive. Daniel Ek’s perspective on technology and his company’s place in the world shows much more humility and a more nuanced understanding than we’ve come to expect from technology companies. It’s a refreshing read and offers a lot to learn, for anyone interested in understanding how to manage people, lead companies and leverage technology for effective social change.
Why Writing Matters in the Age of Despair
One of my goals for post-PhD life is to write more, on both technical and non-technical topics. So far I’ve been managing to keep a more or less regular habit of writing privately, but been publishing very infrequently, but am hoping to change that. As the author notes: the limits of our stories are the limits of our lives. Our words should open up the world, not close it off. Our words should include all, not trap them in cages. I see every story, every word as a struggle of memory against forgetting.
Nick Offerman’s New Definition of Manliness
I’ve been a big fan of Nick Offerman ever since watching Parks & Recreation. This article seems to sum up his view on life and manliness, which in turn is summed up by his line about whiskey: my advice is to craft your life in such a way that your whiskey drinking can be for enjoyment, which means that it’s delicious and in moderation, rather than for escapism, or to obliterate your consciousness.
Around the Web
Lena Dunham Explores Alone Time After a Breakup
I recently moved to a new city to start a new job and am in the slow and not-quite-steady process of rebuilding my social circle. Though it’s not the quite the same flavor of loneliness as after a relationship, being comfortable of doing things entirely on one’s own again takes time and effort. On the one hand, I know that this too will pass, but on the other hand, knowing that doesn’t necessarily make the awkward or uncomfortable moments any less awkward or uncomfortable.
The Most Important Skill Nobody Taught You
One side affect of finding oneself alone again after being used to a vibrant social life is getting used to a larger-than-usual amount of quiet time by oneself. As a child, and during most of my teens, I was content, and quite happy with a lot of time to myself. Over the years, I seem to have lost that ability, at times feeling like a part of myself is missing. The modern Attention Economy makes it all the harder for sitting quietly with oneself to be a normal part of daily life, and that in turn makes periods of solitude all the more uncomfortable. I’m hoping that this is another skill that can be (re-)learned given enough time and practice (both of which I have ample of for now).
Conjuring Creative Permission from our Tools
For a long time now I’ve considered myself a materialist — I like nice things, especially when it comes to things that I use day in and day out. But I also like having a small number of such things and taking good care of them (the difference being a materialist and a consumer is something I’ll explore another day). Craig Mod is also one of my favorite writers when it comes to the question of tools and how they can shape and direct your creative work. Pair this with his excellent GF1 Field Test and Leica Q Field Test.
Star Wars : The Clone Wars
A conversation about Star Wars during a long drive made me start rewatching this wonderful animated TV show set in the Star Wars universe during the Clone Wars (as the name suggests). It has a broader range of characters and more in-depth story arcs than the movies and is a testament to how good storytelling can be with a good premise and enough time to do a good job (which probably goes part of the way to explaining the recent increase in really good television shows).
Yesterday I rewrote about half (the entire front-end) of a project that took me and two other collaborators several months to complete a few years ago. At the end of a solid work afternoon, I had things compiling and running, but in a very buggy state. Unexpectedly, the associated feelings turned out to be somewhat bittersweet and conflicted. I’m happy and proud of how much I’ve improved in the years since I first worked on this project, but I’m also sad thinking of how much faster and better things might have gone originally if I had known back then all the things that I know now.
Later in the evening, I learned something new (GADTs and how to use them in OCaml), which makes me hope that in a few years I’ll be even more capable than I am now. At the same time, I’m also wary of falling into the trap of rehashing old projects and ideas with new tools and techniques, rather than moving forward into new areas.
A part of me really wants things to be “just right”, not just when it comes to work, but in the rest of my life as well. It’s almost a visceral when I have to deal with things that don’t seem (close to) perfect for long periods of time. But at the same time, keeping a steady pace of progress in research and engineering requires knowing when things are “right enough” and moving on to the next thing.
Navigating that boundary isn’t something that I have a lot of experience, but I’m hoping that just like my programming skills, it’s going to be something I get better at in the coming years.