I’m fortunate that I got a high school education in a US public school system built during a period of post-WW2 abundance — when we invested in the future. I feel doubly fortunate that I attended NYU when a college education was seen as a universal good. I remember that post-9/11 politics in the US … Continue reading Hypernormalization and distrust| Andrew Montalenti
One of my favorite old Linux jokes is, “Linux is free… if your time is worthless.” This quote is possibly adapted from a jwz interview dating back to 1998. In it, he said: I think Linux is a great thing, because Linux is an alternative to [major operating systems], and because, of all the operating … Continue reading Linux is free and your mind is valuable| Andrew Montalenti
In 2017, CrashPlan was one of the most popular full-computer offsite/cloud backup tools for consumers. It had millions of paid users, usually paying around $10/month for a few terabytes of offsite storage. But then… “On August 22, 2017, Code42 announced they were shutting down CrashPlan for Home, effective in October 2018. They were not accepting … Continue reading Linux backup workflow for hackers with restic, rclone, Backblaze B2| Andrew Montalenti
I’m glad to say that the last few months have been a return to the world of day-to-day coding and software craftsmanship for me. To give a taste of what I’ve been working on, I’m going to take you on a tour through some damn good Python software I’ve been using day-to-day lately. Python 3 … Continue reading Good Python Software| Andrew Montalenti
I have a long relationship with digital media. I’ve been blogging for decades. I’ve been a news junkie forever. And I started a startup in the real-time and historical content analytics space (Parse.ly) that ended up shipping a widely-used product in the industry. What’s more, Parse.ly’s network-wide data (billions of online news reading sessions every … Continue reading My relationship with digital media in the last few years| Andrew Montalenti
“The unexamined life is not worth living.” This famous quote comes from the history of philosophy, supposedly said by Socrates, as recounted by Plato, in his “Apology.” Over the years, however, this quote has also become a kind of aphorism, suggesting that philosophy — that is, discussions around the ideas of historical and modern philosophers … Continue reading The Partially Examined Life: a podcast, a new book, an antidote to doomscrolling| Andrew Montalenti
I recently upgraded from a Google Pixel 7 to a Pixel 8 phone. Nothing earth shattering about this upgrade. Incremental. “Performance smartphones,” as the DOJ recently called iPhones and high end Androids, have leveled off in core functionality. The Pixel 8 is slightly smaller than the Pixel 7, which makes me happy, as I treat … Continue reading The smartphone app audit| Andrew Montalenti
When I describe my programming background these days, I say that I code “primarily in Python, JavaScript, Clojure, C… and Zig!” I put Python first in that list for good reason. This is a post about the core Python language, but also the ways in which Python is evolving its single-core and multi-core CPU performance. … Continue reading Core Python| Andrew Montalenti
When you type an address into your web browser and are brought to a web server, a lot of decentralized magic happens within the span of a few seconds. Through the web, we have an infinite media available to us. It as though you have a beautifully-maintained bookshelf and run your finger along the spines … Continue reading Putting Your Media on a Diet| Andrew Montalenti
The film The Big Chill came out a bit before I was born, over 40 years ago, in 1983. The plot focuses on a group of middle-aged friends, perhaps in their late 30s and early 40s, who had attended the University of Michigan – Ann Arbor together. They reunite after 15 years, brought together by … Continue reading The Blog Chill| Andrew Montalenti
Sam Altman once said: “Minimize your own cognitive load from distracting things that don’t really matter. It’s hard to overstate how important this is, and how bad most are at it. Get rid of distractions in your life. Develop very strong ways to avoid letting crap pile up.” In programming, there is a technique called … Continue reading Dependency rejection| Andrew Montalenti
This section of Brave New World Revisited, a long essay by Aldous Huxley reflecting on his own novel many years after its publication, can be found on Project Gutenberg Canada; if you enjoy it, I recommend you purchase Brave New World & Brave New World Revisited, which includes the original novel (1932) and Huxley’s essay … Continue reading Over-Organization (1958)| Andrew Montalenti
A few years back, I published The Elements of Python Style, a popular Python code style guide. Since publishing it, friends of mine in the Python community have wondered if I might consider adding a section about package installation, dependency management, and other similar “standard tooling” recommendations. This is a reasonable request, since Python lacks … Continue reading How Python programmers can uncontroversially approach build, dependency, and packaging tooling (+ a note on Zig)| Andrew Montalenti
When I turned 27, I wrote the following in my birthday post: I don’t need stuff. I just need time. Of course, that’s the bittersweet part of one’s birthday. That even as you come to realize the importance of time, the day acts as a reminder of how our time on this earth is limited. … Continue reading Turning n/2 + 1| Andrew Montalenti
In 2009, I quit my first programming job after college to work on a startup. That startup eventually became Parse.ly. I’ve written about Parse.ly’s startup beginnings and evolution elsewhere on this blog, including: “The Startup Diet” “What One Does” “Startups: Not for the faint of heart” “Why Startups Die” “Shipping the Second System” It is … Continue reading Parse.ly, Automattic: the long view| Andrew Montalenti
I’m always surprised to learn that a friend who has used Linux for a long time, in both server and desktop contexts, might not have heard of GNU parallel. If you use GNU parallel together with pv (pipe viewer), UNIX shell pipelines, and Python fileinput module, you get a pretty powerful parallel job running framework … Continue reading GNU parallel is underrated| Andrew Montalenti
Frederick Brooks once wrote: The programmer, like the poet, works only slightly removed from pure thought-stuff. He builds castles in the air, from air, creating by exertion of the imagination. In his classic essay, “No Silver Bullet”, he also wrote about software’s “essential” complexity: The complexity of software is an essential property […] Hence, descriptions … Continue reading Managing software teams: the definitive reading list| Andrew Montalenti
It’s not a “left” or a “right” thing. It’s about jobs and health. If you study the data, you’ll learn this is what’s at stake in 2020. We can restore our country’s health. We can rebuild our economy. We can do both of these things. There is a precedent for this. To learn more behind … Continue reading New essay: The case for a vote to restore jobs and health| Andrew Montalenti
A few years back, I wrote Clojonic: Pythonic Clojure, which compares Clojure to Python, and concluded: My exploration of Clojure so far has made me realize that the languages share surprisingly more in common than I originally thought as an outside observer. Indeed, I think Clojure may be the most “Pythonic” language running on the … Continue reading Learning about babashka (bb), a minimalist Clojure for building CLI tools| Andrew Montalenti
James Bennett, a long-time Python developer, blogger, and contributor to Django, recently wrote a nice post about the “end” of Python 2.x, entitled “Variations on the Death of Python 2.” It’s a great read for anyone who, like me, has been in the Python community a long time. I’ve been a Python user since the … Continue reading Python 3 is here and the sky is not falling| Andrew Montalenti
If you’re working on a fully distributed team, partially remote team, or even just working from home occasionally, this is a selection of low-cost equipment you can use to get your home office setup to a “professional” level. All of this equipment has been tested extensively to work on: Google Hangouts Google Meet Zoom Video … Continue reading Best remote work equipment in 2020| Andrew Montalenti
Have you been trying to figure out this new world order with regard to work-from-home (WFH), remote work, distributed teams, and the like? I’ve opened up my calendar for 30-minute chats. You can schedule them with me here: https://calendly.com/amontalenti/distributed — Update: after over a year, I’ve now shut down this link on May 27, 2021 … Continue reading Chat with me for 30 minutes about distributed team management| Andrew Montalenti
Do you ever get that feeling like no matter how hard you work, you just can’t keep up? This isn’t a problem uniquely faced by modern knowledge workers. It’s also a characteristic of certain software systems. This state — of being perpetually behind on intended work-in-progress — can fall naturally out of the data structures … Continue reading Work is a Queue of Queues| Andrew Montalenti
In the last few months, I have learned a lot about modern JavaScript and CSS development with a local toolchain powered by Node 8, Webpack 4, and Babel 7. As part of that, I am doing my second “re-introduction to JavaScript”. I first learned JS in 1998. Then relearned it from scratch in 2008, in … Continue reading JavaScript: The Modern Parts| Andrew Montalenti
Here’s how Parse.ly’s original 2009 logo looked: Parse.ly has some fun startup lore from its early days about how we “acquired” this logo. I wrote about this in a post entitled, “Parse.ly: brand hacking”: Our first Parse.ly logo was designed as a trade for another domain I happened to own. It was the dormant domain … Continue reading Parse.ly’s brand refresh| Andrew Montalenti
After initial product-market fit and during a period of rapid customer adoption, the Parse.ly team embarked upon the task of re-envisioning its entire backend technology stack. The goal was to build upon the learnings of more than 2 years delivering real-time web content analytics, and use that knowledge to create the foundation for a scalable … Continue reading Shipping the Second System| Andrew Montalenti
The Structure and Interpretation of Computer Programs (SICP) is a classic computer science text written by Gerald Jay Sussman and Hal Abelson. It is widely known in the computer science community as the “wizard book”. It intends to teach the foundations of computer programming from “first principles”, illustrating programming language design using Scheme, a dialect … Continue reading Expanding my mind, once more, with functional programming| Andrew Montalenti
From Good Business, by Mihaly Csikszentmihalyi, the author of Flow. Another condition that makes work more flowlike is the opportunity to concentrate. In many jobs, constant interruptions build up to a state of chronic emergency and distraction. He goes on: Stress is not so much the product of hard work, as it is of having … Continue reading Flow and concentration| Andrew Montalenti
Over the years, I've put together a few public technical talks where the slides are accessible on this site. These are only really nice to view on desktop, and require the use of arrow keys to move around. Long-form notes are also available -- generated by a sweet Sphinx and…| Andrew Montalenti
@amontalenti - Parse.ly Founder. Coding in Python, JavaScript, Clojure, & C.| Andrew Montalenti
In my last post, I discussed how I upgraded to a Lenovo X1 Carbon Gen 11 laptop (rtings.com review) as my primary Linux workstation. For years, I've worked from my Linux laptop (usually a Lenovo X1 carbon) on the go. I've been spending more time recently working on the go,…| Andrew Montalenti