Welcome!

Microservices Expo Authors: Stackify Blog, Pat Romanski, AppDynamics Blog, Liz McMillan, Elizabeth White

Related Topics: Adobe Flex, Java IoT

Adobe Flex: Blog Feed Post

Notes of a Traveling Contract Trainer

Training is the best way to market the services that you or your company has to offer

Over the course of my career, I've been running lots and lots of training classes on software development. I still do. Teaching software takes 15 - 20% of what I do for a living - the rest is work on real-world projects.  These days I mostly teach Java and Adobe Flex courses, but it's like riding a bicycle - if you know how to do it, you can ride any bike, really. The last two months were unusually training-heavy and I've been on the road most of the time.

Training is the best way to market the services that you or your company has to offer. other professional services. Usually, I run training for the clients of our company, but once in a while training firms need a contract trainer for a week, and I consider these gigs too - spending a week in the classroom with professional developer may bring you some development work in the future. Hence I usually don't reject any training request if I know the subject and it fits my schedule. Below are some rules that I've learned during these travels. If you fill I missed something, please leave a comment to this blog.

1. Check the courseware - if you don't like it - reject the training gig. You might make a quick buck, but damage your reputation. After you're gone, people will be left with poorly written courseware and they wouldn't remember that it's not your fault.

2. Book your flights on well known air carriers - if a flight gets cancelled, they can put you on another flight. If a company runs only one flight to your destination, find another carrier. Cheaper ticket price can turn into late arrival for training.  

3. While booking the seat on the plane, check with seatguru.com . They can give you misleading information about electric outlets on board, but can save yourself from selecting an inconvenient seat.

4. While people work on a hands-on assignment ask often, "Anyone needs help?"  Some people are too shy to ask and can waste time on struggling with a simple error.

5. Stick to the manual. You can and should share your real world experience, but still, people need to be able to use the manual after the superstar is gone.

6. Ask the lab. technician to do what it takes to have the software installed and  ensure that licenses are not expired. Ideally, they should re-image all disks in the classroom and install fresh software. Have plan B if this hasn't happened.

7. Don't change the software used in the course just because the client uses different one. If the courseware was created for Tomcat server, don't run the class on the client's WebSphere server just because "Java runs the same everywhere". Trying to be a nice guy may turn into a failed training and bad reviews.  Custom training is possible, but it should cost a lot more and has to be prepared in advanced.

8. Don't curse the courseware you are using. Use the rules we used with passed away people - either say good things about them or nothing at all. If you don't see the analogy, I'l help you out - either nothing don't use the courseware, or be nice to it. Instead of saying "I clearly see a bad practice example on page 231" say something like like "I understand why the authors of the courseware wrote it like this - they wanted to give you a quick and dirty example, but in the real-world I'd suggest to do it differently"

9. Speak loudly. If you have a soft voice, purchase a voice amplifier - they have portable wristband ones.

10. In the beginning of the class ask about people's background and expectations from the course. Typically, you'll have a healthy mix of students who really want to learn the subject and vacationers. The latter just use this class as to get a way from their desks. Both categories have equal rights to be in the classroom and your goal is to make sure that they like your class and  want you back in the future. I can't give you a concrete advise on how to do it - you'll have to figure it out on your own.

11. The chances are that on the introductory courses some people will state that they already use this software for a couple of months. Just ignore these statements and teach a class as if everyone is a beginner. Don't be afraid that these couple of people will get bored. They enrolled into a 101-level class and have to find a way to enjoy the show.

12. Respect your students. They are fellow software developers that just happens to need a little help in a particular subject area. Remember, you are not a teacher, you are instructor.

Good luck!

Till the next blog titled "How to attend software training".

Read the original blog entry...

More Stories By Yakov Fain

