Hacker News new | past | comments | ask | show | jobs | submit login
GNU MediaGoblin – A decentralized alternative to Flickr, YouTube, SoundCloud (mediagoblin.org)
224 points by diminish on Aug 8, 2013 | hide | past | favorite | 68 comments



I recommend the news and tour section, to learn more about project. Especially the participation in Google Summer of Code and GNOME Outreach Program for Women program, references to PRISM - and decentralizing the web, donation campaign where they raised 45K are interesting. It uses python, postgresql, and they were/are looking for women contributors and/or students.

PS: ..I am not part of the team.

Edit: See also the talk at Pycon US. http://pyvideo.org/video/725/40-media-goblin-the-road-to-fed...

Edit2: Everyone may run their own instances and The 'federation' idea suggests to me that independent instances will be able to enable social interactions. http://pyvideo.org/video/725/40-mediagoblin-the-road-to-fede.... See also this checklist. http://mediagoblin.org/news/mediagoblin-1.0-checklist.html


Thanks for linking to those. The tour page, sadly, is pretty out of date... the screenshots they show don't reflect reality! Things look a lot nicer now I think.

See also the video from the campaign page, which describes things better than the actual site: http://mediagoblin.org/pages/campaign.html

Unfortunately the site is in bad need of updating; there's so much going on in the codebase right now that it's been hard to prioritize. Luckily we now have an intern who is going to be taking on that work!

And yes, independent instances will be able to talk to each other soon. We have an Outreach Program for Women participant actively working on federation via the Pump API! https://github.com/e14n/pump.io/blob/master/API.md

That's not all that's going on alone, but you can get some sense of what else is happening by checking out: http://mediagoblin.org/news/summer-of-awesome.html



My biggest critique is I don't understand what it really offers, I mean as far as distributed hosting of my files, isn't that just a web server? The commenting posting CMS stuff seems like a competitor to wordpress... so i am guessing its like a blogging engine focused on media instead of text?


Hi! Lead developer of MediaGoblin here.

I agree, the frontpage of mediagoblin.org can use some improvement. We're working on that. If you want a fast summary of things, you can still watch the video from the crowdfunding campaign we ran last year with the FSF (hell, you can still donate too!). http://mediagoblin.org/pages/campaign.html

We also have an intern helping us clean up the homepage. Things should be getting clearer soon, I think. I agree that http://mediagoblin.org/ could use some improvement.

In the meanwhile, if you're wondering what it offers, right now it already supports nice photo, video, audio, document (pdf.js!), and even 3d model support. It's written in Python, so it's easy to get hacking on. We have a lot more exciting things on the way too, most noticably federation; we currently have someone working full time on adding federation via the Pump API: https://github.com/e14n/pump.io/blob/master/API.md

This will make it so that even though there's a bunch of separate MediaGoblin instances out there that you should be able to have a lot more of the same social features of other media hosting sites as if they're in the same place.

I'm happy to answer questions if anyone has any!


When do you plan to reach 1.0 with your checklist items? What is a short summary on how federation will work? Do you plan theme-ing support?


Heya! So, it's hard to know precisely re: 1.0, but I'm anticipating approximately towards the end of the year. Federation is the big thing we're still waiting on until we consider ourselves 1.0-worthy. Probably we could have tagged ourselves 1.0 a while ago and considered federation 2.0, but federation is at the root of a lot of our goals, so...

Anyway, once all our summer projects wrap up, I think we'll have reached 1.0-worthiness, however there's a lot of code being developed right now, and I can't promise how long it'll take for it to hit the "quality approval for merge" state.

We've had theming for a while, since 0.3.1! http://mediagoblin.org/news/mediagoblin-0.3.1-a-whole-new-lo...

Read the documentation for details on that, but you can already enable a light "airy" theme if you prefer.

PS: If you're a python developer and interested in federation, you may be interested in checking out our super-awesome-contributor Jessica Tallon's "PyPump" library, which integrates with the Pump API: https://github.com/xray7224/PyPump

I know she wants more users and feedback! Pump API integration is on the way, but in the meanwhile, there's a project that's already using it if you want to try out the API: http://pump.io/

Thanks for the excellent questions! Hope that rambly response was helpful :)


What is the status of the "federation" feature? I see there's two ideas of it on the Wiki.

