Archive for the ‘ Code and Design ’ Category

I’m old enough to remember the text-only internet, as well as some of the initial forays into media. Advertising has been ubiquitous from almost the beginning of the mass market adoption of internet as a service – but I remember the days when it was generally banned! I was still a kid then, but it was a thing for a good while.

Nowadays, advertising really is ubiquitous! In the larger sense, even I engage in a mild form of advertising, by linking to sites I enjoy, or to my webhost -although, now that I mention it, my affiliate link is so far expired that it wouldn’t get me anything if someone clicked it… I digress.

We all know the sorts of things that chap our hide. Adwalls on websites, with those little shamey messages that try to justify their business model by attempting to make you ashamed for using an adblocker. I mean, it’s not like their ads have tracking enabled in them or anything… right? If you believe that, I have some oceanfront property in Arizona… but let’s just be honest here. If your business model requires ad clicks, that business model is not stable. We’ve known that for a very long time now. We knew it within a year or two of the introduction of online ads. The reason that we still have ads, even though they are very low percentage, is because those ads are more and more targeted. How do they get targeted? By mining data. Where is that data mined from? The gigantic corporate sites, with millions, even billions, of users.

That data is mined from the users of Facebook, Google, Twitter, Amazon, and a selection of other sites – and their penumbra of tools, integrated with other websites all over the world, contribute to that data mining. Why can you “log in with Facebook”, Google, or a variety of other corporate accounts? You can do so because when you do, you contribute to those data mines, maintained by those companies. That data is sold to other businesses, or used by the corporate giants, for a fee, to target you, the user, with ads “relevant to you”.

Ad-driven consumption models, which use those large data stores to build algorithmic targeting, are what drive the corporate internet. The corporate internet includes the social media giants – Facebook and Twitter. The news sites are all dialed into these monoliths, and all of the legacy media has been essentially tamed to work in tandem with the social giants to target you. Why? Well, to rephrase the old saying – if you’re not paying for it, you’re probably the product. Open Source software doesn’t necessitate you being the product, after all! However, here’s a good rule of thumb to follow:

If the service or software you are using does at least two of the following:

  • Operates as a for-profit entity
  • Sells user data
  • Makes money by selling advertisements

Then you’re probably the product. On Facebook and Twitter, you are definitely the product, as an end user. On some of the adwall-enabled sites mentioned earlier, you are the product – unless you buy a premium subscription, at which point you revert to being a normal paying customer. They are a sort of hybrid model. That doesn’t make ad content any less annoying if you aren’t a paying customer, however.

Here’s a couple more examples. On network, over-the-air television and radio, you are also the product. Television delivers people. They use the content to draw your eyes and ears – because the real customers are the advertisers. You, on the other hand, are the product being sold. Why don’t radio stations play uninterrupted music? They have to make money. Why do TV stations have commercials? They have to make money. How do they make money? They sell you to advertisers. Free tiers of streaming services do the same thing – they sell you in exchange for the advertisers having access to you. The content you watch is what you are selling yourself in exchange for. This happens on Spotify, Hulu, and YouTube, to give a few examples.

When you pay for the service directly, those ads magically disappear. What’s the difference? You’re the customer now, not the advertisers. The service itself has changed. You no longer have to listen to advertisements, because you’re the one paying – not the advertisers. If you’re not paying, you’re probably the product.

So, let’s get to the reason I brought all this up. With alt-tech popping up to compete with these business models, you have a wide variety of choices. There are pluses and minuses to all of the various platforms – but there are, in general, several choices available to you.

  • A centralized (usually corporate) subscription service model
  • A decentralized (usually community-managed) federated model
  • A decentralized (usually individually managed) peer-to-peer model

Gab, Parler, and MeWe are variants of the first model – which is usually a business model. Additionally, most of the legacy media sites and networks use this model. They are often referred to as “walled gardens”. They use proprietary software to “lock you in” to their platform, and you are allowed to interact only with the content generated on their platform. You may or may not be able to view the content – or there may be limits on the amount that you can view – but there will be some limitation on your interactions, as a non-paying customer – and there will be limitations on functionality for non-paying customers, even if they allow most functions as a “free” tier subscriber. Once you’re a “premium” member, you unlock additional functionality. See: Spotify Premium, Gab Pro, MeWe Premium, Newspaper subscriptions, Hulu (NoAds), etc.

