AMD Catalyst Is the Broken Wheel For Linux Gaming
Right: OpenGL on AMD/Linux is catching up with OpenGL on AMD/Windows.
But both suck relative to NVIDIA's implementation of OpenGL. AMD and NVIDIA are competitive on D3D, but that's no comfort to Linux users, where they simply cannot use their GPUs to their fullest potential.
Systemd's Lennart Poettering: 'We Do Listen To Users'
There is a confusion of two aspects of "monolithic" here, and unfortunately Poettering did not clarify it well:
1) "Monolithic" in terms of a single repository for all code. The systemd project is monolithic in this respect, and Poettering is absolutely correct that this is the classic Unix way. All the *BSDs are maintained this way. Linux is thus, as he correctly points out, the anomoly.
2) "Monolithic" in terms of tools that depend on each other. The systemd system is not monolithic in this respect. The only two required components are journald and udev. Everything else is entirely optional and replaceable, but "recommended" in the sense that the people working on the project really think that these components, written from scratch, are of better quality and consistency than the existing components they replace. But some hysterical people hear this recommendation as "forcing it down our throats". Distro makers will decide which components to use, whether those in the systemd project or the existing ones. Obviously, the existing ones have the benefit of maturity.
Also, he doesn't point this out in this interview, but these new components are also better at reporting errors in a way that the whole init would be more robust when certain components have partial failures (and systemd knows how to deal with them). This is especially crucial for servers with complicated, layered network stacks. People say that systemd is for desktops, but really it is just as important for servers to have a robust initialization of services.
Sweden Considers Adding "Sexism" Ratings To Video Games
OK, my fellow gamergaters, it's time to dox Sweden!
She lives just east of Norway and west of Finland. Make sure to visit that feminazi every day and teach her the consequences of trying to censor all games and force us to play Depression Quest!
Together we will fight to guarantee better ethics in game journalism.
Ubuntu Turns 10
Ubuntu changed everything we've come to expect about free, general-purpose operating systems.
People don't give Launchpad enough credit: for the first time, we have an integrated build/test/deploy process for the whole operating system. It takes the solid Debian root and adds a layer of modern quality assurance that we've never seen before. There's still a ways to go, and I'm sure people will complain about one or other package being broken, but the fact is that Ubuntu raised the bar of what we've come to expect.
Slashdotters and others also love to complain about one particular package or another. Obviously, the desktop environment (or just the shell) is the first thing that most people see. But it's also a small project in the larger scope of Ubuntu. Don't like Unity or GNOME 3 or KDE or Xfce or LXDE or Enlightenment? You have lots of options. Don't like systemd? Well, Ubuntu devoted a lot of time and effort to Upstart, but made the mature decision to abide by Debian's decision to go with systemd (for now). Don't like either? Yeah, well, life these days must be truly hell for poor little you.
And now, Ubuntu may do for mobile what it did for the desktop. In 10 years, I hope we can celebrate the existence of truly free devices, onto which we can install any package we want -- including alternative UIs for those who will undoubtedly not like Unity.
Object Oriented Linux Kernel With C++ Driver Support
Having been on the fence about this for a while, my experiences convinced me that C++ is wrong for the kernel.
The problem is not the extra features. The problem is that the programmer has little control over exactly how they are implemented: the compiler decides how to handle virtual method tables, destructors, multiple inheritence, etc. In the recent past, C compiler bugs have caused serious problems with Linux development. C++ compilation is an order of magnitude more complex, and you can bet it would be less reliable. This also means that C++ compiles much slower: doesn't sound like a big deal, but it is a cost to take into account.
The lack of a standard, clear ABI for C++ is also problematic. While it's true that Linux is monolithic, it still supports modules that interact with each other dynamically. Debugging C++ can be quite painful because of this. But it also means that it would be that much harder to contribute a module if it's not written exactly for the same compiler as the one used to build the kernel. Of course, it would have to be written in C++, too. This lack of flexibility can be quite painful in environments where you are limited to very specialized compilers (embedded). C has the most standard ABI of any language (well, C and Pascal). You can guarantee that *anything* would be able to interface with it.
So if you put the technical cons (losing control, flexibility and debugabbility) vs. the pros (cleaner syntax) then it's right to pick C, on technical grounds. As others have stated here, anything you can do in C++ you can do in plain C. It's a bit clumsier, but then you have complete control over the implementation. I do OOP in C all the time, it's perfectly OK. If anything, a bit more powerful than C++, because I tailor the OOP features to exactly my needs and tastes.
Beyond that, there is the more controversial issue of programmer culture. C++ hides away implementation details, but for kernel development you want programmers who think about every tiny issue of implementation: exactly what is going on with the call stack, what is a pointer and what isn't? The more explicit nature of C encourages a more hard-nosed stickler for technical correctness, which is more important than pretty code for kernel work.
By the way, I'm writing this as a former C++ zealot. I even created something like this in the past, a C++ wrapper for Windows NT networking services. I found out the hard way that C++ takes more than it gives. I write all my code in C these days, and don't feel like I'm missing anything.
Microsoft Announces Windows 10
Windows 8 unified tablets and desktops. You can buy a 7" Atom-based tablet right now that you can connect to a dock and get a full desktop experience.
But Windows phones are still different. With Windows 10, you will be able to the above with your phone.
That might not seem like a big deal to you, but it can radically change the computing market. For many people, owning a single computing device (a phone) will be enough. They will just get a dock for a tablet (BlackBerry has this) or for a laptop or for the living room and that's it. Enterprises, too, can invest in fewer gadgets per employee.
Today's phones are powerful enough to run most everyday computing tasks. Obviously not all, but for those people who need the power, workstations and gaming PCs will still be around.
You Got Your Windows In My Linux
It's the "Unix way" to make one tool do one thing well. The "systemctl" tool is not meant to show status.
The point in Unix is that tools are building blocks. You can create a higher-level tool (using a simple shell script) that uses these tools together to do cool things that the devs have not thought of.
Firefox 33 Integrates Cisco's OpenH264
This has nothing to do with the "tag" itself, which does not specify codecs. Yes, this is still a compromise, but many of us have been compromising for years on various aspects of freedom and openness. Choose your battles carefully and you can win the war: Mozilla has already achieved so much for the open web, and I'm confident the upward slope will continue.
MicroxWin Creates Linux Distribution That Runs Debian/Ubuntu & Android Apps
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.
Android Needs a Simulator, Not an Emulator
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.
Misogyny, Entitlement, and Nerds
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.
Ask Slashdot: Which NoSQL Database For New Project?
I agree, entirely. Even more interesting are the recent "noSQL" features added to Postgres. The fervor of the "noSQL" is too often "anti-SQL," in a ridiculously technically uninformed way.
Ask Slashdot: Which NoSQL Database For New Project?
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.
Ubuntu 14.04 Brings Back Menus In Application Windows
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.
PC Makers Plan Rebellion Against Microsoft At CES
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.
PC Makers Plan Rebellion Against Microsoft At CES
The MS Office requirement used to be a big deal for me, until I recently gave CrossOver a whirl. It supports "only" Office 2010, not 2013, but I found that it works perfectly well, no bugs yet (and I use it a lot). So, for me, CrossOver solved the last hurdle requiring Windows.
Ask Slashdot: Easy Wi-Fi-Enabled Tablet For My Dad?
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. :) It's also really interesting for me to see how she is exploring this new world in pretty much the opposite direction of what I expected: tablet first, smartphone later. Also interesting, I thought she might find the iPad Mini better, because she carries her iPad around all the time. But she told me she saw one that a friend of hers had, and thought it was ridiculously small and pointless!
For the record, I'm the ... opposite of an Apple fanboi. I have a Nexus 10 tablet myself, rooted with CynaogenMod. I use Ubuntu exclusively for my desktop and traveling netbook. For my needs, those are definitely the better choices. But for my mom, I must concede that iOS is simply easier to use. Fewer menus, fewer options, and that's all good for someone who is confused by even one option. I've learned that my mom not only has different needs, but also views these technologies from an entirely different, and I would say fresher perspective than mine.
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.
The Desktop Is Dead, Long Live the Desktop!
You're right: I think the category of "budget computers" will pretty much disappear. But is it going to be such a loss? Our phones are already more powerful than most budget computers. Once OS convergence happens (Ubuntu Phone, please), for many of us there won't be any reason to carry around a laptop.
The Desktop Is Dead, Long Live the Desktop!
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.
Creative Commons Launches Version 4.0 of Its Licenses
Right: but no plaintext versions.