CPET graduates are prepared to work as networking administrators and coordinators as well as web designers and web programmers. Our philosophy at the Associate degree level is to educate for today and tomorrow, and not just train students for the current job market. Students will gain a solid foundation of concepts and hands on practical experience that will enable them to prepare for specialization and specialized certification.
Some concepts covered in lecture are:
- Planning a local area network
- How a network works, monitoring packets, observing traffic
- OSI Model defining the seven layers
- TCP/IP protocol, IP addressing and subnetting, FTP, Telnet
- Physical components of a network, functionality & purpose
- Network operating systems (currently Windows NT 4.0 Server and Linux Slackware 7.0) - installation, administration, security issues
- Web server administration (Microsoft Internet Information Server and Linux Apache web server)
- How to share a resource on the network - printers, file systems, devices
- Understanding server side scripting, interfacing to databases, remote client and server communication, dynamic web server applications
- Observing http protocol using a proxy server - how to write your own proxy server
Hands on lab activities and assignments include:
- Responsibility of setting up a PC starting with partitioning and formatting hard drive, installing multiple operating systems, installing all necessary drivers, option packs, service packs, client software and applications software to be used in the course
- In dual environments of Windows NT Server and Linux, create user accounts, groups, file access permissions and access to the network via TCP/IP configuration
- Install, configure and administer web servers (IIS in NT and Apache in Linux). Shake out any security breaches.
- Write server side cgi applications using C++ or Perl or Linux Bourne Again Shell
- Write dynamic web applications using Active Server Pages or trial version of Coldfusion
- Port student work to department web site - work on a team project contributing to our web site. You will be using Front Page 2000
- Install XWindows on Linux (gui interface) and write some programs in C++
Directly below you will find the programming languages learned and used in the CPET program. You will also find below the listing of languages a review of programming techniques taught and mastered:
- C++ language
- C# with .Net
- Visual Basic
- Visual C++
- Assembly language
- Relay Ladder Logic language
- Web related, HTML, CGI, etc.
C++ is the initial language learned in the CPET program. C++ is a programming industry standard and provides an "industrial strength" starting basis. C++ has the most flexibility of any language with regard to types of applications developed.
C# with .Net
C# with the dot Net Framework is the newest of the major programming languages. Microsoft has created this new language and framework to best meet the needs of web page and web services development. This is the most powerful language and the most fun programming language of them all. You will create major projects, including the most adaptable and capable web pages available.
Java is a major language which arrived in the mid 90's. Java is very C++ like so students can quickly apply it to web related applets and graphical applications. Java allows only "Object Oriented Programming" concepts. Thus it makes a good environment to learn OOP, which is the standard for programming techniques in the industry today.
Visual Basic is an easy language to learn! By the time you undertake the study of Visual Basic it will be most likely your third or fourth language. You will learn it very rapidly and become an advanced VB programmer quickly. The major application of Visual Basic is in the field of data base interfacing, which you will learn. You will also explore many advanced features.
In the "food chain" of programming environments, programmers writing Windows programs with Visual C++ are the highest paid! The Window applications written in Visual C++ are faster, smaller and more flexible in application than those written in Visual Basic.
Several billion microcomputers and microcontrollers are built and sold each year by such giants as Intel and Motorola. These are the hidden computers in cars to make the engines work, microwave ovens, in medical equipment, etc. Someone needs to program them! Learning assembly language also will provide you with basic fundamental knowledge about programming that will assist you in writing almost any other language.
Relay Ladder Logic language
Hidden in almost every manufacturing machine, robot and process control system is an industrial computer called a "Programmable Logic Controller." The language used by PLCs is Relay Ladder Logic. Not only is RLL a marketable skill to learn, but it provides the fundamentals of the programming technique called "multithreading." Multithreading is the ability of a computer program to do several things at the same time. This multithreading technique is then used in the CPET courses using Java and C++. A web server program with capabilities to handle many clients contacting the web site is a good example of multithreading in action.
Web related, HTML, CGI, etc.
Internet technology provides the field for the fastest evolving programming environment today. Languages seem to appear overnight! At this point in your programming career you are literally able to learn a language and apply it to a project as needed to solve a problem. This is what happens out in the "real world" of programming. Several of the most current languages will be utilized in CPET courses related to the internet.
The CPET programming curriculum includes four major programming techniques:
Structured programming should be a major building block in the learning process of programming. Structured programming techniques will be used in the initial programming course. The CPET program uses an industrial standard language, C++, as a means to introduce this concept. Structured programming utilizes the modularization of the code into functions (also called methods). Each function can be called upon to take some action. During the calling process, data can be sent to the function to assist in the process. The function when complete returns control of the program back to the program location where the function was invoked.
Upon returning data again can be passed. Design of the application code development is dependent on this concept. These designing techniques are used in the real world of commercial programming.
The world of commercial programming has shifted almost totally to Object Oriented Programming. The concept of Object Oriented Programming (OOP) represents the single most important technique learned and used in the CPET program. The programming language Java is used as the initial introduction to OOP. Java is completely object oriented. OOP combines methods and data into reusable modules called objects. These objects cooperate with each other to make up a program. OOP allows for teams of programmers to work efficiently on a large program. Then the OOP techniques are applied in the C++, Visual Basic and Visual C++ languages. The ability to design and program based on the use of objects is a highly desired job skill.
In a graphical user environment, clicking a mouse pointer on a button is an example of an event. Events created by the user or the operating system are the main driving force of graphical interfaces such as Microsoft Windows and Sun Java. The programmer might have a dozen buttons, check boxes, radio knobs, or text boxes that the user can select. The code must respond to the selected event but the program has no means to know which will be selected ahead of time. Knowing the fundamentals of event programming which is introduced in Java better prepares a programmer to understand and utilize events in other languages like Visual Basic and Visual C++.
The technique of multithreading is the ability to have a single program handle more than one thing happening at a time. Most serious commercial applications are multithreaded. For example, Microsoft Windows Explorer uses three threads of operation to allow the user to search and display the files on the drives. A web server that is multithreaded is another example in which several clients can contact the web server and a new thread is created to handle the needs of each caller. Multithreading has typically been reserved for upper level college courses. However the CPET program, to better enable the student to function as a commercial level programmer, includes multithreading techniques in the curriculum.
Both Relay Ladder Logic and Java are used to introduce multithreaded programming. This technique is then applied to Visual Basic and Visual C++ courses.
Here are some very good reasons why the CPET degree at NHTI is a good place to start:
Based on the CPET curriculum, a graduate has the ability to step into many prestigious universities or colleges with full Junior status - depending upon the school and the major. The CPET accreditation by the ETAC Commission of ABET, www.abet.org assures transferability to any other ETAC/ABET accredited school (almost 1000 technically based schools in the United States). NHTI has a number of transfer agreements with other colleges.
In the past, about one half of our CPET graduates directly entered a four year degree the following fall, with the other half opting to go to work. With the expansion of the Internet into businesses and the unprecedented increased demand for programmers in all computer-related fields, many of our graduates are now faced with the pleasant prospect of choosing a company that will also pay their tuition toward the four year degree while they attend part time in the evening or on weekends. Starting salaries for our graduates are extremely good, but most students will start working on their next degree within a few years of graduation from NHTI.
It is said of computers and technology that "the more you know in this field, the more you realize that you don't know." A two year degree is an excellent start and a good job afterwards is something to look forward to, but the learning and the opportunities expand with each additional topic learned and degree earned. Though it may not seem too important to a prospective student facing two years of our program to think about what happens after NHTI, it is really a very important decision to make. If a program is new or is not accredited, or it doesn't have a past history of accomplishment, prospective students need to consider what happens when they want to attend a four year school in the future. Will any courses be transferable? Do they literally have to start all over again? Be sure to ask those questions when interviewing or visiting colleges.