How is the objective-c compiled and ran on Dalvik? Are you doing: objective-c -> LLVM -> dalvik bytecode?
It isn't. It runs natively via the NDK.
I maintain the GNUstep / Clang Objective-C stack. Most people who use it now do so in Android applications. A lot of popular apps have a core in Objective-C with the Foundation framework (sometimes they use GNUstep's on Android, more often they'll use one of the proprietary versions that includes code from libFoundation, GNUstep and Cocotron, but they almost all use clang and the GNUstep Objective-C runtime). Amusingly, there are actually more devices deployed with my Objective-C stack than Apple's. The advantage for developers is that their core logic is portable everywhere, but the GUIs can be in Objective-C with UIKit on iOS or Java on Android (or, commonly for games, GLES with a little tiny bit of platform-specific setup code). I suspect that one of the big reasons why the app situation on Windows Phone sucks is that you can't do this with a Windows port.
It would be great for these people to have an open source Swift that integrated cleanly with open source Objective-C stacks. Let's not forget that that's exactly what Swift is: a higher-level language designed for dealing with Objective-C libraries (not specifically Apple libraries).
Objective-C is a good language for mid-1990s development. Swift looks like a nice language for early 2000s development. Hopefully someone will come up with a good language for late 2010s development soon...
It wasn't just about interface. People tend to forget how search engines did an absolutely horrible job of intelligently ranking the sites you wanted to see.
I find it pretty easy to remember - I go to Google today.
The UI was what made me switch both to Google originally and from it some years later. When I started using Google - and when Google started gaining significant market share - most users were on 56Kb/s or slower modem connections. AltaVista was the market leader and they'd put so much crap in their front page that it took 30 seconds to load (and then another 20 or so to show the results). Google loaded in 2-3 seconds. The AltaVista search results had to be a lot better to be faster. I switched away when they made the up and down arrow keys in their search box behave differently to every other text field in the system.
There's a lot more to government than military intelligence gathering and law enforcement (although it would be a good idea for someone to remind most current governments that those are two things, not one). And most government projects end up spending insane budgets. This isn't limited to the US. It amazes me how often government projects to build databases to store a few million records with a few tens to thousands of queries per second (i.e. the kind of workload that you could run with off-the-shelf software on a relatively low-spec server) end up costing millions. Even with someone designing a pretty web-based GUI, people paid to manually enter all of the data from existing paper records, and 10 years of off-site redundancy, I often can't see where the money could have gone. Large companies often manage to do the same sort of thing.
The one thing that the US does well in terms of tech spending is mandate that the big company that wins the project should subcontract a certain percentage to small businesses. A lot of tech startups have got their big breaks from this rule.
The real problem for Firefox is not the interface changes that people like you whine about, it's mobile. Now 30% of traffic is mobile and Firefox doesn't have an app for any Apple mobile devices and is effectively excluded from Android by Google's Microsoft-like illegal anti-competitive licensing deals with manufacturers (you can get the app, but it's not preloaded and only a few geeks ever would).
Huh? It's in the Google Play Market and is no harder to install than any other app. Once it's installed, the first time you click on a link from another app you're asked to choose the app that will handle links. I fall into the geek category (and so installed it from F-Droid, not Google Play), but found it trivial to switch to Firefox on the mobile. I mostly did because Chrome has spectacularly bad cookie management and I'd been trying to find a browser that did it better. Early Firefox ports were as bad, but now it's quite nice and with the Self Destructing Cookies add-on does exactly what I want.
The mobile is actually the only place I use Firefox...
For some reason, people in the second category describe themselves as 'religious'. And yet you'll be hard-pressed to find, for example, a Christian who requires the same standards of evidence for the non-existence of the Norse, Egyptian, Greek or Hindu gods as he requires that an atheist from the first category provides for the non-existence of the Abrahamic god.
Would you prefer that mega-corps not make their videos available for streaming at all?
No, I'd rather that copyright on music and video be contingent on distribution in a form that does not lock customers into a particular platform.
You're comparing apples and oranges as far as the technical details. I'm saying Win 3.x let me continue when it saw problems, and NT could also do that.
Not really. The kind of situations where Windows 3.x let you try to continue, Windows NT just handles transparently. In Windows 3.x, with cooperative multitasking, a single application can refuse to relinquish the CPU. If this happens, you have three choices (outlined by the dialog box):
In a system with protected memory and preemptive multitasking, an application that refuses to relinquish the CPU will just have its priority downgraded and the only thing that you'll notice is the CPU getting warm. Eventually, you may choose to kill the program, but it never affects system stability.
I'd like to have the *option* to continue to save my work even if there was a chance of data corruption. For example, take the common NT blue screen IRQL_NOT_LESS_OR_EQUAL. That fact that my buggy network driver tried to access paged memory in the wrong sequence is miles away from catastrophic. And it certainly doesn't take priority over something I've been working on for hours. IRQ 0 is me, motherfuckers!
It means that there's a high probability that something has damaged some kernel data structures. If you continue, there's a good chance that this corruption will spread to the buffer cache and you'll end up writing invalid data to disk. If you kill the system, the corruption is limited to the RAM.
"It's the best thing since professional golfers on 'ludes." -- Rick Obidiah