Hacker News new | past | comments | ask | show | jobs | submit login
GitHub Audio (github.audio)
388 points by amberj on Oct 4, 2016 | hide | past | web | favorite | 125 comments

This is an interesting example where the new expanded set of TLDs can get confusing. My brain interpreted the URL as something semantically like "audio.github.com". Put another way, I thought the site was actually GitHub-made at first glance at its domain.

Of course, this was possible in various ways before expanding TLDs, but I think the problem, and thus the ease of phishing, is greater now.

I think the name "GitHub Audio" is confusing and probably a trademark violation. When I read "GitHub Audio", I figured it was a new service by GitHub for musicians to version control their music.

> When I read "GitHub Audio", I figured it was a new service by GitHub for musicians to version control their music.

Same here, I was ready to let my mind explode with the implementation details.

Yea I will admit, when I saw the title, I thought Github was getting into the SoundCloud space, except where people could upload music source or midi files and it would render/play them. :)

Exactly what I thought as well. We're not all crazy to think that'd be a good idea, right?

Isn't that sort of the idea of splice.com? (And if it isn't, it is still a great idea!)

And just how it would change everything! Maybe it's because I'm really new to production and don't have a workflow down, but I find that music creation would be significantly more productive with version control.

> I figured it was a new service by GitHub for musicians to version control their music

This is why I feel the new TLD's are entirely a racket.

ICANN builds a system which is favorable to squatters - and when all the "good" domains are taken for com/net, they start to release new TLD's (instead of clawing back unused squatted domains) which corporations and celebrities must rush out to purchase or risk someone else using their brand name.

There's the infamous story of Taylor Swift having to purchase her name on the .xxx, .adult, and .porn TLDs[1]

And now presumably GitHub will feel compelled to purchase GitHub.academy, GitHub.technology, GitHub.build, GitHub.buzz, GitHub.careers, GitHub.codes, and many many more!

So now ICANN can kick back and enjoy all those extra fees, and Registrars can kick back and enjoy all their new registrations... meanwhile squatters buy up a bunch of new domain names on the new TLDs, putting everyone right back where we were before the new TLDs were released.

[1] http://fortune.com/2015/03/23/taylor-swift-adult-domains/

That would be very very cool, but good luck with trying to version .logicx or .cpr

I think popular software vendors should seriously reconsider their file formats in the 21st century, including graphical and audio ones.

> I think popular software vendors should seriously reconsider their file formats in the 21st century, including graphical and audio ones.

Very true, but it's not just about vendors and formats. Making semantic changes a first-class, user-facing construct has profound implications for how you think about what you're modeling and what kinds of interactions (not to mention collaborations) are possible. Even Git is not "21st century" in that respect: textual diffs are not semantic.

For all of the things you can point fingers at Microsoft for doing wrong, opening up their second-generation document formats (docx, pptx, xlsx, etc) was a wonderful, positive move.

It's a shame that the music industry hasn't had a similar revelation. I'm tempted to be cynical and accuse them of fear and greed, but more likely "open data" just isn't something they think about.

I was under the impression their hand was forced. I vaguely recall various nation governments insisting on open standards or they would no longer use Office.

The OpenOffice formats were going through standardization and Microsoft quickly bought their way through the standards process (this part I remember). There was a lot of complaining of how they exploited the particular standards' body. They bought seats, that then sat vacant after they got their standard pushed through, and couldn't meet quorums on other standards being voted on.

There were also many complaints about the Microsoft standards themselves. Particularly, that you couldn't implement support for the documents based solely on their standard.

Correct me if I'm wrong.

Yeah, pretty much everyone agreed that the ISO standard for docx was nearly impossible to completely implement for anyone outside of Microsoft and that it should have never been accepted as a standard.

Really, I thought that docx abused it's specification using very rough edges to make it difficult for opensource applications to implement.


The major obstacle isn't so much the file formats as just the raw file size.

Recording 16 tracks at 96/24 is 4.6MB/sec.

A typical 3 minute pop song is almost 1GB.

If you're keeping multiple takes that will obviously balloon tremendously.

Splice.com is this, and it's great, I use it with Ableton all the time. Versioning is easy, merging is impossible. But it's better than what I did before.

