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


Forgot your password?

Comment Re:Verifying equivalence of client and server code (Score 2) 354

I assume that Anonymous Coward was recommending that one apply the same suite of unit tests once to the validation code written in the server-side language and again to the validation code written in the client-side language, and then assume that they're equivalent if the tests return the same result for both implementations. But there's still an argument for having a single version of the truth.

Comment Re:Verifying equivalence of client and server code (Score 1) 354

From Limitations of unit testing

Testing will not catch every error in the program, since it cannot evaluate every execution path in any but the most trivial programs. [...] In order to guarantee correct behavior for every execution path and every possible input, and ensure the absence of errors, other techniques are required, namely the application of formal methods to proving that a software component has no unexpected behavior.

Besides, if I have written a program and want to run it in two environments, why should I have to write it twice? Why shouldn't I be able to write it and then have the computer write the other one?

Comment Verifying equivalence of client and server code (Score 2) 354

Sometimes "a much better development team" is a larger and therefore costlier development team.

Besides, sometimes I want the code on the client and the server to do the same thing, and the easiest way to do that is to run the same code. (See Don't repeat yourself and Once and only once.) Say I want to validate input on the client for speed and offline capability and then revalidate it on the server for security. With a common language, I can reuse the same validation functions on the client and server. Without a common language, what's the standard practice to formally verify the equivalence of the client-side and server-side input validation code?

Comment Python has pointers the way Java does (Score 1) 354

Python has pointers in the same way that Java has pointers: objects are passed as references. Besides, there's a difference between strong typing (automatic coercion) and static typing (variables can hold references only to a particular type and types that extend or implement it). Python has strong types (1 + "2" raises TypeError) but, like JavaScript and PHP, lacks static typing apart from a few specialized numeric containers (such as array.array).

Comment 2-factor, Suggest, Instant, Gmail, Docs, YouTube (Score 4, Informative) 354

I couldn't even log into my credit union or broker without it!

Financial web applications probably use JavaScript to store a cookie that verifies that this browser has previously been used to access this account. This makes the browser the second factor in a two-factor authentication system.

And all it does is make pages more cluttered

Not always. JavaScript lets a web page hide a particular element until the user expresses interest in viewing it by clicking it.

harder to use

With JavaScript, a user can (for instance) click to expand help for a particular field of a form without having to navigate away from the form.

longer to load

Without JavaScript, the only way to expand or collapse an element in a document, such as an element in a tree or an aside that has been hidden, is to follow a link or submit a form that results in sending the whole page back. This whole page takes long to load.

takes up bandwidth

Updating only what has changed on a page takes up less bandwidth than having to send the whole page all over again.

Google. No scripts there but immensely valuable.

If Google Search doesn't use JavaScript, how do the Suggest (drop-down completion box below text input) and Instant (replacement when the user pauses typing) features of Google Search work? Besides, Google also produces Gmail, Google Docs, and YouTube, which use plenty of JavaScript.

Comment Re:Use a USB controller (Score 2) 74

Adding a $9 USB gamepad and a USB OTG cable can immensely improve the tablet gaming experience.

I've used a USB OTG cable to connect a controller to my Nexus 7. But this runs into a few problems in practice. Solve all these problems and I'll agree with you.

First, it might work for tablets if you already have a stand, but can you recommend something to hold a phone in place while the user is holding the controller? The Shield has a hinge to hold the screen in place, much like the Game Boy Advance SP. It's like the difference between a laptop and a tablet with a separate keyboard, and an integrated keyboard dock is one of the big selling points of the Transformer and the Surface.

Second, a lot of cheap USB gamepads that I've tried have a D-pad that makes it way too easy to press diagonally, causing the character to crouch into a roll (Down) or jump (Up) when I'm trying to make him go straight. I've found that Nintendo and PlayStation 1 controllers have decent directional pads, but then I'd need to buy and carry two adapters: one to USB and one to OTG.

Last but not least, the game needs to support a controller, and I haven't been able to find an option in Google Play Store to narrow to controller-friendly titles. The fact that not everybody already owns an appropriate controller, adapter, and clamp tends to discourage some developers from porting controller-friendly titles to Android in the first place because who wants to pay tens of dollars for a gamepad, cable, clamp, and shipping to play a $3 title?

Comment If anybody else can make a competing CDM (Score 1) 337

MS has a desktop monopoly, now they refuse to sell their CDM to other people operating in that space. Is that kosher or not?

It's kosher as long as anybody else can make a competing CDM that supports Windows and other platforms and sell it to VOD providers. Let me draw an analogy: Microsoft has a desktop monopoly and refuses to sell Halo 2 for other desktop operating systems. Is that kosher? Yes, because anybody else can sell a competing first-person shooter.

The real issue is that GNU/Linux lacks the infrastructure to support a CDM acceptable to the movie studios. To the developers of Linux and X.Org X11, "DRM" means direct rendering manager, not digital restrictions management. I haven't really seen any way to turn off cleartext digital outputs and keep debuggers and hypervisors from teeing the decrypted video to a file.

Comment Re:what about chrome os? (Score 1) 337

If you want to get rid of DRM, you need to show them that it's not necessary. The best way you can do that is by not pirating their stuff

The trouble is that even if I create my own stuff instead of pirating their stuff, some big publishers are likely to claim that my stuff is too similar. I know of companies that already do that.

Slashdot Top Deals

The "cutting edge" is getting rather dull. -- Andy Purshottam