Christopher
Stoll

k-D Tree

For my current algorithms class I am working on a program that demonstrates the power of k-D trees, but before I implement any new data structure or algorithm I have to completely understand how it works. So, I created an animation that shows how a k-D tree is constructed. Later I will create an animation explaining the nearest neighbor search of a k-D tree.

continue reading


Apple Mobile Devices are 'Unstoppable' in the Enterprise

That was fast, I called for a change and it happened overnight. Or, maybe, I just observed what was already happening. According to ApplerInsider 91% of Fortune 500 companies are testing the deployment of iOS (iPhone and iPad) devices, and 40% of organizations support employee owned devices.

The AppleInsider article is here: Employee-owned iPhone, iPad an 'unstoppable train' in the enterprise

continue reading


Are Tablets and Smartphones Too Insecure for the Enterprise?

In major businesses today users are asking their IT departments to allow them to use tablets and smartphones, modern computing devices, to make their jobs easier. The advantages of mobile computing seem clear, it is easier to take your work with you on a tablet or smartphone, yet IT departments are resisting. The top concern that IT departments seem to have is "security."

It often seems that "security" is the talisman of IT people. Whenever a new technology is introduce which the IT staff is unsure of they instinctively pull out the sacred word "security" to subdue users and management. The old shamans may not have had to worry about skeptical, young college graduates, but modern IT managers should. IT departments may not be able to placate their user populations with the mystical "security" totem once the number of young people in their organizations reaches a critical mass. So, it may be time to drop the security fetish and put a critical eye toward the problem. Security is a very real concern, but using it as an excuse for inaction is not tenable in the long-run.

continue reading


mapMapper: A Web App for Mashing Maps Together

I just finished the first beta version of a small web application that allows people to easily place a static map on top of Google Maps and then share the results. This concept might not sound intriguing to everyone, but to a historian, researcher, or teacher this could be an invaluable tool.

A historical researcher might need to plot the locations of related historic events or determine the modern location of historic places. This can actually be quite difficult to do; the location of roads and other structures have changed, sometimes significantly, over time.

continue reading


The Ballpoint Pen

Although their use is slowly fading due to society’s increased reliance upon computers, the ballpoint pen is still used on a daily basis by most people in the United States. What is now an inescapable piece of disposable technology began its life as nothing more than an expensive and seemingly short-lived fad. Popular media accounts from the mid-1940s track the ballpoint pen’s rapid initial increase in popularity followed by its similarly precipitous drop. After this initial popularity spike the media chronicled the ballpoint pen’s gradual rise from novelty to ubiquity.

On a trip to Argentina in the summer of 1945 a businessman from Chicago named Milton Reynolds discovered a fascinating pen that he was certain could be a commercial success in the United States. Reynolds brought some of the pens back to the United States with him, and within a few months they were being mass produced by his newly formed company.

continue reading


JavaScript Sprite Class for the HTML5 Canvas - V1

When I began experimenting with the HTML5 canvas I decided that I might learn more if I actually wrote a program that took advantage of the functionality. This led me to create a clone of the classic Space Invaders game. Since I was primarily concerned with learning the canvas element, the Space Invaders clone was written as a monolithic application. Upon completing Space Invaders I wanted to create another game and further refine my abilities. However, in order to take advantage of the code that I wrote for the Space Invaders clone I would have first had to perform significant refactoring, so I decided to just start from scratch and write generalized classes that I could easily reuse.

continue reading


JavaScript and HTML5 Kaboom Game Clone

After finishing my HTML5 version of Space Invaders, and then modifying it for the iPhone, I decided to attempt generalizing the techniques that I developed. I first crafted a generalized JavaScript class for creating and managing sprites. Then, I created a class to manage the game board. The game board class wraps around the sprite class and handles canvas creation, collision detection, score keeping, and other general tasks. I will write a more detailed description of these items latter, the real reason you are here is to see the results of the final step. With the sprite and game board management methods complete I applied them toward the creation of an actual game.

continue reading


ABAP Class to Import CSV Files

I had to write a few SAP ABAP programs which required the uploading of a CSV file in order to import data into SAP. Instead of writing and then copying a FORM into multiple programs (or calling the FORM from another program, or creating a function module, etc.) I developed an ABAP class that would handle the file upload and conversion of the CSV into an internal table. Below is the code for my class, the first part is automatically generated from the data entered in the class edit screen. You can tell the automatically generated code because it is formatted the opposite of code which has been formatted with the "pretty printer," the reserved words are in lower case and the variables are in upper case.

continue reading