Paul Osborne on Bethel MathCS

Welcome to Paul Osborne's home page on the Bethel Univirsity Math/Computer Science server (shell.mathcs.bethel.edu). I've included some interesting information, course summaries, and programs, so explore around and try out the cool javascript.

Valid XHTML 1.1 Valid CSS! Oh, and this sexy page also validates as XHTML 1.1 and CSS, suckers. Go ahead and see if I am lying.

Current Coursework

Math/CS Courses Listing

Course and Project Descriptions

COS100: Introduction to Programming

Catalogue Description

An introduction to algorithms and programming in a current programming language including a survey of computer hardware, operating systems, and networks.

Course Experience

COS100, informally called CS0, was an interesting course experience, and my first exposure to the Computer Science department at Bethel. Benji Shults was the instructor of the course. We spent the first part of the year learning some basic things about computers from an very dumbed down textbook; this, for the students and the professor, was quite an annoyance, so partway through the semester we gave up on it.

The second part of the semester (and lab days during the first part) was spent learning (X)HTML and Javascript (ECMA Script). We had a number of assignments which we could knock off at our own pace. I enjoyed this, and was finished with the course (including the optional second project) well before the end of the semester.

COS105: Computer Science 1

Catalogue Description

Introduction to fundamental computer programming design principles. Strong emphasis on theory. Extensive programming assignments in a current computer language.

Course Experience

CS1 is really the first true programming course at Bethel. CS0 was mostly XHTML (which is not a programming language) and JavaScript (which is a programming language and not just a scripting language). Bethel, despite Dr. Turnquist's divergent opinion on Java is a Java school, at least in the introductory Computer Science course. I guess not every school can be like MIT who teaches LISP as the introductory programming language. I guess it matters that at MIT probably most every student who takes that course has at least a bit of programming experience (or they are so brilliant it doesn't matter).

Anyhow, CS1, language aside, was an enjoyable course and adequately challenging. The beginning of the semester was extraordinarily easy for me coming from a programming background, but as the semester went on and the projects became increasingly difficult, I was challenged and began to enjoy the course more. I knew it wasn't going to be a complete cakewalk since I had never really used an Object Oriented programming language before.

Projects

Most of the projects we did during the course of the semester were nothing too special. Quite a bit of the sort of thing where you write a command-line driver that creates some different Objects from Classes you have written that demonstrate that you know how inheritance or some other thing works. All-in-all there weren't really any complex algorithms, just conceptual things related to the theory of the Object Oriented Programming paradigm.

At the end of the semester we had a quite large final project which was an Assignment Manager which saved assignments to a serialized text file. The most difficult (and optional) part of the assignment was the GUI interface. I did the project along with my fellow CS major Kyle Ronning and 'almost CS major' Kelly Lough. Together we formed what we affectionately called the KPK trio. Good Times.

» Download the Assignment Manager .jar Executable

COS212: Computer Scinece 2

Catalogue Description

Elementary data structures such as file structures, linked lists, and simple trees. Introduction to fundamental search and sort algorithms, analysis, design methodologies, and object-oriented programming. Extensive programming assignments in a current computer language.

COS214: Computer Systems

Catalogue Description

Assembly and machine language to study computer organization and structure, addressing techniques, digital representation of instructions, program segmentation, and linkage

COS216: Data Structures and Objects/Algorithms

Catalogue Description

Abstract data types, objects, classes, and methods as a software paradigm. Advanced data structures and algorithms are also studied. Extensive programming assignments in a current object-oriented computer language.

Computer Science Put to Use

BSA Director of Information Technology

In the fall of 2006 I was interviewed for and hired as the new BSA Director of Information Technology. As the Director of Information Technology I serve BSA by helping to maintain the student association's website located at http://bsa.bethel.edu/.

During the course of the 2006-2007 year I have worked on the site by maintaining mission-critical services of the 'old' site written in Perl and driven by mod_perl and MySQL. Unfortunately, we decided to move things over to Bethel's standard CMS, Silva. I say unfortunately not only because Silva is annoying to use for a CS guy (less control, some tasks made much more difficult) but because the code for the 'old' BSA site was well written (I believe due to the efforts of the previous BSA Director of Information Technology, Matt Knutson). However, as good as the 'old' system was it lacked the critical ability for SA and BSA non-techies to edit the site content. Silva has this advantage.

posborne.net

I went to a very small high school, Heritage Christian Academy, but despite its size it did offer a few computer courses. The first course offered was HTML -- not real exciting, but good stuff to know. The other course that was a web programming (php) class.

Long story short, this web programming class really got me excited about computer programming and web programming. As a result I got myself some hosting and created http://posborne.net/. The site has gone through several versions, and is almost always in transition (it is more of a playground site than anything else). I have a blog running on wordpress software at http://blog.posborne.net/.

Contact Information