Mastodon, Pleroma, Pixelfed, Matrix, IRC, and PeerTube are variants of the second model – which is usually a community-managed, voluntarily supported non-profit model. There might be a “main branch” for the code contributors that is supporting employees, but the project itself is FOSS (Free Open Source Software). Typically, individual server operators host their own servers because they like to, or with the support of voluntary contributions from the community served by that host. They tend to be nerdy folks, and are not in it for the money – or your data. They tend to know the members of their community, and their community members are there specifically because those server admins are known quantities.

Peer-to-Peer networks are probably most widely known from filesharing – things like Napster, Limewire, or Bittorrent (Or Gnutella, Kazaa) – other famous current examples of peer-to-peer networking are Bitcoin and Tor. However, there are a number of social protocols built using similar means. PeerSocial, Aether, and WeYouMe are examples of this.

The route I’ve chosen is option 2 – primarily because I am a longtime web selfhoster (usually by means of commercial hosting companies that I pay to rent space/bandwidth from).

I’m a server host for an IRC and Pleroma server and the accompanying website. Our network also runs a Matrix server, as well as another IRC server linked to mine. In all, we use 4 servers in total, between us, as volunteer hosts. I also host a group theology/apologetics website, a church site, a game project site, and my own personal site(s). I do so, in all of these cases, because I feel like it, and I enjoy doing so.

The flipside to this coin, of course, is that anytime I don’t feel like it, I can click a button and anything I want to purge is gone. This is always the problem with community hosted projects. What mitigates this risk is the very thing I mentioned earlier, however – knowing your admin(s). My personal website has been up, without much downtime to speak of, since 2003. The apologetics and gaming project sites, since 2006. That’s a very long time, when it comes to the internet! When your community manager/host has a track record of commitment and stability, there’s a lot higher than normal chance of that community being technically stable. Both of those websites, for example, are as old as Twitter. My personal site is older than Facebook! However, I have never had to advertise to make money, and have kept them up and viable for well over a decade now. I don’t say this to toot my own horn – just to offer an example.

While you might not be able to find a community admin you trust, or a community with similar interests, you can always roll your own – at a very reasonable price! Many server hosts offer very inexpensive VPS packages that are capable of running small, or single-person federated instances, or P2P servers. Further, if you have a spare computer at home, you can often run something via one of a number of dynamic dns services – some of which may be packaged in your router right now! Whatever you choose, you don’t have to be the product, or stuck in a walled garden. It might be fun to learn something new while you’re at it, no matter which solution you go for.

One thing is for sure, though – unless you like being a commodity for some big tech company, why wouldn’t you switch to something that doesn’t sell you to advertisers? I’m not a fan of walled gardens, but the tech barriers to using federated social media aren’t all that high. If you’d like to talk it over, hit me up via any of the means listed to the right, and I’d be happy to talk options with you. I don’t have anything to sell, I just don’t like the way big tech commodifies us, and would be happy to help you make a change in your online behavior.

Social Media Should Be Social

I probably don’t need to tell you all of the things that are wrong with corporate social media. I probably should point out a few things about it that aren’t pointed out as often, however.

Whatever we may think about the politics of their founders, there is little functional difference between a walled garden maintained by Twitter, and one maintained by Gab. To interact with Twitter users, you have to be logged in to Twitter. To interact with Gab users, you have to be logged in to Gab. This is what a “walled garden” is. While Gab does, of course, have a “groups” function – so do Facebook, and MeWe. You have to be logged in to their respective services to use these features.

I have been hosting my own sites for far too long to have ever really liked corporate social media. Those of you who have only ever used corporate platforms for things like chat, forums, blogging, and the like may have some difficulty seeing the difference here – but there is a significant difference in using FOSS programs you spin up yourself, vs. those owned by a corporation, and subject to their whims – and let’s be clear about this – their rules are whimsical.

There’s another aspect of freedom to be evaluated, though. If we believe that corporate solutions are the only solutions in town, we’re stuck with whatever they decide, right? Our only freedom of choice is between which corporations we choose to give our laughable expectations of privacy to – and whose company store we prefer. In any given town, should we merely expect a choice between national (or international!) chain business locations?

Of course not. Further, when we can, we shop local too, don’t we? After all, it’s our neighbor that owns that business, and it’s their kids who go to school with ours! Why does it have to be different with social media?

Structurally, the Fediverse is exactly the solution to corporate social media saturation. Culturally, the members of the Fediverse aren’t, so much. Let me explain, because it might be a bit confusing.