Why wouldn't it be possible to version control in the same way we version control other random files? Just treat it as a stream of arbitrary data.

You'd miss out on all the goodies of version control like seeing what has changed. Ideally, version control for musicians would have the ability to show "change panning of guitar a to 0.3 and volume to 0.1" similarly to a code diff. Otherwise all you've got is just a bunch of backups, possibly with semi-informative commit messages if you really put a lot of effort into it.

I wish that there was a way of getting Logic X to output a list of changes you've made during a session. When I collaborate with my bandmate, I often struggle to describe all the changes I've made since he passed me the project. I'd also like to know the changes he's made.

My bandmate often works on our project while it's in a Dropbox folder, so I get a steady stream of notifications about impulse responses and undo files being changed; not very useful. I can tell when he's tracking because the new .aif files come over but that's about it.

I mean, Adobe Suite programs have a history feature where all your alterations to the image are listed chronologically. I don't know how that system works personally but it is a similar class of application & feature.

It would be possible if there was a change log constantly updated that was meta data to the stream. In other words, each time something is done on the audio/visual file, log what it was, and version control that.

This is essentially what non-destructive edits are in the photo-editing realm

ES/CQRS for audio editing.

Yes, but more tantalizing would be some kind of wavelet-based semantic versioning. This might allow merging.

I'm not sure about GitHub but Google insist you use naming like "X for Google Chrome" where the Google product name is in smaller letters when it's part of a logo to avoid brand confusion.

Would a non-profit thing like this violate the trademark? This is just like publishing an interactive graph on Github usage.

Possibly. I found this doing a quick search. I don't know how credible a source it is, but it sounds reasonable. (Better, more reliable sources would be interesting to see).

"Non-commercial use cannot be prevented, except if that use harms the distinctiveness of the trademark."[1]

There may well be an argument that the confusion about who's behind this and that it actually deals with the company holding the trademark, I would think GitHub has a case. I'm not sure it would be worth pursuing, unless not doing so threatens the enforce-ability of trademark.


Why would it matter if they were non-profit? Any brand confusion has the potential to harm the original brand.

You generally have to be involved in trade to be in violation of a trademark.

> You generally have to be involved in trade to be in violation of a trademark.

What's the rational behind that though? If you had a charity, a free web game, a free book etc. concerning something people find offensive with the name "Super Mario" in it, many people would be legitimately confused if Nintendo was behind it which could cause harm.

The naming and URL would probably fall under "nominative fair use", which allows you to use another entity's mark in order to referred to that entity, As long as you are not suggesting that you are sponsored or affiliated with that entity.

The other issue might be one of "initial interest confusion", which is exactly what happened with some people here: they clicked because they thought it was something other than what it was. Apparently that is actionable but inconsistently so, and the doctrine is controversial.

Source: my dad is an IP lawyer and I asked him about it.

I think there might be different considerations involved if Github actually wanted to use the "github.audio" domain name.

If you're looking for music version control, check out Splice.

Me too - I was so excited at first..

My thoughts too. A collaborative SoundCloud? A Git repo for music sheets?

Funny, I thought it might be a normalizing set of audio interfaces to make web audio easier to use... A bit more than their fetch shim.

Agreed. The name made me expect an official "GitHub for Audio" type service, something like: https://splice.com/

The closest thing to collaborative music I've found is https://www.audiotool.com/

Why? You can edit other people's music. Watch this magic: https://www.audiotool.com/app/soundlab/

Even worse, this matches the actual way URLs should have gone in the first place: com.site.subdomain/folder/subfolder/subsubfolder/.

I agree. How am I supposed to know if a TLD belongs to a company?

I guess EV certs can help. This one just uses Let's Encrypt but GitHub have their company name in the URL bar for official sites.


I don't have time for that every time I encounter a new domain.

This functionality could be automated with a browser extension, or even as a built-in feature where there isn't an EV cert.

Then your whois provider gets to see all the domains you are visiting in real-time.

Good point. Even though your ISP/DNS provider can see this too (including HTTPS connections) it's prudent to limit data leakage as much as possible. Perhaps the lookup could require a single click (only needed when you are unsure of the owner).

If you're using the default whois that comes with OS X you're out of luck.

$ whois github.audio

