mwcampbell

Joined 13 years ago

Karma
11,185
Submissions
3,693
Member since
Feb 6
Note to PR folks: I'm not the InfoQ.com editor named Matt Campbell. Please don't email me about your upcoming press release. If anyone knows a better way to clear up this confusion, please contact me.

I'm a software developer specializing in accessibility for blind and visually impaired people. From mid-2017 to late 2020, I worked for Microsoft on the Windows accessibility team, though my comments were always my own opinion posted on my own initiative.

I'm legally blind myself; I have enough sight to read a desktop computer screen up close with slightly enlarged fonts, but I often use a screen reader when browsing the Web, doing email, and other tasks that don't involve code. (Don't get me wrong; totally blind people can program, but I never got used to doing it that way myself.)

Of course, there's more to me than visual impairment. When it comes to programming, I'm also particularly interested in the challenges of developing cross-platform applications that integrate smoothly with the host platform. Outside of programming, I love music and love to sing. Pre-COVID, I often did karaoke (of course, I memorize the words). And like many nerds, I read science fiction.

Email: [email protected]

Mastodon: https://toot.cafe/@matt

Blog: http://mwcampbell.us/blog/

Location: Wichita, Kansas, US

[ my public key: https://keybase.io/mwcampbell; my proof: https://keybase.io/mwcampbell/sigs/9sbxkfOoTyW6C8IiDB50bP_ZWa-V73AfbdmvUlfOKe8 ]

View on Hacker News

Recent submissions

Comment · 25 days ago
Comment · 27 days ago
I grew up evangelical (rejected the faith about 15 years ago), and this comparison surprises me, because we explicitly contrasted our faith against "new age". The example that springs to my mind is the 1995 Christian pop song "Tell Me Again" by Geoff Moore & The Distance, which played on my local Christian music station when I was 15. Verse 2:

  A young man sittin' at a desk with a wooden chair
  In what appears to be a high school class
  He can see a battlefield, there's giants everywhere
  Sayin' the Bible is a thing of the past
  In this new age you believe what you wanna believe
  'Cause God is whatever you want it to be
  And I can hear Mrs. Keen [Sunday school teacher from verse 1] gently say
  The God of the past is still God today
Of course, we were still selective about which parts of the Bible we really took seriously.
Comment · 1 month ago
> Something quite deep in the human psyche seems to want desperately to turn off our self-talk and silence our nattering internal monologues by turning up the volume of other characters’ voices.

Over the past few years, rather than seeking to drown out that internal monologue with external entertainment, I've found myself feeding that monologue into Claude to have what I know is an ersatz conversation. And sometimes I work with Claude to write stories around whatever I'm thinking about, basically a form of escapism and sometimes wish fulfillment through personalized fiction. How weird does this make me? Is it inherently unhealthy?

Edit to add: To tie it back to the theme of the article, the result is, of course, the same; I spend more time alone, less time talking with real people.

Comment · 1 month ago
I doubt that they could iterate from where they are to an optimal solution though. What would have gotten them there more reliably is a development culture that would have found it disgusting to even consider shipping that much JS in the first place. And I don't buy the "then they never would have shipped at all" argument in this case, because, unlike the case of shipping cross-platform desktop apps before Electron, we did ship plenty of web apps, including interactive chat-shaped apps, before it became easy to unthinkingly ship a JS bundle that big.
Comment · 1 month ago
Comment · 1 month ago
Comment · 1 month ago
I don't actually buy that tweet from Boris Cherny. When the Claude Code source leaked some months ago, there were many posts on Mastodon about how the revealed code was a shit show, a big pile of hacks. I wish now that I had bookmarked some of those posts.
Comment · 1 month ago
This is probably biased by the specific multi-platform apps I've worked on, but my default assumption is that sooner or later, any non-trivial multi-platform app will need to reach for something that doesn't already have a KMP library and that, on Android, might require compiling native code via the NDK. Rust has a way bigger library ecosystem than KMP. So I figure one might as well do the cross-platform core in Rust and add that FFI boundary early, but managed by something like uniffi-rs. And, I've seen it work in a few real projects now, with just a little build system friction up front. So in what sense is Rust uncompetitive for this use case?
Comment · 2 months ago
So, steady-state performance that's about as good as Java or C# on average, but with memory safety, much smaller baseline executable size (yes, even compared to GraalVM Native Image; I haven't checked current .NET AOT), faster startup (yes, I know that's what Native Image does optimize), and lower memory footprint? I'll take that deal, even if there's a substantial gap between safe Rust and C++ or Zig. I badly wanted something like safe Rust when working on desktop applications throughout the 2000s and into the 2010s, and now it's here, with a strong and growing library ecosystem.
Comment · 2 months ago
> People don’t get it. I’ve given up trying to explain. Systems thinking isn’t as titillating as conspiracism, doomerism, or misanthropic cynicism I guess.

OK, you've explained it, and I think I buy that explanation. But now what do we do about it? At least the conspiracism gives us an enemy to be angry at and maybe try to fight.

Comment · 2 months ago
> Their stuff is already better than what nVidia is offering with stuff like the DGX Spark.

How so? In tokens per second when running major open-weights models, or something else?

Comment · 2 months ago
A heavy way that, as typically used, goes against the grain of the web, particularly for document-centric sites. For example, on the Oxide RFD site, the RFD links don't do a real browser page load, but use JavaScript to fetch the new content and update the page in-place. This breaks the experience of screen-reader users unless the site or framework does some kind of workaround (which, somewhat to my surprise, the Oxide RFD site doesn't do), and even then, it doesn't match the experience of doing a real transition between pages with a screen reader. For something like the Oxide RFD site, I'd be much more inclined to use something like Astro or Marko, with minimal client-side JavaScript and no SPA-style navigation.
Comment · 2 months ago
The difference is that with software before the rise of giant machine-learning models, the software is derived entirely from human-understandable source, and often a full software stack can be built on a single computer, as anyone who ever ran Gentoo knows. While the source of any non-trivial software stack is too large for any single human to understand in full, a single human can understand any part of it. That's not true of model weights. And my understanding is that even the smallest open-weights models that are remotely in the same class as LLMs require large computing clusters with powerful GPUs to train. That puts training a model, or retraining one from its true source materials (the training data and processes), in an entirely different class than rebuilding Gentoo, even with GNOME, Firefox, LibreOffice, etc., even if the training data and processes are available, which they're usually not. So, we should treat these models as a different kind of thing than the tools that we developers have worked with until now.
Comment · 2 months ago
> It's just not that hard to link to the system's UI libraries.

Are you concerned that as SwiftUI and Jetpack Compose continue to become the preferred native UI frameworks on Apple and Android respectively, you're going to need to figure out a way to bridge to them from Rust?

Comment · 2 months ago
Wait, why involve wasm in this?

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton