Sunday, December 15, 2013

What is the greatest prime number of them all?



One of the greatest mathematical challenges and brain twisters of our time is the search for the greatest prime.

Euclid proved that there are an infinite number of prime numbers in his book, The Elements. One might think that people would be satisfied with knowing that the set of prime numbers is not finite and therefore cease their search. However, the hunt lives on today.

The Great Internet Mersenne Prime Search (GIMPS) is an organization seeking out the next larger prime number. To this end, the individuals involved use powerful computers and efficient algorithms to try and calculate it. When a new prime is discovered as a result of the stringent, tough, and interminable process, thorough testing must be done by several sources in order to make sure that it wasn't a fluke find. For instance, there could be a memory leak or some other issue on the computer involved that causes a miscalculation. If something like this happens, it could cause the outputted number to be incorrect. The people who are responsible for contributing to this effort need to be sure that they aren't making non-prime numbers famous.

The equation/proof commonly used in the calculation of Mersenne primes is called the Lucas-Lehmer Test and can be expressed as follows:

For p an odd prime, the Mersenne number 2p-1 is prime if and only if 2p-1 divides S(p-1) where S(n+1) = S(n)2-2, and S(1) = 4

The GIMPS is very similar to another numbers crunching computational process that I actually mentioned in this prior post. Folding@Home hopes to crunch its way to a cure for serious illnesses and diseases.

The Elements of Euclid
* Mersenne
* Great Internet Mersenne Prime Search

Sunday, December 8, 2013

Computer Graphics

"A picture is worth a thousand words."

This idea has been circulating for just over a century. It was said at a time when newspapers were the norm, not computers. What does it mean for us in our now technologically advanced society (relative to the early twentieth century)?

We've come to a time when graphics absolutely must be used in order to tell some kind of story. But it goes much deeper than that. Take for instance, a video game. Video games have, in recent years, used special imaging in order to capture the motion of a real person and then paint over polygons with a face. However, this was limited by the power of the machinery behind it. Now we can actually create a model of a head using modern computational powers.




Our technology has surpassed barriers that we used to think permanent. We can now sculpt human heads that look quite eerily identical to a real person's.

The most important thing to remember is we were further than this just a couple of centuries ago. In the late 80s and 90s, we would use the Bresenham line algorithm in computer programs. This algorithm is  used mostly for plotters and thusly the creation of vector graphics. However, its contribution to the world of computer generated graphics shows how fast technology is moving.

http://www.idav.ucdavis.edu/education/GraphicsNotes/Bresenhams-Algorithm.pdf

Sunday, December 1, 2013

Internet Message Access Protocol and Post Office Protocol



Internet Message Access Protocol (IMAP) and Post Office Protocol (POP) are the mainstream protocols that most e-mail services use currently. Both have fairly significant differences. Why does it matter how your client is set up? See, you can setup, say, your smartphone's e-mail application to either use POP or IMAP.

IMAP almost always stores the inbox itself (consisting of all emails received) on the central e-mail server. One benefit of this service is that all mail is backed up frequently. In the case that there is some kind of large-scale crash, your data is preserved in more than one server location. Once the outage has been fixed, then the e-mail attached to your account will return to your regular inbox as per usual operation. IMAP employs the use of ciphers, specifically for MD5 and SHA hashes for connections between client and server. If a match fails authentication, then a user must intervene to provide some form of confirmation or risk the connection itself being severed and labeled as suspect. A possible issue affecting this security process is that of a rough connection. Perhaps some packets are lost in transit, thereby weakening the security on one end, which would make authentication that much more complicated.

POP works fairly differently than IMAP. E-mail is stored initially on a server and later saved relatively permanently on the computer being used. However, as a result, the messages will almost always no longer be stored on the server indefinitely unless configured in a special way. So there will be no way to resurrect lost data unless the user has been keeping track. POP uses specific commands with shared secrets for security. Secrets can cause accessing private data to become more complex.

Security-wise

http://tools.ietf.org/html/rfc3501
http://tools.ietf.org/html/rfc5321
http://tools.ietf.org/html/rfc1939

Sunday, November 24, 2013

Artificial Intelligence and Its Use in Making Money

Tokyo Stock Exchange via Dick Johnson


Stock trading. Many people come together at different stock exchanges solely to try their best at buying low and selling high. Stock markets have been in business for approximately eight centuries. Everything was done by hand for the longest time. The process of making computations and very educated guesses was tedious and only meant for the serious mathematicians. Algorithms came in handy, but could still prove slow and imprecise.

