* when I last left tomo, I was dealing with two core problems:
(?) the encrypted user-to-user, shard-to-shard, messaging system wasn't working. this was a technical problem with either the implementation or the SSL libraries, and I spent 50+ hours trying to debug it with no progress
(?) i had no root design metaphor for tomo itself. is it reddit? tiny usenet? a frankenmix of the two? why should people use it instead of anything else already out there?
! all of the above left me at a standstill in August 2023. The technical problem was probably fixable, but I had burned weeks of development time trying to fix
one single bug without making progress in other areas of the project. The creator of RS-Light (which tomo uses for 90% of its core functionality) was incredibly generous and helpful trying to help me figure out the problem, but it was becoming evident that both of us were stymied by the bug. One big bad bug.
! the design problem was even more troubling. I didn't want to keep building out software that needed a re-design from the ground up. if tomo was just a distributed form of reddit, I'd need to start re-designing the entire interface and functionality around reddit. And honestly? I don't love reddit. The basic forum system works okay, but it isn't pleasant to use. It basically turns out to be "imgur with comments" when you strip away all the cruft.
? okay, so what if I model it on barebones NNTP/usenet? why should anyone want to use tomoNet instead of USENET? does it offer anything that a straightforward NNTP server doesn't do already?
! I was conceptually stuck, and burned out on debugging. The project was no longer a joy to look at. So I did what I do when I burn out: I switch to other projects that
can make progress. I started tinkering with game development in the winter of 2023, building prototypes with
Adventure Game Studio.
> the prototypes quickly got hung up on limitations that came from AGS itself: its bytecode-compiled scripting system couldn't do any of the things necessary to make the kinds of games I wanted. It was so deeply designed around making LucasArts/Sierra adventure games that any other genre (like SimCity-style games) were nearly impossible to build.
> I became despondent. Tomo had lost traction for months, my game prototypes became hung up on engine limitations, and nothing seemed to be working.
> and then, a break in the clouds: in December 2024 - one year ago - I decided to throw in the towel on my 10 years of work as a hired-gun/contractor in the game industry. I
re-invented myself as a game design Studio Tomodashi and decided to build out my own engine and game construction toolkit.
> from January-March 2024, I wrote a bunch of design documents and tried to force AGS into doing what I needed it to. Adding basic things like creating new variables at runtime, to make a Maxis-like simulation game, was like pulling teeth.
> in April, it all came to a head: I needed a new game engine to build the kinds of games I wanted to make. My years of working with Unity and Godot and RPG Maker and Game Maker had taught me that they were the wrong toolkits for the job. There just weren't any game toolkits out there for someone who wanted to build 2D games that did all of their thinking
at runtime. C# supported the concept of injecting scripts and variables at runtime, but it just isn't easy to do in any existing engine. I needed something new.
> that's how
exigy got started last April: a software/shareware design toolkit born out of frustration.
! nine months later, exigy is getting ready for its first pre-alpha, and I need a place where users can submit bugs, suggest design ideas, and commisserate with one another.
! what if an exigy community was the first dry run of tomo?
? functions an exigy community might need:
       * an easy way of sharing XGY projects
       * a wiki-like area for updating the runtime documentation
       * discussion groups
       * a place to submit bug reports
       * a way of distributing new builds and news about development
? but what kind of software already does all of the above. it's a big ask to cover all of those bases. the answer, as it turns out, is one that we've known about for over 40 years: a
Bulletin Board System or BBS.
! for decades I've wanted to run a BBS again, after brief love affairs with running ANSI-based boards like
en.wikipedia.org/wiki/Renegade_(BBS)>Renegade,
iniquitybbs.com>iNiQUiTY and
Oblivion/2.
* while terminal based BBSes have a wonderful ANSI aesthetic, they don't have the functionality I'd want: very few people want to load up a terminal program and navigate via keyboard-driven text menus, and deal with file transfer protocols, just to update their software. navigating messaging conferences was similarly a huge pain in the ass. what about inter-BBS message sharing? sure, we have FidoNet and a host of other software packages that can do that, but the barriers to entry for just setting that up are huge.
> tomo, which is PHP/HTML/CSS all the way down (including the NNTP server!), could be re-designed to handle all of the jobs a traditional ANSI BBS would do, BUT instead using a mouse-driven point and click interface. best of both worlds.
> want your tomo shard to look like a
FirstClass BBS? just re-skin it with Macintosh System 7 window graphics and Chicago font. want it to look like an old school ANSI BBS? re-skin it using your PabloDraw ANSI menus and a MS-DOS/IBM 437 font.
> want your tomo shard to share messaging conferences with other tomo shards on tomoNet? just turn on Global mode and set it to tomoNet.
> don't want to participate in tomoNet and run your shard as a standalone island? don't turn on Global mode.
> want to form your own archipelago of shards that isn't on tomoNet? just add a list of friendly shards, and set Global mode to your personal list.
> only need the NNTP server, and don't want to give your users a web interface? just turn off the WWW portal.
> in other words: tomo is becoming a networkable bulletin board system, with every feature you'd expect from a BBS, using NNTP and HTTP as the core protocols instead of Telnet, and a mouse and keyboard instead of keyboard-only.
> this means that i'm restarting development on tomo as of this week. i'm going to focus on re-designing the front end/web interface to support the kinds of file areas, messaging areas, wikis, and posting capabilities we need.
.............................