Forgot your password?

Comment: curious, pirsig? (Score 1) 529

by hlee (#46492843) Attached to: Religion Is Good For Your Brain

Just curious how many people have read Robert Pirsig's book(s) and subscribe to his ideas?

In a nutshell his conclusion is that the irreducible factor of life and the universe is a creation force he calls Quality. Another way to look at it is if everything is a state transition diagram, the mysterious factor is something to be found in the transitions (dynamic Quality) rather than in the states (static Quality). Akin to some aspects of Zen and Eastern philosophy. He goes on to develop these ideas to say that you can build up increasingly complex static Qualities like atomic elements, compounds, even life, from what seems like nothing... but that intangible creative dynamic Quality is there, and yet not so easy to pin down. It isn't so much a thing as it is a force.

Right or wrong I find an odd sort of comfort in this understanding.

Comment: functional programming (Score 1) 197

by hlee (#46442843) Attached to: Ask Slashdot: Online, Free Equivalent To a CompSci BS?

We were taught Miranda (very similar to Haskell) in my bachelor's program. It was the primary language for most of our exercises across many courses. It is an effective lnguage for teaching many fundamental aspects of programming like recursion, and algorithms - expressing quicksort in a functional language is not only more elegant and considerably shorter when compared with c or Java. That was over twenty years ago, but to this day these functional programming abstractions have been invaluable in shaping my designs, and thought processes involving any kind of programming whatever the actual language I'm using.

Comment: Re:The CEO is Probably Right (Score 1) 383

by hlee (#45597803) Attached to: Ask Slashdot: How Do I Convince Management To Hire More IT Staff?

There's a huge difference when IT is considered a competitive advantage as opposed to a cost. Generally speaking when IT is simply a cost, then it'll always be short staffed and barely able to keep up with what it needs to do - and will often be targeted first when costs need to be cut. While the idea of turning IT into a competitive advantage sounds good, it isn't easy to execute because they often need to expand their roles and need an objective means of measuring their contributions, but the basic idea is to get IT involved in the company's bottom line - in this case to find out what can they do to improve manufacturing processes.

Comment: It's a good thing if they're pragmatic (Score 1) 251

by hlee (#45063409) Attached to: The Human Brain Project Kicks Off

In practice, today we can solve any control logic problem with existing programming techniques as long as we can specify all the inputs, states/transitions, and outputs. There are techniques to formally verify these programs so you can trust them for mission critical systems - they do exactly what they're designed to do, nothing more, nothing less.

I don't see this approach changing anytime soon. An AI designing a complex system is for the foreseeable future, science fiction. However what's interesting about The Human Brain Project is that it doesn't make any claims about AI, which is actually a good thing. If they start emphasizing AI research I seriously doubt they'd get very far. From what we understand about neural networks and machine learning, which incidentally have very little to do with AI, often turn out to be very good at solving very hard to describe problems like image recognition.

I think if The Human Brain Project focuses on better understanding our neurons and how they work, and are able to translate it to advanced neural networks - these systems could turn out to be adept at solving certain problems. That's a good thing.

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

by hlee (#33007632) Attached to: Google Engineer Decries Complexity of Java, C++

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

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

by hlee (#32283924) Attached to: Metrics Mania and the Countless Counting Problem

Indeed! Identifying what proxies ( 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., 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

by hlee (#32195684) Attached to: Exam Board Deletes C and PHP From CompSci A-Levels

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

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

by hlee (#32115832) Attached to: MMORPG Ryzom Released Under AGPL

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

by hlee (#32074614) Attached to: Google Explains Why It Became an Energy Trader

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

by hlee (#32073910) Attached to: Should the Gov't Pay For Injured Man's Wii?

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.

Comment: Re:Seriously? (Score 1) 393

by hlee (#31877070) Attached to: Oracle Wants Proof That Open Source Is Profitable


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.

Small is beautiful.