Many of the pioneers of these platforms are megageeks. This should not surprise anyone. Their politics can vary, wildly – from raging anarcho-libertarianism to raving eco-socialism. There are no-rules instances, lots-of-rules instances, instances for geeks, unix, individual flavors of linux, Raspberry Pis – all sorts of geeky things. These are what makes those communities, communities.

Some of the biggest communities on the fediverse are Japanese art and anime (along with less… savory types of media) sharing groups. The largest single fediverse server is actually run by a Japanese DeviantArt-type site – pixiv – with much the same sort of culture that DA has. Other large communities revolve around LGBTQ+ causes and groups, furries, sex workers… you get the idea. What they have in common are not, on the main, things that we, as Christians, would approve of. Most of the larger “general” servers tend to lean either heavily radical, or heavily reactionary. Not conservative – I meant what I said above. Most of the social right on the fediverse is composed of reactionaries, not conservatives. Most of the social left on the fediverse is composed of radicals, not liberals.

Thus, what I say next shouldn’t be a surprise: The Fediverse is a wild place at the moment. There are a few Christians around, but they are exceptionally few. In the last week, I’ve only been able to find a few dozen currently active users – and I’m pretty good with this here interwebz. Since this is so, why am I still writing about it?

I’m writing about it because, structurally, it is still vastly superior to the current paradigm. I’m Reformed, and a Reformed Baptist – so being a small minority in the greater stream doesn’t bother me much. I help run the only Reformed chat network there is, to the best of my knowledge.

Here’s why it is superior, structurally – since I’ve mentioned it twice, now. While it uses a familiar server>client paradigm, the servers can all federate. What this means is that any user on any server can interact, fairly seamlessly, with another user on another server. Those servers are called instances. Not only that, but there are a great many different platforms, with different capabilities and specialties, that can all interact with each other.

For instance – on the Fediverse, you can follow a video creator on Peertube, a platform comparable to Youtube, follow and comment on status from a friend on friendi.ca, a Facebook-type site with groups and forums; you can interact with microbloggers on Pleroma, Mastodon, Misskey, GNU Social or diaspora; check out a CMS-type setup on Hubzilla, look at pictures on Pixelfed, or jam out to tunes from Funkwhale.

They are all small, and are all generally in their infancy. Their dev cycles are longer, because they are typically community projects. Let me put it to you this way; would you rather be someone’s product and comfortable, or help with an experiment in a global project that needs a Christian influence?

The only “Christians” most of the Fediverse ever see (there are exceptions) are extremely political, extremely reactionary people, to whom their faith comes a distant second, at best. If you don’t believe me, look around the Fediverse. Then look through Facebook outside of your curated, comfortable friends feeds. Facebook and Twitter have much the same paradigms going on – you just don’t see them for the most part, because you’re not into sadomasochism 🙂

While I encourage you to at least start moving your way to the Fediverse, I want you to keep several things in mind.

  1. Do I need social media at all?
  2. How much value is there in leaving all of my friends behind?
  3. How much value am I providing others within the current paradigm?

If all you do is post political stuff, I think that the answer to 1 is “no”, 2 is “for them, a lot”, and 3 is “absolutely zero”. That’s just my opinion, but you’re welcome to take it or leave it 🙂

If you want to talk about theology, your hobbies, professional esoterica, there may be a different set of answers. You don’t have to just up and leave your old social media. You can ease your way from one to the other. You could also repost from one to the other.

There are differences in the Fediverse, however.

One way that the Fediverse differs is the “Content warning”. This doesn’t have to be “nsfw” images, and it is often not. These content warnings, often called “subjects”, are tags that tell others what you’re posting. A *lot* of instances don’t want political or “culture war” content in their timelines without a way to let people choose whether they want to read it or not. So, they use a mechanism similar to spoiler tags to hide that content as an opt-in measure. On my instance, all posts with subject lines are collapsed by default. If it’s tagged, you choose whether or not you want to read it.

Another difference is that there is no quote-tweeting (boosting, or repeating in other parlances). This cuts down significantly on dunking/brigading.

Yet another is that your timeline (especially on the microblogger platforms) is divided, from the beginning. You have your own follows in a timeline, then all of the content posted from your own instance, then a timeline of all of the content from all of the people that people from your instance have followed or interacted with.

On the instance itself, admins have a range of options available to them for interacting with other instances. They can block entire servers (I mentioned one earlier that is often entirely blocked), filter images from, or accept only public posts from (to disallow DMs from bad actors), along with several other choices.

On the client side, you can filter bad words, images, as well as the usual block or mute.

