Hacker News new | past | comments | ask | show | jobs | submit login
Pixelfed – Federated Image Sharing (pixelfed.org)
283 points by octosphere 9 days ago | hide | past | web | favorite | 129 comments

This is how we probably should proceed with decentralization.

The problem that I see currently with this approach is not many are willing to host there own servers. Even people who are fairly tech savy won't host any server because of the costs involved. I am not going to host a server unless I get benefit out of it or its dirt cheap to host them.

The solution I think is instead of hosting it on cloud we host it at home. This way we have control over the cost. Again, if I can choose the kind of content that I am hosting then that would be great. I like to save images on certain topics. I don't mind serving them from my home since I already have unlimited data connection. Running a server on Raspberry PI would be ideal. There are already millions of PIs out there and they can be used for decentralization of apps. In the end, we might even be able to convince general population to host there own content. We will have to provide them tools and utilities to make hosting as easy as possible.

The major problem I think is NAT which is preventing direct hosting of content from home. Solve that and you most probably have solved decentralization.

> The major problem I think is NAT

NAT is not a problem. All you have to do is configure port forwarding on your router correctly. Dynamic IP assignment is a bit more of a problem, but it can be overcome by using dynamic DNS services. All of this is fairly trivial.

> I don't mind serving them from my home

I do. And I think it goes for a lot of people. My connection is residential, so somewhere in the ToS it says that I cannot run public servers off of it. Besides, there is no guaranteed uptime, I would need to deal with things like backups, hardware replacements and whatever other maintenance myself. Whereas with a service like Instagram, I just take pictures on my phone and upload. There is no overhead, my stuff is always available and I don't have to worry about backups.

> All you have to do is configure port forwarding on your router correctly. Dynamic IP assignment is a bit more of a problem, but it can be overcome by using dynamic DNS services.

But most people don’t even know what a ‘port’ is, let alone do they know that their router may let them change some settings.

> there is no guaranteed uptime, I would need to deal with things like backups

Are these important criteria for a federated system?

> my stuff is always available

Until it’s not because the centralized provider went out of business/censored you/was acquired/killed the product for strategic reasons

EDIT: typo

> Are these important criteria for a federated system?

As long as I am storing data on my node and/or use my node to access the system, yes, it is. Also, the comment I was replying to just said "The solution I think is instead of hosting it on cloud we host it at home" and suggested running a server on a Raspberry Pi. Nothing about federation.

> Until it’s not because the centralized provider went out of business/censored you/was acquired...

What do you think is more likely, that Instagram goes out of business or that a Raspberry Pi sitting under my bed dies and takes my photos with it?

You are correct, I was assuming federation in a decentralized system. If it’s an isolated node in your home, it looks a lot different, and I agree with your administration pain points.

> What do you think is more likely, that Instagram goes out of business or that a Raspberry Pi sitting under my bed dies and takes my photos with it?

Of course your RPI is more likely to die than Instagram going out of business. But with Instagram, the risk is more around them booting/censoring/sharing your stuff.

Does Google Picassa still exist?

No. Picasa doesn't exist. But all my photos are now in Google Photos, very much intact, even though I have had multiple device failures over the years and if I was hosting these photos myself chances are I would not have them by now.

Raspberry PI is just an example. I am pretty sure if people started looking into self hosting we can certainly come up with networks and devices that can compete with centralized services.

We can even come up with something that would ensure critical data is always available via redundant nodes. Look at BitTorrent, I am pretty sure nobody would have thought it would work flawlessly before it did.

I agree with the other two points. The first one is not just something that you can change in router configuration. I am talking about CG-NAT. It's implemented by ISP and is not something that you can bypass.

> But most people don’t even know what a ‘port’ is, let alone do they know that their router may let them change some settings.

upnp was made for them.

When I say NAT I mean CG-NAT implemented by ISP. You can't bypass it

>When I say NAT I mean CG-NAT implemented by ISP.