The idea of programming an artificial neural network has been a work-in-progress for the past several decades. However, it failed to gain real traction before the introduction of the modern computer. Now that computer processors are faster and more efficient while computing many numbers, stock experts are beginning to try and figure out the best method of implementing neural networks that will work to their advantage. By using networks like those, computers can be "taught" to function similarly to the human brain in stock market scenarios, except with a much greater advantage. For instance, the following statement describes the Neural Fair Value (NFV) System:

"The Neural model is based on "Neural Networks" theory, an artificial intelligence concept designed to replicate the human brain's ability to learn. During a neural model's training period, prediction errors are reduced by adjusting inputs." (via Neuroshell)

Neural networks would be able to "learn" from the past much like a human would, but in a much more efficient process. This includes mistakes or successful results from past problems. By doing this, neural networks can adapt and better predict stock fluctuations.

Sounds like neural networks will be incredibly useful in the future of stock trading. However, the development and research going into them is constantly ongoing - no perfect algorithms have been developed quite yet.


* http://www.neuroshell.com/Successful%20Trading%20Using%20Artificial%20Intelligence.pdf
* http://www.neuroshell.com/traders.asp?task=interviews&id=19
* http://www.f.kth.se/~f98-kny/thesis.pdf
* http://www.businessweek.com/stories/2006-05-07/a-neural-approach-to-the-marketbusinessweek-business-news-stock-market-and-financial-advice

Thursday, November 14, 2013

Why Computer Science has become and will always be the next step in humanity's technological progression



via theverge.com
"Quantum memories capable of storing and retrieving coherent information for extended times at room temperature would enable a host of new technologies." (Science Magazine Research Paper/Journal - link provided below)
My cousin is an Information Technology manager at a somewhat large-scale organization. His office used to be located in a side-closet of the actual closet responsible for housing huge, hot servers. Hot. Servers become very warm since they are being accessed many times in short timespans as well as running nearly nonstop. Because of this, a cooling system is very very necessary in that closet as well as other datacenters. This way systems won't suddenly fry and break down, thereby forcing intensive and important processes offline.

Imagine being able to work alongside these machines in comfort would certainly boost morale at the workplace. What about conforming to more efficient "Green" standards as a result of needing less air conditioning/fans? How to achieve that? Quantum computing seems to be a possible solution. Why merely a possibility? Well, it's still being heavily researched at the time of writing this. The most recent and significant result was being able to store quantum data at room temperature for thirty-nine minutes as opposed to an earlier record of simply two seconds. The data was still stable enough that some of the stored qubits could be read.

Think of the benefits this technological achievement could provide, especially as the intersection between computer technology and the rest of the industrial world continues to occur. For instance, once this technology truly blossoms, more and more servers will be able to remain in close proximity to each other without nearly as much danger of overheating or overuse of power. Clusters of computing machines will be able to run and crunch numbers longer, faster, and safer while remaining much more reliable than ever before.

The old concept of Folding@Home is just one example of what this improved technology could contribute to. Folding@Home (abbreviated FH from now on) basically allows people to set up their computers with a set of software that can use some specified amount of processing power to work with other machines around the world to find cures to health hazards. This short excerpt is taken directly from their website, which is hosted by Stanford University:

"Help Stanford University scientists studying Alzheimer's, Huntington's, Parkinson's, and many cancers by simply running a piece of software on your computer.

The problems we are trying to solve require so many calculations, we ask people to donate their unused computer power to crunch some of the numbers."

Users can set the process to run in the background of their current work or while they're sleeping; all in the name of helping others.


FH isn't the only situation that stands to benefit from this advancement of technology. Professional filmmakers need vast, powerful machines to render the heavy video they produce on a day-to-day basis. But these machines are limited by their weaknesses: running too strongly could cause burnouts and the sizes of the products can be too expansive. Pixar, the famous animation company, often requires extremely effective machines to produce the average feature film that we watch. Monsters University, a recent animated film, is just one example:

In fact, it took Pixar’s server farm about 29 hours to render each frame of Monsters University, the prequel to Monsters Inc., one of the studio’s most beloved films.

Computer Science will always play some significant role in humanity's fight to stay relevant, progressive, and responsible. Quantum computing is only the beginning.

