Become a fan of Slashdot on Facebook


Forgot your password?
DEAL: For $25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

Comment Re:Um, duh? (Score 1) 314

As a father planning for his children's education, many years hence. I go to these schools websites and look at their tuition. It is beyond all reason for all but the very wealthiest. My house doesn't cost that much. And I have two children. So yes, unless their academics are far beyond the pale and their SAT scores are maxed out, I'd discourage them from applying.

Never judge the cost of a college by the posted tuition fees. Schools give lots of financial aid. The only people that actually pay the posted rates are the people who can look at those numbers and not even flinch at the thought of them.

The high posted rates serve one purpose - to shift some expenses toward the really rich people that attend. Most people will get some form of financial aid, usually knocking off a large portion of the expense.

The high base rate + lots of aid available approach lets them shift more of the cost to the students with plenty of money and cut more breaks for those with less money.

Comment Re:I agree (Score 1) 435

Rogue One is a *horrible* example of 3D movies. Probably the worst I've ever seen in a theater.

For 3D to really shine, you generally want your depth of field to be a little bigger than you do normally. Anything that's out of focus is going to appear as a blurry 2D object. A tiny bit of blur is ok, but any more than that and an object will appear completely flat, defeating the 3D effect.

For large parts of Rogue One (especially the darker scenes earlier in the movie) there's a very narrow depth of field. Often you'll see scenes with two characters talking and the only thing in focus is the person speaking at the moment. If you shoot a movie like that, it's going to look horrible in 3D. If you go as blurry as the more extreme shots in Rogue One were, it can cause eye strain.

Comment Re:Great, now I just need 6 cablecards (Score 2) 178

When I dealt with mine for my dual tuner Tivo HD a few years ago, they brought a multi-stream capable card with no issues. I got the impression that's standard now.

On the bright side, shortly after that the FCC ruled that cable companies have to let you install the cable card yourself if you want to, and I believe they're not allowed to charge a fee for that either.

Comment Re:I don't like boost (Score 1) 333

k) Add a proper exponent operator

Won't and Can't do this efficiently. Not all CPUs have an intrinsic way to do exponention. This is specifically why it's a library function so it is obvious that it is potentially a non-trivial operation. Once again, not everyone uses an Intel CPU.

q) Add a proper rotate-left and rotate-right bit shifts

See the answer to exponent operations. Simply put, not all CPUs have this. I would however welcome a standard library function for this like pow for exponents. Which the compiler could inline to a single instruction if the CPU supports it.

I agree with most of your points, but I can't really agree with your logic on these. Hardware floating point support wasn't common until the 486 days. A lot of lower end CPUs used to omit support for division. That didn't stop C/C++ from including support for those features.

I think the reason for omission is simply that the operators are nothing more than syntactic sugar. Anyone that needs those operations can write them quickly without putting much thought into it. They were probably left out originally to keep things simple in the early days of C. Now the standard committee seems very hesitant to make changes to the syntax of language, so they probably just look at these things as nice to have but not worth changing syntax over.

Comment Re:will they kill the patch/reboot/patch/reboot cy (Score 1) 199

If a shared library is already loaded why would the system not reuse the reference to that library it already has loaded rather than attempting to ask the current file system view for to establish a separate reference?

Because that's how it's always worked in UNIX ? Some people think it's a good thing, and that's why this update in place stuff works.

If two programs running in separate memory spaces experience these kinds of side effects while communicating with each other this is a protocol design issue. Remember it is entirely possible to have local versions of shared system/runtime libraries that differ between application because of locally installed DLLs or DLLs within search path.

Ideally, sure. But I specifically mentioned bug fix cases. Stuff happens, things go wrong. You do have to deal with it.

The issue gets worse if on-disk data is involved. You've now got data files potentially being updated by different versions of a library, potentially leading to data corruption or loss.

Who writes an on disk format that changes between versions without properly versioning the file? Garbage In = Garbage Out.

Changing code that's in use = garbage in. I'm not talking things like a document file that's written once and closed, I'm talking files continually accessed by multiple processes.

For a specific example of this happening, back in the days when libc had major changes frequently (think libc5 -> glibc/libc6 days), it was pretty common to do a system update and end up with problems with utmp and wtmp caused by two versions of libc being in use. You'd get garbage output when you ran commands like "who". The problems went away when you rebooted to get rid of everything using the old libc.

Comment Re:will they kill the patch/reboot/patch/reboot cy (Score 1) 199

It is OK on Unix because that replaced library still exists in memory and can continue to be used by the programs ... running in memory!