Are there any reliable statistics on how widely deployed carrier grade NAT to residences is? A cursory google search[1] doesn't reveal the data. Also, the top search result of ServerFault Q&A[2] has some speculation but no definitive statistical answer.

As an anecdote of 1, I've never personally experienced CG-NAT in 20+ years of residential internet use. I'm in the USA and have had various ISP service from AT&T DSL, Comcast coax, and Verizon FiOS and the ip addresses assigned to the WAN port of the routers were always the public ip visible on the internet.

I'm guessing CG-NAT is more prevalent on mobile phones or smaller ISPs. (But most smartphone users wouldn't want to run battery-draining decentralized server software on their mobile devices so CG-NAT wouldn't really be the barrier in that scenario.)

[1] https://www.google.com/search?q=percentage+residents+isp+"ca...

[2] https://serverfault.com/questions/895270/how-widely-deployed...

My UK ISP (Hyperoptic) _only_ offers CG-NAT for IPv4 unless you buy an IPv4 address (by buy, I mean rent) but they do also give you a nice big IPv6 range, so you could use that (I host my one and only home hosted service on IPv6).

This might be region specific in that case. Over the years I've also switched multiple ISPs, not single one of them was without CG-NAT. I'm in India. It might have to do with subscriber base and available IPs.

That's exactly what FreedomBox is trying to do. https://freedombox.org/

They have a lot of work to do on user friendliness and design though.

I'd rather see something like YUNOHOST partner with a hardware provider.

A major obstacle to your proposal is the near-universal blocking of port 80 inbound on residential ISPs.

I haven't seen this happening with Indian ISPs so far but have read quite a few responses here on HN which mention the same issue that you did.

I think if we have enough momentum with self hosting sooner or later one provider will unblock ports and incoming connection and soon others will follow the same practice out of competition. Maybe I am being too optimistic here.

> The major problem I think is NAT which is preventing direct hosting of content from home. Solve that and you most probably have solved decentralization.

That's mostly solved via dynamic DNS. But there's still a bigger issue:

The ISP. It always comes down to the pipe. If the provider of the pipe doesn't want your traffic flowing over them, they can cancel your service, throttle you down, whatever.

Also - at least for most people's home service ISP - the TOS usually is explicit about "no servers" - that's the rub. Some will look the other way about a server, if it isn't popular, or is only used privately - but whether they do or don't, they hold that axe right above your neck, and can bring it down any time they want.

This even applies to business class pipes; ie, most home ISPs provide business service (some restrict it to non-residential addresses, but many or most understand SOHO and allow it - just pay the $$$) - but they can restrict what you do with that pipe (ie - no porn, etc).

In the case of bigger pipes - like say you colo your own server at a major datacenter - even the guys providing the "big pipes" in theory could cut you (or the datacenter!) off if they wanted to, depending on the content flowing over their pipes.

If we're ever going to do decentralized right - we need to fix that part. And that so far hasn't proved to be easy to do. The main problem has been that the pipes still are in a limbo of "are they a common carrier" - and how far does that extend. If they are a common carrier, then everyone should be able to flow over the pipes - but cable ISPs block that (and then you have the lovely ALEC based legislation in conservative areas that work to block public ISPs, city-owned broadband, or even other companies, like Google Fiber, from expanding against entrenched interests).

> The major problem I think is NAT which is preventing direct hosting of content from home.

There's UPnP to attempt to automatically configure routers, and failing that there's UDP hole punching to establish a connection beween two NATed peers with a few packets from a third host (STUN or similar). You can use the hosts where UPnP worked to coordinate the connection between NATed hosts.

It's not trivial to implement, but it doesn't look impossible, and for example WebRTC seems to do a decent job.

No, the major issue is DDoS attacks.

What's going to HAVE to happen is enough competition among providers that you can issue a request to your local provider to filter out traffic, which you will NOT be billed for in any way.

That will actually start pushing pressure upwards to do the same, eventually reaching the backbone and/or across it to other providers, and killing 'spam' traffic will actually work.