Will it support easy mirroring of media? Will the site be also metaservers (servers that provide the addresses of other servers), or proxy servers (they serve the content of other servers they know of)? What about the bandwidth issues (often bandwidth is asymmetric between upstream/downstream)? Maybe some form of load balancing by redirection to another server. But one would need URI scheme across all the sites... Oh my.

Also: one-click-install for Windows/Mac when?


Federation, as said earlier on here, is in-progress; Jessica Tallon has been laying down some foundations in a library we'll used called PyPump. She's updated our OAuth code to match what the Pump API expects and is starting on endpoints now. I don't have a clear ETA on when "federation will be ready" but things are moving along well. The stuff on the wiki is totally outdated, ignore it :)

Re: mirroring, I replied to that a bit here: https://news.ycombinator.com/item?id=6180159

Additionally, you can already host media files with an OpenStack Swift cloud files provider like Rackspace Cloud if you prefer.

I don't know anything about windows or macs personally, though people have gotten mediagoblin working just fine on macs... windows is harder. :) I don't have any clue when that packaging might happen though... if it happens, it'll be by someone else I guess; I just don't know anything about it.


Is your landing page your primary marketing mechanism? I think it's great that your given an intern that level of responsibility...


Keep in mind that MediaGoblin is mostly a community project. I'm the only paid fulltime employee at present (and that's thanks to the crowdfunding campaign through the FSF). It's a HUGE project, and there's not a lot of time to go around. So yes, if code's moving by a million miles a minute in the codebase and my job is to make sure that contributors are doing well and that the software is great, that might mean that the homepage might suffer... I can only do so many jobs at once.

And in any case, it's not just a "oh, we tossed an intern at this"; in this case, the person who's working on this is a community member and intern, and is doing work based on a detailed analysis based on another community member's work overviewing all our current messaging: http://lists.mediagoblin.org/pipermail/devel/2013-July/00061...

So it's not just a matter of, "oh get an intern and toss them at it"!

But hey, if you're bothered by the fact that we're a community project with not a lot of full time resources, you can donate and help us pay for more people to come on as dedicated resources! The crowdfunding campaign we ran through the FSF last year is over, but the donation link still works: http://mediagoblin.org/pages/campaign.html

Or, feel free to help us out yourself! http://mediagoblin.org/pages/join.html


This is great for any one like me that believe/think in GNU goals that such a project exists and is viable alternative to private systems. Also it's good opportunity for Python people to contribute to GNU. Moreover, MediaGoblin is the only project in this vein I know of, there's not much free 2.0 services available in Python.


I mean, it's not decentralized. It's simply hostable.

Decentralized would be like GNUNet[1].

1: https://gnunet.org/


We're working on federation support, and I think that would be pretty fair to call decentralized?

Decentralized can have various definitions; GNUNet is definitely one definition, but you might consider that the web itself is supposed to be decentralized and is designed to be able to be that way, but is moving away from that as more and more of the web is being replaced by megasites like YouTube, Flickr, Tumblr. So, MediaGoblin is one attempt to take back the web in that respect.


Look very interesting, but can you please make this more clear? I can host media files in Wordpress or Drupal - why would I use MediaGoblin? With your federation would allow my video files to be on other servers so if mine goes down, they will host the content? How does that work? Round robin DNS or just my file is copied to other servers. Can I track, update, change, or remove my media from other servers? If this easy to admin like Wordpress or does a user have to be a developer to understand the back-end processes of federating?


You can host media files on Wordpress or Drupal, but the goal here is to build an application that's very focused and tailored user-interface wise to media. Furthermore, Wordpress and Drupal alone might not very easily handle some of the extra tooling that MediaGoblin does: if you upload a video, that video needs to be transcoded; we have task queueing and infrastructure so that these things can happen in the background without you just sitting there and your browser timing out.

As for how federation will work, we may enable a plugin called "diskgobbler" or something that might dowload files, but no, by default, MediaGoblin will not mirror all files from the other sites it is federating with. :) Instead, the goal is to keep the social side of things alive: you can create galleries that have entries that span multiple sites, favoriting a piece of media can happen across instances, you can subscribe to things a-la YouTube channels. That's what we mean as in terms of what we aim for by federation.

Hope that answered a bit!


