Fall 2008
IST 402 - EMERGING ISSUES AND TECHNOLOGIES (3)
Course Description: Introduction to emerging issues, technology forecasting and analysis; overview of emerging issues and leading technologies in IST and how they impact information systems, users, the IT labor force and society.
IST 402 is a class that is taught by a different professor each semester about a particular emerging technology that is close or interesting to them. My semester was taught by Dr. David Hall who has done a lot of Department of Defense work in his speciality - data fusion. The course was taught around Hall's JDL Model which involves 6 levels of fusion along with the interaction between these levels.
For my group's project, we decided to build a monitoring system to track the water health, animal life, and plant life at a local body of water - Shaver's Creek. We worked through the JDL Model level by level producing reports of how we would incorporate each level into our monitoring system's design and eventually arriving at the final report that is attached.
Although data fusion wasn't originally one of my interests, I gained a great appreciation through this course. Whether targetting or security systems, the ability of sensors to collect data and then the back-end systems to process this data to arrive at conclusions is critical to our world particularly in this day and age.
IST Samples
Homework 2 - Data Fusion at Tudek Dog Park: w2.doc
Homework 4 - Observing Nessie, the Loch Ness Monster: w4.doc
Shaver's Creek Monitoring System:
Data Fusion Project - [Please see projects section]
Grade: A.
IST 421 - ADVANCED ENTERPRISE INTEGRATION: TECHNOLOGY AND APPLICATIONS (3)
Course Description: Advanced course on the integration of information technology into systems applications.
This class was based around a project with Honeywell. This project was more technical than any other project I had done in IST upto this time. It relied heavily on operating system and virtualization knowledge. The focus was to analyze an emerging technology - application virtualization - and to recommend a solution to Honeywell based on the various research projects at universities and enterprise solutions in industry. Application virtualization is when an individual application is encapsulated in its own environment within an overall OS. Some of the challenges that we faced were: understanding Honeywell's overarching business needs, interpreting Honeywell's complex client-server architecture, limiting performance pentalties through application streaming and asynchronous loading solutions, true program isolation/sandboxing, ensuring compatibility between the virtualized application and external parts - both software libaries (.NET, Java VM, Active X) and hardware pieces (flash drive), application deployment/updating/removal, a permissions or access system, reporting and support mechanisms, and finally licensing issues. There were many additional challenges but these were some of the core ideas.
In addition to the project, we spent a great deal of time learning about different integration architectures and technologies. We were quizzed on these items and had several guest speakers from industry.
Honey-VAI:
Integration Project - [Please see projects section]
Grade: A-.
CMPSC 461 - PROGRAMMING LANGUAGE CONCEPTS (3)
Course Description: Fundamental concepts of programming language design, specifications, and implementation; programming language paradigms and features; program verification.
CMPSC 461 was actually one of my favorite courses in the Computer Science department at Penn State. It helped me to connect the dots in a lot of areas that I had not previously understood programming. We delved into many topics in programming languages such as grammars, interpreters, scanners/parsars, classes, and more; we even went as far as to build our own programming languages!
The assignments in this course were very challenging, but I was at the top of the grade curve. We wrote everything in a functional programming language similar to LISP called SCHEME. By applying what I had learned previously and genuinely understanding the creation and design of programming languages, I believe I will have a better understanding of real world implementation and will do a much better job as a real world Computer Scientist.
Programming Samples
Assignment 3 - Scanners, Parsars, Interpreters: ejy5002_3.doc & ejy5002_3.ss
Assignment 4 - Studying the Store: ejy5002_4.doc & ejy5002_4.ss
Grade: A-.
STAT 319 - APPLIED STATISTICS IN SCIENCE (3)
Course Description: Statistical inference: principles and methods, estimation and testing hypotheses, regression and correlation analysis, analysis of variance, computer analysis.
Grade: B.
KINES 090 - INTRODUCTION TO TEAM VOLLEYBALL (1.5)
Course Description: A course designed to introduce students to indoor team sports.
Grade: A.
Go Back