As a side bonus this might help ISPs identify infected customers and get some help to them.

The true cost IMHO is time, time to learn it, to deploy, configure, update, manage, etc. Even if the hosting was dirt cheap, I don't want to spend my time doing it.

Another major problem is the agreement you sign with your ISP that says you won't host a server on your home internet account.

Are you living in the US? I live in Singapore and my ISP encourages me to host my own stuff. With a static IP and 1GBit/500MBit there's enough bandwidth available.

In the U.S. unfortunately the vast majority of ISPs make hosting your own services a direct violation of their terms of service. And worse yet, the U.S. - at least in many, many of its regions - lacks competition to jump to any ISP who would allow "at home" services. It really sucks here in the U.S. - at least for this kind of stuff.

Yes. You can get all that when you sign up for a business account here, but usually not on residential accounts.

I definitely agree that federation is the right approach for moving forward. This is how the internet was meant to work in the first place.

One huge advantage of ActivityPub based federation is that every service that uses it can talk to any other service. So, you can share data between Mastodon, PeerTube, PixelFed, Plume, and any other federated platforms. This also allows different competing services in the same space such as Mastodon and Pleroma to work with each other. Meanwhile, traditional commercial platforms like Fb, Twitter, and Youtube have zero incentive to allow users to move data between them.

While I agree that it would be great if people could just host via their ISP, VPS hosting has gotten both a lot easier and cheaper nowadays. You can get a Digital Ocean server for 5 bucks a month, and thanks to containers it's much easier to package and distribute the services. VPS providers will also often have cheap backup options. This dramatically lowers the barrier for managing a service.

I understand VPS are cheap now but they are not free like in case of centralized services. Hosting costs are same everywhere. I think developers from developing nations would still prefer a home based solution over a VPS because its consuming (INR 3600/year in India) out of there pockets. General population won't even think of self hosting because centralized services are "free" both in affordability and setup. Very few give a damn about privacy. Cost is a factor that definitely affects self hosting when you think about developing nations.

Another thing is data, in case of self hosting at home, you are always in control of your data. Your data never leaves your home. Unless you explicitly want it to. In case of VPS, data is out there on someone else's infra. Backups are most probably not free. So yes both sides have their own pros and cons.

For sure, I think it would be fantastic if people could just host their own sites from home. I'm just noting that the barrier to hosting is dramatically lower today than even a decade ago. So, self hosted sites are becoming viable option again, and hopefully that will lead to more decentralization.

Another major obstacle is the limited scope of a lot of these projects. Each project, excepts the microblogs, focus on a single media type and ignore others. So you still have to have multiple semi-siloed accounts to participate with various parts of the fediverse. As a pixelfed user, you can't interact with plume/write.as users or vice-versa. It's cool that I can follow all of these users from my Pleroma (or microblog.pub/mastodon) account, but they can't interact with me. It's only one way interaction.

Pixelfed has incomplete federation support FYI

Even when it's completed, it will never support incoming Notes/Articles/Any other AP type.

Hrm? Its Open Source, anyone could fork it and add support (like the Florence fork of Mastodon) and Dansup would probably give a PR with said support a fair shake. I'd love to use the Pixelfed interface to browse Sinblr/Humblr posts.

Yes, it's open source and the possibility is there, but it's not likely. There isn't any Florence instance yet. The other masto forks are all relatively close to mainline and aren't drastically different.

Dansup has said he doesn't want to support other AP types. It's not about who writes the patch. He wants pixelfed to be an image sharing service, akin to Instagram.

> There isn't any Florence instance yet

My server admin moved us to Florence a while back, there are more than a few in production right now. Not really sure what your on about...

> Dansup has said he doesn't want to support other AP types.

Dansup says many things, the proof is in the pudding though. When there is public discontent he tends to change his tune fairly quick, based on his history back on Hyperboria.

Cheapest VM on Hetzner has 20TB monthly traffic and costs only 2.9 euro.

And it works beautifully, I can certainly recommend it for things like this.

