KenPoirier.com Science ^ Art ^ Gaming ^  

Introduction

What is science? Science can be broken down into three categories: identification, theory, and engineering. The beginnings of science can be traced back to the ancient philosophers and the model of our universe has changed many times since those days and is sure to be changed again in the future.

First, a Quick Story

Two men were sitting in a living room. One guy asks the other what his phone number was. The man hands him his personal phone book and points to where he had marked his number down.

The first guy asks, "You don't know your own number?"

The second guy says, "No."

The first guy says, "But I thought you were a genius."

"I am," said the second man, "True genius is not having the answers but knowing where to look." 


The first guy was a reporter from the New York Times. 
The second guy was Albert Einstein.

Scientific Publishings

The first in a series of short eBooks. The Rogue Scientist's Guide to Defining Science Fiction with Multi-Dimensional Classification of Qualitative Data is a look at defining art with statistical meta-data driven analysis.

The use of subgenres has been good for describing simple plots, but as science fiction evolves and stories become more complex, this system of classification fails to give both the audience and artists proper identification of a work’s intentions. Instead of using the more traditional subgenre categorical system of classification, this book will examine the benefit of looking at classification of science fiction in terms of fundamentals, which divides science fiction from non-science fiction, and dimension, which define the nature of the work.

Download now from Amazon


In 2014 I had an opportunity through the computer science department to interview Ken Shan, a research professor at IU. Ken Shan is a specialist in Natural Language Processing and has recieved major grants for his research from Darpa. The video was choosen for meta-guide.com's 100 Best Natural Language Processing Tutorial Videos.

Ken Shan on Natural Language Processing (NLP) from Ken King on Vimeo.

 

Software and Programing Skills

Skill Level KEY

familiar = ~200 to 500+ hours and/or Training
proficient = 2000+ hours and Training
advanced = 5000+ hours and real-world application
expert = 10000+ hours and mentorship

Microsoft Software 2013

  • Word - expert
  • Power Point - advanced
  • Excel - proficient
  • OutLook - proficient
  • Visual Studio - proficient
  • Access - familiar
  • Server - familiar

Microsoft Operating Systems

  • DOS 3.3 through 6.0 - expert
  • Windows XP, NT, and 7 - advanced
  • Windows thru 1.1 thru 98 - proficient
  • Windows 8 and 8.1 - proficient

Other Operating Systems

  • Red Hat Linux - proficient
  • Ubuntu Linux - proficient
  • Mac OS X and later - familiar
  • Android - familiar

Adobe 6.0

  • Dreamweaver - advanced
  • Premeire Pro - advanced
  • Photoshop - advanced
  • Media Encoder - advanced
  • After Effects - proficient
  • Audition - familiar
  • InDesign - familiar
  • Bridge - familiar

Other Software

  • Gamemaker Studio - advanced
  • jEdit - advanced
  • Gimp - advanced
  • SSH - proficient
  • Notepad++ - proficient
  • RPG Maker XP through VXace - proficient
  • Handbreak - proficient
  • Blink Video - proficient
  • 3D Studio R4 - proficient
  • Git - familiar
  • NetBeans - familiar

Programing Languages and Libraries

  • HTML/XHTML - expert
    • XML - advanced
    • CSS - proficient
    • SQL/MySQL - proficient
    • ActionScript - familiar
  • C#/XNA - advanced
  • Game Maker Language - advanced
  • C/TurboC/C++ - proficient
  • Java - proficient
  • JavaScript - proficient
    • JQuery - familiar
    • AJAX - familiar
    • Angular - familiar
    • Canvas - familiar
  • Sceme - proficient
  • Python - proficient
  • Quick Basic - proficient
  • LOGO - proficient
  • Ruby - familiar
  • Lua - familiar
  • RegEx - familiar
  • DirectX - familiar
  • Dark Basic - familiar
  • ProBasic - familiar
     

Computer Science Reading, a Base of Knowledge

If you don't understand math, you'll never understand computer science. You can learn all the computer languages you'd like, but these are mere tools. Much like carpentry, the best hammer in the world won't stop your house from falling down if it is poorly designed. There are a number of great books out there on the subject, many of which are language specific, this however is a list of some of my favorite and must read books that cross the boundaries of language and break programming down into pure mathematics:

The Joy of X by Steven Strogatz

Start here! The Joy of X is a wonderful book that can easily take you from kindergarten to college level mathematics in one afternoon. No Joke! Even if you consider yourself proficient in math, it makes for a great reference book. I keep this one on my desk at all times.

The Little Book of Mathematical Principles, Theories & Things by Robert Solomon

If it's not in the Joy of X, then it's in this book! While less of a journey of mathematical evolution than The Joy of X, The Little Book of Mathematical Principles, Theories & Things is full of quick references and historical information on math's more complicated theories.

Essentials Of Discrete Mathematics by David J Hunter

Discrete mathematics is the very essence of computer programing, logic, relational, and algorithmic thinking. I'll be honest. I don't really like the way this book is written, but I have yet to find a better written or more comprehensive one. Perhaps I'll write my own someday, but until then, this is what I got.

Artifical Intelligence for Games by Ian Milington and John Funge

If you didn't find what you were looking for in the above books, then chances are it is in here. Don't let the title of Artificial Intelligence for Games fool you. It's not just for games. This book explains pretty much everything you need to know about artificial intelligence, period. Not only that, but the authors are exceptionally brilliant in their explanations.

Search Engines: Information Retrieval in Practice by Croft et al.

Want to build a search engine or scrape some data from the web? Search Engines: Information Retrieval in Practice is the book you'll want to read.

Essentials of System Analysis and Design by J. Valacich et al.

The previous books I listed are the building blocks. This is the book that puts it all together. While perhaps a bit dated in their concepts of efficiency, this book will explain basic software systems engineering and the System Design Life Cycle, as well as different methodologies of team work and project development.

Verification and Control of Hybrid Systems: A Symbolic Approach by Paulo Tabuada

Did you finish reading those other books already? Congratulations! Now comes the hard part, proving that you actually know what you’re doing. A teacher once told me the difference between a hacker and a programmer is that the hacker will keep writing code and recompiling it until he or she gets it right, and the programmer will write the program down on a piece of paper, check the math and code it once. After reading this book, you'll be a programmer.

Wait, what? You're still not satisfied? Thirsty for more knowledge? Looking for a book on language specific syntax? Want to push some bits on a fundamental level? Want to do some conversions between different base class number systems? Maybe do some data compression? Want to write your own operating system or programming language? Check out my entire CS virtual library at Goodreads.


Videos on Artificial Intelligence


Learn Computer Programming

Code References

AI Resources

     


Other Fun Stuff

The universe is not as concrete as we'd like to think it is. As we discover new things every day, our model of our universe is ever changing. Here are some thought provoking videos that can truely open up your mind to new possiblities.