Don't get me wrong, it's good to be able to run your own software and have more than one option out there.

I just think that it's unfair to call it decentralized if each instance of it is out there on its own.

Perhaps once federation is working it'd be a more fair comparison, because at least then all the servers can communicate and share with each other.

Don't take this as an attack on your software. It looks nice and I'm sure it works well (I haven't had a chance to use it).


You've got it backwards. Decentralized is a distributed network of centralized systems. Distributed is a peer-to-peer network of nodes like GNUNet.

http://networkcultures.org/wpmu/unlikeus/resources/articles/...


Nice idea, but I'd rename after something that isn't evil - subconscious suggestions of maliciousness might inadvertently repel some users. I'd suggest finding a design person who can lighten it up, pretty it up, and clean it up - the design has possibilities, but it's way too dark. Finally, many of the sample photos have really, really cold color temps (that cupcake photo's color temp is way too cold - it looks like a corpse is holding it). I'd suggest editing them to be have a warmer color temp., or finding other media that are more compelling. The initial experience of a cold, dark, kind of confusing goblin dungeon doesn't call up a great feel.


Heya! So, we sometimes get comments about the branding choice of "goblins"... our goblins are actually not evil, though I agree that a lot of $STANDARD_FANTASY they're used as evil characters. Our goblins are more "build spaceships, be cute, and be awesome" goblins like http://mediagoblin.org/news/mediagoblin-0.3.2-goblinverse.ht...

Curiously we've gotten a number of concerns about maybe the branding will push people away by thinking that the goblins are evil or scary or will frighten children, but we've never actually had anyone tell us that it actually invoked that reaction in them, just that they're concerned about it. And a lot of people seem to really like the goblins.

We do have a light theme called "airy"; there's some debate about whether that theme should be default. The choice of a dark theme isn't to invoke something dungeon'y, it's to put spotlight on the media, making the media the "light" of the scene. But anyway, maybe at some point we will switch over to airy by default... we'll see what the future brings.

Thanks for your comment!


I wasn't suggesting that there'd be anything conscious about the branding, but that it'd be subconscious, so you wouldn't be likely to hear feedback. It's a minor nit, really.

Glad to hear about theming. Flickr/500px/other sites chose to let users opt-in to black backgrounds, I think that is a nice approach - some media is better highlighted by a dark background, but not all. All the best to your project.


Thanks!


n/p

Also I beg of you to fix the color temp on that cupcake photo. People who are interested in sharing media will notice.


I couldn't find any public deployments, so I was also wondering about this. On a personal deployment is the MediaGoblin branding visible? Because frankly it's not as appealing to me as, say, the Go gopher, or the Linux penguin. Because of the negative connotations of the word "goblin", I would be more hesitant to recommend MediaGoblin than I would Linux. After all, goblins are evil creatures [1]. Does that correlate in any way with the mission of MediaGoblin? Of course not, so why keep up the association?

I realize that the FreeBSD mascot is a devil, but FreeBSD is a far less consumer-facing product than MediaGoblin aims to be. Moreover, the FreeBSD team has struggled with questions about the appropriateness of such a mascot for corporate and marketing purposes [2].

1. https://en.wikipedia.org/wiki/Goblin

2. https://en.wikipedia.org/wiki/BSD_Daemon#Use_in_operating_sy...


I'll fork and call it MediaDungeon.


Please do run a MediaDungeon instance, and make it a dungeon crawler theme. I do like roguelikes. ;)


aren't goblins somewhat gnomes enemy?


I guess under maybe certain $STANDARD_FANTASY systems, maybe! But "goblins" are actually a very amorphous "creature"... there's a lot of various designs of them throughout folklore, and even in recent fantasy, a lot of variations on what they actually are. We have a very different set of branding around what goblins are, and our own little goblin universe, at least as sketched out through the character art over release art and etc.


I never understood or its never clear if one could have a private MediaGoblin, such that one has to login to view the content. The "private" ones with family photos still are public to anyone, maybe I am missing something.

I actually attempted to get it going on my VPS just a few days ago but got stuck on celery, missing some config (dont have the msg left) but might attempt it in the future again.

I like the dark design at least, I never understood who came up with white and bright pages to watch on a computer monitor, its not a book.


If you got the celery warning when running a `gmg [...]` it's my fault and should not affect the result of the command. It is a result of python's import statement importing a module which imports celery when the `gmg` command load the mediagoblin.app module.

If it isn't clear already, the warning/error message re: celery when you run `gmg *` is just a bug in current git master.


This appears to be a photo gallery software, that also handles video and sound. That's fine, but there's no way that's a "decentralized alternative to Flickr, YouTube, SoundCloud". Am I missing something?


Federation is planned but not implemented yet.


Federation is under development by Jessica Tallon during this summer's GNOME Outreach Program for Women.


This seems really cool. I wish I could say I was a fan of the name... hope this is just a personal quirk and it does not limit adoption of the product... but I cannot imagine mainstream users connecting with that name.


Why not link to example sites using the software, instead of screenshots and videos and what else? The real thing. Show us.


Any reason why you guys went rambo building on top of werkzeug instead of, say, django or flask?

Serious questions. I love the project.


Heya! Well, our architecture is very Flask-like, but yes it does not use Flask. There's kind of "historical reasons" for this; at the time that I started MediaGoblin Flask was fairly new, and we started out using MongoDB (so we couldn't make use of some of the nicer Django features anyway). I also really strongly prefer Jinja2 templates over Django's because of the ability to pass in arguments to functions, so eventually Django didn't make sense. But the real root of it though is that it's not actually as much work as people think to hook together a WSGI application that uses the libraries you already know you want... not really that much harder than using Flask anyway! http://docs.webob.org/en/latest/do-it-yourself.html is a good read in that vein.

