Email or username:

Password:

Forgot your password?
Scott Small

1.0 RELEASED! ๐ŸŽ‰โ€‹
(happy !)

Macstodon is a Mastodon client for vintage (pre-OSX) computers.

New in 1.0 (there's so much stuff that it's finally time to bump the major version):
- Profiles!
- User interactions! (follow/mute/block and notes)
- Preferences - customize the number of toots to load at launch and on refresh!
- Junk characters removed!
- Open links in browser, download attached media!
- Icons for interactions!
- Many, many bug fixes!

System Requirements:
- A 68020+ or PPC Mac
- System 7.1 through 9.2.2
- At least 1.5 MB of free memory (8 MB to view images)
- 32-bit addressing enabled
- Internet Config installed
- an SSL-stripping proxy such as WebOne running on another machine

You can download it from GitHub: github.com/smallsco/macstodon (don't forget to read the Read Me file, it contains important setup instructions!)

54 comments
Scott Small

Big thanks to @octothorpe who designed the toot interaction icons for this release ๐Ÿ˜€

Scott Small

So, what comes next for ?

First of all, I'm going to take another break for a month or so ๐Ÿ˜…

After that, there's still a couple features I want to look into. One is implementing support for polls, the other is timeline column customization and support lists, the federated timeline, and hashtag timelines.

Once those are done, I'll likely call the project complete and move on. It's been a fun few months but I'm starting to feel ready for the next thing. I'd like to learn C, and how to program vintage Macs with that.

So, what comes next for ?

First of all, I'm going to take another break for a month or so ๐Ÿ˜…

After that, there's still a couple features I want to look into. One is implementing support for polls, the other is timeline column customization and support lists, the federated timeline, and hashtag timelines.

vga256

@smallsco Congratulations on the release. It has been incredible watching this program mature - I can't wait to give it a try on a real machine soon :D

Ian Scott :apple_inc: ๐Ÿ™

@smallsco I'm happy to see you taking a break and also saying that you'll be calling it done in the future. I'm currently taking a break from my main retro hobby development project and I think breaks like that are key to keeping it feeling fun and not a burden!

Scott Small

@polpo Yup. Work-life balance is *so* important. I do a lot of programming in my day job, which is why for the most part I only do Macstodon work once a week (and why it takes so long to get releases out).

I think it's also very important to set goals and milestones for hobby projects. Not only does it feel immensely rewarding to reach one, but those also make good points to evaluate your progress and reflect on whether or not you want to keep going.

In the case of Macstodon, there's a couple more features I'd like - anything beyond that would be a nice-to-have but either too time consuming to implement, or beyond the ability of my skills or tool set. So after the next release I think is the right place to call it complete.

@polpo Yup. Work-life balance is *so* important. I do a lot of programming in my day job, which is why for the most part I only do Macstodon work once a week (and why it takes so long to get releases out).

I think it's also very important to set goals and milestones for hobby projects. Not only does it feel immensely rewarding to reach one, but those also make good points to evaluate your progress and reflect on whether or not you want to keep going.

Expert Plus ๐Ÿ€

@smallsco are you kidding me?

The design of User Interface SUCKS!

Scott Small

One more thing!

Thanks to everyone who's been favouriting and boosting my development updates, as well as everyone who's given Macstodon a try, reported bugs, and given valuable feedback.

I've never programmed anything "real" for a classic Mac before - well, other than HyperCard stacks when I was a child ๐Ÿ˜€ It's really been a joy to make this and see it come together over the last few months!

I've been going through some personal stuff lately so I haven't been engaging here as much as I'd like to, I've mainly just been boosting. But the community here on Mastodon is really something special, and at some point I do plan to follow y'all back!

Anyway, enjoy the release!

One more thing!

Thanks to everyone who's been favouriting and boosting my development updates, as well as everyone who's given Macstodon a try, reported bugs, and given valuable feedback.

I've never programmed anything "real" for a classic Mac before - well, other than HyperCard stacks when I was a child ๐Ÿ˜€ It's really been a joy to make this and see it come together over the last few months!

David Nelson

@smallsco Thanks for your dedication to this. Truly a labor of love to write new software for an OS that hasnโ€™t been developed in ~25 years. ๐Ÿฅฐ

DELETED

@smallsco
โ€œI've never programmed anything "real" for a classic Mac before - well, other than HyperCard stacks when I was a childโ€

Next you must program Macstodon in HyperCard ๐Ÿ˜›

Scott Small

@SinclairSpeccy Hah - I did think about that, briefly, at the very start ๐Ÿ˜›

But someone else can have that project.

Bill Svec

@smallsco Congrats! This is an amazing accomplishment. I love how all the source files are on โ€œone lineโ€ in GitHub because they donโ€™t know what to do with CR-delimited files. ๐Ÿ˜‚

Scott Small

@billsvec Oh god yes, between that and the character encoding, and the lack of support for resource forks, it makes dealing with Git incredibly annoying. Two things I had to do:
- compress the resources into a BinHex'ed Stuffit archive
- add a .gitattributes file in order to make local diffs work correctly

Dr. Mattias Holm :verified:

@billsvec @smallsco git should normally store text with LF, unfortunately autocrlf doesnโ€™t handle CR only files. So you better add a smudge and clean filter instead.

Krishna Draws!โœ๏ธ

@smallsco awesome! I am going to give Macstodon another go with my PowerMac G4. Fingers crossed!

Stefan Prandl

@smallsco I love how this is how I find out people are still developing for old Mac OS's

arfy

@smallsco Ok, very cool! I don't have a vintage mac, but much respect for the work your doing here. Keep it up!

arfy

@smallsco So, now I'm really curious. What's it like in the 21st century coding for these old machines? How much were you able to use in terms of modern libraries, languages, etc? Isn't the main language of Mac OS pascal? How does it all fit together.

Scott Small

@arfy Good questions! You're right that back in the day, the main languages for writing Classic Mac software were Pascal and C (as well as 68000 assembly).

I don't have experience in any of those things. What I do know pretty well is Python, which I use at my day job. The last version of Python that supports 68K Macs is MacPython 1.5.2 - so I downloaded that, and that's what I've been using to code Macstodon with.

It comes with a simple IDE and REPL app, as well as a widget framework simply called "W" that you can use to build a Mac app using pure Python. It also comes with a "MacFreeze" tool that can take a Python script, and combine it with a resource fork and embed the interpreter in order to produce a standalone Mac application.

There are Python interfaces to the Macintosh Toolbox directly, however they are undocumented so I don't use them much - I mostly rely on the widgets.

Hope that's helpful ๐Ÿ˜„

@arfy Good questions! You're right that back in the day, the main languages for writing Classic Mac software were Pascal and C (as well as 68000 assembly).

I don't have experience in any of those things. What I do know pretty well is Python, which I use at my day job. The last version of Python that supports 68K Macs is MacPython 1.5.2 - so I downloaded that, and that's what I've been using to code Macstodon with.

Eric Fox

@smallsco ha, I should try this out on my iMac g3

akiran_n

@smallsco if I find the time, I Will try on my SE/30!

cherrybombspice

@smallsco This is rad ๐Ÿ˜ƒ๐Ÿ˜โค๏ธโค๏ธโค๏ธ๐Ÿ’—๐Ÿ’—๐Ÿ’—๐Ÿ’•๐Ÿ’•๐Ÿ’•๐Ÿ’•

combatant

@smallsco don't have a macintosh, but this is pretty cool

Tritโ€™

@smallsco Good job! Do it open links in browser via FrogFind! (specially made to allow such old computers to browse the modern Web)?

Scott Small

@TritTriton Macstodon requires that you set up an HTTPS proxy externally - my personal recommendation is WebOne (github.com/atauenis/webone/). Any external links that are opened will be routed through that.

RadishTM

@smallsco This is just awesome, great work! ๐Ÿค“๐Ÿ‘๐Ÿผ

Nahga

@smallsco@oldbytes.space
I also donโ€™t have a Mac that could run this, but wow itโ€™s pretty great. Nice work.

Dan Neuman

@smallsco Now Iโ€™m wondering if the G4 Cube I have in storage still has OS9 on it.

Random_Seed

@smallsco well done! One of the most fun projects to watch. Thank you!

Carly Ho

@smallsco tbh i wish i had a computer that could run this; it's so charming!

Scott Small

@carly That's no problem - you can run it on an emulator such as SheepShaver or BasiliskII if you don't have real hardware!

Son of a Sailor

@smallsco I am so delighted that something like this exists! Well done! ๐Ÿ‘

(By the way, if you know of anyone reputable who can restore a Mac Classic to working order, let me know. ๐Ÿ™‚)

Scott Small

@Sonofasailor I don't know off the top of my head who provides vintage Mac recap and restoration services here - but I'm sure you'll be able to find someone easily as there's a lot of vintage Mac enthusiasts around ๐Ÿ˜€ Try posting with the and/or hashtags. Another good place to ask would be on the Tinker Different forums: tinkerdifferent.com/

Kip

@smallsco Oh my god ๐Ÿ˜ I'm totally trying this out tomorrow.

Jรฉrรดme

@smallsco wow! Must be the only social network that can load in an app on this OS. Beside IRC

Go Up