7th Go Challenge - A piano on your phone

The 7th Go Challenge by Francesc Campoy Flores is now live.

Francesc says:

The latest version of Go 1.5 released last month includes, among many other cool things, experimental support for mobile platforms such as Android and iOS.

I have personally played around with the golang.org/x/mobile packages and thought this challenge would be a great opportunity to see what great projects people could come up.


I actually have a project (of various iterations through out the years) that let’s me design scales on a fretboard or piano roll that I was considering redo’ing in Go.

I’ve misplaced the last source I had but redid something for mobile since its easier to use when I’m actually playing music, source here https://github.com/dskinner/GuitarScales

My current source is missing piano roll, transposing, but what’d be a nice addition too that I’ve never done is generating playback of scales in various manners so you can play around with things a lot more before actually taking it to a guitar or piano.

1 Like

Hey there, @dskinner!

That sounds like an awesome project, but for this challenge the goal is to just build a piano app in Go :smile:

But feel free to show me the code if you port GuitarScales to Go!


@francesc what exactly are the terms of licensing the source? If I submitted an entry, would I essentially be re-licensing the source for the challenge while retaining the original copyright?

From the challenge description:

After the challenge is over, all submissions will be made available online on GitHub under the BSD 3-Clause License or the GNU General Public License, version 3 - GPL-3.0 unless a participant has indicated that his/her solution should not be made public before the challenge ends.

I read that, but maybe I’m just ignorant with regards to licensing. If I submit code provided with a 3-clause BSD license to the contest, I’m still the copyright holder of the source and if I choose to re-license and distribute the source elsewhere, there’s no issue? That’s all I’m wondering.


That’s a good question … to which I don’t hold the answer!

Let me ping @IndianGuru

Thanks for checking.

I decided to write some harmonic functions late last night, so after contest, I’d want to move the piano app into an examples/ directory with the library at root and licensed under 2-Clause BSD on my github since the lib has been on my TODO for a long while :smiley:

After some thought, I guess my question could have been stated simpler by asking “Do I retain all rights to source code?” which now I’m thinking I must because otherwise it would have to be explicitly stated in the contest rules.

Yes. You retain all rights to your code.

1 Like

just mailed in my entry, it’s been fun. After no more entries are being accepted, I’ll make public on github and publish on my play store account for general availability (after working out signed-release of a pure go app).

In general your code is your code (save for contracted work were you pass copyright to a third party and similar situations). Given the terms of the challenge, what you are doing is allowing the Go Challenge to redistribute your code under a specific license. So you are free to take your code (emphasis on your) and distribute it under a different license than the one you granted to the Go Challenge. Do note that some of the challenges have provided code that you modify, so in that case not all of the final code is your code.


This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.