Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×

Comment Re:There might be hope for a decent adaptation (Score 1) 331

In the first Heinlein book I read, The Number of the Beast, the already-insufferable-yet-amazingly-forgettable characters eventually ended up in the land of Oz in a flying car... What. The. Fuck. At that point I put the book down and decided my time was better spent with other authors. Or sorting my lint collection. Anything else.

Starship Troopers was better, but nothing really special. I also read it after seeing the movie, so I had pretty low expectations going into it - but people kept telling me how much better the book was.

I never bothered with anything of Heinlein's after those two utter disappointments. Maybe those weren't representative of his best works, but The Number of the Beast was so atrocious and the Starship Troopers movie so vapid, it probably forever tainted my opinion of his other works.

Comment Re:Breakthrough? (Score 4, Interesting) 445

Yeah, Windows has some penetration on low-end devices, but you know that's not where they really want to be.

Interestingly enough, Microsoft is now in the same position on the phone as Linux is on the desktop. They have an extremely competent offering, but they can't seem to really break though to make significant gains in the market. As we've seen time and time again with Linux, it's not enough to offer something "almost as good" to get someone to switch. You can't even compete with "just as good". You need to provide something that's significantly better than the competition in some fashion - some significant advantage that will compel people to move from Android or iOS to Windows phones.

In the article, Microsoft stated that a Microsoft phone would provide a "more consistent experience across smartphones, tablets, and PCs". Interestingly, that was exactly why I hated Windows 8 so much, because it was obviously a mobile UI bolted rather clumsily on top of my desktop. Windows 10 is unfortunately using the same "modern fugly" visual design, but is at least fixing the usability and integration problems. So, in theory, a cross-platform app store could end up being a win for them. If you can buy an app and run it on all three of those platforms, I could see that as being attractive for consumers.

Another possibility is if they provide businesses some great tools to help manage mobile corporate devices. Apple has been notoriously bad at this - not sure how easy it is with Android. But for consumers? I don't know. At the moment, I just don't really see how they're going to crack into this extremely competitive market.

Comment Re:Also can be some of one and some of the other (Score 1) 671

Just saying that is an issue that would have to be overcome. It is a case where the trial could be fair, and the jury could believe he acted in good faith and the best interests of the public and still find him guilty, and have that upheld. Just further emphasizing how tricky the situation is. It isn't a case of "If they give him a fair trial he'll walk." No, in fact in a fair trial he could be convicted if the jury decided not to nullify.

Comment Re:Bad idea (Score 1) 671

Do you see Cheney up on charges? Or Bush? Or Obama? Or the head of the CIA?

Of course not, because those clowns are operating under a different set of laws than you and I do.

Not that I disagree with your general point, but... the US president and members of Congress actually do constitutionally operate under a different set of rules than everyone else.

Comment Re:Easier to Analyze or Change == More Maintainabl (Score 4, Insightful) 247

Nope, it's when I take the awful, unmaintainable spaghetti code someone else produced when they were in a deadline crunch and convert it into something maintainable.

Sigh... I wish I could say that with a straight face.

Interestingly, in my experience, poorly structured code seems to come about often less often because of "rushed code" but instead a lack of foresight in the original structure of a system to deal with continuously evolving features (which happens in most projects), along with a lack of willingness to refactor those systems as soon as it's apparent it's starting to break down.

This is the "golden time" to refactor code, because it's just now become apparent where the structural flaws are in the architecture, but it's still early enough to refactor without causing a significant amount of pain. It's often hard to justify, because you've only got a couple of ugly special cases that complicate things here and there. However, if you procrastinate too long, you're going to start piling on more and more "ugly special cases", and the code is going to get harder and harder to read and maintain.

Comment Re:c++? (Score 1) 407

It has dick-all to do with "correctness" or whatever. It's simply because even if a subclass has its own implementation of a parent's method, it'll still call the parent method - this goes against one of the core principles of OO: polymorphism. This means that even *if* you wanted to override a method from a parent class in your subclass, unless the parent has it marked as virtual, you're SOL.

If you read about Stroustrup's design intentions, he absolutely believed that strong type safety was an important part of making programs safer and less bug-prone. Obviously, the creators of Objective-C (and many other languages) chose to follow a different design philosophy. It's probably not helpful to get into a debate about which one is "correct", as that's obviously going to be pretty subjective.

As far as the example you give, this is because C++ always adheres to the "zero-cost principle", meaning that the language designers don't believe C++ developers should pay for features they're not using. Virtual functions are more expensive to call than non-virtual, and you can't always determine at compile time whether one will be called or not, so it's left to the programmer to tag the function. It has nothing to do with "going against the core principles of OO". It just means C++ will happily let you shoot your own foot by ignoring the language rules it requires the programmer to adhere to.

This is why people consider it one of the more difficult languages to master. It's a powerful tool, but has many sharp edges. For programmers like me who value C++ primarily for it's runtime efficiency, this is absolutely the correct design decision. There are plenty of better languages to use if your primary goal is programmer efficiency.

BTW, you're a bit out of date regarding C++ and allocation. Modern C++ now has several built-in smart pointers (including ref-counted versions) which makes modern C++ feel a lot closer to C# with it's garbage collection than to C-style manual memory management.

Comment Re:Also can be some of one and some of the other (Score 1) 671

Well in the case of civilians, you are in a special situation when you have access to classified data. You agree not to release it on penalty of criminal charges and you do so explicitly to be granted access. If you aren't ok with the restrictions, then you don't agree, and don't get clearance. Normal people like us aren't under any such restrictions, which is why the press doesn't get in trouble publishing it. They never agreed to shit.

As such it could be a situation where even if they agree it was just, it was still illegal.