Each new invocation of the programs that try to use that library will of course pick up the new version. It's not magic. I don't get why people can't grasp this.

But that's exactly why there is a problem!

Library version numbers generally change when the API changes. If a new version of the library is source compatible with the old one, the version generally stays the same. However, that doesn't mean the internal workings are compatible.

Let's say you've got a library that handles communication between applications. You've got Foo running with library version 1.2.3. The developers discovered a bug in the library's internal data transfer protocol. The bug is an implementation detail, not an application visible one, so they simply fix it and release version 1.2.4. It's 100% API compatible - taking advantage of the fix just requires updating the library. You update the library in place, with Foo still running using version 1.2.3. You start up Bar, which now loads library version 1.2.4. When the two apps try to interact, you're now going to get bugs or even crashes when they interact. They believe they're using the same library, but they're not. You've now run into a class of bugs that only exists because you updated a library that was already in use.

The issue gets worse if on-disk data is involved. You've now got data files potentially being updated by different versions of a library, potentially leading to data corruption or loss.

Comment Re:Why? (Score 1) 113

The index buffer is not updated every frame, just once.

That's not always true. Sometimes it's more efficient to just stick the vertex data directly into the vertex buffer as your frame is generated, then do your draw order sorting at the end by rewriting the index buffer.

Comment Re:Why? (Score 2) 113

Triangle strips require everything in one draw call to be connected. If you want to draw N quads, you have to make N draw calls, passing 4 vertices each time. There's a significant amount of overhead involved in a draw calls, so this is slow. With quad support, to draw N quads you can just make a big array of 4N vertices and process it all in one draw call.

Comment Re:Why? (Score 3, Informative) 113

I went from OpenGL 1.x over to OpenGL ES, so I don't know most of what modern OpenGL can do. But one glaring weakness is that OpenGL ES doesn't support drawing quads, only triangles. Yeah, the GPU processes a quad as two triangles internally, but if it supports quads, there's less vertex data to generate and pass to the GPU. You can somewhat make up for it by using glDrawArrays, which uses array indexing into the vertex list, but in a lot of cases (especially for 2D scenes), it's still less efficient than if you had quads.

Comment Re:And this is why (Score 2) 946

Without the GPL, they would have just used the existing implementation.

With the GPL, they're going to have to recreate the functionality themselves. Their implementation will probably be closed source. They might consider contributing it to the kernel with more permissive licensing terms, but considering how Alan Cox reacted to their request, I doubt it would be received well. Now we'll have duplicate, incompatible functionality being maintained by the kernel devs and NVIDIA. Either that, or NVIDIA will simply do without the feature and release inferior drivers.

Comment Re:Here's a thought (Score 2) 211

The US picked NTSC when Pal was clearly the superior standard.

PAL is higher resolution. NTSC has a higher framerate. They each have some other minor differences. Which one is better depends on your personal preferences.

VHS won out even though Beta was better.

Beta had better picture quality, but suffered from short recording times. The longer recording times mattered more to people. VHS also had better licensing terms, which helped the people making the hardware and pre-recorded videos. VHS was better for most people.

Some felt HD was better than Blu-ray,

Blu-Ray was designed to be the best format possible at the time. This meant new manufacturing factories were required to make them. HD-DVD was designed to be a "good enough" format. It's big selling point was that the discs could be made at existing DVD factories with only relatively minor changes to the equipment. The software end of the specifications each have their pros and cons, but were similar enough that few people had strong feelings about it. Ultimately Blu-Ray won because Sony was committed to building out the manufacturing plants. Once they built sufficient plants, there was little reason to use HD-DVD.

At the time it came out Firewire then firewire 800 were clearly superior standards.

Firewire was great if you were using it for high end equipment that needed high speed data transfers. It was great for things like digital video cameras and external hard drives. It fairly expensive though, and much less flexible than USB. USB won out because it offered enough speed for most devices, was extremely cheap to include in a device, and allowed easy chaining of a lot of devices. For the average computer user, USB was a lot better. While Firewire was still faster than USB 2.0, it wasn't a significant enough difference to matter for many people.

Comment Re:Poor Analogy (Score 4, Informative) 276

NES games are still playable. The problem is the NES itself - the connector the cartridge slides into gets bent out of shape. It's easy to open the system up and swap the connector. The new part only costs a few dollars.

Blowing on the cartridges never actually did anything to make them work. What did help was simply taking the cartridge out and putting it back in. It would sit differently, and eventually it would sit well enough to make a solid connection with the bent connector.

Slashdot Top Deals

The price one pays for pursuing any profession, or calling, is an intimate knowledge of its ugly side. -- James Baldwin