No software downloads, and apparently not open source nor free software. And also their hardware is not yet available.
Who tagged this "Ubuntu"? No relation.
I agree: indeed Genymotion fills in this gap perfectly, and I recommend it strongly for any Android dev. I also found Genymotion devs to be amazingly prompt in responding to bug reports. (I have no connection the company, am just a fan of their work.)
But it's still surprising the that official Google toolkit doesn't have anything like it. Google, get on board! Just buy up Genymotion or license their tech.
By the way, emulation still has its uses in some cases... it's of course best to have both.
Why not read TFA?
Chu is using the opportunity that mysogyny is in the spotlight to discuss the problem of mysogyny in his own community, through his own personal experience.
He is not saying that Rodger is a nerd.
Seriously, read TFA, it's a thoughftul piece.
It's a mistake to think that "NoSQL" is a silver bullet for scalability. You can scale just fine using MySQL (FlockDB) or Postresgl if you know what you're doing. On the other, if you don't know what you're doing, NoSQL may create problems where you didn't have them.
An important advantage of NoSQL (which has its costs) is that it's schema-free. This can allow for more rapid iteration in your development cycle. It pays off to plan document structures carefully, but if you need to make changes at some point (or just want to experiment), you can handle it at the code level. You can also support older "schemas" if you plan accordingly: for example, adding a version tag or something similar that can tell your code how to handle it. So, even ignoring the dubious potential of better scalability, NoSQL can still be beneficial for your project.
More so than SQL, NoSQL database are designed for different kinds of applications, and have different strengths:
MongoDB is a really good backend engine that gives programmers lot of control over performance and its costs: if you need faster writes, you can allow for eventual integrity, or if you need faster reads, you can allow for data not being the absolute freshest. For many massive multiuser applications, not having immediately up-to-date data is a reasonable compromise. It also offers an excellent set of atomic operations, which from my experience compensate well for the lack of transactions. Furthermore, MongoDB is by far the most feature-rich of these, supporting aggregate queries and map-reduce, which again can make up for the lack of joins. It also offers good sharding tools, so if you do need to scale, you can. Again, I'll emphasize that you need a good understanding of how MongoDB works in order to properly scale. For example, map-reduce locks the database, so you don't want to rely on it too much. The bottom line is that MongoDB can offer similar features to SQL databases (though they work very differently), so it's good for first-timers.
Couchbase is very good at dispersed synchronization. For example, if parts of your database live in your clients (mobile applications come to mind), it does a terrific job at resynching itself and handling divergences. This is also "scalable," but in a quite different meaning of the term than in MongoDB.
I would also take a look at OrientDB: it's not quite as feature rich as MongoDB (and has no atomic operations), but it can work in schema-mode, and generally offers a great set of tools that can make it easy to migrate from SQL. It's query language, for example, looks a lot like SQL.
The above are all "document-oriented" databases, where you data is not opaque: the database actually does understand how your data is structured, and can allow for deep indexing and updating of your documents. Cassandra and REDIS (and Tokyo Cabinet, and BerkeleyDB) are key-value stores: much simpler databases offering fewer querying features: your data is simply a blob as far the engine is concerned. I would be less inclined to recommend them unless your use case is very specific. Where appropriate, of course simpler is better. With these kinds of databases, there are actually very few ways in which you can create an obstacle for scalability: simply because they don't do very much, from a programming perspective.
There are also in-between databases that are sometimes called "column-oriented": Google and Amazon's hosted big data services are both of this type. Your data is structured, but the structure is flat. Generally, I would prefer full-blown "document-oriented" databases, such as MongoDB and OrientDB. However, if you're using a hosted service, you might not have a choice.
It's also entirely possible to mix different kinds of databases. For example, use MongoDB for your complex data and use REDIS for a simple data store. I've even seen sophisticated deployments that very smartly archive data from one DB to another, and migrate it back again when necessary.
I want to point out that Unity is a very keyboard-friendly UI. The team has gone to extra lengths to make sure keyboard shortcuts exist for just about everything.
And I'm saying this a Xubuntu user! I've decided against using Unity for now (I feel it's still "beta" quality), but I appreciate the efforts of the Unity team. Perhaps one day in the future it will match my needs. Until then, Xfce is a "good enough" daily driver for me.
And Xubuntu = Ubuntu. I'm exceedingly grateful to the Ubuntu community for the extremely high quality repository of software they maintain.
Everytime I see "doomed" in Slashdot these days, I expect a big hit around the corner...
Actually, it seems, many home users don't need full-blown MS Office and Photoshop, and are very happy with modest apps and casual games. If not more happy, because the full-blown desktop OSes give them headaches. An antivirus? System update that takes 45 minutes? My mom doesn't see how that helps her. These people love their iPads and the ChromeBooks are selling like hotcakes.
And MS is scared of ChromeBooks, enough that they've released a series of anti-ChromeBook ads.
Selling a laptop dual-booting Ubuntu is pointless (and I say that as a 100% Ubuntu supporter): but dual-booting Android indeed gives the laptop a different experience, with superfast boot and simple use, that many users will enjoy. If the laptop does touch, too, then you get a nice Android tablet, too, which is far more functional than a Win8 tablet: indeed, PC+.
Also, let me educate you: Android *is* a Linux distro.
I guess YMMV. I suggest the iPad, strongly.
I got my parents each an iPad as a gift, and it was life transforming, especially for my mom. She never got a hang of computers, even though she even tried to take some computer classes. The mouse, the overlapping windowing interface, dialogs that pop up... a constant source of frustration. Desktop OSes require so much knowledge to just do basic things: we who were raised with them take it for granted. But the iPad somehow made sense to her. She never stops thanking me for it! She emails every day, looks up things in Google, and has recently started to use Facebook (although she is very confused by the interface... heck, I'm a programmer and I can barely understand FB's interface...). We also use Skype a lot, and it works great! Though she often forgets that she needs to "see my name in green" to know that I'm actually have Skype open. She thinks of the whole device as "also a telephone" and still doesn't quite understand that an "app" has to be open.
Related: my mom had a Galaxy phone at the time, and of course couldn't make heads or tails of it. But, once she "understood" the iPad, she also understood that the iPhone is just a "small iPad", and got one for herself. I'm so proud of her.
For the record, I'm the
Trust me: get you dad an old iPad, it may change his life. You definitely don't need an iPad 2 in terms of power, although consider the iPad Air. I'm thinking of upgrading my mom to it, I think she might appreciate the lighter weight.
Also: I don't know how old your dad is and how his vision is, but also look into increasing the font sizes, and show him how to use the click-zoom feature. It's built into the iPad, and can definitely help older folks.
You're right: desktops will become workstations (if they're not that already). They will continue to be very powerful devices suited for very particular work, that either requries a lot of computational power or is ergonomically sutied for a desk-and-chair.
Until quite recently, desktops were multipurpose devices: they did all that but also browsed the web, did word processing, and other lighter tasks. They'll still be able to do that, for sure, it's just that unless people need the workstation stuff, there are simply better devices than desktops.
The desktop isn't dying, it's just narrowing its mission.