Finally, discovery is harder – on purpose. You aren’t given suggested lists of people to follow. You aren’t profiled by sophisticated software to find who you might know. You compile your follows list as you go – and your network of friends of friends grows as you, and they, interact. It is an organic process, not mechanical.

What you should remember is that the Fediverse is very Wild West. However, the setup for individual instances being able to federate means that we can set up a large number of small communities that can federate with each other, to provide each community access to the larger community, which in turn has access to the worldwide fediverse – while every user can pursue his own interests at whichever level of community he desires. The culture of the fediverse is the Wild West. The structure of the Fediverse is exceptionally elegant.

If we want social media to be social, we’re more than capable of bringing our own societies. Not Twitter societies – but Christian societies, where we can cooperate, debate, and even squabble – but do so not as data points on a corporate spreadsheet, but on instances run by friends or neighbors, who enjoy doing this sort of thing, and have our best interests at heart. That’s what I think is great about the potential here.

RefChat’s instance is still in alpha, and will probably be limited to people we know, for a while – but how about you send your geekiest friend this article? I’d be happy to talk to them, or you, about what it takes to roll your own instance.

Author’s Note: MadeOfLions and ThePinion from SSG’s Dev team have addressed the Calaquendi issue – the current prologue text identifying the player character as having dwelt in Valinor is incorrect. Their quotes will follow the text of this post.

To preface this post, I’ve been playing LOTRO since 2008. I’m a massive LOTR fan – enough so that our Rebekah’s middle name is Luthien. One aspect of LOTRO’s IP that can sometimes be frustrating is the fact that they can only use The Hobbit and the LOTR Trilogy – not the Silmarillion, or the other entries into the posthumous Tolkien canon. That being said, Standing Stone Games, the successor to Turbine, decided to add the “High Elf” race to the available choices, coinciding with the release of the upcoming Mordor expansion. The announcement was greeted with excitement, as well as some trepidation in some quarters. Here’s an interview snippet I want to share, to start with.

Pay close attention to it, because it will be important.

MMO-C: All righty. Let’s turn back to happy fun Made of Lions. We want to talk High Elves. You guys have already said there won’t be a new class coming out like what happened with Beornings. And Professor Olsen, of course people are going to ask him what he thought about it on his livestream on the official last week or the week before. He said the High Elves would by lore default be Noldorin like Galadriel or Sindar like Thranduil rather than Vanyar cos they never came back from Valinor. So if this happens, will we be getting a new starting instance for them to explain how they’re coming back to Middle earth because High Elves are the ones who went to Valinor and came back.

Libby: Well, that’s primarily the case but for our interpretation, one of the things that we’re thinking of going with is that it’s not only Elves who went to Valinor and came back, it’s also their descendants. We’re going with the concept of… and this is one of those things I think is sort of necessary in our game, in that you’ll need to be… you may have some proportion of High Elf in your blood, for instance, in order to in a way power you down slightly, so that you’re not Galadriel running around, because that’s not really the power level I think we can suspend disbelief on all that well in there are hundreds of High Elves running around and they’re all Galadriel-level people. I think that’s not a realistic way to present it, so we’re going more with the concept that there are people and characters of High Elf ancestry in addition to the sort of straight-up High Elves that we know from the book like Galadriel and in that way, we could have High Elf adventurers that weren’t mentioned, for example, like we traditionally have done with several of our other races and classes. I’m not sure that Grimbeorn had hundreds of kids running around, but for our game, you can make a Beorning and have Beorning adventures. So for the High Elf, you would be a High Elf in that you still have the benefits of being a High Elf and maybe some of the drawbacks that there might also be, like still working out gameplay concept for all of this obviously, but Sauron is going to be especially unhappy about High Elves and that might cause some difficulties for you. You’re going to be feeling the call of Valinor more strongly than other people, than other Elves even. And, as for the original question, we will probably have some starting instance of some stripe, but I don’t want to get into what that will entail at the moment.

Snook: I would say that, and Professor Olsen will probably appreciate this, we do have a fairly large what you might call a lore-doc in how High Elves would fit into Lord of the Rings Online, and that’s something we’ve been looking at, and a lot of it is a little behind the scenes kind of documentation, but we’re looking at a way to perhaps distill that for community read to help kind of place where they will fit into the game.

Ciccolini: Yes. I would love to see the community sort of have more insight into the gratuitous amounts of lore documentation that we generate.

Snook: (laughter) It’s a massive document.

Ciccolini: The community just doesn’t see some of this fantastic stuff.

