bsdiff is not a general purpose binary delta algorithm, it's targeted at executables. When you change a single line in the source code of a program and recompile it, bsdiff produces a small diff, even though a normal binary diff between the old and new executable would be huge due to how even a single extra instruction can cause many more addresses to shift. bsdiff wouldn't be particularly useful here.
Presenting this screen before you can actually get the OS does not make much sense for new users. They won't know if "hardware support on more PCs" or "performance optimisations" will be any important for them. It'd be more sensible for this to show up as a built-in screen after you've used Ubuntu for a few months.
It'd be most sensible to show up at multiple, carefully selected points in time.
For example all Xbox Live Arcade games are required to have a trial (demo) which can be seamlessly upgraded to the full version at anytime. Every trial is required to award the player an Xbox Live achievement and Xbox Live Avatar Item at some point. When receiving either a pop-up occurs saying "You've earned <X>, unlock the full game now to keep it". Or something to that effect. Then of course there is a final upsell at the end of the trial.
I think it would be a much better idea to have people give in the beginning, but instead of asking them where the money should go, tell them that their name will be included in the next release as a contributor on their site and in an "About Ubuntu" dialog in the desktop version and /etc/contributors on the server version where it lists the various levels of contributors and their names. This would encourage more businesses to give.
True, the issue in particular with "hardware support" is that the biggest problems desktop users seem to run into with Ubuntu is video drivers for nvidia/ATI and it doesn't seem like there's much canonical can do about those anyway.
ATI drivers? The open source ATI drivers have progressed wonderfully recently. I never even flirt with the idea of tainting my desktops or laptops with proprietary drivers. The situation is different with nvidia but I am still happy with the machine I have with an old nvidia card I purchased for mining btc.
What problems do people have with the free ATI drivers?
I only use nvidia cards (with the proprietary drivers) because they were the only ones I could find with decent framerates playing something like Minecraft at 1080p resolution.
Do the free ATI drivers get 60fps (or even 30fps @ 1080p resolution) for most full screen games? If so, could you tell me which model of card you are achieving this with?
I switched to an nvidia card about a year ago because the free ATI drivers either gave terrible OpenGL performance or some apps didn't work at all because features were missing from the drivers and the proprietary drivers gave me all kinds of horrible glitches.
They're ok for anything but games (for which I use windows anyway), but the power management sucks. I get 3-4.5h with the free driver and 6-7h with the blob.
While you're correct, I think such a message after installation and use will make it feel a little like nagware(a bit like how Windows prompts you to activate it) even if its a one time.
Well, there are two Great Britains - the Kingdom that was created by the Acts of Union in 1707 and lasted for about a century until Ireland joined, and the island:
The difference is that each environment for non-Web apps - Mac, Windows, KDE etc - has each own somewhat well defined look and feel, that applications should follow in order to feel native. That's not true for Web apps in different Web browsers - they are supposed to look the same. Qt compromises that native experience by letting you target multiple platforms. For Web toolkits, at worst you'll end up with an app that doesn't stand out (e.g. by using Bootstrap) but certainly not with one that won't blend in.
I don't know if you've used Qt or not, but one of the things that always impressed me about it was how good it was at defining the abstraction just right at the level so that out of box each platform's app did in fact look right on that platform and fit in with the same look and feel. Obviously that doesn't catch everything, but the areas where Qt apps didn't fit perfectly into the platform's native look and feel by default, it was always easy to insert some platform specific code to go in and call a few functions that brought it up to the level you wanted to see it get to. You know I'm not going to say it's exactly 100% as it would be writing a whole separate app for each platform, but it gets shockingly close with shockingly little extra effort, and as someone who helped write an app using Qt and OpenGL to run on Linux, Windows and OS X on a short timeframe, Qt was amazing.
We're not talking about write once look the same everywhere here like old Java/Swing or a webapp. That's just not what Qt does unless you twist its arm. By default it compiles a version that's intended to fit in on that platform target you compile towards.
And seriously. A webapp compromises the native experience much more than a Qt app would. Pretending you can avoid that by stuffing your stuff in a web browser where there are no cohesive look and feel standards that make any sense and that this is somehow supposed to yield a better user experience?
I've used Qt a lot. In fact, I'm still a big fan and wasn't trying to sound negative about it in any way. I absolutely agree that Qt does a tremendous job at abstracting away the differences but still, it's the little details that matter and no toolkit could address them all. Things like ribbons on Windows. Multi touch support, cover flow and proper OS X-like multiple window management on Mac. Not to mention mobile. For big applications, these glitches add up and in no time you find yourself resorting to way too many native workarounds.
But my main point was to that cross-browser Web toolkits and cross-platform GUI toolkits are apples and oranges. On the Web there are no UI guidelines. It's essentially free for all. The chrome of the Web browser constitutes a clear separation point between the native experience and the Web experience, which makes it possible for things like Gmail not to feel hostile on Mac, Linux, Windows and any other Web-enabled environment. Whether or not that's good for UX is irrelevant, the fact remains is that Web apps have never tried to integrate seamlessly with the look and feel of the host environment and the users have grown accustomed to that.
Ruby seems to have fixed it in December, PHP in January and Node was trying to get a fix in for v8 but it's been rejected AFAIR and then they patched their version. Perl hasn't actually been vulnerable for a couple of years.
This is nice if you already know someone & have a rapport, but if that's the case, you can often skip it any way. Though distasteful to some hackers, small talk has a valuable function, and I wouldn't design a feature in a social application that would prevent it. Though in this case, you'll probably just get people switching from "what's the weather like, Bob?" to "How bout that weather, Bob."