Oasis Digital has been monitoring coverage of the unfolding COVID-19 (coronavirus) situation. Our plans are described here, and will evolve as needed.
About five years ago (it feels like forever) Oasis Digital started training on Angular. Our flagship course Angular Boot Camp has become quite popular, we’ve taught it many hundreds of times to many thousands of students. For the first few years, this offering was a perfect fit for almost every company that contacted us, as software teams were initially adopting Angular. Over the last few years though, Angular has become mature and robust, and Angular has achieved broad adoption across organizations large and small. Aggregate needs of Angular teams inevitably shift toward bigger scale, more difficult and important uses of the technology.
As a result, our training efforts have substantially pivoted toward more advanced topics.
Oasis Digital is pleased to announce that…
…we are publishing extensive example code that we use in Angular Boot Camp. This example code is available under an open source license (in case you want to grab a bit to use in a project), and is hosted on GitHub for easy browsing and instant editing on StackBlitz:
We’ve published 49 examples so far, with more coming. Why are we publishing this?
- For students to peruse before class, to better understand what we teach.
- For students to review after class, as a reminder of what they learned, and to grab code snippets.
- To provide working, up to date, concise examples of Angular concepts for anyone in the community who needs them.
Here’s a one minute video showing just how easy it is to browse the examples, run them, and view/edit the code:
Or, “why we don’t teach Aurelia”
Here at Oasis Digital and its sister company (Expium), we offer training and services concentrated around various languages and frameworks:
- The web platform in general
- JIRA, Confluence, and other Atlassian products (Expium is an Atlassian Solutions Partner)
There are many reason – technical, history, intentional, and accidental – around how we ended up with this set of technologies as our 2017 training and consulting focus.
I was reminded of one key factor today while watching a video from last year of a talk by Rob Eisenberg. Rob is exceptionally sharp, and seems to have a good sense of taste in designing frameworks for developer satisfaction. But I found myself in disagreement over his thoughts around web framework adoption. Rob argues that frameworks like his (Aurelia) are stronger, better choices to build on than frameworks like Angular and React, because first-party training and support services are available for Aurelia from the makers of Aurelia. This initially seems like a compelling pitch, I can see how it would woo some decision-makers. Here is a snippet of one of the slides along these lines, pointing out first party training as an advantage:
But I think ultimately this works out much less well than Rob describes. Why? Because this first party set of training and consulting offerings leave less space for a thriving commercial ecosystem to develop around a framework.
Let’s look at Angular for example. Here at Oasis Digital, we aim to be a leader among many firms around the world, who provide training, consulting, etc. for Angular. Our customers are quite happy with the availability of these services from many different companies; it reduces their risk and means they can shop around for the best fit. Moreover, because Angular has created opportunities for companies like Oasis Digital, it has facilitated a growing commercial ecosystem revolving around the framework. Much the same applies, for example, to React and Vue.js. This is a virtuous cycle. The non-service-offering core team leaves room for others to provide services, which in turn makes it easier and safer for customers to adopt the framework.
(A second example at Oasis Digital’s sister company Expium: Expium focuses entirely on the Atlassian product suite. While Atlassian offers online video training options, Expium’s offerings include things like live human training that don’t compete directly with Atlassian’s offerings. Atlassian enjoys a thriving commercial ecosystem.)
Of course it would be possible for companies like us to offer training and consulting focused on Aurelia. But we don’t want to do that; we like the people responsible for the framework. If we offered services for Aurelia, we would have an inherently competitive relationship with the company behind Aurelia, vying for the same customer opportunities.
This situation applies to various other frameworks and other technical specialties that we could choose to focus on; with so many choices, it inevitably feels wiser to choose those where we can be allied with the core teams rather than in competition with them.
I believe that overall, this is quite important in understanding why some frameworks gain enormous momentum and others do not. Creating this kind opportunity for a commercial ecosystem is an immense competitive advantage to those companies who can offer a framework without needing to build a business directly around it – like Google and Angular.
Here at Oasis Digital, a sizable portion of our work revolves around AngularJS and soon Angular 2: writing software, reviewing software, consulting, teaching classes. Our Angular classes are described in detail at AngularBootCamp.com – as you can read there, our classes are taught by professional, expert developers.
Our Angular classes have proven quite popular – to meet our customers’ needs, we plan to hire additional developer-instructors.
- Extensive experience with AngularJS, deep familiarity with a broad range of its features.
- Work history predominantly as a software developer and leader.
- Experience presenting to groups of people: in a classroom setting, in technical talks, or similar.
- Interest in teaching.
- Experience with a broad range of software technologies, on both the client and server tiers. Our training engagements sometimes include a consulting element, working closely with our customers’ developers to understand how Angular fits into their overall solution.
- Availability for travel to customer sites, etc.
- The usual legal requirements, such as the right to work in the United States (and possibly elsewhere)
Full-time or Occasional Contract
Our classes are mostly taught by our full-time developers. If another developer/instructor joins us full-time now, they would need to be ready for a busy teaching schedule (though still leaving time to write software).
We also welcome applicants currently working as independent AngularJS consultants/contractors, interested in teaching classes from time to time. Such contractors would also need to devote time to interact with our core team, to build the shared deep understanding of Angular that our customers have come to expect.
If this sounds right for you, please email us – see our contact page. Even if you are not ready to jump in right now, feel free to get in touch about the possibility of future work.
Earlier this year, we started offering some of our classes (most prominently Angular Boot Camp) online as well as in person. We intentionally waited to offer an online option until our classes were well proven as live, in-person events, with the goal of making the online experience capture as much of the quality from the personal event as possible.
Many prospective students have emailed or called us to ask about the trade-offs between the in-person versus online options. Here are our thoughts.
Our classes offer and include lots of hands-on experience, pausing after every few units of teaching for an exercise. During in-person classes, our instructors walk back and forth around the room, keeping an eye on everyone’s progress and offering assistance. In offering an online experience, we were concerned about how well this aspect of the class would transition, and explored numerous approaches to capturing this experience online.
Our solution is to invite each student to use a “cloud IDE” to perform the exercises, and then to make their cloud workspace available to our instructors. Using this approach, we have found that (surprisingly) our ability to assist students during workshops is possibly even better online than it is in person. This is such a compelling result that we sometimes even persuade in-person students to use such an online IDE.
An in-person class can be highly interactive, and ours are especially so, because all of our trainers primarily work as practitioners – question-and-answer is our specialty. So far, students have been very pleased with the level of interactivity in online classes also. We keep a chat room open during online classes, to make it especially easy to interject a question; in fact sometimes it is even a bit easier to ask a question in an online class, because the student can always do so without risk of interrupting the instructor, and instructors can look back at the online chat record to avoid skipping over an important question.
On the minus side, back-and-forth discussion is slightly less fluid online; so overall is probably a wash.
Long, Hard Questions
At in-person classes, our instructors often engage in deeper side conversations about long or difficult questions during breaks or before class. This does not work as well online, so if you have a lot of hard questions, an in-person class is probably the better option.
Depth and Breadth
Given the same total class time, we typically cover slightly more material in our in-person classes. We don’t have a metric to say whether this is a trade-off with the depth of coverage, or whether it is a consequence of slightly more time-consuming transitions between lecture and workshop, around breaks, etc. with online classes.
Overall, we estimate that our online classes are at least 85% as good as “being there”, and possibly up to 95 or 100%. We encourage students to choose between the two options based primarily on their own travel availability, timing, etc.; we have plenty of satisfied students for each.