Forgot your password?

Comment: Re:Many worlds (Score 2, Insightful) 143

by narcc (#47444771) Attached to: How Deep Does the Multiverse Go?

You've missed the point.

Try a different example. Consider that there are an infinite number of values between 0 and 1. While infinite, none of those values will be 2.

If that's not to your liking, consider something like Penrose tiling where a pattern formed from just two shapes can tile infinitely without repeating.

See, when you ask:

What is your criterion for restricting the variations?

There need not be any such criterion. See, just because a thing is possible does not mean it will necessarily be actualized even given an infinite number of universes.

Comment: Re:God please... (Score 2) 177

by narcc (#47428529) Attached to: Will Google's Dart Language Replace Javascript? (Video)

Yeah, fortunately that is being corrected in ES6. You don't really need to use require.js (it is awful!) though. I've been able to avoid it and similar solutions other ways, depending on the project.

As for the object model, it's undeniably superior. Google "classical vs prototypal inheritance" for a bunch of articles and (informed) discussions. Once you get a handle on it, you'll be amazed at how much effort it ultimately saves you. (Believe it or not, it's significantly simpler than the classical approach, and far more flexible.)

Would you recommend any books for learning javascript at a deeper level?

Not really. Crockford's book is okay, but far from perfect -- same with Flanagan's JavaScript: The Definitive Guide. They're probably the best of a bad bunch.

You really do have to toss out pretty much everything you know and start from scratch. If you try to use all those techniques you're used to from Java, you're going to pull your hair out. As an added bonus, you'll want to strangle Brendan Eich if you try to treat it like Lisp!

It's a whole different animal. My advice? Avoid new and constructor functions to shake off some of those old classical OO habits. Spend some time reading about prototype-based programming and event driven design (a good start there is decoupling with events). Your ACM DL subscription will pay for itself in cash saved in therapy.

Also, do you think Java is really hellish?

That may be a bit of an exaggeration, but I really don't care for it. Maybe I've just suffered through too much bad Java code? Still, I find it tedious.

Comment: Re:God please... (Score 1) 177

by narcc (#47426539) Attached to: Will Google's Dart Language Replace Javascript? (Video)

Too bad the people who wrote the mounds of code I have to maintain don't.

Indeed. It's very frustrating. I blame the glut of terrible books, though the tutorial websites are even worst.

Every feature of javascript is painful and can be abused easily.

I don't know about painful -- I found the language quite refreshing after years of Java and C# hell. It's very flexable, so abuse is easy; I can't deny that. A big part of the problem there, of course, is that it's so easy to make it act like a class-based language, which is a mistake all-too-frequently made by incompetent developers. The unnecessary new and constructor functions didn't help, and are likely responsible for the bulk of the confusion early-on.

Unfortunately, it's about to get a whole lot worse, as ES6 is going to add "classes". They're little more than sugar, but will further the confusion.

Comment: Re:Cry Me A River (Score 1) 586

by narcc (#47424063) Attached to: Normal Humans Effectively Excluded From Developing Software

I do know that not all JavaScript interpreters in use support the semantics of "use strict".

That's not what I was referring.

how should I go about determining whether the extent to which I have learned the language is enough to allow me not to make a fool of myself here on Slashdot?

When you stop getting abused on c.l.j? The easiest way to not say silly things is to check to make sure that what you're saying is accurate.

"I'm not a god, I was misquoted." -- Lister, Red Dwarf