What we teach - expained for the non-technical
Archive - Originally posted on "The Horse's Mouth" - 2007-10-28 21:19:58 - Graham Ellis"Explain each of the subjects that we teach in a short paragraph written for mangers and booking / administrative people who aren't into the technology themselves" ... a challenge from Lisa which I have spend some time on today. And as I'm giving a Perl course tomorrow, what better way to get back into the Perl mood by using a piece of Perl to extract all those new descriptions from the markup that I've included them in!
Technology for PHP
PHP binds together HTML (used for web page design), databases (such as MySQL) which are used for data storage, management and analysis, and programming. The combined facilities allows the PHP-knowledgeable web site author to provide sites which combine all the technologies into complete web based applications.
PHP Programming
PHP is a programming language that was developed and designed for use on the web, and it's now so popular that you'll find it available on more domains than any other language. That's not because it's free - it's because it's a very flexible and efficient tool. PHP can be used for applications as easy as color and font control to handle accessibility issues, through to complex on line ordering and stock and order tracking systems.
Object Oriented programming with PHP
Object Oriented programming techniques enable larger applications and systems to be written and maintained in a controlled manner without ongoing programming work getting out of hand. System life cycles can be extended, with increased code re-usability, maintainability and robustness.
The MySQL Relational database
MySQL is a relational database engine. It lets you enter, store and search tables of information. Those tables can "relate" to each other, allowing a complex data set to be stored, and complex searches made. The database engine does all the hard work of storing and formatting the data for you - all you have to do is program the engine using the SQL language.
Deploying Apache and Tomcat
Apache httpd and Apache Tomcat are two web servers which, when used together, provide a flexible, stable and configurable platform for organisations to deploy web based applications written in Java. You'll find the two servers in use together on many large scale services - commercial, educational, voluntary sector, research and governmental.
Python Programming
Python is powerful, portable, object-oriented open source programming language for writing stand alone programs, quick scripts, and prototypes for large applications.
Ruby Programming
Ruby is an object oriented scripting language that has rapidly grown in use and favor across a wide variety of applications in the past two years. Perhaps THE biggest use or Ruby is within the Rails framework, where it is used to provide the programming power behind web based applications that can be quickly and efficiently written.
Learning to program in Perl / Perl Programming
Perl is a very widely used programming language indeed, but it's name isn't well know outside the programming community as it's an open source language that lack the marketing "hype" - it's just a superb technical tool in a very wide variety of applications. It's name - PERL - stands for the "Practical Extraction and Reporting language" which is a pretty good sound-bite to tell you what it does.
A new release of Perl - Perl 6 - has been undergoing development for a considerable time. Our course covers Perl 5, and will continue to do so while it is dominant, but also includes a short look ahead to Perl 6 so that new code developers will be able to take advantage of it once it's available to them.
Using Perl on the Web
When internet applications took off, Perl was especially suitable as the language in which they should be written. It interfaces well to web applications and servers, has a quick development cycle, and it's open source so that are no complex licensing issues. Many web applications are written in Perl to this day, although languages such as PHP (which was designed specifically for the web use) and Ruby are strong and often used alternatives.
Perl for Larger Projects
Perl is a scripting language which allows knowledgeable staff to achieve a very great deal in areas as diverse as data analysis, system management, and web interaction very quickly indeed. For larger and more complex requirements, Perl includes an object oriented interface which is the subject of this course, which also covers other topics associated with handling significantly large amounts of data, such as code efficiency and data that overflows the space available during processing.
Tcl Programming
Tcl is a programming language that's used in a wide variety of niche applications - ranging from Numerical Control Machines to Integrated Cirsuit design. It's also very strong as an Engineer's language in system testing, where the with the additional Expect extension provides a tool that would be hard to better.
Tcl - the Tk Toolkit
The TK Gui (Graphic User Interface) provides an extension to the Tcl language which allows the programmer to construct an application that the user can easily control through buttons, sliders and other graphic elements. Programmers need a thorough understanding of Tcl before they learn the extras of Tk.
Regular Expressions
Regular Expressions provide a powerful tool for matching strings - for example, if you wanted to look at some text in your program and work out whether it was in the correct format for a postcode, you would use a regular expression. But ... regular expressions are so terse and yet flexible that they're very hard for the newcomer to self-teach, which is why we offer this one day course.
Deploying Java applications on Linux and Unix
For each Web Server you run, you'll have hundreds of thousands of visitors browsing your site. The software that these visitors browse through is kept simple - but that's at the cost of a complex array of technologies on the Web Server. If you are responsible for installing or looking after such a web server - running Linux, Apache httpd, Apache Tomcat and perhaps MySQL or another database to handle applications written as Java Servlets or JSPs, using HTML, CSS and perhaps CGI too, this is the course for you - it takes you through the steps of deploying and hen looking after the various technologies.
Deploying LAMP - Linux, Apache, MySQL Perl / PHP / Python
More Internet domains are run using LAMP (Linux, Apache, MySQL, PHP) servers that any other technology. And if you have staff who are responsible for looking after these servers, or helping configure them, then this course provides an ideal knowledge level without turning them into knowledgeable programmers. It's ideal if they're going to be installing software written by others - for example using some of the wide range of Open Source applications which are available.
Linux Basics
Linux is the operating system that's now used on the majority of web servers. Even if your organisation uses Microsoft Windows at the Desktop, you may find Linux behind the scenes.
Linux Administration
The Linux operating system is commonly used on Web servers - and many other server too - to provide the background services on that computer. We offer a Linux basics day for staff who are going to be involved in uploading and configuring web applications, a Linux Admin day for staff who are going to take some responsibility for server configuration and maintainence too, and a selection of courses on installation and administration of the web server software. This course covers the administration necessary to look after a web server within an existing network, but does not cover general Linux administration in great depth - please ask us if you need training which includes subject such as name services, network configuration, firewall setup, mail servers, etc.
Linux Web Server
The Apache httpd web server, installed on Linux, is perhaps the most often used web server / operating system combination in the world. This course covers the installation, configuration and maintainance of an Apache httpd web server within the Linux environment. Regular tasks include analyzing server usage, taking backups, configuring extra domains, and dealing with security issues and management reports.
Java Bootcamp
The Java language is now firmly established in a wide variety of applications, with an incredible range of facilities and options available to go with it. One of the most common uses of Java programs is on a web server, where "Servelets" or "JSP"s provide the logic behind web based applications from banking to weather forecasting, and from government sites through scientific research.
Programming in C
The C language is the bedrock of modern computing - it underlies your operating system, and it's the language in which other languages are written. However, only a small proportion of programmers actually need to develop and maintain code in C these days, as for the majority of applications the higher level languages that are themselves written in C are going to be more efficient.
C++ for C Programmers
The C++ programming language adds syntax to the C language on which it is based, allowing C to be easily and efficiently expanded into much larger applications. Because C++ maintains C compatibility, the resultant language has some quite complex features, making C++ courses especially valuable in getting staff new to the language up to speed.
C and C++ Programming
C++ is a programming language used for major systems, based on the fundamental C language but with additional features such as Object Orientation which make it very suitable for bigger uses. To some extent, C++ has been displaced by other more modern languages, but there's still a number of application areas where it's the ideal choice, and many others where heritage code needs to be maintained.