Well, I self-host, but the main barrier I have against providing those services for others is availability: I am unable to guarantee 100% uptime.

Federation is a great thing, as it distributes uptime over the network. Then comes peer-to-peer (see peertube) to make peak load easier to bear. But we would need a few easy ways to poll resources of a few self-hosting devices to provide high availability. This probably means a completely decentralized protocol, or techniques such as hosting DNS on the same machine as the service, in multiple place, since it looks like the Internet was designed with a federated architecture in mind, not a distributed one.

It would not be unreasonable to use a cheap object store (Backblaze B2) as a host of last resort. This would of course have a cost, but there's always a cost somewhere.

Instead of at home(well, it can be at someones house still), I feel like this could be the domain of local clubs. Groups of interested people can pool money to pay for server hardware(or space in a local datacenter), and a business internet connection. This also adds the effect that at least a core set of users know each other in real life, which can help reduce problems like trolling, illegal content, and spam. Also, their server is local. If they setup a mesh network, then they could still have services if the city somehow becomes disconnected from the larger internet.

This is common in Amateur Radio where several folks pool resources to run repeaters which are often too expensive or complicated for just one person to run and manage.

What's going to convince them to do that, rather than "join the Facebook group"?

My thought would be that there are probably multiple people interested in the idea of federation or decentralization in most moderately sized cities. If they find each other, then can start from there and spread the word.

You don't need many of the enthusiasts who are interested in setting up a community to support a much larger group of people who are only interested in the service.

Does federation play nicely with serverless architectures?

Seems like a small group or club wouldn't rack up enough traffic to really justify dedicated hardware and upgraded connection. The pay-as-you-go serverless setups seem well suited for this. Or does it defeat the purpose to centralize the hosting? ..at least AWS doesn't claim ownership of the hosted data.

I really like this idea! There could be a mix of people who host their own instance at their home, but still interact with others who "live" on a host managed via some local club (like the homebrew clubs that are springing up again after so many years)...very cool! Cheers!

Virtual servers are like $5 a month these days and come with free redundancy and all that. Most groups don't host anything that needs to handle large numbers of requests.

