Oasis Digital developer hiring process

Candidates keep asking: what is the process, to be hired at Oasis Digital as a software developer? I believe our process is solid, realistic, and strikes a good balance between speed and depth. Yet merely knowing what the process is, isn’t some great competitive advantage, there’s no reason to keep it secret. Good results flow from […]

Angular Boot Camp Unleashed

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 […]

Now Hiring – Angular and more

We’re looking for more great developers to join our team. All the usual information is available on our careers page. All the info is there of course, including a video explaining more about working here. But you’re already reading this blog post, so here is the essence again: Our core, in-house full-time salaried team works […]

Printable reports in a Node application

Imagine your shiny new web application, JavaScript from end to end (perhaps Node plus Angular/React/Vue/etc) offers a great set of features and a highly interactive user interface. Then a key decision-maker wanders by to praise the interactive features and ask where they click to obtain detailed printable reports like those generated by all the predecessor […]

Loopback 3, TypeScript, and Custom Connectors

Loopback is a powerful Node.js API framework built on top of Express that comes with a lot of functionality in-the-box. Recently, I gave a talk about creating APIs with Loopback in the context of building Angular web apps. In that talk I created a vanilla Loopback API using the Loopback CLI and connected the resulting […]

Software Product Quality at Oasis Digital

A long-studied topic Decades ago, business guru Philip Crosby famously defined quality as “conformance to requirements”. This definition seems useful in software development only to the extent every aspect of the software has been comprehensively understood and written down – rarely the case in real projects. Fewer decades ago, software and consulting guru Gerald Weinberg […]

CSS grid with Angular and CLI – the time is now

Today, early December 2017, is the time to begin using CSS grid for layout in Angular applications, even if they must support Internet Explorer. We can stop enduring the costs and delays of old “float” based CSS layout, and get better results with less work, using CSS Grid – even with Internet Explorer support requirements […]

Angular routing – advice for real applications

There are plenty of examples and documentation about the Angular router, but these things sometimes leave important questions unaddressed.  Documentation often intentionally demures from questions like “what is the best way to use this?”. Even my own previous post briefly reintroducing the router does the same. Here are our recommendations from extensive use (at Oasis Digital, […]

Angular routing, a basic Q&A

At Angular Boot Camp, we thoroughly introduce and teach the Angular router – over the course of 3 days, spread out into relevant bits and pieces of other learning. Outside of class though, customers ask a straightforward question: What is the Angular Router, and why should I care? To answer that, this post is a […]

Software Demonstration and Project Status: Use Video

At Oasis Digital, custom software projects work at various cadences: weekly, biweekly, or sometimes in variable-length cycles. Regardless, at each interval or milestone it’s important to deliver a comprehensive demonstration and status update for our project customer. Live demonstrations considered harmful Unfortunately, the most obvious way to deliver demos and status updates does not work […]

Angular Runtime Performance Guide

Co-authored by Paul Spears and Andrew Wiens 1.0 Introduction Smooth, highly-responsive interfaces increase users’ confidence in an application and create an overall positive experience. Whereas small applications with simple interactions are built without a focus on runtime performance, standard approaches sometimes do not scale well as the data size or feature complexity increases. A common […]