Philosophy Mondays: Human-AI Collaboration
Today's Philosophy Monday is an important interlude. I want to reveal that I have not been writing the posts in this series entirely by myself. Instead I have been working with Claude, not just for the graphic illustrations, but also for the text. My method has been to write a rough draft and then ask Claude for improvement suggestions. I will expand this collaboration to other intelligences going forward, including open source models such as Llama and DeepSeek. I will also explore other moda...

Intent-based Collaboration Environments
AI Native IDEs for Code, Engineering, Science
Web3/Crypto: Why Bother?
One thing that keeps surprising me is how quite a few people see absolutely nothing redeeming in web3 (née crypto). Maybe this is their genuine belief. Maybe it is a reaction to the extreme boosterism of some proponents who present web3 as bringing about a libertarian nirvana. From early on I have tried to provide a more rounded perspective, pointing to both the good and the bad that can come from it as in my talks at the Blockstack Summits. Today, however, I want to attempt to provide a coge...
Philosophy Mondays: Human-AI Collaboration
Today's Philosophy Monday is an important interlude. I want to reveal that I have not been writing the posts in this series entirely by myself. Instead I have been working with Claude, not just for the graphic illustrations, but also for the text. My method has been to write a rough draft and then ask Claude for improvement suggestions. I will expand this collaboration to other intelligences going forward, including open source models such as Llama and DeepSeek. I will also explore other moda...

Intent-based Collaboration Environments
AI Native IDEs for Code, Engineering, Science
Web3/Crypto: Why Bother?
One thing that keeps surprising me is how quite a few people see absolutely nothing redeeming in web3 (née crypto). Maybe this is their genuine belief. Maybe it is a reaction to the extreme boosterism of some proponents who present web3 as bringing about a libertarian nirvana. From early on I have tried to provide a more rounded perspective, pointing to both the good and the bad that can come from it as in my talks at the Blockstack Summits. Today, however, I want to attempt to provide a coge...
>400 subscribers
>400 subscribers
Share Dialog
Share Dialog
I still have quite a few great topics suggested by readers to work off for my Tech Tuesday series on technology in startups. But today I want to take on a different issue because it has been on my mind. I have now been programming computers in one way or another for over thirty years (yikes) and have seen a lot of technologies come and go during that period. So when something new comes along I tend to think of the great French saying: “Plus ça change, plus c’est la même chose” (the more things change the more they stay the same).
One of these constants has been that new technologies all too often wind up being seen as a silver bullet: something you can use to solve a difficult problem (werewolves, server scaling) with a solution that is simple and yet super effective. Unfortunately, technology silver bullets are as mythical as their werewolf counterparts. That’s not to say that we haven’t made progress and that every once in a while something that was previously hard becomes easy (or at least easier) but those are few and far in-between.
For a while recently people were treating node.js as a silver bullett and now it appears to be Go. So you wind up hearing things like “our xyz isn’t scaling so we should rewrite it in Go.” Now for some cases it may well be true that you need to rewrite a portion of what you have and use a tool that gives you more speed. But before you jump from there to the conclusion that you need the silver bullet du jour keep in mind that people have been writing high performance systems for a long time in existing languages.
So almost inevitably the answer is: you need to either restructure your existing team and/or hire some new folks. When you do that beware of anyone claiming to be an expert in a specific language or technology, especially one that is less than a decade old. If you need say a super low latency in memory server find someone who has written a bunch of those in whatever language rather than a self-declared expert in node or Go.
PS I spent a couple of hours over the weekend looking at Go and it does indeed seem like a promising alternative for situations in which you might have previously resorted to C or C++.
I still have quite a few great topics suggested by readers to work off for my Tech Tuesday series on technology in startups. But today I want to take on a different issue because it has been on my mind. I have now been programming computers in one way or another for over thirty years (yikes) and have seen a lot of technologies come and go during that period. So when something new comes along I tend to think of the great French saying: “Plus ça change, plus c’est la même chose” (the more things change the more they stay the same).
One of these constants has been that new technologies all too often wind up being seen as a silver bullet: something you can use to solve a difficult problem (werewolves, server scaling) with a solution that is simple and yet super effective. Unfortunately, technology silver bullets are as mythical as their werewolf counterparts. That’s not to say that we haven’t made progress and that every once in a while something that was previously hard becomes easy (or at least easier) but those are few and far in-between.
For a while recently people were treating node.js as a silver bullett and now it appears to be Go. So you wind up hearing things like “our xyz isn’t scaling so we should rewrite it in Go.” Now for some cases it may well be true that you need to rewrite a portion of what you have and use a tool that gives you more speed. But before you jump from there to the conclusion that you need the silver bullet du jour keep in mind that people have been writing high performance systems for a long time in existing languages.
So almost inevitably the answer is: you need to either restructure your existing team and/or hire some new folks. When you do that beware of anyone claiming to be an expert in a specific language or technology, especially one that is less than a decade old. If you need say a super low latency in memory server find someone who has written a bunch of those in whatever language rather than a self-declared expert in node or Go.
PS I spent a couple of hours over the weekend looking at Go and it does indeed seem like a promising alternative for situations in which you might have previously resorted to C or C++.
No comments yet