What situations are you foreseeing that would require multiple people to pool their money (I'm intentionally ignoring 3rd world countries where $5 a month is actually a lot for this discussion).

Pixelfed is evolving quite fast. I am using it since soon one year. The community just needs more users and more instances.

ActivityPub is really on the raise. I saw recently that https://people.kernel.org is using WriteFreely.

WriteFreely is also fantastic. Have been a paying user (edit: of write.as) since sometimes earlier this year and I have finally starting to write stupid blog posts again, including two who got some traffic from both HN and lobste.rs.

any plan to make the onboarding experience usable for the average person?

Part of the issue with federation is the very nebulous concept of servers themselves.

What should my domain name be? This question alone is enough to stop someone in their tracks. There's only so many non-stupid sounding names. And should the name focus on a location, a hobby, myself?

If I allow people to sign up, should it only be for people I know IRL? What if I mix online friends and IRL friends on the same server, is that weird?

I'm looking forward to trying full decentralization tbh. Federation feels like a strange halfway house.

I believe "federation" isn't supposed to be a federation of individuals, but a federation of small communities. You still have to be organized and grouped with some people around some goals or topics if you want to create a community and add it to the federation.

As an individual, you can then join several of those communities in the federation.

Let me mention that the developer is extremely productive and - in my opinion - talented.

As far as I know he is mostly working alone one his spare time and works in another field during the day.

In what field does he work during the day?

Full stack development. His work hours have recently been cut, so if you know of a freelance project or a full-time position that needs to be fulfilled, get in touch with him: https://mastodon.social/@dansup/102409415828557030

Is there a docker(-compose) setup I can use to give it a try? I think this would lower the barrier to entry a lot. I have a blog running on ghost I wouldn't have without a maintained docker container. I miss Instagram, pixelfed looks like a great alternative!

There is a massive drop in nodes at https://the-federation.info/pixelfed. Seems like a SPOF host deactivated their 50 something nodes?

Other than that I'm skeptical about this. If it doesn't host ads or any other money making scheme, how do you pay for servers to host some many pictures? Being image focused, I imagine the server gets expansive fast when your node becomes big. This might also explain the SPOF deactivating their node.

Seems like the drop is everywhere according to that website. https://the-federation.info/mastodon

I would say either the chart is wrong, the data is still being collected or something is very wrong with the federation system.

The chart on the main page is already bouncing back.

Typically some fediverse hosts asks their users to support them on crowdfunding platforms while others are run by small groups and not accepting new members.

Okay, that might work for smaller groups. I guess my head is too much focused on hyper-scaling, which might actually not be the goal here... Other than scaling / hardware space, I think the idea is great btw. My first post sounded very negative, I actually like the idea a lot.

I think you are correct now; a number of fediverse projects actively seek to avoid getting big. For example pixelfed creator has closed signups on his instance and mastodon encourages people to sign up for different instances (and I a number of existing mastodon instances has also closed signups because they are big enough, and everyone except banned users and instances can just federate anyways.)

Think the idea is to have lots of small communities which can communicate with one another. If this ever takes off, I am sure that for-profit instances will eventually be founded as well and they may/may not contain ads as part of their business model.

That's the point of federation, so you don't have to worry about scaling any one particular host. As long as the network can scale, the community and product can grow. That will depend onhaving efficient clients and servers, and a well-designed protocol.

I am confused and the docs site seems to be dead. Who runs the nodes? Where is the data stored? Is the data encrypted? What are the legal ramifications of running a node, like am I expected to moderate content people put on my node? What if someone uploads child porn?

The documentation is dead, but the project itself seems alive and well.

I suspect the questions you present would be relevant to any decentralized/multi-hosted service, right? What's stopping someone from uploading illegal content to my own node? Nothing, really.

These types of concerns are probably the biggest reason why I choose not to host publicly-accessible nodes.

there are moderation tool's and avoiding things like that has been a major concern of its creator lately. He's definitely aware of and working to help mitigate problems like that. HOWEVER no tool is perfect and if you have ANY site that allows people to upload things that is going to be a concern. On the other hand, that's why their are laws to protect owners of servers that can't reasonably be expected to look at everything that's uploaded. Without those laws youtube, dropbox, and other similar services could not exist. They'd be litigated into oblivion.

A centralized, commercial service, like Facebook or Instagram or Medium has ways to mitigate this. At the very least a staff of moderators and a legal department. But in this case, considering the distributed nature of this project, if I am running a node, I might not be aware that there is illegal content being stored on my system. And yet under the current legal system, I am pretty sure I could be liable. I am not sure what the recourse for something like this would be.

And here's its own Mastodon/Fediverse account: https://mastodon.social/@pixelfed

Since people are constantly putting "Bad Stuff" on Instagram, Ello, etc., how does one deal with it on a federated platform? Is it up to each node operator to manage the liability?

Yeah, each node operator maintains his own instance. The idea of federation is that the user space is voluntarily split up enough between nodes that moderation can be handled by one or two individuals, unlike a Facebook or Instagram which needs an army of contractor labor and exotic algorithms to do the same thing.

If you're trying to stop the propogation of "Bad Stuff" overall that battle has been pretty much lost with the invention of onion routing (or more likely encryption) so now it's just damage mitigation, in which case see above

I'd encourage you to read the following: https://runyourown.social/

It provides answers that you seek, plus many other aspects - both good and bad.

It looks like there is a community policy, which seems good, but I wonder how it's enforced? https://pixelfed.social/site/kb/community-guidelines

edit: I was mistaken, this is only for the official instance. There is 0 anti abuse tooling for other instances.

Just like on large centralized instances.

Someone complains. Someone checks the complaint and acts accordingly.

Chances are if you have a small instance with users you know personally, you will have less issues.

I wish some of these new federated services would have nice, native (Like in natively designed, speaking the interface language of iOS / Android) apps. I think this would be critical for anyone to use it seriously.

I've had very good luck with Tusky [https://tusky.app/]...which i think was designed originally for mastodon...And i've been using it for my pleroma instance to great success.

I haven't been able to use any activity pub apps with pixelfed.

Ah, ok, sorry i thought the comment was more in the general sense of apps for federated services/platforms. While I have had positive experiences with apps interacting with platforms such as gnu social, mastodon, pleroma...but, I do not have experience with pixlefed. (Thanks for clarifying this.)

No problem. I see Instagram as a mobile-first platform, so the lack of an app is what is preventing me from using Pixelfed.

Does anybody know if there's something that looks (simple) like this that I can host myself to share family photos with my family?

Preferably something I can just spin up in a Docker container and point at an NFS share.

"Simple" is a relative thing, so I'll simply point you to some options that exist, and you can judge for yourself: https://fediverse.party/en/fediverse/

Also, Nextcloud has been used for the use-case you described...its less about sharing in the social media sense, and more about exposing a bunch of media/photos/videos that live on your local/home server or your VPS (that is running nextcloud). https://nextcloud.com/

Thks, by simple I meant to use, I'm not concerned about the setup requirements. Also I'm looking for something more along the lines of the social tour sharing of photos where we can tag and label them as we share them. I've used next cloud briefly, is not quite what I'm after.

I'll look into the other. Thanks

Nextcloud can fit your usecase with the external storage plugin

I'm building it, and would love to hear your feedback: https://blog.photostructure.com/introducing-photostructure/

I've got a desktop installer you can test now. I'm working out kinks with snap and docker builds currently. If you sign up via email I can send you instructions tomorrow.

making it trivial to spin up your own instance is a stated goal of Pixelfed. I'm not sure how close it is but last time I checked it wasn't bad. Just a series of simple commands to follow.

so, to answer your question. Yes, Pixelfed is something that looks simple like that and you can host yourself. You don't have to open accounts up to random people.

By simple I mean it's interface, not the setup, I'm not _too_ concerned about the setup, but I'd like to try a few different options so the easier it is the more likely I'm going to try it.

My concerns with Pixelfed are; first I don't understand how the federated part works at this point and how that relates to running a standalone instance, and also, it appears to be early days which is a risk, in my eyes to opening something in early development to the internet.

The idea servers being up and down, potentially losing all your images to a dead server, and upload limits isn't ideal. I like the idea but Facebook is far more motivated and capable to fulfill my non-tech friend's needs. And without my friends sharing I don't think I'd adopt a sharing platform.

This looks interesting.

With Mastodon there's a gateway that will automatically post your messages to twitter.

Is there a gateway to Instagram for Pixelfed?

PS if you have a large following it could be interesting to publish to Twitter and Instagram only after a delay, encouraging users to go to the source (i.e. your mastodon/pixelfed instance).

I'm sure at some point the masto-to-twitter gateway didn't exist...and then someone asked for it and/or built it. Similarly, if there is no gateway between pixelfed and instagram, i'm sure it is possible...you can't be the only one asking for this. There is also the option to scratch this itch if this is something that is itching you. :-)

