💾 Archived View for geminiprotocol.net › docs › faq-section-1.gmi captured on 2023-11-14 at 07:40:48. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-09-28)
-=-=-=-=-=-=-
Here are two answers to this question. One for computer geeks who really want to know right away how Gemini works under the hood and are happy to extrapolate from there, and one for everybody else, geeky or otherwise, who are less interested in how Gemini works and more interested in what it is and why somebody might want to use it. Feel free to read only one of them!
Gemini is an application-level client-server internet protocol for the distribution of arbitrary files, with some special consideration for serving a lightweight hypertext format which facilitates linking between hosted files. Both the protocol and the format are deliberately limited in capabilities and scope, and the protocol is technically conservative, being built on mature, standardised, familiar, "off-the-shelf" technologies like URIs, MIME media types and TLS. Simplicity and finite scope are very intentional design decisions motivated by placing a high priority on user autonomy, user privacy, ease of implementation in diverse computing environments, and defensive non-extensibility. In short, it is something like a radically stripped down web stack. See section 4 of this FAQ document for questions relating to the design of Gemini.
Gemini is a group of technologies similar to the ones that lie behind your familiar web browser. Using Gemini, you can explore an online collection of written documents which can link to other written documents. The main difference is that Gemini approaches this task with a strong philosophy of "keep it simple" and "less is enough". This allows Gemini to simply sidestep, rather than try and probably fail to solve, many of the problems plaguing the modern web, which just seem to get worse and worse no matter how many browser add-ons or well meaning regulations get thrown at them.
Gemini might be of interest to you if you:
If multiple points above apply to you and you've been finding the web an increasingly unpleasant place for several years, Gemini might feel like a real breath of fresh air, even an oasis - but it's not necessarily for everybody. In order to make sure that Gemini remains a simple, lightweight technology which respects its users' privacy and autonomy not just now but into the future, the feature set has been deliberately kept quite minimal. It's definitely not too minimal to be useful, but it certainly can't do everything you might be used to, and maybe it's missing something that's a deal-breaker for you. Keep an open mind, give it a try, and see how you feel. Plenty of people have been surprised at how quickly they stop missing things they thought they couldn't live without!
Sure, but all you need to know to read and understand the rest of this FAQ are the following:
A lot of the terminology in Geminispace, like "capsule" and "Geminaut", is related to space exploration, see question 3.9 below for why.
"Gopher" is an internet protocol from the early 90s. In the long term, it "lost out" to the web, which was both better looking than Gopher and could do more things, and most people today have never heard of it, yet alone used it. But Gopher does the things it can do perfectly well and it never completely disappeared. In fact, in recent years, Gopher has been undergoing a small but real resurgence in popularity, as more and more people seek refuge from an increasingly user hostile web.
Project Gemini was started by Gopher users, and most of the early adopters were Gopher users, too. The protocol design itself is inspired by the design of Gopher and informed by years of experience using Gopher in the 21st century. For quite a while, Gopherspace was the only place, aside from Geminispace itself, where people could find out about Gemini. Due to this history, lots of people who want to learn about Gemini are coming from a Gopher perspective and want to know specifically how it compares to Gopher, and so some parts of this FAQ cater to that audience. If you don't know what Gopher is and you don't care, that's fine, just ignore these parts.
Well, not really. A lot of inspiration comes from a thirty year old protocol, it's true, and lots of people enjoy Gemini because they don't enjoy the direction the web has taken in the past ten years or so, but it's not really about trying to turn back the clock. After all, Gopher is still right there, alive and kicking (and NNTP and finger, too!), for anybody who wants a totally authentic, period-correct late 20th century internet experience. No new protocols are required for that! And from a Gopher enthusiast's perspective, Gemini is very clearly an attempt at modernisation, not historical re-enactment.
Rather than trying to decide whether Gemini is about turning the clock forward or backwards, it's better to think of it as trying to deliver a particular online user experience that its fans think of as not being old fashioned, out of date, or obsolete, but not modern, cutting edge, or innovative either. It's simply timeless, no less useful or valuable today than it was 30 years ago or than it will be 30 years from now. It's an experience which ought to be easily available to anybody who wants it, without sacrificing every development made since the 90s or feeling out of place on modern devices.
In a word, reading!
Reading text with a simple, clear, uncluttered layout without any animation or embedded videos or sidebars full of distracting, unrelated extras. If you use the "Reader Mode" in your web browser a lot and you love it because you think that 99% of the time it makes webpages ten times easier to use by throwing out all the useless clutter and just giving you what you want, you'll probably be excited to hear that everything in Geminispace looks that way all the time by default.
Reading that starts as soon as the page loads, without you first having to carefully click past a pop-up window which actively tries to mislead you into "consenting" to something nobody actually wants or needs, and which continues right to the end of the page without being interrupted by another pop-up begging you to subscribe to a newsletter. Gemini pages are downloaded once and rendered once, and then they stay that way for as long as you care to look at them. Nothing changes in response to you scrolling around or time passing.
Reading in peace because there's no way for a page to play music or make a sound without you actively inviting it to, so you're free to enjoy your own background music, or maybe to just keep quiet if you're reading somewhere with other people around. It's up to you, like it should be; it's your computer, and they're your ears.
Reading in private because your reading software doesn't tell the servers you get your reading material from anything about who you are or what else you've read, so nobody can follow you around and build up a record of your reading habits to sell to others without asking or even telling you.
Reading whatever sounds like it might be interesting, clicking links from one page to another page in the same relaxed, carefree way you might put one book back on a library shelf and open up another one, because it only takes a second and there's no risk. The average Gemini page is at least ten times smaller than the average webpage, and a hundred times smaller than worst ones, so they load almost instantly even on old computers or flaky internet connections. There's absolutely no question of accidentally ending up at a shady capsule which starts using your computer to mine cryptocurrency for somebody else, because what kind of insane person would design document reading software where that's a thing that could possibly happen under any circumstances? You can explore Geminispace at your leisure without fear.
If you wish that browsing the web felt more like browsing a library than wandering through a shopping mall or a casino, Gemini could be right up your alley.
Not quite. Like HTTP or Gopher, Gemini can serve any filetype at all, including images, audio, video and computer programs. There are tens of thousands of images in Geminispace, about five thousand PDF documents, and thousands of audio files!
But the only thing that a Gemini document can do with those files is link to them. You can't embed images or videos inside a page, sticking them in the background or between bits of text. Nothing ever plays automatically. All you can do is say to your reader, "Hey, here's a link to a picture, or a video, or some music". It's up to them whether they click the link or not - in Geminispace, the reader is always in control, not the author.
By default, your readers will just see the link text that you choose to use to describe the file. If your image is clearly relevant to the content of your page, and that content is interesting, at least some folks will follow that link! If you just put links to a big generic stock photo of an ocean sunset at the top of every page in your capsule "just so there is something there", nobody will bother.
Well, no. Gemini pages can provide visitors with a written prompt and ask them to type in some text to use as input. This is basically there to make search engines possible, because you need to have some way to enter your search terms. Even Gopher had support for search term input, before Google existed!
But there's nothing special about search engines and search terms, so it's really just a mechanism for pages to get a little bit of user input. People can, and have, used them as a way to let their readers leave comments, sign guestbooks, and that sort of thing.
Gemini even has a way for readers to voluntarily start (and end, whenever they want) a "session", so that applications can maintain server-side state. If you know what CGI apps from the early days of the web are, well, most CGI apps which work with text can be replicated to some extent with Gemini.
Well, there are a lot of games! Obviously there are no graphics as such, but ASCII art and/or emojis can brighten up text-based games, which of course can be fun enough on their own. There are single player games, games where you play against the computer, games where you play against another person, and "puzzle of the day" type games where many people independently work on the same problem. Interactive fiction is also a perfect fit to the capabilities of Gemini.
There are some more social style apps, too, like link sharing apps. Microblogging works over Gemini just fine! We have our own native microblogging service, and people are building interfaces to the Fediverse, too.
Well, yes and no.
You can do more than just serve and consume written material with Gemini, but that really is the technology's core strength. When all you want to do is read some text and you want it to be fast and safe and clean, without any distracting bells and whistles that spin up your laptop fan or devour your mobile data, then a good Gemini client offers a truly world-beating user experience. Plenty of Geminauts sincerely believe Gemini is a better tool for this job than the modern web is, and plenty of them use Gemini for nothing more than this, love every moment of it, and have no interest in apps at all.
When you try to use it for more than that, with every additional step you take away from the "online library of text documents" starting point in the direction of something fancier, it becomes less and less clear that Gemini is a better tool for what you are doing than the web, or something else, would be. At some point, Gemini clearly becomes the wrong tool for the job - it is not supposed to do everything and anything! Exactly where that limit lies is different for different people. Some people just want things to be simple and straightforward, other people take a kind of pleasure in pushing technology to its limits and are happy to jump through some hoops for the sheer thrill of seeing how far they can go. No matter what kind of person you are, though, the capabilities of Gemini certainly "bottom out" at something simpler, plainer, quieter, stiller and wordier than what the web has come to be. But those capabilities are still plenty to do a whole range of interesting, useful or entertaining things.
In short, Gemini isn't truly "text only", but it's very much "text centric", and happily so. Putting an emphasis on reading sets newcomers' expectations just a little lower than the truth, which is better than too high.
Besides, it's been a long time since libraries only loaned books. Modern libraries offer music and films and sometimes even video games. The similarities between a library and the online experience Gemini tries to prioritise are much deeper than just media types. Libraries make a wide range of resources available to anybody who wants them, and that's about it. What you access, when you access it and how often is up to you. You can explore the shelves solo, or you can join a book club and read alongside others. Libraries themselves generally don't make much effort to promote specific resources over others, and they certainly don't do so in cahoots with publishers. Libraries don't tell authors who is reading their works. If you stop visiting a library, the librarians don't chase you down and try to lure you back. A good library enhances your life without intruding on it, and the internet ought to be able to supercharge this relationship without inverting it.
It would be difficult and probably not even a good idea to try too hard to explicitly codify some kind of "Gemini culture". After all, computer protocols can't actually enforce any kind of behaviour in the humans who use them, or exclude some humans but not others. But they can make some things easy and other things hard, and this can incentivise some people to use them and disincentivise others, and this in turn influences what kind of content is common and which is rare. In this way tools often shape the "culture" of their users, albeit in a way that's implicit and unenforceable. Because Gemini is such a simple tool and makes a lot of things not just hard but impossible, this culture-shaping effect is quite pronounced, and for many Geminauts this is a big part of the appeal.
Gemini gives more control to the person reading a page than the person writing it. Because by default it only presents users with text, and because authors have no way to control the font or size or colour of that text, Gemini is naturally resistant to advertising and marketing. It's very difficult to "establish a brand identity" or to "grab somebody's attention" in Geminispace. You can't fall back on a fancy logo or a pretty face or elegant typography to make up for not having anything meaningful to say, and it's very hard to make text hypnotic in the same way that video easily can be. Advertising in Geminispace is by no means impossible, but the reward to effort ratio is orders of magnitude lower than on the web or social media mobile apps, and that's a powerful disincentive. Consequently, Geminispace is currently an entirely non-commercial part of the internet. Even if it doesn't stay entirely non-commercial forever, it's extremely likely that it will remain much, much, much less commercialised than other spaces.
Geminispace also lacks any kind of mechanism whereby somebody can begin publishing and quickly end up having their content appear on the screens of most of the other people using Gemini. It's a distributed library of documents, not a platform. You can still acquire a large, dedicated readership on Gemini and maybe even become some kind of "thought leader" in some circles, but this happens rarely, slowly and organically, largely via electronic word of mouth. There's no overarching algorithmic architecture which makes it a foregone conclusion that this will happen to a minimum number of people per year no matter what. As a result, people tend not to turn up in Geminispace and immediately begin spamming "clickbait" or acting weird or offensive just to stand out, because there's no real pay off. People will just ignore you.
These two aspects of Geminispace combined have a definite influence on the people and content that turns up in it. Naturally there are exceptions, but people choosing to publish in Geminispace are typically internally motivated to do so. They're not chasing fame or fortune or followers, they're writing because they want to write, they're writing about the things they care about most, and are just generally being themselves. Consequently, Geminispace has been variously described as being more authentic, genuine, human, intimate and personal than other online spaces, and has been called charming and even precious. But you shouldn't forget that it's technology, not magic. You might still run into arrogant people, rude people, narcissists and bigots, just like anywhere else on the internet. Those people exist in the world, and no network protocol can change that.
(Oh, you'll also find a lot of people who like talking about computers and the internet a lot. Surprise! You don't have to read that stuff if you don't want to.)
No way, no how, not never, at least not on our watch.
It's not just there are no plans to officially make Gemini any more powerful than it already is. Design decisions were actually made since day one to make future extensions as difficult as possible. We know nobody can be forced to implement our specifications exactly to the letter, and we know that "embrace, extend, extinguish" happens to technologies all the time. We've done our best to preemptively fight back against this, in more ways than one.
Sometimes people are shocked, and strangely enough sometimes even angry, at how minimalistic Gemini seems, and they wonder why anybody would deny themselves some harmless seeming little features that web users are used to seeing every single day. More often than not, this preemptive fight against extension is the reason. The average Geminaut isn't some kind of fanatical ascetic, trying to resist temptation in order to purify their soul or anything weird like that. We just think that what we have right now is something pretty special, we'd hate to see it slowly eroded over the years as well-meaning changes end up pushing us down slippery slopes, and we think it's worthwhile giving up some small luxuries to reduce the odds of that happening, even a little.
Not quite. There are still some technical details for the geeks to work out with regard to how some things work from behind the scenes. It's not exactly minor stuff, and if you're a programmer who might be interested in implementing Gemini software you should keep an eye on things. But from the perspective of a regular end user, Gemini is finished. It's very unlikely than new features that would matter to you as somebody either reading or writing pages in Geminispace will be added during the finalisation process. If any do squeeze in, you can be sure that they'll be minor. So you should feel confident that you can dive in to reading and writing today, and the whole thing won't shift violently under your feet next year and become unfamiliar. Today's overall user experience is here to stay.
Not for a minute! Nor does anybody involved with Gemini want to destroy Gopherspace. Gemini is not intended to replace either Gopher or the web, but to co-exist peacefully alongside them as one more option which people can freely choose to use if it suits them. In the same way that some Gopher users serve the same content via both Gopher and the web, people can "bihost" or "trihost" content on whichever combination of protocols they think offer the best match to their technical, philosophical and aesthetic requirements and those of their intended audience.
An even better answer to this question is "so what if we can't?". Gemini doesn't need to be able to do every single thing that the web can do to be worthwhile. Geminauts can use the web to accomplish tasks which can only be accomplished on the web, and when they're done they can close their browser down, let their computer catch its breath, then open their Gemini client and spend the rest of their online time enjoying the very different experience of reading interesting or useful or funny content in Geminispace. This is no more weird or futile than using a bike to run errands in your neighbourhood or for fun and exercise on weekends even though you still need to drive your car to work on weekdays, or growing some vegetables in your backyard or herbs on your windowsill even though you still need to buy most of your food at the supermarket. Even part time relief is still relief!
(aside from continuing to read this FAQ, of course!)
The official home of Project Gemini is the geminiprotocol.net server. It serves the latest version of this FAQ document, as well the protocol specification, recommended best practices and other official documentation via Gemini, Gopher and HTTPS, on IPv4 and IPv6.
There's an official Project Gemini news feed which you can keep an eye on if you are interested in following official project developments:
Official Project Gemini news feed
If you really want to do a deep dive into Gemini's history, see question 3.6 below for links to the archives of the now defunct official mailing list, where many official decisions and announcements were made.
There is also a wide range of community provided content about Gemini, both on the web and in Geminispace itself. There are some links below, but the FAQ can't possibly provide an exhaustive or fully up to date list.
Gemini Quickstart! (Web version)
Gemini Quickstart! (Gemini version)
"What is Gemini?" YouTube video
"Awesome Gemini", a community maintained list of software and resources
"Gemini, le protocole du slow web", a French language introduction to Gemini
"Was ist Gemini?", a German language introduction to Gemini
Casual discussion regarding Gemini also happens in the #gemini channel on the tilde.chat IRC server:
You can also check the #gemini hashtag in the Fediverse.