Will MediaGoblin stick with its own direction, or move over to using Django or become a Flask app? It kind of depends... at the moment, things seem to be running well, and aside for waiting for some of our libraries to catch up to Python 3, we don't seem very hampered by it, and we're also very nimble... changing core parts of MediaGoblin to fit our needs is presently very easy. It also might be interesting to see what happens if eventually we end up adopting some XUDD technologies: https://xudd.readthedocs.org/en/latest/ but admittedly that's a ways out (though MediaGoblin already can run on XUDD, as of yesterday ;)) if that will happen at all.

Sorry, kind of a rambly response! Hope it was interesting.


+1 for «it's not actually as much work as people think to hook together a WSGI application that uses the libraries you already know you want»

Also stop with the saying it's rambly please.


Apologies, I will work on reducing my apologies. ;)


Reminds of the line from Spaceballs: "now you see that evil will always triumph because good is dumb."

Seriously, what an amatuerish-looking mess. White text on black, no clear navigation path, I can't imagine any random end user actually using one of these sites.


So it's an excellent opportunity for up and coming designers to contribute to a promising open source project.


The architecture is also fundamentally flawed.

How many people want to be the SysAdmin for all 2.0 services for their entire extended family? We need self-organizing systems, not federation.


It's a legitimate complaint that syadmin'ing all these services is a lot of work, but I think that's actually an argument for working to make deployment of services such as MediaGoblin easier. Right now deploying web applications is hard... if we could get things at least to the point of deploying and maintaining systems are "as easy" (note the quotes) as "apt-get install" and "apt-get upgrade" then we'd be in a much better state. But there's a lot of work happening right now towards abstracting deployment; I think if we can turn some of that effort towards generalizing deployment recipies for everyone (not just people running big clusters of servers) we could make big improvement here. Projects like JuJu and OpenShift are probably the right directions, but admittedly I haven't had enough time to spend playing with them.


How many people want to be the sysadmin for all the apps on their phone? Remember, phones are now running Unix.

It's possible to make installing this stuff easier.


What do you mean by "self-organizing system"?


Definitely! We have a lead graphic designer and nearly 50 programmers. As you can imagine that graphic designer is overstretched. Do you know any graphic designers who are interested in helping make MediaGoblin nicer? Point them our way, we'd love to talk to them! http://mediagoblin.org/pages/join.html


I always wonder how many open source projects actually look like they do because the creators choose, and like those certain styles.

As a designer there is only that much you can do if you don't get support, or get conflicting views from the client (= all the contributors in the project).


Your comment reminds me of the line from Meet the Feebles: "No. That's lousy."

I'm not the creator, but perhaps you could offer 1 (or 2!) actionable critiques? For example, you mentioned the navigation path. Where did you get stuck?


