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

 



Forgot your password?
typodupeerror
×

Comment Re:Maybe because programmers like to be clear (Score 1) 878

Irreducible complexity is irreducible.

Still, I'd like to stress that picking the right language for your task can greatly reduce problem complexity.

For instance, algorithms are much more compact and easier to understand using a functional programming language. E.g. compare quicksort in Haskell and C - see http://www.haskell.org/haskellwiki/Introduction.

Complex concurrent programs remains challenging even with an excellent (IMO) concurrency library like the one in Java 1.5+. But switch to Erlang, and you'd find many concurrency patterns are expressed more naturally.

Comment Re:Lies, damned lies, and statistics (Score 1) 138

Indeed! Identifying what proxies (http://en.wikipedia.org/wiki/Proxy_%28statistics%29) to use is one of the trickier aspects in the soft sciences and statistics. If you read the Economist, you'd see proxies for just about everything (e.g. http://www.economist.com/markets/bigmac/), and a lot of research is required just to show what a given proxy measures.

Comment Re:Oh yea. Teach them non mainstream stuff (Score 1) 663

programming can be taught with any language. problem solving can be taught with any language. it is better to teach these using a language they WILL use when they actually get into industry, than with stuff they may rarely come up against.

I disagree as it depends on what you're teaching. Concepts like recursion and algorithms are best taught with functional languages. E.g. quicksort is a lot shorter and easier to understand in Haskell than in C - see http://www.haskell.org/haskellwiki/Introduction.

We generally agree that you need to pick the right language for a given task - the task of teaching various computer science concepts is no different. Also, a good curriculum should impart students with the ability to pick the right language for a given task too.

If you're interested in pursuing a computer science degree at university, you might be better off without a background in a imperative/procedural language. Many students who knew C/Pascal seemed to have a tougher time grasping functional languages than those who didn't know anything at all.

Comment Re:Free =/= Fun (Score 1) 117

As you already suggested what you need to do is you need to separate the core engine and game content.

I agree that content development is hard to open source and seem best developed by an individual or a small group.

The successful open source projects you mention all have a plugin/module system. Ensure the game engine supports a good scripting language for content creation, and plugin system that can modify any aspect of the game, and I expect it will do well in the open source world. Your game in effect should just be a plugin/module to your engine.

You want a game engine that is able to foster development of plugins that can completely change the game's underlying mechanics (e.g. Oblivion), as well as plugins/modules that can tell rich and complex story lines (e.g. Neverwinter Nights).

Comment Re:Because they know more than anyone else? (Score 1) 112

Getting a bit off topic here, but you raise an interesting issue.

I bet that the frequency of certain searches can predict whether a company stock will increase or decrease, e.g. lots of searches for " problems" is a precursor to that company stock crashing.

I wonder what policies are in place regarding usage of such aggregate information within Google (or other search companies).

Comment Re:It's probably cheaper than the alternatives (Score 1) 222

Indeed, and there's actual research supporting usage of the Wii Balance board for physiotherapy. Research was conducted by the University of Melbourne, which the Australian doctor probably read about and decided to recommend to his patient.

http://www.newscientist.com/article/mg20527435.300-wii-board-helps-physios-strike-a-balance-after-strokes.html?full=true&print=true

Comment Re:Seriously? (Score 1) 393

Right!

Market Capitalization = Share Price x Number of Shares in Market

Obviously, Oracle has a lot more shares in the market than Red Hat. Over time, companies can also do a stock split, e.g. halve the share price, but double the number of shares; or a reverse split where price doubles but shares are halved - either way, market cap remains the same.

Comment Re:White Hats (Score 1) 90

I take white hat to mean Good, i.e. you're not using the exploit for personal gain.

You're Lawful Good if you're working on behalf of some legal authority. Chaotic Good if you're exposing it to shame/antagonize the companies. Neutral Good if just out of your own personal reasons.

Comment Re:3D chips (Score 1) 170

3D chips will not take us any closer to true AI.

We still don't truly understand the nature of intelligence, and we won't be able to manufacture it unless we can define it formally in some mathematical/logical notation.

I've done some work with neural networks, and we can simulate neurons with any number of connections (inputs and outputs), but having a bunch of neurons work together discerning things is not intelligence.

Comment Re:Are most programmes multi-processor? (Score 1) 219

Yes, especially for games, and I don't mean the obvious 3D computations, which in any case is most likely handled by the GPU anyway, but rather parallelism in the game workflow.

Read an article last year on Communications of the ACM (3/2009) entitled "Better Scripts, Better Games" that talked about common design patterns in programming games. I'll focus on the state-effect pattern, which breaks each simulation loop into two phases: effect and update. Effect phase is where each game object is subject to an action and determines its own effect of that action. In the update phase, all the effects are combined, and updates the game state for the next iteration of the loop. Since calculations in the effects do not influence each other, they can be parallelized. The update phase can also be parallelized since it consists only of the aggregation of effects and updates to state variables. Idea is similar to Google's MapReduce.

Slashdot Top Deals

Those who can, do; those who can't, write. Those who can't write work for the Bell Labs Record.

Working...