What is a BBS reddit / bbs ---------------------------------------------------------------------- cpu_triple_fault · 2022-07-29 19:23 I am currently writing some message-board software - more specifically the client. I’m curious what exactly constitutes a BBS in your minds? Does it? - Have to be over the telephone? - Can it simply be over TCP then? - If so does it have to use TELNET or SSH, or can I use a separate protocol I’ve implemented - How much code has to be executed on the server vs the client - Can it be more than simply messaging and forums? Like allowing users to do scripting Cause what I’ve already implemented has more resemblance to some messaging/server software with a TUI client. It’ll have some client side scripting capabilities (much like JavaScript but for the particular client I’m writing). I originally wanted to remake something like quantum link, and still am but I don’t think telnet, ssh, or telephone is a good idea because I’m trying to host on the cloud: by shifting as much rendering/computing to the client software (hence why a separate protocol was implemented) I figured I will be able to save some money. ---------------------------------------------------------------------- electronicchicken · 2022-07-29 19:52 The definition of BBS is slippery, and it means different things to different people. You won't find any one right answer. It's not about telephones and modems. Pretty much every BBS enthusiast today would connect to some telnet-only system and still agree that it's a BBS. It's *maybe* about textmode, ie. using a terminal emulator to interact with it. A lot of people would say something is *not* a BBS if it's entirely web based or uses some special client / protocol. Even then, there is prior art to the contrary (Citadel/UX as an example, there are others). A lot of modern platforms offer some or all of the functionality of a traditional BBS. Messages, files, chat, games, and so on. Reddit, Discord, Facebook, Twitter, web forums, and many others fit the bill to one degree or another. Most BBS enthusiasts would tell you that these things are *not* BBSs, but they probably couldn't tell you exactly *why*. Go ahead and call your thing a BBS if that feels right to you. Most people will not care. Some will disagree. Whatever. From what I've experienced, the people who disagree will not be able to explain exactly what their reasons are. There's a fuzzy and wavy line in their head between the BBS and *every other online service that exists* and they'd have a hell of a time drawing a map of that territory for you. They hold to a firm definition of the term, but it is abstract and exists entirely in their mind. Brass tacks, a BBS is something that lets you go online and post a message for other people to see, and read messages that other people have posted. Everything else is ... additional features. ---------------------------------------------------------------------- cpu_triple_fault · 2022-07-29 19:56 Yeah it’s terminal based and will have the *look and feel* of a BBS, but…it has its own protocol which requires special client client software that I wrote ---------------------------------------------------------------------- Lemon_LostSock · 2022-07-29 20:36 There are still dial up bbs systems and it can still be used with dial up over voip. An esp32 can be used as a dial up modem emulator so older serial systems can still access bbs systems that are live. Fundamentally you have to look at Teletext uk minitel France as well lots of intermingling areas. There is plenty of YouTube videos on the subject and their relationship to each other. ---------------------------------------------------------------------- anras2 · 2022-07-29 21:09 It can definitely be over TCP. In my personal BBS heyday in the mid-90s, I was calling dialup BBSes, but more and more of them were becoming internet enabled and you could telnet to them. ---------------------------------------------------------------------- Universal_Binary · 2022-07-30 01:44 Former sysop here. So for me back in the day, a BBS was a text-mode thing you called up with a modem, that had a text menu interface, usually with message boards and file areas. But that isn't what they always were. I hosted my BBS on OS/2, and then FreeBSD, and then Linux. For awhile there, it was shell-only; you'd dial up and get a Unix shell. Did it still have message boards and file areas? Yep and yep. "Doors"? Well sure, but because it was Unix, every program could be run without anything special. A large system called SDF was featured in the BBS Documentary and was, and is, like this (I think even still with modems, though by far most use ssh these days). But, back in the day, RIP graphics were a thing too. Not necessarily a common thing, but a thing anyhow. But, I would say a BBS generally has a text-oriented interface of some sort and message boards. It may also have extras like file areas, games, and live chat, but those are the basics. A lot of the DOS-derived BBSs (including things like Synchronet running on Linux) have a sort of generally familiar feel; ANSI graphics, etc. There are exceptions (Citadel) and there always were and are BBSs running on other platforms (the first BBS predates DOS, after all). Some of those have a different feel, often with less color and art. ---------------------------------------------------------------------- cognitivegear · 2022-07-30 04:33 So, as others have kinda said on here, I don't think there is a single technology that really defines a BBS. You can telnet, ssh, dial up over modem. You can use plain ascii, ANSI, RIP, sixel etc. But, there is something that makes a BBS that's more important than any of that. It's community. Whether it's games or messages or even the files, what they have in common is the community, the fact that there are "real people" behind it. The only problem that I see with a special client is that one thing that helps bring those people together is the interoperability of BBS's. It doesn't matter if you are on a PC, Mac, Linux machine, or even a Commodore 64 or Atari 8 bit computer. Now, I'm not saying that it's impossible, just that if you want to embrace a BBS feel you may want to try to incorporate some of those themes as well. ---------------------------------------------------------------------- cpu_triple_fault · 2022-07-30 04:42 Yeah only problem with telnet and ssh is it puts to much of a computing burden on the server; namely most of the buffering rendering operations are executed on the server before the results are sent to the client. Imo I think an open protocol that empowers everyone to write their own compatible client, much like Minecraft Classic, would be ideal. There would be multiple implementations for different platforms. But that’s an idealized client. Currently I’m using C# with .NET Core, so it can be run on both Unix based systems and windows systems. I’ll make the protocol public, but I’d doubt anyone would actually implement software for it. ---------------------------------------------------------------------- weedandbombs · 2022-07-30 17:02 a bbs is a bbs... bulletin board system. the method of connection has nothing to do with the function of the board in my eyes ---------------------------------------------------------------------- wndrbr3d · 2022-07-31 21:11 I think there's some assumptions here I want to address. There's really no "burden" on the server when handling ANSI/RIP interactions. Basically if it wasn't a burden on a 386, it's \_especially\_ not a burden today. Also -- I just want to make sure you're not conflating Telnet (Protocol) and ANSI Escape Sequences. You can transmit ANSI over any medium (dialup, tcp, packet radio, etc.) because it's just data. It sounds like you're trying to write a protocol where the server describes the visual elements in the transmission vs. rendering + sending them. You might want to take a look at Terminal.Gui ([GitHub](https://github.com/gui-cs/Terminal.Gui)) because it sounds similar, but instead of defining the elements programmatically you could do it dynamically at runtime. ---------------------------------------------------------------------- cpu_triple_fault · 2022-08-07 14:31 By burden I mean the server has to compute what text (where buttons are drawn, where the cursor position is, ascii art) has to be displayed, then it is sent to the client - at least on telnet and ssh. The protocol I wrote on the other hand specifies specific opcodes and fields for different packets. There’s a -Fetch message packet (from a given message guid) -Fetch Inbox listing (list of message guids), from… - A users inbox or outbox or unread outbox - Replies to a certain message - Login/Authentication Responses are mostly - A server information packet, with a message of the day, and a link to a web resource to be displayed by the client - A status response packet, usually sent after every operation indicating success/failure with an additional message. There are way more packets but my point is I’m not writing a client where the server describes/computes visual elements. That’s done by the client. P.S. Where did you get the impression that I’m conflating ANSII for telnet, and that my protocol would still involve server side visual computation when I explicitly said > most of the buffering/rendering operations Should be done on the client instead of the server. Do visual elements not count as part of rendering/buffering operations? ---------------------------------------------------------------------- f1action · 2022-08-12 02:01 Same with me, like if it were some sort of a computer network for the most remote areas. Never had any connection to a BBS growing up, neither any experience with Compuserve, America Online, Prodigy, or GEnie. But in a nutshell, Bulletin Board Systems are a walled computer community. That is for information exchange in a certain niche among connected computer users. Whether messages, files, etc. You can do whatever your heaet desires.