The headline is incredibly clickbaity and misleading. Bezos and Amazon don’t really have anything to do with the real problems outlined in the article.
It is misleading because the issue is almost completely unrelated to Amazon (that just happens to be the cloud provider being used; the issue would be the same with another provider). The implication of the hyperbolic headline is that Bezos or Amazon have anything to do with the the startup that made the mistake, but clearly that’s not the case. It leads one to expect more Amazon involvement than there is.
Now you can help me write exactly this! (Or fork it and become rich with it. Either way, enjoy.)
Is there any significance to the name?
The name was still free and “42” can never be wrong. (Fun fact: 42links is what I developed instead of 42feeds, so to speak. Originally I wanted to write an RSS reader. Then I found Miniflux, which does exactly what I want. However, I could certainly use the prefix 42 again later, which is why, for example, the database works with _42LINKS variables, not just 42).
I’m not a heavy bookmark user, and for the few I have I rely on Firefox bookmarks. What are people getting out of having separate dedicated bookmarking servers?
My use case was to access my bookmarks across multiple browsers (through the service’s browser extensions).
Also, as far as I remember, Chrome and Safari lack bookmark tags. You would have to reach out for a separate service if you want tags on those browsers.
I think a better way to think about it is as a “link collection”; it’s a way to track links that are interesting and you have read or want to read. If you spend any amount of time on a link aggregator (and given you’re on lobste.rs I’m assuming you do) you end up with a ton of articles like that and you need to keep track of them beyond your browser’s tabs. The one I wrote for myself even indexes the articles so I can plain text search through them so I can remember where I read something.
After using in-browser bookmarks with keywords I switched to a homemade bookmark server some years ago. My server is set up in a way so that it can be used as a default search engine. What I wanted out of it was:
Having the same keyword act both as a simple webpage bookmark and a search jump. So for example I can do either “lob” to come to the Lobsters main page or “lob lisp” to search for “lisp” on Lobsters. Similar to DDG bangs but personalized and uses prefix keywords rather than bangs.
Easy portability between browsers and devices.
Storing the bookmarks in a human and tool manageable way which currently means json blobs in git.
If there was an (obvious) way to run Linkding on OpenBSD, I probably wouldn’t even have started writing 42links. It seems to be a great software indeed.
Where is the documentation on how to install it on OpenBSD? The only supported way seems to be via Docker (which we neither have nor want to have). Running a “dev version” in production sounds like a not-so-great idea.
Adapt the Alpine container definition. Containers aren’t scary, nor are Containerfiles. Treat them as glorified build scripts and they’re trivial to adapt to non-container environments most of the time. This one in particular will nearly 1:1 map to a shell script that should run on almost any OS that can run Python+SQLIte, including OpenBSD.
I started a similar project a few weeks ago for my bookmarks that has expanded into also covering links I post to social media: https://search.technomancy.us (also in lisp!)
For me the purpose is not to collect the links as much as to index the content on the pages themselves.
Personally, I use both my standard browser’s bookmarks (for bookmarks) and services like the one I wrote :-) for read-it-later tasks; basically, as a TODO link collector. Having those in the browser clutters the bookmarks.
Yes — and Mozilla have access to your Firefox Accounts passphrase in plain text, if you ever log in via HTML that they serve rather than via the browser itself.
End-to-end encryption doesn’t help if the key ever leaves your machine.
I use my own service (gitlab.com/sodimel/share-links) that I started to write a few years ago. The main goals are to be able to share links to my friends and to the internet, to have a rss feed of recently added links, to be able to comment, add tags, group links by collections. The project is using Django so the admin interface is auto-generated, and it allows me to focus on features :)
The admin interface is for myself only, the public interface is written by me for the visitors.
I don’t mind using a “classic themed” django admin if it allows me to add links (it does, and I even added a small bit of js to fetch the title & language of the link I’m adding) and to filter them easily (it does too, I added a lot of filters).
Who am I to judge other people’s CSS skills? I mean, look at mine. There are reasons why 42links uses a (tiny) CSS framework with only a few extra declarations. I can’t design web stuff very well.
As far as I can see from your screenshot and the “demo”, it looks boring, but both functional and accessible. :-)
That’s the magic of the autogenerated django admin interface ; its boring but it works well, and you can configure it the way you want (display more columns, add filters to the right, custom actions in the dropdown).
I wanted to write all the css myself for the public interface, and that’s what I did. I really like the idea of an horizontally-scrollable filter list, it works very well on mobile :)
Who forced him to release at midnight? Better to wait a day and do a proper release IMO.
I’m sad about Enlightenment though. It used to be such a cool window manager, until they decided do the Total EFL Rewrite To Rule Them All. It was their Duke Nukem Forever.
I 100% can’t speak for Rasterman, but I only get an hour or so after my wife and daughter are in bed and asleep, about once a week at best, to do some work on my little hobby project…
You will never usefully browse the web on 9front. It doesn’t really have a web browser. There are some kinda sorta things that do 1% of what a mainstream web browser does but you won’t like them.
Oh! I see. In that case, I apologise and retract my comment.
Now that you mention it, I think that the last time I looked at 9front I spent several hours trying to compile Netsurf, just so that I could add a screenshot to the article showing 9front browsing the Reg.
I failed. As I recall it chugged away for hours and filled up its root partition and fell over.
Credit where it’s due: unlike Btrfs this did not corrupt the drive.
I’m still working on migrating my WordPress blog, which I’ve been running since 2005, to Hugo. The challenge is that I want to lose as little functionality as possible in the process. I’ve already developed a static commenting system with a moderation script (which I’m very proud of!) and ported my blog theme, YouTube and other customisations have also been largely transferred to shortcodes.
What is still missing:
An emoticon selection. In WordPress I had some of my own smileys (the good old GIFs) and I want them to continue to work.
In WordPress I had article series. I can also recreate these in Hugo, but they still need a little fine-tuning.
That’s really (almost) all there is to it, plus (maybe) a few category/tag switches and server-side redirects so no old links break…
i migrated from Pelican (static site generator in python) to Hugo and had positive results. the forums are great . cool idea with the static comment script
I would like to have an android native app that could sync stuff for offline viewing. There used to be something like this (microflux?) but I cannot install it on recent android.
In theory miniflux offers APIs that can be used by Android apps, but every Android app I tested is unusable with my RSS feeds.
Best app experience I had was the old google rss experience or newsblur. Wanted to write a newsblur API for miniflux, but stopped midway through…
Same - I wanted something I could access from all my machines and I didn’t like any of the public offerings, ether wildly different to my preferences or I didn’t trust them to disappear or behave badly in the future. Been very happy with miniflux, runs on a Raspberry Pi and has been pretty much hassle-free :)
Not too picky about the tech stack as long as it’s not a pain to manage
I get a feeling, but not 100% sure that you want a self-hostable RSS reader.
But, if you are ok with a non-self-hosted flavour, then the cross-platform Newsblur is decent. Cross-platform, as in the desktop versions are web apps. I’m not a heavy RSS/Atom user, but I’ve been using NewsBlur since Google Reader.
NewsBlur is MIT-licensed & self-hostable. The setup is a bit convoulted as there are quite a few dependencies, but Samuel (the developer) is active on the community forums & willing to assist.
For what it’s worth, I’ve been paying for the hosted version of NewsBlur for 12 years & I’m very happy with it!
Self-hosting NewsBlur - see the dependencies alone! - is time-consuming though, too annoying for some (including me). That’s actually sad, because it is a really good piece of software.
Ok. NewsBlur might fulfill your need to keep the RSS feed in sync across several devices.
Apart from that, its an indie software. The developer hasn’t gone overboard with shiny features, and focuses only on features that add value to one’s reading experience.
The generous free tier will most likely suffice your needs.
I’ve been happily paying Sam since before Google Reader died (I read the Google tea leaves accurately), and have never regretted it. He’s a small indie developer who has written a brilliant piece of code, and has never, as far as I know, taken VC money and would rather build a sustainable business than one focussed on hyperscaling. I think businesses like that are worth supporting
No doubt. I’m not allergic to buying good software from good developers. Since google reader was pushed off the raft, I’ve just gone local and lived without read state sync across my devices, but I’ve started to want to fix that more, lately. I’ve prototyped my own service for it, but don’t think I have the cycles to build that out the way I’d want.
One appeal of Newsblur as I’m looking at the github repo is that it’s written in a stack I’m comfortable hacking on, and I could scratch my own itch should there be features I want.
If this works for the way I tend to read, and sticks, I could see it turning into a Bitwarden situation where I pay for the first paid tier but still host it myself. I don’t love subscriptions, but as long as my data is under my control I don’t mind supporting developers that way.
I think it was prior to the RIM acquisition, then RIM (who is now BlackBerry) pulled that rug. It might even have been source available that time. It isn’t, so far, this time. (That might have been the second rug pull on that stack, if memory serves…)
TBH, I think I’d need FOSS to accept something free from BlackBerry. Dev tools and support were enough of a challenge in the BB9/BB10 days, even when working on behalf of a client who was paying them quite a lot, and their agreements were thorny enough, that I don’t think I’d trust the org without a license specifically outlining and protecting my rights.
And what they’re offering right now is pretty far from that. The license itself practically telegraphs another rug pull:
7.2 TERMINATION. This Agreement and licenses granted hereunder may be terminated by either Party upon written notice to the other Party.
Given the history and the very limited nature of the license, it’s hard to imagine spending a lot of effort developing expertise on this platform based on the very limited promise of free non-commercial use.
They do seem very dedicated to squeezing blood from this stone without doing anything that would make it actually attractive for people to use. “Embedded UI device” like car consoles or smart TV’s seem like they would be a good market… But afaict those already all run Linux. Their opportunity was 10-15 years ago, when embedded hardware strong enough to run Linux was still a little bit of a luxury and there weren’t already vendors who would make it work for you.
RIP QNX, maybe my kids will play with a public domain version of you someday.
“Embedded UI device” like car consoles or smart TV’s seem like they would be a good market… But afaict those already all run Linux.
Yeah, it’s unfortunate for sure. From what I can tell from a little bit of reverse engineering the factory stereo in my truck (2016 Toyota Tacoma) is running QNX. It’s not as flashy as the Carplay stereos in newer models but it is just absolutely rock solid. In the 3 or 4 years I’ve had the truck I don’t think I’ve ever had to fight with re-pairing my phone or any other weird issues that I routinely run into with rental vehicles. It just reliably does what I want it to do every day over and over.
Not quite all yet, especially for the more safety-critical parts like the instrument cluster QNX is still a thing. But yes, the trend has been strongly going that way, not helped by the fact that many car makers have shifted to the Android-based offerings. QNX is trying to keep a foothold by making hybrid setups easier: https://blackberry.qnx.com/en/products/foundation-software/qnx-hypervisor
It seems like they have been seeing the writing on the wall for quite some time, and are mostly trying to make sure to fully ride out the long tail of deployments and people sticking to existing investments.
If you’re looking for a practical lisp shell, I’ve been using eshell in Emacs (not to be confused with Erlang’s eshell) for over a decade and I highly recommend it. Apart from the obvious benefits like having access to real functions and data structures, you can do neat things like pipe output directly to Emacs buffers or replace built-in commands like find and grep with hyperlinked alternatives. The hyperlinking alone IMO is worth the cost of entry. The main downside is that since all I/O goes thru Emacs buffers, it can be slow for very high volumes of output compared to a conventional shell, but this almost always easy to work around.
When constructing shell pipelines that will move a lot of data, it is a good idea to bypass Eshell’s own pipelining support and use the operating system shell’s instead. … Prefixing at least one |, < or > with an asterisk marks a command as intended for the operating system shell.
The problem with this approach - I use GNU Emacs myself - is that Emacs Lisp, being a descendant of Maclisp, is a quite less powerful language than Common Lisp. That makes sense, given that Emacs is (roughly) a Maclisp Machine Simulator, but some of the niceties in CL are really crucial for shell programming in my opinion.
Never was.
Can’t some things not be cloud?
How many millions would a non-cloud bed company raise from VCs?
I’m sure the Eight Creeps are working on AI powered sleep temperatures right now, and it’s at least worth another 100 million.
No, that’s illegal now.
There won’t be a better headline in 2025 anymore. We can skip the year.
The headline is incredibly clickbaity and misleading. Bezos and Amazon don’t really have anything to do with the real problems outlined in the article.
I found it so over-the-top obviously click-bait in such a way that it didn’t bother me. Almost click-bait to be ironic.
Gosh, it’s quite obvious hyperbole. I can’t imagine it actually misleading any reasonable person.
It is misleading because the issue is almost completely unrelated to Amazon (that just happens to be the cloud provider being used; the issue would be the same with another provider). The implication of the hyperbolic headline is that Bezos or Amazon have anything to do with the the startup that made the mistake, but clearly that’s not the case. It leads one to expect more Amazon involvement than there is.
That title is a work of art. I didn’t even know they make IoT beds, this is a ridiculous story all in all and the title is perfectly appropriate.
Can it finally use the root servers for DNS queries, so I won’t need to trust a DNS reseller like Quad9?
What do you mean by “reseller” exactly?
‘recursive resolver’ with extra spicy naming
I know what quad9 is and I know what a recursive resolver is. What exactly are you saying here? Quad9 is not selling anything.
ssl cracked a joke, a pretty good one at that. I chuckled at it, and you should, too.
Glad to see more lisp code out in the wild, plus I’d been thinking about writing exactly this.
Is there any significance to the name?
Now you can help me write exactly this! (Or fork it and become rich with it. Either way, enjoy.)
The name was still free and “42” can never be wrong. (Fun fact: 42links is what I developed instead of 42feeds, so to speak. Originally I wanted to write an RSS reader. Then I found Miniflux, which does exactly what I want. However, I could certainly use the prefix 42 again later, which is why, for example, the database works with
_42LINKSvariables, not just42).Nice to see a Lisp implementation!
I’m not a heavy bookmark user, and for the few I have I rely on Firefox bookmarks. What are people getting out of having separate dedicated bookmarking servers?
My use case was to access my bookmarks across multiple browsers (through the service’s browser extensions).
Also, as far as I remember, Chrome and Safari lack bookmark tags. You would have to reach out for a separate service if you want tags on those browsers.
Also no tags on Firefox mobile.
Ah, this makes sense, thanks.
I think a better way to think about it is as a “link collection”; it’s a way to track links that are interesting and you have read or want to read. If you spend any amount of time on a link aggregator (and given you’re on lobste.rs I’m assuming you do) you end up with a ton of articles like that and you need to keep track of them beyond your browser’s tabs. The one I wrote for myself even indexes the articles so I can plain text search through them so I can remember where I read something.
After using in-browser bookmarks with keywords I switched to a homemade bookmark server some years ago. My server is set up in a way so that it can be used as a default search engine. What I wanted out of it was:
In theory, 42links can do 1 and 2. For 2 and 3, I wrote ymarks (ymarks.org).
device independence and backups mostly.
I run an instance of https://github.com/sissbruecker/linkding and it works great for my use case.
If there was an (obvious) way to run Linkding on OpenBSD, I probably wouldn’t even have started writing 42links. It seems to be a great software indeed.
It is written in python/sqlite. That should just work on OpenBSD
Where is the documentation on how to install it on OpenBSD? The only supported way seems to be via Docker (which we neither have nor want to have). Running a “dev version” in production sounds like a not-so-great idea.
Adapt the Alpine container definition. Containers aren’t scary, nor are Containerfiles. Treat them as glorified build scripts and they’re trivial to adapt to non-container environments most of the time. This one in particular will nearly 1:1 map to a shell script that should run on almost any OS that can run Python+SQLIte, including OpenBSD.
https://github.com/sissbruecker/linkding/blob/master/docker/alpine.Dockerfile
Ok, that could work. Well… thanks!
I started a similar project a few weeks ago for my bookmarks that has expanded into also covering links I post to social media: https://search.technomancy.us (also in lisp!)
For me the purpose is not to collect the links as much as to index the content on the pages themselves.
That sounds intriguing, indeed. I never had time to play with Fennel though.
Personally, I use both my standard browser’s bookmarks (for bookmarks) and services like the one I wrote :-) for read-it-later tasks; basically, as a TODO link collector. Having those in the browser clutters the bookmarks.
Makes sense. I hadn’t considered a bookmark service as a simple read-it-later alternative.
There is no good way I am aware of to export bookmarks from Firefox when one changes phones (Mozilla’s Sync service is insecure).
Can you elaborate?
I’m fortunate to not have sensitive bookmarks, but I had figured it was end-to-end encrypted with my Firefox Accounts passphrase?
Yes — and Mozilla have access to your Firefox Accounts passphrase in plain text, if you ever log in via HTML that they serve rather than via the browser itself.
End-to-end encryption doesn’t help if the key ever leaves your machine.
I use my own service (gitlab.com/sodimel/share-links) that I started to write a few years ago. The main goals are to be able to share links to my friends and to the internet, to have a rss feed of recently added links, to be able to comment, add tags, group links by collections. The project is using Django so the admin interface is auto-generated, and it allows me to focus on features :)
Interfaces written by software are not really attractive in my opinion.
The admin interface is for myself only, the public interface is written by me for the visitors.
I don’t mind using a “classic themed” django admin if it allows me to add links (it does, and I even added a small bit of js to fetch the title & language of the link I’m adding) and to filter them easily (it does too, I added a lot of filters).
Here’s a screenshot of the admin list view, and here’s the link to my own instance if you want to judge my css skills : https://links.l3m.in/en/
Who am I to judge other people’s CSS skills? I mean, look at mine. There are reasons why 42links uses a (tiny) CSS framework with only a few extra declarations. I can’t design web stuff very well.
As far as I can see from your screenshot and the “demo”, it looks boring, but both functional and accessible. :-)
That’s the magic of the autogenerated django admin interface ; its boring but it works well, and you can configure it the way you want (display more columns, add filters to the right, custom actions in the dropdown).
I wanted to write all the css myself for the public interface, and that’s what I did. I really like the idea of an horizontally-scrollable filter list, it works very well on mobile :)
Optimizing my self-hosted DNS and continuing work on my Wallabag/Pocket alternative.
And not a single changelog has been seen.
Give man a break, will ya
https://sourceforge.net/p/enlightenment/mailman/message/59117416/
Who forced him to release at midnight? Better to wait a day and do a proper release IMO.
I’m sad about Enlightenment though. It used to be such a cool window manager, until they decided do the Total EFL Rewrite To Rule Them All. It was their Duke Nukem Forever.
There’s still Moksha, the fork of E17 used by Bodhi Linux.
I 100% can’t speak for Rasterman, but I only get an hour or so after my wife and daughter are in bed and asleep, about once a week at best, to do some work on my little hobby project…
Just guessing, but it’s free software, so maybe late evenings are the only spare time he has?
Since they started E17 I have not been able to make heads or tails out of what they are up to at all.
I like NetSurf.
Me too.
But sadly, AFAIK, it does not run on P9 or 9F.
NetSurf had been ported a while ago.
Oh! I see. In that case, I apologise and retract my comment.
Now that you mention it, I think that the last time I looked at 9front I spent several hours trying to compile Netsurf, just so that I could add a screenshot to the article showing 9front browsing the Reg.
I failed. As I recall it chugged away for hours and filled up its root partition and fell over.
Credit where it’s due: unlike Btrfs this did not corrupt the drive.
Why?
The Readme has an extensive explanation :)
Haskell developers trying their best to come up with a popular project ;)
Pandoc exists.
Also ShellCheck.
I’m still working on migrating my WordPress blog, which I’ve been running since 2005, to Hugo. The challenge is that I want to lose as little functionality as possible in the process. I’ve already developed a static commenting system with a moderation script (which I’m very proud of!) and ported my blog theme, YouTube and other customisations have also been largely transferred to shortcodes.
What is still missing:
That’s really (almost) all there is to it, plus (maybe) a few category/tag switches and server-side redirects so no old links break…
i migrated from Pelican (static site generator in python) to Hugo and had positive results. the forums are great . cool idea with the static comment script
Miniflux.
I use miniflux, it’s nice and the PWA on android feels amazing
Me too. I chose it because they provide an RPM repository and it can use PostgreSQL as storage. I stayed because it just works and it’s minimalistic.
I’m toying with my own terminal client: https://github.com/alexpdp7/termflux
I would like to have an android native app that could sync stuff for offline viewing. There used to be something like this (microflux?) but I cannot install it on recent android.
I use Miniflux with the FeedMe app on Android via the Fever API. It’s not very good looking but it works fine.
Thank you!
In theory miniflux offers APIs that can be used by Android apps, but every Android app I tested is unusable with my RSS feeds. Best app experience I had was the old google rss experience or newsblur. Wanted to write a newsblur API for miniflux, but stopped midway through…
Miniflux also has support for the Fever API.
Same, really easy to set up using NixOS.
Same - I wanted something I could access from all my machines and I didn’t like any of the public offerings, ether wildly different to my preferences or I didn’t trust them to disappear or behave badly in the future. Been very happy with miniflux, runs on a Raspberry Pi and has been pretty much hassle-free :)
I get a feeling, but not 100% sure that you want a self-hostable RSS reader.
But, if you are ok with a non-self-hosted flavour, then the cross-platform Newsblur is decent. Cross-platform, as in the desktop versions are web apps. I’m not a heavy RSS/Atom user, but I’ve been using NewsBlur since Google Reader.
NewsBlur is MIT-licensed & self-hostable. The setup is a bit convoulted as there are quite a few dependencies, but Samuel (the developer) is active on the community forums & willing to assist.
For what it’s worth, I’ve been paying for the hosted version of NewsBlur for 12 years & I’m very happy with it!
Self-hosting NewsBlur - see the dependencies alone! - is time-consuming though, too annoying for some (including me). That’s actually sad, because it is a really good piece of software.
Wow. I stand corrected!
Another vote for Newsblur here. After Google Reader died, I decided I wanted a thing I could pay to support.
I’m OK with self-hosting, I just need to move things off of this server since I have a better one available now.
Ok. NewsBlur might fulfill your need to keep the RSS feed in sync across several devices. Apart from that, its an indie software. The developer hasn’t gone overboard with shiny features, and focuses only on features that add value to one’s reading experience. The generous free tier will most likely suffice your needs.
Have you seen how many stories /u/calvin posts here? If those come from RSS feeds, I find it hard to imagine 64 is enough :-)
Thanks for pointing out Newsblur. I’ve been shopping for something I can self-host, and it looks interesting.
I’ve been happily paying Sam since before Google Reader died (I read the Google tea leaves accurately), and have never regretted it. He’s a small indie developer who has written a brilliant piece of code, and has never, as far as I know, taken VC money and would rather build a sustainable business than one focussed on hyperscaling. I think businesses like that are worth supporting
No doubt. I’m not allergic to buying good software from good developers. Since google reader was pushed off the raft, I’ve just gone local and lived without read state sync across my devices, but I’ve started to want to fix that more, lately. I’ve prototyped my own service for it, but don’t think I have the cycles to build that out the way I’d want.
One appeal of Newsblur as I’m looking at the github repo is that it’s written in a stack I’m comfortable hacking on, and I could scratch my own itch should there be features I want.
If this works for the way I tend to read, and sticks, I could see it turning into a Bitwarden situation where I pay for the first paid tier but still host it myself. I don’t love subscriptions, but as long as my data is under my control I don’t mind supporting developers that way.
Wasn’t it already a few years ago?
I think it was prior to the RIM acquisition, then RIM (who is now BlackBerry) pulled that rug. It might even have been source available that time. It isn’t, so far, this time. (That might have been the second rug pull on that stack, if memory serves…)
TBH, I think I’d need FOSS to accept something free from BlackBerry. Dev tools and support were enough of a challenge in the BB9/BB10 days, even when working on behalf of a client who was paying them quite a lot, and their agreements were thorny enough, that I don’t think I’d trust the org without a license specifically outlining and protecting my rights.
And what they’re offering right now is pretty far from that. The license itself practically telegraphs another rug pull:
Given the history and the very limited nature of the license, it’s hard to imagine spending a lot of effort developing expertise on this platform based on the very limited promise of free non-commercial use.
They do seem very dedicated to squeezing blood from this stone without doing anything that would make it actually attractive for people to use. “Embedded UI device” like car consoles or smart TV’s seem like they would be a good market… But afaict those already all run Linux. Their opportunity was 10-15 years ago, when embedded hardware strong enough to run Linux was still a little bit of a luxury and there weren’t already vendors who would make it work for you.
RIP QNX, maybe my kids will play with a public domain version of you someday.
Yeah, it’s unfortunate for sure. From what I can tell from a little bit of reverse engineering the factory stereo in my truck (2016 Toyota Tacoma) is running QNX. It’s not as flashy as the Carplay stereos in newer models but it is just absolutely rock solid. In the 3 or 4 years I’ve had the truck I don’t think I’ve ever had to fight with re-pairing my phone or any other weird issues that I routinely run into with rental vehicles. It just reliably does what I want it to do every day over and over.
Not quite all yet, especially for the more safety-critical parts like the instrument cluster QNX is still a thing. But yes, the trend has been strongly going that way, not helped by the fact that many car makers have shifted to the Android-based offerings. QNX is trying to keep a foothold by making hybrid setups easier: https://blackberry.qnx.com/en/products/foundation-software/qnx-hypervisor
It seems like they have been seeing the writing on the wall for quite some time, and are mostly trying to make sure to fully ride out the long tail of deployments and people sticking to existing investments.
a good summary of the open-closed-open-closed saga is on the orange site https://news.ycombinator.com/item?id=42079976
Then they rugpulled, then ‘open’ under some other form, then rugpull again. “fool me once” comes to mind.
TIL: C# actually has an annoying feature.
If you’re looking for a practical lisp shell, I’ve been using eshell in Emacs (not to be confused with Erlang’s eshell) for over a decade and I highly recommend it. Apart from the obvious benefits like having access to real functions and data structures, you can do neat things like pipe output directly to Emacs buffers or replace built-in commands like
findandgrepwith hyperlinked alternatives. The hyperlinking alone IMO is worth the cost of entry. The main downside is that since all I/O goes thru Emacs buffers, it can be slow for very high volumes of output compared to a conventional shell, but this almost always easy to work around.IIUC, there’s an option to bypass that for an individual command:
The problem with this approach - I use GNU Emacs myself - is that Emacs Lisp, being a descendant of Maclisp, is a quite less powerful language than Common Lisp. That makes sense, given that Emacs is (roughly) a Maclisp Machine Simulator, but some of the niceties in CL are really crucial for shell programming in my opinion.
The project is moved to Codeberg, here is the correct link - https://codeberg.org/nibbula/yew/src/branch/master/lish
Thank you!
somewhat related: http://ciel-lang.org/#/repl bundles some QOL improvements on top of
sbcli. And https://github.com/PuellaeMagicae/unix-in-lisp approaches the shell from the other side: mount external binaries as if they’re lisp functions. Both have also been posted recentlyBecause I didn’t immediately see one, here’s a screenshot of the shell in action https://gist.github.com/user-attachments/assets/d4b2f98f-d624-4de0-9b29-5eaa8cc1819d
Also related: SHCL. It seems that there is not much room for more.
There’s already lish, written in Common Lisp, which does the same thing even more efficiently, I think.
And rash, in Racket.