"Seriously, what an amatuerish-looking mess. White text on black, no clear navigation path, I can't imagine any random end user actually using one of these sites."

You could say the same thing about MS-DOS, but if it gets the job done it will get used. The most important thing is functionality, not UI. After all, you can't polish a turd.


What exactly is the functionality though? They don't make it obvious - it looks like any of 1,000 generic photo sharing sites. It doesn't make any sort of compelling value proposition. What makes it so special to be worthy of being a GNU project?


UI is functionality.


>You could say the same thing about MS-DOS

And maybe that's why nobody uses it anymore.

If you want to compare, compare to something current. MS DOS was not that amateurish looking for its age and its user base at the time.

(nobody as in "mostly outliers", for you pedants)


You are the worst kind of HN user.


The name is the best part of it. People like globins.


I would use MediaGlobulin.


A good feature would be to mirror/replicate other trusted mediagoblin instances, provides the ability for community backed channels to expand in a distributed model. Federation should allow for some aggregation would also be a useful feature.


So it's a public CMS and photo gallery software. I'm pretty sure we have several thousand variations of that.


Woah, amazing stuff.


"Decentralized", so it centralizes the functionality of many services. Okay then.

You've bitten off more than you can chew by going against Flickr/Youtube/Soundcloud. You don't really offer anything they don't, just a promise of ethics like "it's free".


[deleted]


#1: GNU projects are not all under GPLv2 or GPLV3. Some are under X11, LGPL, and even perl license (for a non-complete list, see http://directory.fsf.org/wiki/GNU).

#2: GNU only have recommendations for GNU projects regarding licensing (posted at http://www.gnu.org/licenses/license-recommendations.html). In it, AGPL is the license of choice for software that interacts with its users over a network, but it is only a recommendation. Project leaders and project communities are the ones who decide.

#3: News articles rarely mention license in the title, except when the linked website is titled as such. Do we really need to title every software article by its license?


[deleted]


How is the title ambiguous? GNU in this case refers to the organization and not the license and is part of the project's proper name. In the same way that the "Mozilla" in Mozilla Firefox refers to the Mozilla foundation and not the MPL (in fact, Firefox is tri-licensed MPL-GPL-LGPL).


You will never get normal people to use this thing. This is just a big advertisement for open source developers to pick up a new coding hobby. It's really sad, because you could build an alternative to those services if you focused more on the product and less on IRC, git and LibreOffice.


Travel back in time and see if you would have your response would be any different to Linus announcing that he is starting a new operating system.


I can't travel back in time. Left the TARDIS in a different century again.

Linus announcing his kernel was in a time when there were no open Unix-like operating systems to use. The GNU kernel was years away from release, but all the tools were there to make an operating system out of the tools, if there were just a free kernel too. (The only other kernels available were not available to the general public for free) It took years for a somewhat usable component to appear to look like a product once packaged correctly.

There exist open alternatives to galleries and video players, which is what this effectively is. That's not to say that in years this couldn't be a usable alternative to YouTube, but it's currently not being developed as a product. Instead it's apparently a high school class project. If they want people to use this, it needs some kind of vision other than yet-another-open-source-clone-we-don't-need-itis.


The project is not about being a gallery and video player. We already got those as you say.

Rather, the projects scope is to create a federated gallery and video player, where each installed instance is connected with each other.

That has so far not been reached yet, which is why this software hasn't reached their 1.0 goal yet.


How does "federation" benefit anyone? Is it something you can explain to a layman that they will say "wow, I want that!" Is it even a problem people are even asking to be solved via products?

It's also curious if this was the whole point of the project, why wasn't that done first?


> How does "federation" benefit anyone.

Improved Privacy. Only the author will have information regarding who visit, how many times, and for how long is-

Future proofing. Youtube and flickr will only exist as long those services are profitable. People who thinks they own their media, can only hope that it will stay online for as long as possible.

Improved API/features. Media hosting companies will limit features to match their business model. With federated services, there is no such limit.

Secure API. Media hosting companies will remove features if competitors are using the API in a threatening style. with federated services, there is no central company that can feel threatened.

> why wasn't that done first?

Just being federal, but with no meaningful usages, it would not be useful. I don't know if there is a technical reason why it couldn't be done at the same time.


Often ideas only sound great in retrospect.




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

Search: