Showing posts from June, 2014

What is intelligence and what is not?

The following is my take on the book "On Intelligence" by Jeff Hawkins. The biggest mistake is the belief that intelligence is defined by intelligent behavior What is intelligence and what is not? Alan Turing, the British mathematician, believed that behavior and intelligence are tantamount, however, ELIZA has proven it to be a fallacy. Behavior is actually a manifestation of intelligence. John Searle, an American philosopher, took the opposite approach with his Chinese Room experiment. Searle did not define what intelligence is; he stated that computers do not have it. Are we intelligent enough to create truly intelligent machines? If a machine like IBM’s Deep Blue comes to mind, think again. Many scientists were, are and will continue to embark on this endeavor. Hawkins emphasizes that a truly intelligent machine could be built by examining the schematics of the human brain. Will this approach confine us? Should we limit ourselves to the five human senses? Or, should we exp

Looking for a good C# 4.0 book?

If you want to learn or just need some brushing up of your C# 4.0 knowledge, I would like to encourage you to pick up this book:  Professional C# 4.0 and .NET 4  The following link will take you to the review I wrote for this book:

Should you script your way to a solution?

I was asked to create a quick, Microsoft-based solution for data migration while upgrading clients to the latest version. I needed to come to a decision on whether to use a scripting language (like PowerShell) or to use fully fledged compiled language (like C#). The following are some of the advantages and disadvantages for scripting your way to a solution: In general, a script will run slower as it needs to be compiled on the fly to machine language for it to run (scripts, generally speaking, fall into the interpreted languages bucket). Taking this into consideration, a script is not your best option if performance is a requirement.  On the other hand, it is easier to customize a script as a lengthy build process, often done by a Configuration Management team, is not needed. This increases the agility of iterative development so time and money could be saved. You can also save on engineering costs as you can have non-developers (e.g. service personnel) maintaining the script without