whois: audio.whois-servers.net: nodename nor servname

provided, or not known

This is a handy alias to have: whois='whois -h whois.geektools.com'

Probably the same on Windows 98 or XP.

Agreed. I think the title of this post could have been: "Generating audio from Github events". The title is somewhat click-bait.

TBL made an unfortunate decision to put .com at the end, instead of keeping the hierarchy like this http:com.github.www/foo

Actually, the simple fact that this thread appears in 1st in HN lead me to this wrong way, prior to the TLD.

Why are people more interested in what they thought it was than what it is?

ICANN Uniform Domain Name Dispute Resolution Policy


b. Evidence of Registration and Use in Bad Faith. For the purposes of Paragraph 4(a)(iii), the following circumstances, in particular but without limitation, if found by the Panel to be present, shall be evidence of the registration and use of a domain name in bad faith:

(i) circumstances indicating that you have registered or you have acquired the domain name primarily for the purpose of selling, renting, or otherwise transferring the domain name registration to the complainant who is the owner of the trademark or service mark or to a competitor of that complainant, for valuable consideration in excess of your documented out-of-pocket costs directly related to the domain name; or

(ii) you have registered the domain name in order to prevent the owner of the trademark or service mark from reflecting the mark in a corresponding domain name, provided that you have engaged in a pattern of such conduct; or

(iii) you have registered the domain name primarily for the purpose of disrupting the business of a competitor; or

(iv) by using the domain name, you have intentionally attempted to attract, for commercial gain, Internet users to your web site or other on-line location, by creating a likelihood of confusion with the complainant's mark as to the source, sponsorship, affiliation, or endorsement of your web site or location or of a product or service on your web site or location.

From https://www.icann.org/resources/pages/policy-2012-02-25-en

You skipped part a which includes:

> (i) your domain name is identical or confusingly similar to a trademark or service mark in which the complainant has rights

Guthub can take this down fast. And if you believe everybody with a trademark lawyer, they might have to in order to preserve their trademark.

So what's your conclusion?

Maybe they concluded that this is fair to use and that's why they didn't have any argument beyond posting the ICANN rules for us.

Anyone who, like me, is interesting in digging under the surface, sound code is here: https://github.audio/static/public/js/main.js

From there you can get the URLs for the audio files used. Uses Howler for audio, web sockets to talk to the server, SVG to render the animations.

The above is all easy enough to get from the source, but it might save someone else some time.

I've done sonification of data before, and it's not easy at all. This one is really well done -- it's really difficult to get the tonality and rhythm to be pleasant as well as accurately represent the data. Nice work whoever built this!

A few years ago some friends and I did real-time sonification of a game of StarCraft 2. Granted I didn't do the musical part, it didn't seem to be too hard to make it sound good. I guess the challenging part is to not to be overwhelmed by the data coming in.

This [1] was the first performance of it at CCRMA at Stanford. We spruced it up a bit before we did the performance in Korea.

[1]: https://www.youtube.com/watch?v=WisMhY5BWa4

sonification of data sounds wonderful. any examples?

I replied above with another example of sonification of a StarCraft 2 game in real-time. There's a link to a video of a performance there and here [1] is the paper we wrote for the NIME conference.

[1]: www.nime.org/proceedings/2013/nime2013_146.pdf

Reminds me of the (sadly) now defunct choir.io. Intro post > https://corte.si/posts/choir/intro/choir.html

They had a demo of Github realtime activity and I hooked it into a bunch of different events around the org - Salesforce/Yammer/Github/JIRA - was neat to have a "pulse" of daily activity in the background.

Not what I was expecting. Very soothing to have running in the background

What I find soothing about it is when there are long pauses. It makes me wonder... what's making people take long breaks?

Well people aren't taking breaks, it's just a natural random variation. It's the sound of a Poisson distribution.

Thought I'd seen something very similar before:


It clearly says in the footer

    inspired by hatnote

Quite possibly. At the bottom, it says "inspired by hatnote" :)

Ha, I didn't even scroll down :facepalm:

Disclaimer: I wasn't saying this as a dig. I really like what's been done with this and hatnote :D

And here is Bitcoin audio http://www.bitlisten.com Instead of commits etc., you have transactions.