Yakov Fain is a Java Champion and a co-founder of the IT consultancy Farata Systems and the product company SuranceBay. He wrote a thousand blogs (http://yakovfain.com) and several books about software development. Yakov authored and co-authored such books as "Angular 2 Development with TypeScript", "Java 24-Hour Trainer", and "Enterprise Web Development". His Twitter tag is @yfain

Microservices Articles
Skeuomorphism usually means retaining existing design cues in something new that doesn’t actually need them. However, the concept of skeuomorphism can be thought of as relating more broadly to applying existing patterns to new technologies that, in fact, cry out for new approaches. In his session at DevOps Summit, Gordon Haff, Senior Cloud Strategy Marketing and Evangelism Manager at Red Hat, discussed why containers should be paired with new architectural practices such as microservices rathe...
DevOps is under attack because developers don’t want to mess with infrastructure. They will happily own their code into production, but want to use platforms instead of raw automation. That’s changing the landscape that we understand as DevOps with both architecture concepts (CloudNative) and process redefinition (SRE). Rob Hirschfeld’s recent work in Kubernetes operations has led to the conclusion that containers and related platforms have changed the way we should be thinking about DevOps and...
With the rise of Docker, Kubernetes, and other container technologies, the growth of microservices has skyrocketed among dev teams looking to innovate on a faster release cycle. This has enabled teams to finally realize their DevOps goals to ship and iterate quickly in a continuous delivery model. Why containers are growing in popularity is no surprise — they’re extremely easy to spin up or down, but come with an unforeseen issue. However, without the right foresight, DevOps and IT teams may lo...
"There is a huge interest in Kubernetes. People are now starting to use Kubernetes and implement it," stated Sebastian Scheele, co-founder of Loodse, in this SYS-CON.tv interview at DevOps at 19th Cloud Expo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
In his session at 20th Cloud Expo, Mike Johnston, an infrastructure engineer at Supergiant.io, will discuss how to use Kubernetes to setup a SaaS infrastructure for your business. Mike Johnston is an infrastructure engineer at Supergiant.io with over 12 years of experience designing, deploying, and maintaining server and workstation infrastructure at all scales. He has experience with brick and mortar data centers as well as cloud providers like Digital Ocean, Amazon Web Services, and Rackspace....
Today most companies are adopting or evaluating container technology - Docker in particular - to speed up application deployment, drive down cost, ease management and make application delivery more flexible overall. As with most new architectures, this dream takes significant work to become a reality. Even when you do get your application componentized enough and packaged properly, there are still challenges for DevOps teams to making the shift to continuous delivery and achieving that reducti...
Modern software design has fundamentally changed how we manage applications, causing many to turn to containers as the new virtual machine for resource management. As container adoption grows beyond stateless applications to stateful workloads, the need for persistent storage is foundational - something customers routinely cite as a top pain point. In his session at @DevOpsSummit at 21st Cloud Expo, Bill Borsari, Head of Systems Engineering at Datera, explored how organizations can reap the bene...
Is advanced scheduling in Kubernetes achievable?Yes, however, how do you properly accommodate every real-life scenario that a Kubernetes user might encounter? How do you leverage advanced scheduling techniques to shape and describe each scenario in easy-to-use rules and configurations? In his session at @DevOpsSummit at 21st Cloud Expo, Oleg Chunikhin, CTO at Kublr, answered these questions and demonstrated techniques for implementing advanced scheduling. For example, using spot instances and co...
Docker is sweeping across startups and enterprises alike, changing the way we build and ship applications. It's the most prominent and widely known software container platform, and it's particularly useful for eliminating common challenges when collaborating on code (like the "it works on my machine" phenomenon that most devs know all too well). With Docker, you can run and manage apps side-by-side - in isolated containers - resulting in better compute density. It's something that many developer...
In his general session at 19th Cloud Expo, Manish Dixit, VP of Product and Engineering at Dice, discussed how Dice leverages data insights and tools to help both tech professionals and recruiters better understand how skills relate to each other and which skills are in high demand using interactive visualizations and salary indicator tools to maximize earning potential. Manish Dixit is VP of Product and Engineering at Dice. As the leader of the Product, Engineering and Data Sciences team at D...