No, Instagram doesn't automatically let you post stuff to it in any way.

Indeed, content publishing appears to be "in private beta" at the moment (since when?): https://developers.facebook.com/docs/instagram-api/guides/co...

There's also a github project to explore the private API at https://github.com/mgp25/Instagram-API

Yet another federated system. Yay.

Every single time I see another one of them popping up all I keep thinking is how some of us had their website for 20+ years.

Interactions were first guestbooks, then pingbacks, then webmentions. And it works, it always had.

Pingbacks quickly became a vehicle for spam - I haven’t seen one in years.

For those interested in hosting this project you should _absolutely_ follow them on Mastodon. The guy behind it is posting constant updates.

where/what are the images actually stored on?

the landing page seems dope, but then clicking through to joining is very confusing. What exactly is a user supposed to do? Do I need to run one of these nodes?

any plan to improve the onboarding experience, or do we plan on just letting this die?

Your user experience will be the same regardless of which node you choose, since you can follow people regardless of what node they're using. Every user account is constructed as @user@pixelfed.tld.

But, yeah, onboarding is a rough problem to solve when your goal isn't for one server to contain all the data. It requires learning some new stuff that I couldn't be bothered to learn for far too long. If privacy-conscious people aren't willing to learn them, nobody will and these projects will just die.