So awesome. I just wrote a note down two days ago to make this. Beat me to it.

For some reason, this is the fifth posting of this site in the past two days, and the only one to make it to the front page.

It seems that HN is encouraging people to post the same Show HN projects multiple times until they get traction. I have been restraining myself from doing that with my own projects because I care a little about this community, but since moderators and the majority of users don't, I will not restrain myself anymore.

It's great that you care about the community. People caring about HN is what makes it good.

The repost thing is in the FAQ: https://news.ycombinator.com/newsfaq.html. It's a well-known weakness of HN's structure that many good stories get posted to /newest and then fail to get noticed before they get washed out to see. There are just so many submissions here.

Over the last couple of years we've developed techniques for rescuing good stories and giving them second chances at attention. The simplest was just to let people know that a small number of reposts is ok. Reposts aren't great, of course, but missing good stories is worse. Think of it as allowing multiple pitches before striking out.

Another thing we did is build a system for story reviewing—initially by moderators only, now by us plus some users, with the plan of opening it to the whole community as soon as we figure out how—under which stories that get picked as good by reviewers get a random placement somewhere on the bottom half of the front page. These are stories that would otherwise have fallen through the cracks completely.

For example, your Show HN at https://news.ycombinator.com/item?id=12635722 looks good, so I just put it in the second-chance queue, and it's on the front page now. You should also have gotten an email saying we did this. Btw you might want to add a comment to that thread introducing yourself and explaining the background to the project—readers like that, and it tends to seed better discussions.

I know it is in the fact, I just thought this one was posted more times than it actually was (if it was actually only posted 3 times, one flagged).

Thank you for all the clarifications anyway. I actually complained knowing that achieving the correct mix of fairness, having-good-stories, and overposting prevention is a kind of impossible task (and HN seems to be doing well), so I was a kind of a troll, we may say. I'm sorry.

To be fair, unless it's sockpuppet accounts the author only posted it twice (potentially in error, the second one got flagged). Can't really stop other people from resubmitting your Show HN.

Ok, maybe I overreacted, but it is because I saw the other two submissions, coincidentally, then I thought it was maybe submitted more (perhaps because it was flagged at the first time I saw it).

I've seen other cases of overposting in the recent past, so I became suspicious of everything.

That seems a little unfair. I suspect it's just that users are encouraged to not feel that they should refrain from posting interesting content again just because it quickly fell away.

I don't see anything wrong with that. If something failed to get traction then barely anyone would have seen it. So posting it again will cause very little annoyance.

How much percent of the entire activity on GitHub is that?

I was curious about this also. It tracks the global public events endpoint


which has a limit of 30 items, requesting every 2 seconds


And then limits to 3 pushes, 5 issue comments, and 3 issue events:


There are definitely situations where you'd be losing events, though I don't know what percentage that represents.

Sounds like it was inspired by Listen to Wikipedia.


The name Github Audio reminds me of something I've been searching for: Version control for Musicians. A lot of music is now made over the internet. When I'm working on a track with a remote bandmate my workflow consists of recording, exporting the track, uploading it to dropbox, and then he needs to download, and import the track into his DAW. Surely there must be a better way. Is there a way for musicians to work together on songs the same way programmers can write software together?

I actually worked on building this before but nothing came of it. The main problem was a 'diff' for audio files.

Very nicely standing on the shoulders of Brian Eno's Generative Music ideas, his Bloom app in particular[1].

[1] http://www.generativemusic.com/

Much as I like Eno (this project is more Eno-lite than Eno-like imho) the story of generative music goes back some way before his time. To explore, start here:


This would actually be pretty rad if I could narrow down the events to include only those from Github organizations that I care about.

Something similar from a project I'm working on. Just a silly debugger tool but turned into a way to show how how lots of components in a system are interacting:


(if you want to know what this is about, the service is under development, you can read about it here http://eventdata.crossref.org/guide/ )

...bing, bong, chim, pluck..and my Chrome is frozen.

Very nice. Although open source music where you have MIT licensed songs in editable format would also be an interesting experiment.

A coincidentally timed writeup on 'Sonification for monitoring and debugging distributed systems':


If github actually did provide a hosting/version control service for musicians, it might gain users from the musicians who are worried by soundcloud and co's pivots to monetisation.

Wow, this sounds really beautiful. They've done a great job and taking random signals and stringing them into beautiful and pleasant-to-hear music!

Something went wrong: https://i.imgur.com/tACBiiK.png


Some folks killed the comment of the author with that Link.

If I was a manager and a music geek as I am now, I'd totally request integration of this thing with my repository, JIRA and Confluence :-)

Am I the only one who immediately has to hunt down and close a tab the moment I hear auto-play audio of any kind?

Ambient github!

It’s crazy that there’s 3k+ people currently listening to events from github’s system. So much #nerd

The link is on top of HN, that's why :)

This is a great idea. I love it. Well done!

Not what I was epecting. Awesome. :)

That's actually very relaxing

Not working in mobile safari

This is what I don't understand about Android. I have sounds set to "Alarms only" yet this webpage still plays it's tones.

Media volume can be max even if ringtone volume is zero. Also on my phone (Galaxy S7) notifications is a separate volume which isn't controlled by the ringer volume, except that it is muted when you mute the ringer volume. I have started playing really loud things many times in bad situations due to the media volume not muting or reducing when you silence the phone.

Same. I'm at work on the toilet. Someone just called over if I needed assistance.

Would love to know how that played out

I said it was some GitHub experiment.

He said "...with photos?"

"No.. some sound thing."

This was one of my biggest concerns when I tried out the Note 5 for a few weeks. Not being able to quickly and confidently silence my phone with a switch made me paranoid it would be making noises in meetings and such.

That is something I've been googling an answer for. In "alarms only" mode the media volume is still not muted, as one would expect from the name. It seems they forgot to make it so, or forgot to describe that mode as "alarms + media only"...

In recent versions there are three different volume sliders. I'd call them: "Notifications", "Alarms", and "Media".

You have to check all three of these to be sure. I have mine set to only "Alarms" and occasionnally allow "Media" when listening to music or podcasts, but after listening you have to reset "Media" to zero. (I don't have any kind of notifications alerts, sound or vibration)

And until very recently, you had a fourth: Bluetooth. It seems v6.0.1 dropped it, though.

You could keep a slim headphone jack (no cable, just the bit that goes in) plugged into the socket. Would also stuff it filling with fluff. I do this with my laptop. Obviously won't work on iPhone 7.

iPhone users can always use a plug. http://appleplugs.com/

Unplugged the head phone in the office today. A colleague asked "what kind of dumbass music is that?" "Sound of creation" I replied. He was intrigued and was blown away by the concept.

502 :(

Well, there's a new world's worst thing.

If this is all you have to say about something on Hacker News, we kindly ask that you avoid saying anything at all.

It's shorthand for "I have a distaste for this thing which I presume to be understood if not necessarily shared." I was wrong about that.

This isn't musical at all! It's some lazy shit a high-schooler with free time and a vague understanding of the Web Audio API could do. Moreover, there's no value in it. The abstract "sonificiation of real data" is such a low bar, there's so much room for creativity, and there are so many brilliant artists who (rightfully) don't want to wade in the depths of the hacky web-tech garbage necessary to make something like this work that it's a wonder anyone gives a fuck about this. To find any value in this, one would have to have tuned out somewhere between having an abstract understanding of the project and actually listening to the darn thing.

Now, do you really want to discuss the merit of the thing, or would you rather Get Offended on the Internet?

Sorry if I wasn't clear, but my comment was strictly procedural and divorced from the topic. We ask that community members post civilly and substantively on Hacker News or not at all, because we're here to learn and to gratify our intellectual curiosity. Any substantive discussion of the merit of the original post would include information, which your comment lacked.

This brings up a good point.. what is a valuable mapping of the type [ stream of data ] => [stream of Sound] ?

If the input was a stream of random bytes you could immediately list an infinite number of different ways to turn that into sound of some kind. Most of those would probably be as interesting as listening to random tones.

In this case, it would be interesting if the music communicated something meaningful about the github pull requests rather than just using github as a random number generator to make pleasant bell tones.

One example might be that a pull request that solved some long-standing much discussed bug would stand out musically by being loud, introducing a new sound, or resolving a tension present in the music. To contrast, a PR that changed some documentation might generate hardly any change in the music.

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