http://www.sciencemag.org/content/342/6160/830
http://folding.stanford.edu/
http://venturebeat.com/2013/04/24/the-making-of-pixars-latest-technological-marvel-monsters-university/

Sunday, November 10, 2013

File Transfer - where should my data live and how should I access it?

There have been a plethora of different ways to transfer data in recent years: floppy disks, Compact Discs, flash drives, Zip drives, E-mail, file-upload websites.

"Well, it's all up in the air." The current hype - cloud networking/storage/etc - really describes that statement. Most people instantly imagine any data transfer associated with a metaphorical "cloud" as being simple, wispy, and almost effortless. As in, someone simply needs to login to some arbitrary service - be it Google Drive, Dropbox, Box, Mega, or another - and just drag-and-drop some files to some location that is easily accessible from many places. These websites have a tendency to provide several ways to access data you or your peers have uploaded to them. For instance, a user might use Secure File Transfer Protocol (SFTP), regular File Transfer Protocol (FTP), or much more user-friendly Hypertext Transfer Protocol (HTTP). SFTP has become increasingly viable in today's cyber security-prone. Take, for example, the process of configuring a new server. Unless the person managing has direct access to the server at all times, there will most definitely come a time when they need to modify important files from a remote connection. However, this can create a very tricky dilemma. "When using FTP it will be possible for a hacker to capture network traffic between your desktop and the web server and so discover these passwords." (ArtSec, "The benefits of SFTP in website security")


Unfortunately much technology users are uneducated in exactly where they should store their data as well as how the storage is even constructed.

So where should data be? We need redundant storage. Servers capable of RAID or RAID-like functionality. On top of that, we also desperately need secure connections and protocols for fetching the data we need. SFTP works quite well, but not very many people know what it is unless they work in a technology-based field.

*https://artsec.com/2011/12/19/the-benefits-of-sftp-in-website-security/

Sunday, November 3, 2013

Is your treasure secure? Data structures and why they can't be taken for granted.

What happens when you need to call someone from your home phone or cell phone? You normally navigate your device's interface to a particular section of sorted data commonly called the "Address Book" (or some similar variation). Any contact information you have stored locally or via a network of some kind (quite possibly a cloud network), is readily accessible. But have you thought about the operation of such a feature?



Data needs to be secure. Most often, security is thought of as being protection of information. However, there is another definition that information technology professionals swear by and the common user-base tends to ignore. A given user knows their information has proper security when it is safe to use in different ways. Data structures can hold databases, some much like the Address Book mentioned earlier. Proper development of tools used for accessing and modifying can be tricky. For instance, data needs to be accessible as quickly as possible - you want to call a specific contact via the address book at least slightly faster than it would take to remember an arbitrary number and dial it. Many algorithms have been invented, analyzed, and updated in order to take advantage of modern technologies.

As such, data structures and associated algorithms are essential to supporting the kinds of services that are vital to modern society. There are a plethora of different uses for these tools.  




Structuring Depth-First Search Algorithms in Haskell (1995)

Sunday, October 27, 2013

The formal or informal meanings of "hacking"

Hacking can be described as something that is very negative for the cyber world. When we hear about hacking we think of money, software, source code, credit card, or other very personal information being stolen or used for some kind of malicious intent.

Formally, the term "hack" usually implies that one person, or perhaps several people, is responsible for intruding upon a closed system in order to take data or control. However, taking control of a system should not only be associated with malicious intent. For instance, devices such as smartphones can be hacked, though usually when this happens it is not for malevolent purposes. Rather, the goal is to unlock the system for more extensibility. Unfortunately, this tends to be a lesser-known benefit of hacking.

What do I mean by this? Well, imagine the iPhone. If you hack the system you can install special plug-ins that allow you to do certain things that wouldn't normally be possible. One such example called biteSMS replaces the default application responsible for text messaging. What features does it add? One in particular allows you to respond to any incoming text message from wherever you are in the operating system. This means when you turn on your phone's screen, it might show a new text message that you've received recently. You can then choose to reply from this screen rather than going through options, unlocking the OS itself, finding the messaging app and then typing your reply there. It sounds very simple and even unnecessary, but once you've used it a few times you'll realize quite how useful it really is. There are plenty of other systems that can be hacked for similar applications. The best way to describe this is "freeing" your device/system from restrictions.

via iDownload Blog
Regardless, hacking doesn't always need to be labeled as a malicious activity as it can be used as an educational tool as well.