Comment Re:Then, How Best To Learn? (Score 1) 407

I think this question has been answered pretty well on Stack Overflow. C++ is too deep and complex to learn from a few web tutorials of unknown quality. Get a good tutorial book and just follow along - that's how I learned it. Then get a good reference book for more in-depth knowledge as you move past the basics.

Anything that at least covers C++ 11 is fine, as C++ 14 was more about some minor tweaks that you can learn on your own.

Be careful about learning bad habits from C++ code examples you find on the web, or in older projects. Essentially, if you see the code using new, delete, and raw pointers, it's likely outdated. You may still need these on occasion, but their use is vanishingly rare in modern C++.

Comment Also can be some of one and some of the other (Score 1) 671

He's leaked a lot of things. So even if the jury agreed that some of it was justified, a situation where the public's need to know outweighed his promise to keep it secret, they could rule that on other things that wasn't the case. It isn't the sort of thing that would have to be taken as part and parcel.

As you said though, even in cases that people feel are justified, he still might be held guilty. The agreement regarding classified information you undertake doesn't have exemptions, it doesn't say "You agree to keep this secret unless you think the public needs to know," it is pretty cut and dried. So even if the jury believes he did the right thing, they very well could find him guilty because he still broke the law.

Comment Re:c++ (Score 1) 407

Or you should in theory at least.
In the 8-bit arena (Embedded or old) C++ support is pretty much nonexistent or incomplete.

Heck, once you leave the architectures supported by GCC the portability of C++ becomes questionable.

Was anyone confused that I might be talking about an Apple II or Commodore 64 when I said "just about every platform"? And regarding embedded, it seems relatively easy to find C++ compilers for embedded hardware.

Comment Re:c++ (Score 1) 407

Well, it definitely wasn't perfect. I cross-compiled code with Microsoft, Borland, gcc, Watcom, and others years ago, but I don't recall it ever being as bad as you seem to remember. If you used a reasonably conservative set of language features, it was definitely possible to keep your code quite portable.

Nowadays, as you mentioned, it's an entirely different situation, as full standards compliance seems to be getting a lot more attention.

Comment Re:serious question (Score 1) 167

The fact that few people seem to know this could be part of Yahoo's problem. They just don't seem to have a strong corporate identify. I'll bet that just about anyone here could tell you what products and services Microsoft, Google, Apple, Amazon, HP, IBM, Oracle, Cisco, and other companies are best known for. For Yahoo, I probably would have answered "mediocre e-mail, crappy search, and some decent services like news and Flickr", but beyond that, I really had no idea.

Comment Re:c++ (Score 1) 407

I agree. C++ has really seen something of a renaissance in the last few years with C++ 11 and 14. CPU core speed has flattened, and people are realizing that efficiency isn't really something that can be ignored in many cases. Moreover, C++ is and always has been a very portable language, as you can compile it on just about every platform imaginable.

Nowadays, you can write C++ and be assured that you'll rarely have to even think about explicit memory management or leaks. Moreover, what really surprised me was how I actually now prefer the simpler, more versatile, and more predictable referece-counted paradigm over managed memory and garbage collection. The lack of a destructor mechanism means that releasing resources in a predictable manner tends to be a bit less elegant because it's handled in a different way. In C++, memory is just like any other resource.

A lot of people talk about the complexity of C++. There are a couple of things to remember. C++ IS a pretty big and complex language of course, but you don't necessarily have to actually deal with much of that complexity in many circumstances. First, a lot of complexity is related to it's own backwards compatibility both with C and it's own early features. Unless you're maintaining or interfacing with old code, many of those features are largely irrelevant when writing modern C++. If that's not the case, you either have some exceptional circumstances, a very old codebase, or you're not really using the language correctly. Second, C++ can be viewed as two different languages: one suited for library writers, and one for library users (or application programmers). Writing C++ for use in languages can actually be rather difficult - it should be viewed as expert-level language skills. However, C++ actually makes it extremely easy to use a library. And in fact, a well designed library should actually be very difficult to use incorrectly, especially when compared to C.

The language definitely has it's strengths and weaknesses, and I certainly wouldn't recommend it for everything. I'd say C++ starts to really shine when you talk about extremes. If you need your program on a lot of different platforms, need it to run extremely fast, or it has to run with extremely limited constraints, or it's an exceptionally large and complex program, then C++ may be a good fit.

Comment Because that's what 3D visors are these days (Score 1) 96

For whatever reason, the games industry has decided that these things are amazin' and everyone has to do it. Of course nobody is doing it, I mean Occulus has a prototype out that has some pretty major issues and no release date for final hardware but that's it. Everyone else doesn't even have any hardware at all.

So of course what companies lack in deliverables they make up in hype. Talk about how damn cool their shit will be, how the world will be changed, etc, etc. Particularly since it doesn't seem any of them have a solution to any of the issues. Most of the things aren't solved by magic, but by better technology which is being developed by other companies. Things like latency/refresh are largely going to be a combination of higher speed displays and faster GPUs to drive them. Well, those will get developed I'm sure, but by Samsung or LG, not by Occulus or Valve.

Valve has also been having some problems in this area as of late. They seem to wish to become more than just "the guys who run Steam" which makes sense, because Steam is super profitable but also unstable, people could migrate to a different store en masse for various reasons. However their "no bosses" organization means that a lot of playing happens and not as much delivering. So you see hype and noise, but not necessarily final products.

The Steam box is a good example. Heard lots about that for a long time, some hype videos about their controller, and yet nothing is on the market, and there is no date when anything might happen.

Slashdot Top Deals

UNIX is hot. It's more than hot. It's steaming. It's quicksilver lightning with a laserbeam kicker. -- Michael Jay Tucker

Working...