Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
For the out-of-band Slashdot experience (mostly headlines), follow us on Twitter, or Facebook. ×

Comment: Re:Virtulize it (Score 1) 55 55

Comment: Re:i switched back from chrome to safari (Score 2) 253 253

I also use Safari, though I'm still pissed off with them for combining the URL bar and search box (which means that I keep typing one-word search terms and having it try to resolve them as domains, which then go in my history and so become the subject of autocomplete. The only way to avoid it is to get into the habit of hitting space at the end of a search, which is no saving on hitting tab at the start to jump to the search box). Chrome doesn't properly integrate with the keychain. I use Firefox on Android (self destructing cookies makes it the first browser I've used with a sane cookie management policy), but overall the UI for Safari does exactly what I want from a browser: stay out of the way.

TFS is nonsense though. Developers don't know what's going to be in the next version of Safari? Why don't they download the nightly build and see?

Comment: Re:Today's computer science corriculum is practica (Score 1) 145 145

Meh. When I was an undergrad, you really needed to understand netmasks if you wanted to set up a network for multiplayer games. Now, it's much easier (although Windows makes it stupidly hard to create an ad-hoc WiFi network. No idea how people think it's ready for the desktop), and you can do a lot without caring. I can't remember the last time I needed to know about them.

Comment: Re:Probably GPL, but depends on Apple (Score 1) 152 152

The GPL is "viral" in that if you use even a smattering of GPLed code, you are required to release ALL of your code as GPL as well.

Not true. Go back and re-read the GPL. You are required to release your code under a license that places no more restrictions on it than the GPL. You must also license the combined work under the GPL. It is, however, completely fine to take a few files of GPL'd code, combine them with some BSDL'd code files (as long as those files are not a derived work of the GPL'd code) and ship the resulting program under the GPL. If someone else takes only the BSDL'd files for use in another project then they are not bound by the GPL.

There are two ways in which the GPL is 'viral'. The first is that you cannot change the license of something that you do not own, so any derived works retain the copyright and license of the original. The second is that the GPL is a distribution license and, if you wish to retain the right to distribute it, then you must not distribute it in a way that does not pass on the freedoms listed in the license (meaning that the combined work must grant all of the permissions as the GPL'd parts).

Comment: Re: What a confusing summary! (Score 1) 126 126

The test says that the class with private members and no setters is intended to be immutable after creation, so that's not a problem. Having a single linked list for the entire grid (rather than a list of lists) is completely insane though. I'd expect a student who actually knew what he or she was doing to be more confused than one that would end up writing code with horrible algorithmic complexity. Looking at the rest of the test, it's not much better. If this is what AP tests look like in the USA, then I'll make sure not to weight it very highly when looking at applicants next academic year.

Comment: Re: Colorado sure has nice beaches (Score 1) 937 937

If they were being pushed out of land they owned, you might have a point.

The problem is when the initial conditions are concentrated ownership. If the hypothetical impoverished country has a feudal system (or similar) where all of the land is owned by a few dozen lords. Now the Americans going over there buy land from the lord in relatively small parcels, allowing him to turn his wealth into liquid form and removing the land that his serfs lived on. So what do the serfs do? They didn't own the land and they're now displaced. They weren't lucky enough to be born owning land so they get nothing.

It's not like most of the people in the original poster's example chose not to own a house. They rent because they didn't inherit enough wealth to own somewhere to live.

Comment: Re:Given how C++ is taught. (Score 1) 342 342

Not true. In C++11 you have std::make_shared, which allocates an object and the metadata block for a std::shared_ptr in a single block, giving you a lower-overhead mechanism for creating a std::shared_ptr. C++14 also introduced std::make_unique, which doesn't save anything over calling new and then casting to a std::unique_ptr, but make it possible to write code without any need to directly call new. In C++14, there is absolutely no reason to see a new or delete in the code outside of the standard library implementation. If you're writing one then you're doing it wrong.

Comment: Re:Given how C++ is taught. (Score 3, Insightful) 342 342

"Smart pointers" are great -- if you don't care about performance (in which case, why are you not using Java?). If the object is owned by one thread, it's just sloppy to put in the overhead of smart pointers to make your life easy.

If an object has a single unique owner, then std::unique_ptr has no run-time overhead and will ensure that the object is correctly deleted even in the presence of exceptions. I agree with the grandparent: any object that isn't allocated on the stack should be created with std::make_shared or std::make_unique.

Comment: Re:Knowing when not to (Score 4, Insightful) 342 342

making the code run faster qualifies if it's not running fast enough yet

And then only if backed up by realistic macrobenchmarks. There are a lot of things in C++ that have interesting performance characteristics (templates allow more inlining, so make microbenchmarks faster but can cause you to run out of i-cache and make the whole program slower, virtual functions prevent inlining unless the compiler can do devirtualisation, but are actually slightly faster to call than cross-library calls via a PLT if they're not inlined). Generally, algorithmic improvements will make a bigger difference than any language feature. The main reason for using templates should be to eliminate copy-and-paste coding, not to improve performance.

Comment: Re:Equality (Score 1, Interesting) 490 490

How did they control for biases coming from parents? Research that I've read shows that gender stereotypes start to be instilled within the first few days after a child is born. Unless they're testing with children that have never seen a toy of any kind before, then the toy experiments are not detecting biological biases, they're picking up on a mix of inherited and learned responses. There's a lot of very bad science done to try to claim that there are things that girls like and things that boys like, ignoring the fact that the things that girls like vary wildly between countries and even over time in the same country (for example, blue was a girls' colour and ping a boys' colour in most of Europe until 1-2 centuries ago, and horses have swung between the two as a stereotypical interest several times).

A commune is where people join together to share their lack of wealth. -- R. Stallman