training 1140

Training with Pitchfork Solutions

Progress is now several languages in one - procedural 4GL, SQL, event driven, GUI, object-oriented, Web Enabling, SOA, messaging, XML Parser, .net interactive...and we are fluent in all.

We have designed our training materials based on our experience of what works best. We combine a case study approach to programming with modularity of our course materials, frequent reinforcement of presentation material, and an ongoing conversation about what is practical, relevant and important for the class.

Tailoring the Class to Fit your Needs

We work closely with you to make sure the curriculum fits your needs. Since the Progress environment is so vast, we spend time with you identifying what your specific requirements are. Do you want more emphasis on importing data, reports, customizing an existing application, GUI programming, Smart Objects? We will prepare a personalized list of topics for you to select from. Whatever your objectives, we determine the best mix of course topics ahead of time and prepare and print our course notes specifically with you in mind.

Click here to download a PDF of our current "off the shelf" classes. Currently, there are over 20 topics, with new material added on a regular basis. And if you don't see what you are looking for, just ask. If it isn’t already in development, we can create new material to suit your requirements. We can also take material from multiple courses and combine it to make a course that suits your specific needs.

Follow up

We have found that after completing a course, many clients benefit from follow-up sessions to reinforce understanding of the material and help developers or administrators put into practice the lessons learned. We want you to get the best value possible out of your hard-pressed training budget and follow-up sessions are truly a cost effective way of achieving this.

We have each student fill out a short questionnaire about two weeks prior to the class, to give them the opportunity to talk about their experiences and objectives. We then know what to anticipate when we arrive in the classroom, and the student has a clear vision of what they want to achieve from the sessions.

In addition, we encourage them to bring examples of issues or problems that they are experiencing within their environment. Students learn how to resolve issues pertinent to their environment by learning how to approach a specific set of tasks using Progress.

Working with Your Data

If possible, we will work with your database. For MFG/PRO, MXP, Symix or Fiserv, we have class materials based on these environments. If it is another system, or your own structure, we can still build our class around your data structures.

Our case study approach is based on the simple premise that programmers solve problems, and while the theories of how things work are important for a conceptual overview, people learn best what they need to know most. We cover programming from a programmer's perspective: how to write maintenance applications, reports, data entry screens, menus. Rather than presenting the programming environment in pieces, we start with a complete application as our objective, and build that application during the training session.

Learning an application environment is similar to putting a puzzle together. There are a lot of pieces, but you have to know what the “big picture” looks like before you start. In our opinion, most training is about arranging the pieces face up on the table and letting the student figure out how to put them together. We start with what the picture looks like, and every piece we present fits into this picture.

Code Samples and Labs

One of the principles of learning theory is that of reinforcement and we strongly believe in the saying “use it or lose it”. We feel that if students do a simple set of exercises frequently, the information presented will be reinforced and retained. The examples are designed to be relevant and insightful: simple ways to reinforce and integrate what the student has been working with.

Programmers learn a lot by looking at functional code and figuring out “How did they do that?” We provide students with the same learning opportunity by ensuring the architectural principles of a good application are built-in to our examples. It pleases us to hear that a student has been able to go back to their terminal and begin constructing their own applications using the knowledge, and more importantly, the tools we've left them.

We design our course material so that there is also a reference manual for the week after. Our labs also serve as reference material when students need to solve problems after the class is over.

Never Overlook The Basics

When it comes to “modern Progress” (V9 /OE10/OE11), we feel it's a little too easy to get involved in events, attributes and methods, links, containers and pages. Sometimes we lose sight of the important issues, such as how to deal with transactions, application modality, writing solid, reusable code and the understanding of the key principles and benefits of the object-oriented approach Progress provides (whether or not you are using smart objects.) We're also applications developers and we feel like we've gone beyond the surface of the new programming paradigm. We can show you the steps in building robust, reusable code objects, and how to get them to interact.

In more advanced sessions, we cover how to isolate performance problems and various ways to debug code. We teach principles too, such as different kinds of reusability, and object-oriented concepts like building object classes, encapsulation and inheritance, using the technology you already know. We understand the day-to-day problems that programmers have to solve.

We Pay Attention to You

Our theory about course modularity is that the students themselves know what they need to learn, and we respect that. We ask our prospective class members to send us a summary of what they know and what they need to learn. At a higher level, we often ask the director or manager to give us their perspective on current projects and future directions. We can then select and assemble the materials in our course books based on this input. The course materials for each class can be customized for that particular class. During the class itself, we make sure that each student takes the time to verbally explain what they want to learn during the session.

We reserve time to digress from the prepared course materials in order to pursue a point or dilemma that comes up during the class. Our students have obtained some of the greatest insights from these spontaneous coding and problem-solving sessions.

Value for Money

We understand how difficult it can be to stay within the confines of your limited training budget. Whether you need training for one person or an entire development staff, we can deliver standard or customized material to your location at your convenience and at affordable rates. Call us to discuss your needs and we will provide a quote.