*http://courses.cs.vt.edu/cs3604/lib/Hacking/MacMillan.Hacking.html

Sunday, October 13, 2013

The Ultimate Resource and Collaboration Tools

There are two very special benefits of using version control and revision control systems. One of the most prevalent principles when working with files on a computer is rather simple: "Don't forget to hit 'Save' every few minutes or you risk losing everything you've done so far!"


Version control as well as other ways to keep track of software and its respective source code have become an important of a programmer's daily workflow. Systems like Git, Mercurial, Apache Subversion, and others all have a very similar goal: to allow a person to backup their work as many times as necessary while working. In fact, these are actually a double-sided coin so to speak. The main purpose of such tools is to keep work and data secure. An alternative purpose lies in how they can be used to publish code. The latter is known as "open-sourcing." To make a set of source code public means just about anybody with access to the Internet can access and use that code in some way.

There are various licenses that dictate how the source can be used. Usually, open-sourcing code allows for debugging or extending the product by people from all types of backgrounds. For instance, one of the most popular and current examples of this type of product would be reddit.com. Reddit is an extremely large forum online devoted to a nearly limitless array of topics. Last month, the number of unique visitors to Reddit was roughly 81,431,088*. Github.com is an online repository where the Reddit source code is hosted publicly. Users of Github can, for example, explore a page devoted to showing a list of bugs (organized by priority). They may find one that interests them and then proceed to debug it. Once that has been done, they can resubmit the related code with either a fix or theory of what might be causing the problem. As Reddit consists of such a large community that includes a sizable number of programmers, the opportunity to help out here and there adds to the experience of using the website.


Reddit is just one example of many. Github tends to be one of the most popular sites for open source code as it is based on the Git versioning system, which is quite secure**. The Git platform is a distributed revision control and source code management that makes working on new features simple and protecting progress.

