Lessons 🔗

Overview 🔗

Here we provide a number of training lessons, each consisting of:

  1. Purpose
  2. Learning Material
  3. Exercises
  4. Discussion
  5. Improvements and Completion Pull Request

The purpose section of the lesson explains its importance.

The learning material is usually external articles, book chapters, and videos. If you skim familiar material, do so judiciously.

The exercises are meant to strengthen your understanding and help you identify holes in your knowledge. Some are questions, others are tasks. Nobody will see your answers, but we recommend writing them in a notebook before revealing the provided answers.

After completing the lessons, you will discuss the lesson with another Innolitics team member.

Finally, you will contribute improvements to the lesson via a pull request. As part of this pull request, you will also record in the article’s YAML front-matter, that you completed it.

Innolitics Culture 🔗

These lessons are meant especially for new members of the Innolitics team. We are excited to have you on board!

Our Mission, Values, and Handbook

Innolitics is mission driven. In this lesson we examine our mission, how we attempt to fulfill it, and our values. We familiarize you with our company handbook and its most relevant policies.

Contributing to Our Website

Some of the best ways to contribute to Innolitics outside of client work—writing articles, improving our training program, or polishing our handbook—involve updating our website. This lesson will introduce you to Jekyll, the static site generator that produces our website, and show you how you can contribute to website updates.

Learning to Learn 🔗

These “meta” lessons focus on how to effectively learn new technologies.

Reading Protocols and Standards

While not as precise as computer source code, protocols and standards can be a great resource from time to time. In this lesson, we spend some time learning about RFCs, how to read them, and then explore RFC 3986, Uniform Resource Identifier (URI): Generic Syntax, in detail.

Process 🔗

These lessons focus on the design and development processes we follow at Innolitics.

Figma, White-Boarding, and UI Design

In this lesson we discuss Figma, a collaborative drawing tool, and how we use it for UI design and diagrams.

Core Technologies 🔗

These lessons focus on the fundamentals of technologies we use frequently at Innolitics.

Intermediate Python: Dunder-Methods, Decorators, and Context Managers

In this lesson we learn about dunder methods, decorators, and context managers in Python. These tools, when used properly, can help us to write concise, readable, and expressive code when working with complex objects, higher-order functions, or scoped side-effects.

Future Lessons 🔗

Learning - How to Read 🔗

Learning - Source Code 🔗

Learning - Man Pages 🔗

Writing - Removing Clutter 🔗

Writing - Comments, Commit Messages, and Documentation 🔗

Client Matters - Quality Work is not Quality Service 🔗

Client Matters - Requirements vs Specifications 🔗

Medical - DICOM Intro 🔗

Medical - HL7 🔗

Medical - Imaging Physics Overview 🔗

Medical - Image Processing Basics 🔗

Quality - Risk Analysis 🔗

Quality - Usability Engineering 🔗

Core Tech - HTML 🔗

Core Tech - CSS 🔗

Core Tech - Linux Fundamentals 🔗

Core Tech - Git 🔗

Core Tech - Bash 🔗

Process - Agile 🔗

And Many More!