I do realize that not everybody subscribes to the "Everything is a repo" philosophy that holds sway for me, and that tarballs and the like are still used by a significant portion of the internet to share code. I just wish I could sell more people on The Repo Way :)
EDIT: To clarify, yes, I know that putting it there makes it "their license", and if I were to use code from their site I would adhere to it. My concern is that, because it's not actively shown when viewing the code itself, and because it's a roll_your_own license, it impacts how comfortable I'd feel taking the code and using it as part of other projects.
It's essentially CC-SA, but with this:
"You are not allowed to take our work “as-is” and sell it, redistribute or re-publish it, or sell simple “pluginized” versions of it."
mit/bsd/isc/lgpl/apl or compatible or bust.
I think a more contrasting approach to color is likely better - maybe you start with a green button, which goes Gray on click, and then fills with brighter green. This will avoid issues with color-blindness, or even just myopia, where people won't really see the subtle color filling in.
I took a similar idea from a small remark in the recent "what I would do if I were Tarsnap" article. It made me wonder who uses the verb "submit" nowadays, what meaning does it have to users that are not web-developers (and immediately think of `<input type="submit">`)?
Arguably it makes sense because you are submitting a form to web server, but what common user really thinks of this action in that way?
Maybe this is super obvious to some people, but I was reminded that you can put pretty much any verb in context there, and it'll probably be better than "submit".
Do people using this sort of thing (or the YouTube style top of the page loading bar) actually get back real % completed values from the server or do they just use it to show that _something_ is happening?
It honestly made for a very comfortable UX -- customers did not know it was not actually representative of the true status, but they were nevertheless okay with waiting the 30~ seconds it took.
You don't know in advance how many resources you need to load, you don't know in advance how large they'll be, or how long the DNS reply will take ...
If you don't want the scrollbar to move backwards, you can just give a rough approximation of progress, if any. And if you just wait until you certainly know how long it's going to be you're probably almost finished anyway.
I guess there's a reason web browsers nowadays just use a little spinner that says »I'm doing ... uhm ... something!« instead of them pretending »I'm 46.5 % done«.
I mean this as a total compliment: HTML/CSS/JS seems to be quickly catching up to the opening scenes of my two favourite news shows from the 1990s: The Day Today  and Brass Eye . Thirty second clips of those scenes for each below:
This control is more concise than two controls, which is nice especially on mobile. But, we could easily hide the button with animation, and replace it with a classic loader. Can we say anything about which approach is better, without empirical data?
I excitedly up-voted the post after clicking a few buttons, and I think the author is a creative and clever person either way!
Though I generally dislike loading bars for images (I prefer progressive jpeg), some sites do insist on using them, and I think this particular effect could look fantastic for thumbnails. And enhanced to use two colors, it could also be used to indicate buffering status and seek position when playing short audio samples (a gallery of birds and their song is the first thing that comes to mind haha)
I do realise that there's probably some server-side things going on when you've submitted, but you could do that at the very last form input, and once the button is pressed, magic appears. No loading, no progress bars.
I know this is a WIP, and it's awesome. Very green though. ;-)
And as always, measure your audience. Why waste time and money for the 0.01% of users without js?
Without saying "screen readers", as they're 90%+ JS enabled these days.
If my JS would load in half, my no-JS form might also load in half, what do we do now. Have a fallback where we accept the form in pieces?
As for people who have a "personal preference", well, they might as well have a personal preference to browse the web via telnet. It's their problem.
The requirement to use a full, working web browser to browse a web page is hardly extreme.
Re: personal preference - have you never heard the saying 'the customer is always right'? No business in its right mind would purposefully turn down money from a bunch of its customers just because they happen to have a personal preference which can easily be accommodated.
You're claiming, millions are filling in long web forms with their feature phone numpad keys?
Give me a break.