Back to Peter's Home Page | Back to Family Home Page

Thoughts On Technology
Peter M. Rose

I have been programming in various languages since sophomore year in college, ultimately getting my B. S. in Physics in 1972. I started my professional software engineering career in 1982. After about a year into my career I made an overt choice to specialize in the analysis, design, and development of business software vs. doing systems or tools software. I began studying object oriented methodologies in about 1996 with PowerBuilder and then Java, and started focusing on writing web based applications in 2001 under the J2EE umbrella of technologies.

I learn by writing and teaching what I do. In about 1999, I thought back at the huge transition in thinking that I had undergone in changing from the structured-waterfall methodologies to those of iterative-object oriented. At the time, and to a certain extent in technical writing today, learning these technologies was like trying to learn Russian by reading an English to Russian dictionary. It was a very long and painful process.

I felt that there were just a few really key object oriented principles from which all others could be derived - similar to what we find in advanced mathematics. I created a fictitious project and went through the entire object oriented life cycle of developing it, writing each step down as I designed and built the application. What resulted from this effort was my 250 page manuscript, Applied Object Oriented Analysis, Design, and Programming With Java.

When I finished that, I was on to writing in other object topics. Some ended up being manuscript in length, while others were more like articles or short learning guides. I turned some of these shorter documents into web pages and posted them here. Most are quite old, early to mid 2000's and thus might read a little antique, though the information itself, I think anyway, is timeless - who cares if I mix reverse-polish notation with old PowerBuilder form? It's how you end up thinking about and then solving the problem that's at the core of the writing.

Anyway, that's my only disclaimer. If you find the material helpful, that's great. If you don't like it, I'm of course sorry about that, but please don't stress yourself to point any of it out to me unless something is wrong technically. I don't care to go back and change a Vector reference to a ArrayList, okay? Times change and though in my daily work I adopt as I go, I'm not going back and revisiting old news in stuff I've written before or I wouldn't have any time left in the day to enjoy a nice glass of Cabernet!

*** Resume with a detailed version

General Random Thoughts

Basic Study Path for Object Oriented Software Engineering
Thoughts on Software Engineering
Object Oriented Best Practices
Effective Use of Java Object Constructors
Designing Efficient Business Service Objects
Designing Effective Object Responsibility Separation
Basics of Test First Using Junit and Jmock
Computer Management For Non Technical Users
Simple Java Web Service Example Using Axis
Simple Java Web Service Example Using JWS
Simple MVC Swing Communication Example
Simple Java Servlet with JSP Example
Simple Struts 1.x Example
Simple Spring 4.x Example

Selected Design Patterns

Command Design Pattern
Observer Design Pattern
Template Design Pattern
Visitor Design Pattern

Back to Peter's Home Page | Back to Family Home Page