Welcome to Pragmatic. [Music] Pragmatic is a discussion show contemplating the practical application of technology. By exploring the real world trade-offs, we look at how great ideas are transformed into products and services that can change our lives. Nothing is as simple as it seems. Pragmatic is part of the Engineer Network. To support our shows, including this one, head over to our Patreon page. And for other great shows, visit engineer.network today. This episode is brought to you by ManyTricks, makers of helpful apps for the Mac. Visit manytricks.com/pragmatic for more information about their amazingly useful apps. We'll talk about them more during the show. I'm your host, John Chidjie, and today I am joined once again by Vic Hudson. How's it going, Vic? Good, John. How are you doing? I'm doing good. I'm doing good. And I'd like to talk about Mastodon. And I don't mean the heavy metal band. I actually mean the social media site. So, I have been tweeting every now and then or cross-posting from Mastodon. Have you been seeing those coming through in your feed? I have saw those in my feed and I clicked through and I did some investigating. You seem to be running your own little private little social network based on some open source software? Yes, pretty much. That's it in a nutshell. But but we'll get to the details of that later on. But a little bit about what Mastodon is first. So Mastodon is actually based on GNU Social or GNU Social, however it's supposed to be pronounced. I don't know. And that's based on StatusNet, which used to be called Laconica. I don't know, anyway. And GNU Social implements the Ostatus standard. And it was intended to be a microblogging replacement, but it was also designed to be distributed, like a distributed network, like email is distributed with multiple servers that can talk to each other if they have to or want to. So it uses XMPP, Java for publishing updates. It uses OpenID for authentication and O-Status supports Federation, which is that ability to subscribe and essentially aggregate information from the different instances, servers. and Ostatis uses subscription via PubSubHubbub and replies via the Salmon protocol. And I don't really wanna go into the details about that. If you really want, there's links in the show notes, but it was actually Identica or Identi.ca. That was the first deployment of GNU Social, but it wasn't actually developed to fully include Ostatis until version 0.9.0 in early 2010. So, as social media projects go, it's really not that old. And there's several other O-Status based platforms out there that are able to interact with each other based on O-Status. But the latest and greatest one to date is Mastodon. - Okay. - And the man behind Mastodon is a guy called Eugen... I hope I'm pronouncing that right. - Jürgen Rocco, I think he's German. And the first public release of it was on the 5th of October of 2016, which is just a little bit over six months ago. So it's really new, really new. And it's written a compile for Linux and it runs off of Ruby and JavaScript on the front end. - Okay. - So if you think about Twitter and you think about how that works, there's a few differences. Some of them are subtle and some of them are annoying. So, let's go with what- tweets aren't tweets on Mastodon, they're called toots. And toots is kind of a funny word. I'm not sure. I mean, what does your mind jump to when you think of toots for one, for starters? You know, I mean, really. Most of the time, probably not good things. Yeah, just- Exactly right. It's just such a weird name for it. They just wanted to come up with a different name for tweet. Yeah. And I guess if you take the E's and you turn them into O's, you get- instead of get tweet, you get twoot and you drop the W and get toot. And it's like, I guess that's where it came from, but I- Twoot twoot. I don't know. I mean, I'm thinking more about what happens if you have too many baked beans, to be honest. But the thing is that maybe they thought it's like- I had seen the expression on Twitter a few times. I've been busy tooting today or something like that. And I'm like, okay, anyway, whatever. One of the things that's cool about Mastodon though is that you can hide the entire contents of a toot behind an NSFW, which is not safe for work. And that's something I didn't know until I started running Mastodon 'cause we don't say that in Australia, but now I know what NSFW means. So, yeah, that's a win. Or you can have a content warning or CW for the entire contents of the toot. And if you do a content warning, you can type in a custom text warning message, whatever you like. Spoilers. Yes, spoilers. Exactly. It's great for spoiler alerts, right? Not something that I typically have played with, but I've done it a few times just for the hell of it. And yeah, it works. By the way, I've seen some people rant on Twitter about them. I think that there would be some people appreciative of it. Yeah, I think so. I think it's been generally well received. I think it's a nice little feature, but time will tell if Twitter takes that on. but anyway. So, anyway, users that read those sorts of toots that have got a warning behind them, they have to select the item first in order to show what's behind it, so it doesn't just appear in their face. So, I see the attraction. I think it's- I think that's cool, actually, but I personally haven't used it a hell of a lot, but I'm glad it's there. The other thing I've noticed about Mastodon, there's the community in Mastodon generally, at least the early adopters. I'd like to say it's a love hate thing, but it's not really. It's more of a hate hate thing for Twitter. Like, really, they don't like Twitter, like not at all. And you're not supposed to mention Twitter by its name on Mastodon. Apparently that's a no no. It's frowned upon. You're supposed to call it the bird site. Which is a bit- Is there a bot that'll reply to you if you don't refer to it properly? Not that I know of, but maybe someone will write one at some point. But I mean, the whole thing of having to call it bird site and being criticised if you call it Twitter in a post you put on Mastodon, I mean, it's a bit wanky, really. I don't- Yeah. Yeah. It's like, I don't get why you have to do that. The animosity. Yeah. It's just like it's uncalled for, you know. Anyway, well, whatever anyway, but that's just what- So this is basically, this basically much like the spirit of Manton Rees's micro.blog. This is more about owning your own content and not just feeding it into the Twitter machine, correct? Yeah, correct. Exactly. And I'm not, I haven't done a hell of a lot of research into what Manton's working on, but I am aware of it. But it's not something that I've really looked much into. Is it the idea that you can run one of his blogs on your own server? Well, I don't know a ton of the specifics about it. I'm not on his bait or anything. I've just heard him talking about it on the Core Intuition podcast. I do know he is running a hosting service of his own, so you can just sign up and have an account there. I think that he may be I think it may be you might be able to set it up and to run your own instance somewhere else and just have it feed into the system I'm not sure on that somebody can correct me if I'm wrong but uh yeah his the whole idea is just about you know owning your content not just giving it away to Twitter and letting them lock it up in their vault and he's he's made it really easy so you can do the idea so you can have like tweets which he calls you know micro blog post and you can also put your long-form content in there as well. So, you got your micro blog post and your regular blog post and he's done a lot of work to make it really easy to just have it cross post to the other social networks and stuff too. So, you don't necessarily have to feel left out of anything, but you can still own your own content. Okay. All right. Cool. That sounds really interesting. Actually, I should look a bit more into that, but Mastodon is along the same sorts of lines, but it's open source. Yeah, the one big thing that he's going to have going for him is that he's got the micro.blog URL and if you sign up and you get an account there you can get your own name at micro.blog, so that's pretty cool. Okay, cool. Well, I might look into that a little bit more. The other thing though about Mastodon that I think is really worth talking about a little bit more in a bit more depth is the character limit. So, a toot in Mastodon is 500 characters long. And I personally, I find that much better than 140 characters that Twitter gives you. And I know that people have this thing about saying 140 characters forces you to be brief, you know, and that brevity is a good thing. Not always. Yeah, I disagree. I don't think that 140 characters is actually a good restriction to have, because I think that the kind of thinking is that brevity is the soul of wit, as they say. And I think the reality is that when you look at the billions and billions of tweets that have gone past, I think all of the brief wit has been done. And I don't think there's much else you can do at this point. It's- I feel like to fill that gap, the restriction of 140 characters to fill that gap, people have to do multiple tweets one after the other, you know, tweet storms. Yeah. And I think you mentioned- You don't want to have a toot storm? Well, people do do toot storms, actually, they do. Yeah, they seriously do. But they're nowhere near as big or as long or as annoying in general. But with tweet storms, they're quite common. And I think that one of the problems that I've got with tweet storms is that I think people misunderstand what you mean because they don't take the time to read through the full threads or things like all of it if you've got it well that's assuming that's assuming that the author of the tweet storm you know there's a learning curve there you're assuming that the author of the tweet storm actually knew how to compose his tweet storm properly so that all the tweets are linked together and if somebody clicks through to one they get the whole context and I guess sure whether or not they choose to consume the whole context or just a single tweet is on the reader but at least the author when they do it properly they can have the whole context available to people by making sure the tweets are linked together. Jared Sinclair actually just made a neat app for that called TweetStorm. Oh cool, that's awesome. He did Unread didn't he? And that was... Yes he did. Yeah that's right. I think you had him on AppStory didn't you? Uh-huh I did. - Yeah, cool. That was awesome. I think that the fact that we have services like TweetLonger was the one that came to mind, there's a whole bunch of different ones and that there are apps that are specifically designed now for tweet storms illustrates the problem. And I also think that if you look at what Twitter has been doing gradually over the last year or two in image links, URLs and stuff like that, don't count towards your character limit anymore, nor do user names. - The reply system doesn't use the @mentions and stuff like that don't count anymore either. - Exactly. So I think if you look at carefully what Twitter's doing, they are indirectly freeing up characters. They realize that the 140 character limit is a problem. And I wouldn't be surprised in the next couple of years if they push that out to 200 or even 250 or something like that. But, you know, so the whole idea 140 characters is if you're on that platform you've got to have 140 characters and that's it I think that whole idea that's BS I think that there's no reason why you should be constrained to 140 like the days of 140 are gone and all Mastodon is doing is saying well here's 500 that should be more than enough and I honestly think that it's a far better number because you know you can get a whole a much better rounded idea or a concept or a thought across in 500 characters than you can in 140. So anyway, all right, so enough about that. The web interface that it comes with, that Mastodon comes with, looks a lot like TweetDeck, you know, with the three or four strip columns you can have. Yeah, I was going to ask what kind of interface you had for this, given its open source Linux-based nature. I thought you might be tooting from the terminal. No, not doing that. I could, but I'm not going to be doing that. But there is no official client, right? Because it's open source and there are some difficulties with open source stuff getting onto the iOS app store, I believe. Yeah. Well, some of the open source licenses are not compatible with app store distribution at all. Right. Okay. Not all of them, but some. Okay, cool. So that's most likely why. And there are three that I'm using for iOS, because the web interface is okay. But honestly, I prefer using an app because I'm on an iPad or an iPhone all day. And I just don't like having it in the web browser. So anyway, there's three apps I'm using. One's called Amarok. Another one is called 11T. And the last one is called rather unimaginatively Mastodon - iOS which yeah it does what it says on the tin it it does but the funny thing is I actually like that one the best and I like it the best because it's first of all it's a universal app so it'll run on the iPad and the iPhone the other ones are just iPhone only and a couple weeks ago the Mastodon iOS developer added landscape mode on the iPad which was the the last feature I really wanted and then I stopped using the web interface on my iPad entirely for Mastodon now I just run it through the app. So the thing about the Mastodon iOS client is actually is not, it's pretty straightforward, it does the job but one of the things I also like about it is that it has a sharing sheet or an extension, action extension, I think it is. So if I have a photo or if I've got something open in Safari, I can share that to Mastodon via that, which the other apps don't have. - Yeah, well, you gotta have that these days. - Oh yeah, absolutely. I mean, that's like half of the tweets that I, sorry, half of the toots that I put on the non-bird site. Anyway, they come via- - Come on, John, give a toot. - Stop. - I'm gonna start tooting in a second. Anyway, that's a great feature, right? The other two don't have that. All three of them, Amarok is probably the most polished. I'm on the beta for that. And 11T, I think is an Android first app and they're cross compiling it. So I think that's why it's behind, it lags behind the feature set that there is on Android. It also has a very blue interface. It looks a lot like the Twitter app in terms of its colour scheme, which I find a bit unnerving. But, you know, it's OK to have options, but both Amarok and Levanty have much better photo pickers. So if you're in the app and you want to post a photo, it's actually a lot easier through Amarok and Levanty, because what they do is they actually have a fast colour, colour, photo picker, whereas Mastodons just takes forever and only shows you like 20 or 30 of the most recent photos, which is really frustrating. So, yeah, they're not there yet. And that's okay because it's only been around six months and some of these apps have only been around for like two months. So it's early days. - That's really early days. - Really early days, yeah. So it's like the early days of Twitter, like even worse than the early days of, like, sorry, nowhere near as bad as the early days of Twitter. 'Cause the early days of Twitter, there were no iOS apps at all, right? So this is before even Twitterific existed. And what was the first one? Sorry, it was, geez, I forget now. It's been a while. Anyway, don't mind that. So-- - The one that eventually became the Tweety, I think. - Tweety, thank you. - Is that it? Lauren Brickner's app. The one that eventually became the official app. - Yep, that one. Anyway, so yeah. But the other thing is I also found push notifications aren't very reliable on these. Sometimes they come through, sometimes they don't. It's getting better, but it's not as good as it could be. But yeah, and the other thing that I find frustrating, and I know it wasn't part of the original Twitter API and it still isn't, was that the tweet marker. There's no toot marker, right? And-- - There's no toot marker? - Nope. - I have to give a shout out to Mantlin, maybe he can make you a toot marker. Previously mentioned Mantin Rees, he's also the one that made tweet marker. - Oh yeah, that's right. So yeah, that would be really, really handy, right? And 'cause that was originally, that's I think it still is a separate service, but eventually Twitter, I think Twitter added that, didn't they? Or no, nevermind, no, Tweetbot had their own. - I think Twitterific was using Tweetmarker. I don't know about Tweetbot. I've actually not used Tweetbot very much at all. - Well, Tweets. - And I think that Twitter still kind of just says, "Oh no, you don't need to sync. You just always need to see what's new when you come back." Yeah, well see this is fine if you're not of the completionist mentality. Yeah, and this is my problem is that I am a completionist so I get frustrated by that. But anyway, so I'd love to get that at some point, but that's okay. So it's early days and I'm happy to serve to forego some of those little like features for the other benefits. This brings us to another thing I was going to ask about. So you're not just like tooting off into the void. that there is a timeline where you can follow people and you can see other people's toots? - Yeah, absolutely. Oh yeah. - Okay. - Yeah, so I'll tell you more about the mechanics in a minute, but I just want to talk a little bit about the usernames, 'cause it is a little bit different. So the usernames are kind of a hybrid of a Twitter username and an email address. And it's kind of a bit funky, but once you get your head around it, it makes perfect sense. So for me, for example, I have @
[email protected]. So like an email address, but with an @ at the beginning of it. - So you've got like a username at a domain? - Yeah, pretty much. - Okay. - So, and once you, to like get your head around that, it needs to be that way because there could be hundreds or thousands of masternodes. - But it needs to know where to route it. - Yeah, exactly. It's just like an email server. So this is what's going to keep your little thing from going mainstream, John. You know that, right? Why? Oh, because that's a high learning curve. No, I don't think so. Your average users are going to say, "But on Twitter, I can just @mentionvickhudson1 and I'm done. I don't have to remember where @vickhudson1 is." Well okay so the way this get the way the search works is if you type in Vic Hudson one it'll come up with a list of Vic Hudson ones that are present on all of the instances and you just have to figure out which one is you. And that's fine except for one problem and the problem is you can have multiple accounts on multiple instances. Yeah so you could be the cuts in one at engineered space or you could be because in one at mastodon dot cloud or you could be the cuts in one at mass on dot social and they would all they could all be you your. I can be all the big cuts in one you can be well the alpha and the omega. You can have endless toot storms at yourself from different instances anyway so for example in my case before I. created Engineered Space is I created an account on Macedon.cloud as you do because I just wanted to have a go and see what it was about. Now that was fine except when I then went and exported and re-imported my timeline and everything into Engineered Space and I went and realized that there was no way to delete my account. So The only way you can actually delete an account is to message the administrator of the instance that the account's on and ask them to delete it. And from the command line, they run a rake-- - That's what I was hearing you say. So they're doing a manual query to delete you. - Correct, yes. So they run a rake command to query and extract and delete. 'Cause the whole thing's built on Postgres SQL. And that's been widely criticised for a whole bunch of performance reasons and so on and so forth. And yeah. So, apparently, William Shatner, you know, bless him, went and created- Is he tooting? What's that? Is he tooting? He did. He got into it briefly and he's like, right, I'm done. This sucks. I don't like it. I want to delete my account. And then he couldn't. Oh, boy. I know. You don't want to piss off Captain Kirk, man. No, you don't. He's going to go like- - That's not cool. - He's gonna go aggro. But anyway, nevermind that. - You see what I'm saying about learning curve though and your average user? - Yeah, I know. I know. And the, but the reality is that we all accept the fact that, you know, like I'm like
[email protected] or whatever, or john_chigi or whatever. We understand that I'm also john.chigi@icloud or me Whatever that was and you know it's like this is- But that's email it's different Yeah but- I'm not criticizing this don't get me wrong I just I think that it sounds to me like it's destined to be like a geeky thing I'm not entirely sure I agree Which may be exactly what you want you know in the end maybe you just want a place where just the people that are into really high level geekery could go and hang out and be themselves Well, keeping in mind that's how Twitter started, right? And Twitter, it took Twitter a few years to go mainstream. It did. It did. You're right. So, I'm not sold that that's what's going to happen, but before we go any further, I just want to talk about our sponsor for this episode, and that's ManyTricks, makers of helpful apps for the Mac, whose apps do, well, you guessed it, many tricks. And their apps include Butler, Kimo, Leech, Desktop, Curtain, TimeSync, Moom, Name, Mangler, Resolutionator and Witch. And there's a lot to talk about for every one of their apps, but we're going to trim it down and talk on about 5 of them. First of all, Witch. You should think of Witch as a supercharger for your command tab app switcher on your Mac. If you've got 3 or 4 documents open at once in any one app, then Witch's beautifully simple pop-up quickly lets you pick exactly the one you're looking for. Recently updated, you can now also switch between tabs as well as apps and app windows with horizontal and vertical menu bar switching panels, text search for all of those windows and much much more. NameMangler. Now suppose you've got a whole bunch of files and you need to rename them all quickly, efficiently and in really big numbers. Well, NameMangler is great for creating staged renaming sequences and powerful pattern matching that shows you the result as you go and if you mess it up, you can just revert back to where you started and go again. Now Moom makes it easy to move your windows to whatever screen positions you want, halves, corners, edges, fractions of the screen and you can even save and recall your favourite window arrangements with a special auto-arrange feature when you connect or disconnect your external display. It's awesome. I use it on every Mac I have. Time Sync lets you track the time you spend in apps or in activities on your Mac the simple an easy way. You can pool apps by common activities that you do on your computer or you can create custom trackers for non-Mac activities. Its simple and powerful reporting features mean you can see exactly where you're spending your time and help you plan better and stay focused. Resolutionator is so simple, it's a drop down menu from the menu bar and you can change the resolution of whatever display that you're connected to your Mac and the The best part, you can even set the resolution to fit more pixels than are physically there. It's very handy when you're stuck on your laptop and you need more screen real estate. Now that's just five of their great apps and that's only half of them. All of the apps have free trials and you can download them from manytricks.com/pragmatic and you can easily try them out before you buy them. all available from their website or through the Mac App Store. However, if you visit that URL, you can take advantage of a special discount off their very helpful apps exclusively for Engineered Network listeners. Simply use the code 'Pragmatic17' that's Pragmatic the word and 17 the numbers in the discount code box in the shopping cart to receive 25% off. This offer is only available to Engineered Network listeners for a limited time, so take advantage of it while you can. Thank you once again to Minitricks for sponsoring the engineered network. So a little bit more about how Mastodon works. So when you open it up, you get a few views. The first one is your own timeline, of course, and the timeline is constructed of everyone that you follow, just like Twitter, nothing particularly special there. There is however another view that is called the instance public instance timeline. And that's the Twitter equivalent of the fire hose, but just for your instance. So let's say you have a hundred users on your instance, it'll show you all of their toots in one long timeline, which is kind of cool. Then the next one is the federated timeline. And the federated timeline is basically anyone that you follow. Hang on, let me rephrase that. No, the federated timeline is anyone on your instance that they follow is on the federated timeline. So their timelines from the people that they follow and your timelines and the people you follow are added to a federated timeline. OK. And that allows you to basically go beyond your local network and see who else. So if you and I were the only users on an instance, the federated timeline would be a combination of the toots from the people I follow and the toots from the people you follow. Yes, that's the general idea. Okay. So, the theory goes like this, that if I'm on an instance and I'm following 10 people, all from other instances, I have to go and fetch all the toots from all of those people on all of those instances and store them. store them. So why not do something with them and display them on a federated timeline? Yeah. So I think it's- Well, and it might could help with discoverability too. Yeah, exactly right. That's the point. Like if you and I are on an instance together, there's fairly decent odds that I may find interest in the people you are following and you may find interest in the people I'm following. Exactly right. And I think that's really handy. I think that's a good idea. And I think that something that Twitter has lost along the way in its journey. It's lost that discoverability that the fire hoses ceased to be any good. And that discoverability is gone pretty well entirely. And they're aligned now on things like hashtags and trending hashtags. Yeah. I hate that. Explore that. It sucks. But anyway. So, apart from that, you've got local follows and remote follows, to be perfectly honest, you follow someone, you can do a search and it'll, like I said, you type in Vic Hudson one and it'll come up with a list of all the Vic Hudson ones. You pick the person you want and you follow them. And if they're not on your instance, it just says remote follow, as opposed to follow. Apart from that, there's no real difference. A couple of things that glitch, that annoy me is that when you follow someone from a different instance, the count of followers is only accurate for the people following that person on that instance. So if I have an account on mastodon.cloud, and that person has 10 followers following them that are on your instance on mastodon.cloud, then you'll see, oh, this person has 10 followers. But if there's only one person following them on that instance and you have a look and see how many people following them, even if they have 100 billion people following them on the next instance. As far as you can tell, they've only got one follower. Yeah, this is a side effect of the distributed nature of the thing, isn't it? Yes, it is. Now, there's nothing stopping them at some point from trying to do like a manual fetch of follower count like daily or something across the board. They could do that, but to date they have not. So, okay, this is got my gears turning here. Cut me off if you're going to get to this eventually and we can save it for when you get to it. So I'm curious now how all this is being managed like the timelines and these followers and all this. Is there any actual server component that's processing any of this or is all of this like working your little iPhone to death? No it's all server side. Okay. It's all server side. Okay. Yeah there's a queue called sidekick and the sidekick queue basically reaches out periodically to all of the other instances and and they message each other and they build this up in their own SQL, the Postgres SQL database. OK. Yeah. And it builds the timeline, you know, incrementally. But that, of course, you know, is problematic from the point of view that you could have, you know, sites that are down, instances that aren't there anymore and, you know, like instances that are offline. So, you know, it's kind of like someone, oh, I sent you an email and you're like, Yeah, but I haven't seen it yet. And it's like, okay, well, did you send it? I don't believe you. So, if you're following someone who's tweeting from an instance and that instance goes off the map for a while, you won't get any tweets from that person for a while. And so- Will they eventually come through later or are they just gone? Yes, they will eventually. Okay. So, this is the thing, right? It's like, it's not, the reality is that Twitter is in fact just like that. It's just that it's buried under a layer of abstraction. So you don't see it. So they have hundreds of servers running Twitter all around the world. But if you have an outage in one data center, yeah, you might get a delay of seeing someone's tweets for, I don't know, a few hours, but it's hidden under a layer of abstraction. You wouldn't know. - Yeah. - So Mastodon just makes that more visible. So what did I do with mine? - These sound like things that could get better as they further develop the product though. - I absolutely, they will, yes. It's currently at version 1.4.1 at time of recording, but the reality is that they're developing, you know, a major release with a whole bunch of bug fixes and extra features pretty well once a month. And yeah, it's quite popular. We'll get to some of the numbers in a minute, but so my own instance, so what did I do? And I'll talk about the what I did and then I'll talk about the why I did. So let's go with the what. So what I've done is I've created a virtual private server, the $5 a month line node entry level one, which is all you need. Although I'm assured that if I got a better server then with more memory, then it would run better, but it runs good enough for me. and 'cause I don't have a lot of users on it. And anyway, so it's a VPS, it's running CentOS 7. And basically, like I said, it's an entry-level version. Took me a little while to get it set up correctly 'cause a lot of people are using Heroku and there's a whole bunch of Docker stuff that they go through and I'm like, yeah, well, that doesn't apply to me, that doesn't apply to me. And I'm doing a lot of my automated stuff using systemd and all the other usual things you do in Linux land. But anyway, so it was a little bit of mucking around to do the upgrade. I didn't upgrade from 1.2.2 to 1.3.3, which is what I'm at the moment. I haven't taken the leap to 1.4.1, 'cause I'm kind of like, "Ugh, last time was a bit messy." And you gotta run a few incantations and stuff to make it work properly. So you gotta do a migrate for the database for certain upgrades. - I'm sorry, did you say incantations? - Yeah, I certainly did. - So there's chicken legs and voodoo involved here, chicken feet. - Possibly, possibly. - Okay. - But anyway, so yeah, the thing is that this is not for people that aren't comfortable with the terminal and my knowledge of Ruby, Ruby gems, Rake, Postgres, SQL, it's not at the level that it probably should be, but I can quite comfortably follow instructions and when it's like, oh, these are instructions for Debian or they're for Ubuntu, I know enough about the different Linux distros to say, right, I can translate that for CentOS now, 'cause I've been running CentOS 6 and I've run a couple of VPSs on CentOS 7 as well over the years for engineered network and tech distortion. So I know enough to be dangerous. So anyway, (laughing) but to be honest, yeah, once I figured out the silly mistakes I was making here and there, it did work and has been working relatively well. So I haven't had too many issues with it. All I did was I bought a domain. I figured I've got engineer.network, let's do engineer.space. And no, it's not about spaceships or anything or going to space, but I figured it's a space for engineers to hang out on Mastodon, I suppose. That was the rationale that made sense in my head, whether or not it makes sense or not, I don't really know. I'm not really sold on it, but hey, whatever. It sounds kind of cool, I guess. So, fishing for affirmation. Anyhow, let's see. So yes, at the moment I have an enormous number of two users. So if anyone... (laughs) Of which I am one. - I wasn't gonna ask. - Of which I am one. Oh, that's fine. The instance stats are up there. So go to engineer.space and have a look if you want. nothing to hide. But the stipulation is that I wanted it to be, if people are interested in trying out Mastodon and are interested in developing a public timeline about engineering topics, and I mean like engineering topics, not- Yeah. So, you want engineers. Well, I want people to want to talk about engineering. I don't want to like whether that's software or whether or not that's civil or electrical or control systems, whatever. But just engineering, I don't want it to be like politics is banned. I don't want to hear about it. I don't want to hear about Trump. I mean, I frankly, I don't hear about Trump ever again, to be honest, but never mind that. Most of this country is on the same page with you now, so there you go. Quite possibly. So, you know, it's like, I don't want to listen to politics about like, you know, in Australia, I don't want to hear about like what Tony Abbott said or whatever. I don't care or Mark Latham washed up old PM or I don't care, I don't care. You know, it's like that's got nothing to do with anything that interests me. So, you know, I mean, it's like it's part of that. But with that, because so the instance is closed, right, it's a closed instance. So, you have to request an account and I'll create one for you. I'm hoping and I'll put in a feature request a few other people have agreed with it is that Mastodon should have a, I'd like to request an account on a closed instance, and then an administrator can just approve it. Yeah, that should be straightforward enough to implement rather than me having to do a rake command on the terminal to do it, which of course I've done for my user number two. Anyway, so I did a post about this, which there's a link in the show notes about why I went in and did this, but that was the crux of it. Plus, I also wanted to fully own my username in its entirety. So, if I own engineer.space, then I own my handle at engineer.space for all time and I'm not dependent upon other admins. And that's where it's different from an email server because right now I've got accounts with Gmail and Apple. Yeah. Well, that actually brings me to another question. So, people could shut down their instance on you, correct? Correct. They can. And then all your toots go with it? Yes. Yeah. So, this is the thing is it's a matter of trust. Hubba, hubba, hubba, who do you trust? And the thing is, it's like, you can trust me. I'm giving away free money. You know, it's like I'm- All these were goodies. And I think that there's a business case to be had for someone that is going to be funded to maintain an instance. And in the cases where instances have gone away, typically they've come and gone and haven't had a lot of users, ones that have come and gone that have had like a few thousand users, for example, there were a few just recently, they've given a message out to all their users. So the admin can just post to anybody, anybody, everybody, and send them a message and say, Hey, we're closing down. You've got two weeks to back up your stuff. It's been fun. It's been real. It's right when you get a chance, bye-bye. You can export your data and then re-import it in new instance. And it works, kind of. You just get a big JSON blob? What is it? I'm trying to remember now. It was a month ago I did this. So I can't remember. I think it might have been. But the point is that the process does work. Actually, no, I think you point your instance at the other instance account and it sucks it out of the timeline. So actually, I think it does it in the background. You don't even see it. That's right, it does. So it's not too bad, but the truth is that owning your own content is kind of like saying, well, I own all of my emails that I send. But if all of your emails are stored in a cloud, then you do and you don't. So back in the days when it was SMTP only and everything was on your home client, on your own computer, that that was true. And because Mastodon is cloud hosted, you don't have that. Yeah. So who's shouldering, like if you post a photo, where does that photo end up being hosted? Do you need to host that somewhere perpetually and you're just really posting a link or do they handle that too? You can do either, but they will host the photo, yes. So that raises, of course, questions about moderation. Because what if you post something offensive? That could be quite a, the hosting burden on that could get quite substantial if you got a lot of people in your instance and they all start sharing a lot of media. Correct. Heaven forbid videos. Well, yeah, I mean you can restrict that, right? So you can say files have to be less than a certain size, profiles have to be less than a certain size, all those sorts of tweaking features will get more and more refined as it goes on, I think. But for the moment, yes, it is a problem because at the moment Twitter just sucks it up. They just deal with it. when these are VPSs that are run by enthusiasts like me, different story. - Yeah. - So the thing is about, let's talk about the moderation bit, right? Now, most people know either indirectly or maybe just intuitively, they kind of quote, know that Twitter and Facebook have got huge moderation teams, like lots and lots and lots of people in the hundreds, well and truly. And they try to remove anything that's illegal, unsavory images, posts, hate speech, that kind of stuff. But because of their size, they struggle, I think. And they particularly struggle with the differentiation of what constitutes harassment. - Yeah. - Now, Mastodon has some really, really good reporting features 'cause you can report an individual user or an individual tweet. You can even report instances. So let's say an instance is like, mastodon.nazisrs or something, I don't know, pick something bad. So, pick something that is unsavoury and unnice for the majority of people. Well, you can actually report that to admins and so on. And there's a blacklist you can subscribe to as an administrator with instances where people have already adjudicated and said, no, this is an unsavoury instance, so don't even bother bringing them into the federated timeline. So, none of that will come in. The bottom line, though, is that moderation requires effort. And that effort lies with the administrator of the instance in question. And therein lies the problem. So, when you sign up to be Mr. Enthusiast, like I have done so far, that means that I'm on the hook for moderation. So, or of course, I could, you know, I could delegate that, I could make other people admins and say, "Hey, help me out with this." But, you know, then it's like, "Well, what are your content guidelines?" And anyone that's been an administrator on any forum like I have in the past, and plenty of people have done that. And I know that fans of the show over the years have written in and told me about some of their experiences. I know that there are people that have done this, and I know that it's not easy. and the bigger the audience and certainly the more multi-discipline or multi-depth or multi-experience like different walks of life, the more difficult it gets. Yeah. So, when you want to ask yourself the question, do you want to run your own instance? Just, you can't. Do you really want to run your own instance? Do you? So, if you don't want to run your own instance. It's a commitment. Yeah, it is a commitment. Your best option is to, I think the business model seems to be people on Patreon. So, they'll say, "Hey, throw me a dollar a month and I will do all of that for you. I'll do the moderation." Yeah. Well, I was actually thinking, you know, this might be a cool thing for, you know, podcasts and podcast networks and stuff like that. Yeah, exactly. And one of the other things about Masson that's great is the ownership of your social- And I do like the terminology of social graph because it's kind of a- It's an interesting way of thinking about the problem. So, me as an individual, I have many facets of social media that I'm attached to. I've got a Facebook persona, a LinkedIn, unfortunately, persona. I've also got Twitter on multiple, and I'll get to that in a minute. And now I have Mastodon. Yeah. The problem is Mastodon is the only one I actually have full control over, and I only have full control over it because I own my instance. Yeah. So, if you're an organization or a company, it would make a lot of sense to own your own social graph and say everyone you don't tweet anymore you're on Mastodon and let's say you're oh jeez I don't know pick a company apple.com so mastodon.apple.com I mean apple would never do it of course they'd write their own and it would suck and no one would use it but you know that's okay ping ping ping are you there are you there ping no it's like it's a a social network for your music. Okay, enough about that. The memories, the memories. Anyway, can't knock them for trying, I guess, but I can knock them for failing. You can. I should start that as a thing. I can't knock you for trying, but I can knock you for failing. Anyway, That's just mean, I'm sorry. Anyhow, so what was I getting at? Yes, 'cause I'm getting at the fact that, you know, you could totally own that rather than having Apple support at Twitter, you know, at Twitter, you could have Apple support and it'd be mastered on and you would completely own it. You'd moderate your own instance and only people who are employees of the company would have the rights to have an account on your instance. And anyone could follow them from any other instance. So you would still get that distribution, you'd still get the followers, you'd still get the benefit, but you would own it. And I honestly think that that is going to become very, very useful and very enticing because you're no longer at the mercy of Twitter or Facebook or whatever. So, the business model, I think, I thought about this, would it become something that an internet service provider would provide? you know, like, would you go to, you know, whoever your ISP is and say, "Hey, I'd like an email account. Oh, no, I don't want an email account." But it comes with a Mastodon account. So, I could get
[email protected], for example. I think people would probably be averse to that for the same reason they're averse to using their ISP's email account. Yeah, true. So, you ever change your internet service, then you got to take the tassel to move that and to let everybody know you've moved. - Yeah, I tend to agree with you. So I suspect what's going to happen is that Mastodon instances will, you'll have a filtering list to the top. It'll be like, there'll be like a top 10 or a top 25 or something like that. And some of the figures, just to give you an idea of the scale as of like literally an hour or two ago, I checked the figures. So currently there's 1,593 instances that are actively tracked. And you can choose when you create an instance to say whether it'll be tracked in the federated list or not. There's a total of between those tracked instances, there are 672,000 users. So it's creeping up to three quarters of a million users worldwide. Now, if you think about Twitter, it took Twitter over a year to reach the million user mark. So Mastodon for six and a half, seven months is doing pretty well so far. - Yeah. But then again, Twitter had to introduce people to a concept whereas Mastodon is simply extending that concept. So it's a lot easier to ramp fast. And also keep in mind that in the 10 years Twitter has been around now, or thereabouts, 2016, yeah, it has been 10 years, 319 million users on Twitter at the end of 2016. So also has a ways to go. So about instances themselves, the flagship instance, and they call it the Flakeship instance 'cause it was the first, and that was mastodon.social. That's sitting at about 65,000 users. But the largest one is actually not that one. The largest one is pawoo.net, which is, I believe it's Japanese instance, and it has 158,000 users just in one instance. So a lot of developers have been very critical about design decisions that were made, particularly about SQL. And I've read a few of the feedback articles on the discourse threads about Mastodon and try to sort of stay in touch with where it's going, what's the story, where it's, yeah, basically where it's going, what they're working on. And a lot of people say, well, there's a reason that Twitter is built on NoSQL as opposed to SQL. And you're just, basically you've designed yourself into a corner from the beginning. So whether or not Mastodon at some point evolves a bit more as it scales, I don't know. I don't know running on a SQL backend, what the limit is in terms of responsiveness and how bad it's gonna get. And I also don't know how they handle, like how we're gonna work content repositories. Because, you know, there are many other ways of handling the content repositories at the moment, there's not many options. just on the same server that it's installed on, I believe. So yeah, that's something to consider as well longer term. So you couldn't like offload the images somewhere else, like if you found a cheaper server to bulk store media files and stuff? Yeah, if it doesn't do it yet, I'm pretty sure it doesn't do that yet. Maybe I'm wrong, but I don't think so. And I assume that at some point in the in the future that will happen. So honestly, I guess I want to now talk, now that I've talked about what Mastellanee is, how it works and why I think it's good, it comes back to my discontent with Twitter. And a lot of people ran to app.net. And my problem with app.net was app.net was just, to be frank, it was another Twitter. It had a bunch of extra features, but it was still a single server managed by a single group of people. And I don't see that as really all that different from Twitter. It had a few other things going for it. Sure. And it did also, in fact, go away. And of course, now it's dead. So that is also not good. Obviously. But no, no, no, I was thinking then more recently about Tent. You know, you got Tent.io and Tent.is and it became cupcake. Dear me, branding issues, branding guys. Anyway, I'm just going to go out, pitch a tent and eat a cupcake. Yo. So, I don't get it. Anyway, whatever. But it's still kicking. But the problem is that it's now gone and off tangents and there were authentication problems. And the problem, I think, with that one was that they built it too close to the- from the ground up. And whereas Mastodon is leveraging GNU Social, which leveraged StatusNet, which started as La Conica. And it's like, you know, there's a lineage. And there's lots of people in discourse forums for Masson saying, "Oh, I wish we didn't have to support O-Status." And it's like, yeah, but, you know, you're reinventing a wheel that spins just fine. So, I don't know. So, why leave Twitter? Okay. So, here's the thing. I haven't left Twitter exactly, but what I have done is I've streamlined my presence. I kind of got to that point where I I got a little bit sick and tired of having to- having a separate account. And I'll tell you something, honestly, I heard Dan Benjamin many years ago talk on the podcast method about there seems to be this thing that when people start a podcast, they have to have a new domain, they have to have a new Facebook account, Facebook page, they have to have a new Twitter account. And it's like, think that through. If you're going to cycle through a lot of podcasts, I mean, I'm up to- I'm running- I'm basically recording three podcasts at the moment. So, I've got Pragmatic, Causality and Analytical. However, previously I've also had- I did a brief stint with Buddycast. I did the Existential podcast. I did a season full time and then a bit part time with Anodized. All of them had separate Twitter accounts. All of them- Tangential. Oh, and Tangential. Thank you very much for reminding me, Tangential. That was also another brief flotation, but all of them had separate Twitter accounts. It's a lot of overhead to manage. It is, right? So, if we think about our social media graph, that was huge for me. And I'm like, I don't want to be managing that anymore. So, I decided that it was time to consolidate. So, I've taken at Pragmatic Show, at Causality Show, at Analytical Show, and they're gone. Well, if they're not gone, they're not gone yet. But by the time this goes live, they'll be gone. So they're going to be, I'm going to delete them from Twitter. I've saved their histories and I thank everybody who's ever followed them, retweeted them, favorited them. I appreciate that. But what I've done is I've done a swapsie on the Pragmatic Show account for the engineered_net account on Twitter. So I've just messaged everybody that didn't already follow Pragmatic Show. So now that's engineer_net and I messaged everyone else on there. It was a huge list that I did of people that were on the other accounts that weren't following that one. And I'm saying, "Hey, these ones are going to be deactivated in a couple of weeks. Please shift over." So I had about 20... So you'll just have the one account for the whole network. Exactly. So that's what I'm doing. The Nutrium guys who are planning to release an episode in the next couple of months, so Nutrium is still around, so don't worry. They are going to keep their own account, that's fine, but I will post any podcast, any shows, present and future from a single Twitter account and I'll maintain that, but I'm going to drive it from Mastodon. So, the idea is this, someone, I'll put a link in the show notes, did a script for Mastodon to Twitter. It was actually both. It was a bi-directional script, but I have no interest in Twitter back to Mastodon. So you could sink in both directions, but it was a script written in Python. I'd never programmed in Python before, so a couple of weekends ago I'm like, "Oh, let's learn Python." Because why not? Anyway, as you do, as you do, when you're a geek. Anyway, so I'm hacking and slash and some Python on the weekend, yo. And it sounds cool when I say yo. It's late. Be go easy on me. And anyway, so I extended the script to search the string, search the toot for a reference to a hashtag and then a Twitter username, in this case, #engineered_net. and I can then direct that tweet automatically to that account. So if I don't enter anything in my toot, it automatically will tweet that to my John Chidjy account on Twitter, and I can direct every other one to either the tech distortion account, which I'm also keeping separate from the network and the engineer network account. So there's now only three Twitter accounts that I maintain. All of the others are gone and they are coming back. That's pretty cool. So copped a little bit of flack for this. The actual Python script originally was designed to take a toot and split it into three tweets. - Okay. - And I didn't like that. I thought that was ridiculous because if the point is to show people that Mastodon is better, then why would I shove it into the antiquated 140 character format of Twitter? All I'm doing is I'm feeding the Twitter machine. So instead, I decided to take the URL of the toot. - This is why you've got the little click through thing. - You got it. Now, if you look at that in the official client and you've got the load URLs on, it should load an embedded snapshot of what the toot is anyway. It actually looks pretty decent. But if you've got that turned off. - So it's just us people on the bird website that are getting the stepchild experience. - I think so. actually, and if the features turned off in TweetBot. So I don't think it's too cumbersome, but I had one complaint already. I've only been doing it for a couple of weeks, but I had one complaint saying that it's destroying engagement and makes me not want to follow you. And I'm like, well, that's okay. Why don't you follow me on Mastodon and you won't have a problem. Obviously I use Twitter. I use Twitter for a bunch of different reasons, right? And part of it is venting. my frustrations with reality, I guess, existence. And another is it's an opportunity to engage with listeners. And it's been good for that. But honestly, I got to that point where I'm just I feel like I'm done with Twitter. I don't want to abandon everyone that wants to listen to what I've got to, whatever inane things I'd like to tweet, whatever, by just killing all of my Twitter accounts. I don't want to do that. It seems like a bit of a rash thing to do. So I'm going to give Mastodon a go one way or another, or at least I've streamlined Twitter and everything will be driven from Mastodon. So the only things I'll be doing is if you do direct message me or @mentionme on Twitter, then I will respond in kind on that platform. But that's it. I'm not going to initiate anything from Twitter anymore. It'll all come from Mastodon. and I'll send a link through so that you can get access to the full toot and all of its glory. And I strongly recommend giving MasterDollar a shot. If you haven't already, have a go, but my advice would be pick an instance that is likely to be around, like the flagship instance, for example. One of the larger ones is far more likely to be there for the longterm. And if you like it, and it's an instance that's supported through patronage, then stump up and be a patron. of whoever's the administrator for that instance, because it does take time. - To help make sure it sticks around. - Yeah, exactly. And if you also really do like math, then I also recommend that you pitch in and help Eugene. And I haven't done that yet, but I'm going to basically by the time this goes up, I will have. So honestly, yeah, that's why I did it. And I'm hoping that other people will want to join my little club, I guess, if you want to call it that, my little private social network thingy, just for the opportunity to have like a version of LinkedIn that's not full of crap and Twitter that's not full of crap. There's no advertising, none of that. There's no one scouring, looking for page views, selling your information to anyone it's all yours you want to go you know I mean Institute timeline in chronological order yes ha so there's none of this algorithmic crap you know it is what Twitter should have stayed but Twitter have a different set of drivers and this is why Twitter will ultimately die in the end you know and the same with Facebook people say You can't stop Facebook. Oh, yes, you can. Those are big words, John. Man, it's going to happen. It's not a matter of if, it's a matter of when. Are you going to pull a Syracuse and say on an infinite scale? It's not possible to have an infinite scale. And that's the joke, I think, isn't it? Because I mean, yeah. On a scale of one to infinity, how more annoyed are you? Infinity plus one. Anyway, no, it's inevitable because what's going to happen is alternative services will spring up. They might be VC funded, they may be open source, either way, they will spring up. And when they do, people are going to ask the obvious question, if I've got no advertising over here, if I've got more options over here, why would I stick with Twitter? And the answer is critical mass. All it takes is another medium to reach a critical mass to become interesting. And once you reach that critical mass and there's enough people on there, all the cool kids go over, everyone follows the cool kids over and the old one withers and dies like Myspace, you know, and that's that. So honestly, honestly, I think that in the very long term, Twitter will die, and I think that it will kill itself because of the decisions that it's made. Whether or not Mastodon is around for the super long term, I'm not entirely sure, but at least I'm more in control of it than I am with any other social media platform I've ever been involved with. Well, you have some control over it. That's automatically more. - Oops. - Yeah. So yeah, what do you think? - I think it sounds interesting. - Well, see, I do too. And that's why I've gone and set up my own instance. But you don't have to go totally crazy like that. (laughs) I in fact recommend that you don't do that. - You could just go say my crazy. - Join my crazy, no. The reality is that when you do set up your own instance, you're taking on all the maintenance and updating, you're taking on all the patching, you're taking on like, let's say your instance is just a party of one or even a party of five. If it goes down- Well, it's still responsibility to those five too. Yeah, but if it goes down, it's really not much love lost, especially if it's a freebie. Like I'm not charging anyone to use mine yet. And I suspect I'll probably fund it from the network anyway. So, it's probably not going to be, I don't think I'll be imposing a cost for it in the near future. You know, but then again, that's easy when I've got two users. So, if I'm inundated with hundreds and hundreds and hundreds of requests and suddenly I'm asked to moderate hundreds of posts a day, that becomes a very different. Well, then it becomes a job. It does. Yes. And possibly a far less enjoyable job than podcasting. So, we'll see what happens. I do think though that it's worth exploring and I would recommend people try an established instance and just give it a shot. You might like it and you might find that some of the BS that there is on Twitter just melts away. I found that a lot of the discussion on there for the moment feels much like Twitter did in the beginning. So, it's very geeky. It's a bit, you know, it's- I find it very thought provoking. There's a lot of people that are a bit philosophical about technology, which I love. And it's a lot of what was missing for me. And Twitter has now been overrun by BS and popular stuff, which I suppose speaks to the fact that I'm a freak and I'm not the majority of the population, because clearly the majority of the population does not care which flavor of Linux is the best. It does not care about the purity of the social network that it uses. People just type stuff into the void. Other people see it and they nod and say, like, and it's like, OK, and maybe that's fine for some people, but it's not fine for me and it's not what I want. And I've been getting more and more disgruntled with Twitter every time I open it. I've got to the point where I check my Twitter feed once every two weeks now. You know, I just don't bother because it's like there's nothing on there anymore. It's all just politics and horrible things happening in the world. If I want to watch horrible things happening in the world, I'll turn the TV on and have a look at the news. You know, it's like Twitter is no longer a place, a haven for me to escape or to be following people with a like mind, you know, people that love technology and love programming and love creating things and, you know, all that stuff, all that really good stuff that helps drive our civilization forward, not complaining about X, Y, Z in politics. It's like, you know, I'm done with it. And so, that was just as much a reason for giving it a shot. And in time, maybe Macedon will go the same way, maybe. But the idea of having a local instance with people of a like mind is something that Twitter can never give you. Yeah. So, whether or not that has lasting value, I don't know. But for me, that was my rationale anyway. So we'll see what happens. Anyway, so if you'd like to talk more about this, you can reach me on mastodon@
[email protected]. Or you can follow engineered_net on Twitter, if you're still on there, to see announcements about all the shows in the Engineered Network. We can find all the information about that at engineered.network. Causality has really taken off recently, it's a solo podcast that I do about cause and effect of major events and disasters in history, so if you're a fan of this show, you might like it too, so be sure to check it out. If you'd like to get in touch with Vic, what's the best way to get in touch with you, mate? They can still find me on Twitter @vighudson1. But for how long, Vic? How long? I don't know, I haven't gotten my engineered.spacemastodon invite yet. We'll see what we can do. We'll talk. - All right. (laughing) - I'd personally also like to thank ManyTricks for once again sponsoring the Engineered Network. We love ManyTricks. If you're looking for some Mac software that can do ManyTricks, remember, go and see them. Specifically visit this URL, manytricks, all one word, .com/pragmatic for more information about their amazingly useful apps. If you're enjoying Pragmatic and you want to support the show, you can, like some of our backers, Ivan, Daniel Dudley, and Chris Stone. They and many others are patrons of the show via Patreon, and you can find it at patreon.com/johncheejee, all one word. Patrons can have a named thank you on the website, spoken at the end of episodes, access to the pages of raw show notes for every episode, as well as an ad-free special release of every episode. There's a growing back catalog of re-edited episodes and a new making an episode video tier if you're into that. So there's something for everyone. And if you'd like to contribute something, anything at all, It's all very much appreciated. A special thank you to our patrons and a big thank you to everyone for listening. And as always, thank you, Vic. Thanks for having me, John. Catch on, Mastodonio. [MUSIC PLAYING] (upbeat music) [Music] (upbeat music) [MUSIC PLAYING] (upbeat music) (upbeat music) (upbeat music) ♪ ♪ (upbeat music) [MUSIC] [Music] [BLANK_AUDIO]