Snook: I was like, ‘why is this PDF so large?’
(laughter)

So, with that in mind – spoilers incoming. Seriously. Lots of spoilers.

Read the rest of this entry

I really have to ask…

Why on earth does anyone still use blogspot blogs?

The interface stinks, the comment platform is terrible, it can’t do trackbacks to save its life, and the “plugins” are laughable. Why on earth would you use it? It’s mystifying to me.

Week 4’s topic was “Theology and Apologetics”

Here’s the audio!

So… I haven’t posted jack here in a good long while.

Here’s why.

1. We have a baby due within a month.
2. Our kids play soccer now – which consumes the better part of 4 nights/week.
3. I’ve started a game modification project.

Rebekah is due November 7th, but my wife has a history of delivering early. She’s VERY much hoping that trend will continue 😀

Soccer is… wild. I’m assistant coach on both teams, and it’s the time sink of doom. it’s fun, but exhausting.

The mod can be found at Fringespace.org.

So, umm… I’m busy. Yup. Blogging may or may not resume in the near future. I’m going to be severely hit or miss for the forseeable future, in any case.

Gregarius Aggregation

The folks in the Gregarius IRC channel asked me to write up a tutorial for how I did the Vox Apologia aggregator through WordPress, using Gregarius.

So, here’s a quick and dirty tutorial.

1. Install Gregarius. The instructions can be found here. Enable the RSSView plugin, in the config of your admin section. This is essential.

2. Add your feeds.

3. Navigate to the folder you’d like to aggregate to an external source – in our case, Vox.

4. Scroll to the very, very bottom of the page – you’ll see a tiny link entitled “RSS” – that’s the key to it all.

5. Use that link in the tool of your choice, and begin displaying your aggregated content.


Now, that’s the quick and dirty tutorial. Nothing I’ve done is hard, but you need to tweak a bit to get WordPress to display it correctly.

I’ll forget steps one through 3 – it’s easy, and documented elsewhere. The difficult part is knowing how to format it to get it to show up correctly in a call from javascript or from within WordPress.

Tools required:

1. A WordPress blog
2. External script to format the RSS feed for display
3. Plugin to enable php to be executed from within a page

For number one, I am on WordPress 1.5 for one blog, and WordPress 2.0 for the second.

For number two, I am using rss2html, designed by feed4all, which parses the RSS output into html, to be displayed on a webpage. What I prefer about this, is that I can host the script *on my own site*, without having to rely on yet *another* external application.

There are external options, however. Feedroll and FeedDigest can do much the same, as well – but, they do so on *their own* servers. Which are often slammed. Like all free services, you get what you pay for.

For number three, I use the runphp plugin, from Mark Somerville. It works. You type whatever you want to run from within special html-looking brackets – and it works.

Easy stuff. What, however, do I run? I run the script listed above – rss2html_full.php. What this does, is format whatever the feed inputs are into html, however I want them to, using a stylesheet and template. What you can also do, is run feedroll or feedigest the same way – but they display with javascript. This way is much, much better. I would venture to say that trying to do this with an external tool wouldn’t be very nice, at all.

For sidebar RSS updates, there is a smaller rss2html script that displays it in a more compact, “headlines” style format. I use this as well – and export it to several places.

This combined setup (Gregarius, rss2html, WordPress) does the following things:

Aggregates the RSS feeds on *your* server. *Exports* the feeds you’ve just aggregated – which no other “on my own server” aggregator software/setup I’ve found can do. Plus, it lets you take that exported, aggregated feed, format it and display it in your blogging software, on it’s own distinct page. Nothing against Gregarius’ server-side display – but you can’t put that on *anyone else’s site*. Which brings me to the thing I really wanted to mention – also, with this setup, I can export the *aggregated* feed – *with* formatting, to *anywhere* else.

Gregarius gives you the aggregation muscle, and the distinct advantage of *exporting* an aggregated feed (which, I might add, only blogdigger allows you to do, from the external aggregator tools – and they are notoriously slow!). Rss2html gives you formatting options on that aggregated, exported feed – and allows you to display it anywhere.

It’s a powerful combination, and I hope someone else finds it useful.

Vox Apologia Info Box – The Code

I’ve been telling you, for some time now, that I was going to write some code for everyone to see when/where Vox is going to be, and where it is right now. I got it.

Here’s the code:

[code lang=”javascript”][/code]

Hope it’s helpful. Now, remind me to update it regularly, will ya?

Hosted by: Dreamhost