> Your user experience will be the same regardless of which node you choose

How do I know or find out who owns/runs the node I choose? Surely some nodes are more stable than others, and the user experience wouldn't be the same if the node I chose decides to shut down tomorrow.

Here's how Mastodon does it: the owner's account is visible from the homepage of the node, the owner of every node that Mastodon includes on its homepage has agreed to give at least a three-month warning before shutting down, as well as to decentralize the control of the server to at least two individuals: https://joinmastodon.org/covenant

I assume that Pixelfed wants to do something similar, but a little bit further down the line. As far as I'm aware, Pixelfed's current goal is to encourage people to start their own servers instead of relying on the main one. Whenever they feel like the main servers are gaining too much control of the network, they close the registration in order to pivot people to other nodes. Once other nodes start to stand out, Pixelfed will probably have more strict guidelines on which ones to link to.

Yea pixelfed has always been bad at onboarding. It's been brought up before but nothing has improved except making a pretty landing page. On instances where registration is closed, the only thing you see is a message telling you that and external links.

Is there a way to limit who can join the server that I choose to host?

A large issue with federated social networks is that they are complicated to set up. It believe would be a lot easier to gain adoption if devs stuck to php5 instead of using 5 to 10 different hot and new languages.

> It believe would be a lot easier to gain adoption if devs stuck to php5

Why is language important? Do you expect people to install and configure PHP5 on their box? Or do you expect the software to support every possible PHP5 config out there? A network node like this should be a single command install. Preferably with a single statically linked binary, so there are no dependencies to install.

Actually there are platforms that leverage PHP (e.g. Gnu social, postActiv, etc.) - see the "Programming Languages" section for examples: https://fediverse.party/en/fediverse/

Also, I imagine for new platforms, people just tend to scratch their own itch, and use stacks that they know. I do agree that something that is common and easy enough - like PHP - is always a good idea in order to foster more participants...But then again, maybe as these newer stacks are experimented with, someone finally figures out an easy, solid, safe way to host these platforms...Who knows...maybe in 4 years time all of these platforms will have migrated to something like Rust (for its safety, speed, reliability, etc.) because it will be as easy as PHP is currently to set up...? (Caveat: I am not a Rust expert, so have only heard of its benefits through others, so only using it as a random example.)

ADDENDUM: I will agree that everyone benefits from well-done documentation...so regardless of the underlying stack, if there is some really good documentation for helping people set up their environment, then that matters far more to me.

Docker exists precisely to solve this problem.

Docker is a great solution for people that like docker. However, there is still a large barrier of entry to using the docker image as compared to a php5 implementation.

My point is that a php5 solution would make one of these federated social network implementations accessible to a much larger audience.

It would also make it accessible to all of the hackers that are more than using to exploit shitty apps implemented in PHP5.

(I am half-trolling. I know that it is possible to write insecure code in any language, but the mix of PHP + popular codebases + "you can run anywhere you want" is a recipe for disaster)

PHP 5 is also end of life and no longer receiving security updates. It's arguably one of the worst targets for new development.

So, I'll go out on a limb and assume that the original comments were related to php in general (say, the latter 7 versions - which are faster and receiving more updates/patches, etc.)...which tends to be a platform that is more easily accessible for most.

Yeah, I know. I am making no distinction though. I've been burned by Wordpress already, even with installations without any sort of plugins whatsoever.

It will take many more years before I ever get to trust any code that is PHP (no matter the version) and that is open source. Its "easiness to get deployed" still translates in my head to "it is easy to be vulnerable without developers knowing" and I think the language is in an evolutionary dead-end anyway.

