It's a Crystal [1] app built with the Lucky Framework [2]. The source code is here [3] and there are a few instructions in the README for deploying, but not much yet.
Any particular reason to use this language? Invidious uses this as well and it's been a major pain to contribute compared to a more mainstream language like Python, Ruby, PHP or Javascript.
The neat 3D spinning crystal on the landing page probably has a non-zero impact on adoption.
I don't see what else could be a big draw for it. Maybe it's appealing for Ruby devs, since it has a similar syntax? I've never used Ruby, but it probably makes more sense if you compare them.
I'm a ruby dev so as @bogwog mentioned, Crystal is appealing in it's similarly. I like being in a typed language, and it's _fast_. I'm running this on a very low powered server and it's holding up great.
Also, while I'm really glad it seems to have resonated with so many people, a huge part of this project was the learning I got from it. Getting better at Crystal's type system and the Lucky framework, discovering and using the monads library, learning how to deploy crystal, etc. I hear you on Invidious being difficult to contribute to. I've felt the same way. My difficulties have stemmed, not from crystal, but from the custom libraries that invidious needs. I effectively can't run it locally without Docker. Scribe should work fine locally.
Every language and framework has its tradeoffs. Rails would certainly have been the safer choice, but I also don't expect this to have massive contributions, so I went for the thing I was more interested in. Maybe that was a wrong choice, who knows!
So TL;DR I like crystal and wanted more experience with it. It felt like the right tradeoff for this project, this time.
An alternative for all text-heavy websites: https://archive.is/ debloats, that is archives a markup-only webpage free of javascript, dealing admirably well even with SPAs.
My only gripe with archive.is is that their archived pages don't support Firefox Reader Mode, even if the original page would have. It's great for breaking paywalls, though.
[2] if you have a fast connection you may have no idea why it's bad, try to load an image-heavy Medium article on a slow connection and you will see what I mean (indistinguishable blobs of colour for about 30 seconds, then finally full res images, with no in-between).
I have to confess that I haven't tried it recently, I was still reading regularly a few Medium blogs back when I had it installed. That's no longer the case so I no longer use it.
Once installed, you can long tap on any medium link, select share, then pick Scribe 4 Medium from your quick actions.
The link opens in Safari.
Edit: if you use it on medium links within the app, Scribe adds a link.scribe subdomain which throws a SSL warning and creates a broken link.
Could be due to the ?source=link in the medium app url. I’m trying to clean it out.
Not sure if that’s an intended functionality from scribe tho
Edit 2: nope it’s medium cloaked links. Will fix it later :)
It would be great if there was a way to configure the browser to automatically process a particular domain through such a shortcut automatically (without needing to go through the share screen.
Actually, you don't even need to do this! Scribe only cares about the last few hex digits in the URL's path: the post id. So you can leave off the subdomain and https://scribe.rip/the-efficiency-of-microsoft-e50ea81f69f5 will work just as well.
Historical note: In 1980-81, Brian Reid invented the Scribe markup language and processor, basically a predecessor to HTML and Markdown; a successor to RUNOFF; and simpler than Knuth's then-recent TeX. Scribe led to Reid's getting the ACM's Grace Murray Hopper award. I used The Final Word's version of Scribe and Emacs to produce camera-ready copy for my first book.
In fact, the syntax of LaTeX (not TeX)—the idea of environments etc—is heavily based on Scribe: Leslie Lamport, who was a Scribe user, basically reimplemented parts of Scribe in TeX macros; the result was LaTeX. You can see the resemblance between Scribe's syntax:
@Heading(The Beginning)
@Begin(Quotation)
Let's start at the very beginning, a very good place to start
@End(Quotation)
> I don’t think TeX and LaTeX would have become popular had they not been free. Indeed, I think most users would have been happier with Scribe. Had Scribe been free and had it continued to be supported, I suspect it would have won out over TeX. On the other hand, I think it would have been supplanted more quickly by Word than TeX has been.
(I'm not sure he's right; I think TeX/LaTeX benefited from both Knuth's concern for typographical excellence and Lamport's concern for authors' convenience, and the "book-quality printing" of TeX would have always had a place, but hard to say what would have happened.)
[Edit: Changed "superficial syntax"; I just meant syntax as opposed to implementation details.]
> the superficial syntax of LaTeX (not TeX) is heavily based on Scribe
Interesting — I hadn't previously connected those dots; it's been years since I used Scribe and only recently did I start using LaTeX (mostly with org-mode as a front end, delving into LaTeX only as needed).
Thanks for the link to the Lamport interview, which was illuminating.
There are quite a few chrome extensions that just fix the referer on medium, and work just fine. You can also trivially use your own version, as well as limit them to only medium.com.
(Or use one of the more generic referer rewriters)
Padding is a little big on mobile for my taste, maybe you could look into it? Especially on smaller phones every horizontal pixel matters for a great reading experience.
after ad blocking, since many websites are API driven, alternative frontends are another user movement? I saw the PR for scribe.rip to be added to https://github.com/SimonBrazell/privacy-redirect - a Browser extension redirecting twitter, instagram etc. I welcome this development.
45 comments
[ 3.8 ms ] story [ 128 ms ] threadhttps://kgizdov.medium.com/the-efficiency-of-microsoft-e50ea...
Output:
https://scribe.rip/the-efficiency-of-microsoft-e50ea81f69f5
[1] https://crystal-lang.org
[2] https://luckyframework.org
[3] https://git.sr.ht/~edwardloveall/scribe
I don't see what else could be a big draw for it. Maybe it's appealing for Ruby devs, since it has a similar syntax? I've never used Ruby, but it probably makes more sense if you compare them.
Also, while I'm really glad it seems to have resonated with so many people, a huge part of this project was the learning I got from it. Getting better at Crystal's type system and the Lucky framework, discovering and using the monads library, learning how to deploy crystal, etc. I hear you on Invidious being difficult to contribute to. I've felt the same way. My difficulties have stemmed, not from crystal, but from the custom libraries that invidious needs. I effectively can't run it locally without Docker. Scribe should work fine locally.
Every language and framework has its tradeoffs. Rails would certainly have been the safer choice, but I also don't expect this to have massive contributions, so I went for the thing I was more interested in. Maybe that was a wrong choice, who knows!
So TL;DR I like crystal and wanted more experience with it. It felt like the right tradeoff for this project, this time.
[1] https://makemediumreadable.com/
[2] if you have a fast connection you may have no idea why it's bad, try to load an image-heavy Medium article on a slow connection and you will see what I mean (indistinguishable blobs of colour for about 30 seconds, then finally full res images, with no in-between).
Once installed, you can long tap on any medium link, select share, then pick Scribe 4 Medium from your quick actions.
The link opens in Safari.
Edit: if you use it on medium links within the app, Scribe adds a link.scribe subdomain which throws a SSL warning and creates a broken link. Could be due to the ?source=link in the medium app url. I’m trying to clean it out. Not sure if that’s an intended functionality from scribe tho
Edit 2: nope it’s medium cloaked links. Will fix it later :)
For example, this link from the current HN homepage before and after:
https://kgizdov.medium.com/the-efficiency-of-microsoft-e50ea...
https://scribe.rip/@kgizdov/the-efficiency-of-microsoft-e50e...
[0] https://scribe.rip/orienteering-mapping-with-lidar-smartphon...
works fine
https://en.wikipedia.org/wiki/Scribe_(markup_language)
> I don’t think TeX and LaTeX would have become popular had they not been free. Indeed, I think most users would have been happier with Scribe. Had Scribe been free and had it continued to be supported, I suspect it would have won out over TeX. On the other hand, I think it would have been supplanted more quickly by Word than TeX has been.
(I'm not sure he's right; I think TeX/LaTeX benefited from both Knuth's concern for typographical excellence and Lamport's concern for authors' convenience, and the "book-quality printing" of TeX would have always had a place, but hard to say what would have happened.)
[Edit: Changed "superficial syntax"; I just meant syntax as opposed to implementation details.]
Interesting — I hadn't previously connected those dots; it's been years since I used Scribe and only recently did I start using LaTeX (mostly with org-mode as a front end, delving into LaTeX only as needed).
Thanks for the link to the Lamport interview, which was illuminating.
You can check out the source code here if you like: https://git.sr.ht/~edwardloveall/scribe
(Or use one of the more generic referer rewriters)
Great project otherwise!
I love tinkering with Medium URLs
Here's four URls that all work
https://kgizdov.medium.com/the-efficiency-of-microsoft-e50ea...
https://kgizdov.medium.com/@the-efficiency-of-microsoft-e50e...
https://kgizdov.medium.com/@@the-efficiency-of-microsoft-e50...
https://kgizdov.medium.com/@@@the-efficiency-of-microsoft-e5...
They exclude the `@` for some reason