Another immense advantage of open-sourcing code is that the average person can use what they find for inspiration and as a resource in different ways (permitting the respective project's license is appropriate). When I write code for iOS or OS X - among other platforms - I look online for examples of how other developers have accomplished certain tasks. The best analogy to explain this is: "why reinvent the wheel?" Not only that but sometimes entire libraries or frameworks of code can be included in a project as long as the original authors are cited.

Yet I think the best overall value of using open-sourced code is the idea that practically any person with sufficient skills can interpret it. Relating back to Reddit earlier, if you're a frequent visitor of the site and really appreciate a certain feature, you can actually dive into the code and learn how it was built. Open-source presents a level of education unparalleled in just about any other area.


*http://www.reddit.com/about/
**http://git-scm.com/about/info-assurance

Sunday, October 6, 2013

AGILE: Is fast efficient?

In this rapidly changing world, I have found that production of some kind of object or service needs to be incredibly fast-paced in order to be moderately to extremely well-received. One answer to this complex situation came in the form of AGILE.



AGILE was devised as a methodology for completing software products according to a strict schedule. Through Scrums, typically a week or some other defined set of time, engineers and product managers can quickly push iterations of their product. This can be incredibly helpful. Small goals to keep to while working seem to increase productivity. Successes can result almost immediately in some cases, which will boost self-esteem of the workers.

While AGILE seems to have a broad appeal, and for good reason as it can spike a team's level of success, it does have its cons. Product development cycles do not necessarily work very well when a strict deadline has been given. Certain features will almost always take a good deal longer to build. One can take a few hours, another can take a day, and perhaps a more important one can take anywhere from two weeks to two months.

For these reasons, AGILE can be both helpful and detrimental. If a team's objective is to push out a product in some form as soon as possible, then AGILE's methodology can work wonders. The cycle will move fast, allowing for the software to be grown sort of like a tree that begins small and increases in girth. However, in some cases it would be much better to have a product finalized to an extent before release. If that is the requirement, then AGILE would probably be the wrong way to develop it.

Above all, the AGILE system is definitely situational. Though you can keep in mind how adaptable it is as well. It is really not meant to have one solid process that cannot be changed.

Friday, September 20, 2013

LinkedIn and Branding: Facebook Falls Short.

It's not who I am underneath... but what I do... that defines me. - "Batman Begins" (2005)
When I think of Facebook or LinkedIn, I have a vague image of a two-sided coin in my mind. This is quite similar to how people function in their everyday lives. An individual may behave a certain way at home or with their peers compared to when they are at work and in a truly responsibility-minded mode.

Facebook has become a social, yet very personal, place. Fortunately or unfortunately, many people believe it okay to post or say certain types of things without fear of consequence. As a result, people will post about their weekend, their love life, their workplace, etc. While most have their privacy settings fine-tuned so that not much of these intimate life details leak out, others have not thought that far ahead. As a result, a prospective employer may decide to check out a person's Facebook profile and find something that does not agree with their ideals. As such,  personal information can be used to the detriment of an individual, even if they conduct themselves very reasonably in impersonal situations. This is not, however, to discount the issue that certain things can adversely affect someone's reputation. Because of this, Facebook cannot and should not be permitted to become a professional tool except for advertising and other similar activities.

LinkedIn has transformed from its initial role as a job search-centered website to a career-oriented social network. What does this mean? Users have the opportunity to socialize with friends, coworkers, family, and even prospective coworkers. News stories can be shared, as can most other website URLs. However, individuals are encouraged more-so to share details more related to their work rather than their personal lives. This includes skills, hobbies, awards, etc. Anything that might showcase their value. As staff members of LinkedIn say themselves on the company blog, "Sharing great companies and products is an excellent way to demonstrate your expertise and knowledge, and it builds good will with your professional connections who value your opinion as a trusted resource."*

As alluded to earlier, people tend to lead double-lives - no they are not superheroes. The quote mentioned before really makes sense when you think about it. People can live a certain way, and that way should often remain in the shadows and not cast into light. However, people should be able to do their own thing, their own way, and as such let it define who they are to the world. It is sort of like switching a flashlight from its regular beam mode to lantern mode. They each have their respective duties.

So what does this mean for using LinkedIn? LinkedIn allows you to brand yourself and express just how you can be in a public, responsible, setting. You want to be allowed to show the world what you can do. Not only that, but you have so many opportunities to prove yourself, whether through sharing stories, commenting on them, reaching out to people you know in the workplace or even those in a place you want to be. After all, it really comes down to who you know.... not what you know.

*    http://blog.linkedin.com/2013/03/04/get-the-most-out-of-linkedin-company-pages/
**    http://smallbiztrends.com/2012/08/linkedin-professional-connections.html

Thursday, September 12, 2013

QR Codes: How to increase someone's ability to remember YOUR product or service

Remember that time when you gave your contact information to someone you just met, asked them to give you a call when they had a moment, then found out weeks or months later that they had forgotten your name and to contact you? As technology begins to further embrace the responsibility we give it, priorities we once had diminish.

A more complex QR code containing a vCard with email address,
first and last names, and a useful website to visit (e.g. debloggingcs.blogspot.com)


The question is, do you want someone to remember YOUR brand? Let's face it, if you are showcasing a new product at a trade show or conference, there are literally thousands of people passing by your booth. You have a limited supply of hardcopy materials. Why not have posters with a special vCard QR code printed on them? vCards are a data structure formatted specifically for holding multiple fields of information. Say you are an international recruitment agent in India at a university recruitment fair. The best scenario is that every individual (or at least a significant portion of people) gets in contact with you for more information. You could give them a piece of paper in a digital age, but how long will it last? It is not worth nearly as much to them as their phones or other electronic devices. Imagine a downpour happening and the flyer you handed them crumpling and becoming soggy. Now suppose you can give them a piece of valuable information that they can keep on their person at nearly all times with a better survival rate. With the exception of their device dying (which can be remedied with the fact that cloud synchronization services are available to a large number of people now), they now have a reminder with them wherever they go. That one scan of the vCard QR code just gave them your international contact number, email address, recruitment website, and any other pertinent information. 

Additionally, QR codes in general are very accessible. For instance, imagine the aforementioned scenario. You might have a crowd of people at your booth and the best angle a newcomer has of your flyer is upside down or at a right angle*. They can still scan the printed code, which should be processed correctly unless the lighting in the area is not as good or their camera sensor is lower quality.

The bigger your footprint, the more noticeable you (and your brand!!) will be. The idea may seem cliché, but it actually makes more sense. For example if you are using a vCard QR code, you know that if one field is messed up (perhaps your website URL), the person who scanned it can easily research your name or business and find the website! The possibilities are really endless.


** Denso - Inventor of the QR Code. From QR Code Essentials whitepaper

Thursday, September 5, 2013

Social Networking and Security. Keep your brand accessible and safe online.

For the Greater Good? Social Media in all its Glory as a Double-Edged Sword

Social networks are only now becoming a fully-realized factor in the means of presenting a brand or image. As a result, the benefits of doing so are being weighed against the detriments.

Take a recent example. Life's Good (AKA "LG") published "Reality or Ultra Reality?", an approximately two minute video clip, on YouTube two days ago (on September 3rd). In just roughly forty-eight hours, it has already earned at least one and a half million views*. LG successfully produced what is now called a "viral" advertisement. The commercial is as innocent as most on television, but has a funny story to it. Hilarious enough that the video is being shared across many different platforms, including Facebook and Tumblr to name a couple.
animated_image_from_video
Scenes from LG's viral video

This single instance of viral marketing shows how useful the technique has become in the last decade or so. Social networks allow for a rapid spread of information. An advertisement that goes over very well with its online audience can dramatically increase the respect given to its brand. Whether or not the product LG is advertising really does well has no significance - it has likely gained more subscribers to its YouTube channel as well as "likes" for any of its global pages that have shared the video's URL.

When a business wishes to produce some kind of viral media in order to hype up a product or service, they can choose to use special audience-targeting features depending on the platform they are using, whether it is Facebook, Twitter, or another. For example, Facebook can be fed an age range, geographic location, or gender preference when creating an advertisement for a business' page. Facebook already takes some information from the average user's profile and personal information. Perhaps parsing an individual's list of favorite music artists or novel writers. However, this has come under fire in recent years because of the possibility that a person's privacy is being intruded upon. The Los Angeles Times reported on September 5th that Facebook would be holding off on analyzing and possibly using its users' profile photos for more marketing potential.
screenshot_of_facebook_advertising_landingpage
Facebook's Landing Page for Advertising

The main issue here is that while businesses can effectively reach a large audience, they can also harm their audience. Advertising a new product or service can create positive hype, but if that advertising can be linked to a single user of the chosen platform, then such an issue can prove to be a detriment to the brand. Individuals have rights to their privacy and whether or not they would like advertisements specifically tailored to their interests. If Coca Cola's logo is found in an analyzed profile photo, should that give Facebook the right to deliver Coke advertisements directly to the person who owns the profile?

Viral marketing has become more of a personal tool in that it is meant to be disseminated by the people and for the people. Traditional advertisements are much more targeted, which again leads to possible personal life intrusions. The key issue today is how best to utilize the two while still leaving a brand untarnished. This makes a substantial amount of sense seeing as how 55% of home internet users use social networking sites and 48% share content found online**. Because of this delicate balance between proper and improper use of social media platforms, businesses need to be sure to respect their audience and not simply objectify them.


*YouTube videos' view counts do not update immediately. The given number is recorded at the time of this writing.
**Home broadband use has increased from roughly 1 hour per month in 1995, to more than 15 hours per month in 2000, to almost 29 hours per month today, as consumers find more valuable applications and content online. // Almost two-thirds of the time users spend online is focused on communication, information searching, entertainment or social networking. (broadband.org)

Thursday, August 29, 2013

printf("Hello, World!");

My name is Joshua Wertheim and I currently attend San Jose State University as a Junior. I am in pursuit of a degree in the field of Computer Science.

I have experience programming in Java, C, and Objective-C, as well as working with some HTML, Javascript, and PHP. I am beginning to work with Ruby and Python in order to expand my web development skills.

Working with my initial commit to a new Git repo for Android development.


A few years ago, I released two iOS applications to the App Store and both were downloaded roughly 2000 times. While that number may seem relatively insignificant when compared to the vast amount of iOS devices in circulation, it truly instilled in me a passion for creating products that can impact a large number of people. I admire how truly universal the field is that Computer Science creates. For instance, cars now have built-in computer chips that gauge fuel use as well as maintenance needs, and also other useful utilities. The Internet is spreading out further across the world, even to people who have only just recently begun to access modern technology. Many people have smartphones in society, easily accessing critical information at no particular time except when they need it. Those examples are just a small sample of what is possible. Computer Science is a field ripe in opportunities.

I would truly love to help the dissemination of modern information and other associated resources. Perhaps a fun iPhone game that incorporates basic cultural and ethnic facts in an easy to learn format for children. The possibilities are truly endless.

I hope to mature my goals as I write this blog for the foreseeable future. Please feel free to tag along on this adventure that I am only just beginning. I would value highly any feedback that you may have for me in the coming weeks. Until then, try not to divide by zero!