Yeah, as much as i like and use php myself, I have to admit that you're not wrong. My hope is that present and future languages and associated environments get as easy to setup/deploy as php, BUT are more secure, prevent practitioners from shooting themselves in the foot, etc.

Pixelfed is in php.

Please ELI5 federated services like these?

Instead of making an account with e.g. Twitter, there are multiple sites such as BobsTwitter.social, Witter.com, whatever. No matter which site you make an account on, you can follow anyone on any of the different services, interact with their tweets, etc. seamlessly. Your information is only hosted on the site you made the account on. If you get banned from BobsTwitter.social, you can move to Witter.com and people using BobsTwitter would still be able to follow you without having to do anything special

So, this is the new Instagram?

No, not really. While no doubt there are very similar features, the intent of pixelfed is different from instagram. Instagram is centralized and controlled by a single entity...while pixelfed is decentralized - or at least federated (not unlike email federation) - and different participants can interact (or not) with others. If pixelfed, and mastodon, pleroma, etc. aren't evidence enough, many users are somewhat fed up with the centralized silos, and wish to circle back into smaller communities. Platforms like pixelfed (and other platforms) allow for that cozy feel while still allow for interaction with other communities. It can actually be refreshing.

If the only difference is the fact that is' decentralized that doesn't really make it that different from Instagram. The objective is still the same, looking at pictures people post and interacting with them.

Understood, i see what you are referring to. Then yes - generally speaking - Instagram and Pixelfed both allow for users to post pictures and allow interaction based on them...the differences between these platforms then become more about for example how those functions are achieved (centralized vs decentralized/federated), and how much control one has over one's own data/content.

It is my opinion that one of the platforms allows for far more freedom/liberty and control of one's data and presence...while the other one is Instagram.

Unlikely, outside of tech circles no one is interested or cares about federation.

You might be right about people not being interested in federation on a conceptual level (or not, I don't know), but people certainly are interested in the benefits of federation can bring. People want more robust hosting, lower costs, and less dependence on centralized services. I think it's unlikely anyone would sign up to a 'new Instagram' built on this specifically because it's based on federatation but if it was marketed as more robust, cheaper and not dependent on Facebook then I can see non-tech people being curious about it.

People want more robust hosting, lower costs, and less dependence on centralized services.

The people outside of tech circles that I know just want images to show up and they don't want to pay for them. I guess that those would fall under the "robust hosting, lower costs" section in a roundabout way, but "less dependence on centralized services" is pretty much the opposite of what people want from my experience.

Meet more people.

Right back at you.

If you meet more people then you'll meet people who are interested in the benefits of federated content.

If I meet more people then I will too, but I already know some so it won't make much difference. Maybe it'd reinforce what I already know.

The problem is your admission that it's "pretty much the opposite of what people want from my experience". You don't have enough experience. Ergo... meet more people.

What people do care about is being able to seamlessly use different platforms. Traditional services like Twitter, Fb, or Youtube are silos. The companies running these platforms have zero incentive to allow you to share data between them, and make it difficult for users to extract the data from the platform.

ActivityPub based federation flips this model on its head. All the services can talk to each other, and you can be using one service while your friends use another, and still be able to interact and share content. This is a huge feature for end users.

No. People don't care about that. This is from our perspective, as tech users we are concerned about centralization and silos. The users aren't concerned with silos, because websites such as Instagram have so much pulling power, that everyone is already there. You don't have to worry about sharing data with other services because all your followers are on Instagram anyway.

People very much care about having to juggle a bunch of accounts and not being able to share things with their friends because they're using a different platform.

It can't be until it finds a killer feature and gets an app.

What about licenses?

"Pixelfed is open-sourced software licensed under the AGPL license."

or did you mean some other definition of "licenses"


Just add a token cmon

Consumers are exempt, tokens are scarce, nodes compete

Registration is open for Startup School 2019. Classes start July 22nd.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact