When does recursion in a frontend framework make sense, can it be a practical solution to your problem, and how do we do it?
Joining a new team can be daunting. This article serves as a guiding light for developers joining new software teams or companies and is meant to improve your onboarding experience. It goes through an entire walkthrough of what to expect between different milestones at your new company, not to mention a comprehensive checklist of what you should be focusing on during your onboarding process. Have a look!
In this article, I discuss seven principles for minimizing the time and money spent building a mobile app. If you're looking to build an app, are pressed for time, and don't have an unlimited budget, keep reading!
Providing an internship to junior developers comes with a wealth of challenges and rewards. I share tips on creating a well-rounded internship for juniors while reflecting on our most recent experience hosting interns at a software consultancy.
What really makes crunch time different from what we deem normal and how did we successfully end up with a functional prototype that met all of our client’s requirements?
Does your API need a REST from all that polling? You can improve real-time communication between web services using your REST API and the REST Hooks pattern.
Dispelling complaints about daily stand-up and tips for making the most out of your scrum.
A tutorial on how to hack in a tooltip, a static Y-Axis, and truncated bars into a Recharts graph.
Over the past year, Olio Apps has made a commitment to changing our company culture around working remotely. We’d seen other teams enjoy success by going fully or partially remote, but for us, working outside the office felt like an inconvenience. We wanted to change that, and we knew that we had the technology to make it a reality.
In a typical software life cycle, most projects begin as a bouncing baby prototype and later develop into a strong, trusted production application. At these two distinct stages of software development, the priorities, pace, and coding practices can differ greatly. Understanding these nuances and properly planning your prototype to transition into a product can save you a lot of time and money. And by protecting your bottom line, it can increase your chances of project success.
I spent the weekend making a technical design and implementing it to challenge myself and evaluate a few different unfamiliar libraries.
Wellness or well-being is the state of being comfortable, healthy, or happy. This state of well-being can exist in one's life as a whole, as well as in each arena of a person's life, eg. they have a state of well-being in their social life, their home life, their emotional life, and their work life as say, a software developer.
A technical and philosophical approach.
As a software engineer, I find my self torn between two seemingly opposite goals: becoming a master of the skills that I already have and also constantly trying to learn new things. And I'm definitely not alone.
Another quarter, another chance for the staff at Olio Apps to try their hand at hacking together a project over an 8 hour work day in a friendly competition. If you haven't seen our first attempt at a Hackathon, check out our previous blog post on it here. We enjoyed the experience so much, we decided to make it a quarterly tradition as a way to bond, break out of our normal developer mindset, and come up with new ideas or learn new tools.
When you have a new idea for an app, you want to get feedback from users as quickly as possible to see if the idea has legs, and start refining it. The best feedback comes once people try it.
Sitka is a small but powerful framework for state management. It organizes your application into modules, each managing a logical area of state. It builds on top of Redux and Redux Saga, giving you all the benefits of those tools without the boilerplate.
Recently, Olio Apps took a little break from our regularly scheduled programming (😜) to do some hacking. We broke off into teams two, designed and built projects over the course of a pizza-fueled "work" day.
We love TypeScript. I’ll get into the reasons why later. And we love virtual reality. Being able to create WebVR experiences has been a focus at Olio Apps this year. This lead us to create a set of tools to help developers to make A-Frame experiences using TypeScript.
A-Frame TypeScript Toolkit makes it easy to build standalone components and systems that can be used in other A-Frame projects.
Here at Olio Apps, we have taken the next step into the world of augmented/mixed reality and added a Magic Leap to our catalog. This decision was driven by our interest in the mixed reality space and the possibilities of the domain.
At Olio Apps, we are eager to present our first tool for creating scalable WebVR applications. Our experience engineering web and native apps along with our motivation to develop in the virtual reality (VR) and mixed reality (MR) space has brought us to create
aframe-typescript-redux. This tool combines the crowd-favorite WebVR framework, A-Frame, with the powerful state management tool known by many 2D developers, Redux.
When Cory and I decided the make the transition from our previous career fields to development, one of largest deciding factors in picking a code school was career services and job preparation. We both chose Epicodus because it offered an internship as part of the schooling process, which is how we were both placed at Olio Apps.
I wrote git-format-staged to apply an automatic code formatter or linter to staged files. It ignores unstaged changes, and leaves those changes unstaged. When run in a Git pre-commit hook git-format-staged guarantees that committed files are formatted properly, and does not clobber unstaged changes if formatting cannot be applied to working tree files cleanly.
We recently had a new intern at Olio Apps and during the first couple days they were given a mini coding exercise to work through. By way of Friday afternoon banter, this was extended as a challenge to the rest of us devs to come up with our own solution. I wanted to write down my approach to solving this problem because it may be useful for some student, intern or Jr. dev preparing for an interview.
Envision the following scenario: you are working away at the final 5% of a project, glad to be near the end, when you catch the first hints of unexpected changes coming in the near future.
Automated browser testing with Selenium can be a developer's best friend, and at the same time, their worst enemy. Tests that once seemed to work well can mysteriously start to break, fail only sometimes, or slow to a crawl. But, your relationship with Selenium doesn't have to be so complicated.
The shape of data defines a program. There are important benefits to writing out types for your data. Let's consider a Hacker News client...
...I pinched my fingers together and placed a ballerina on the desk in front of me. With a swipe of my hand, the little ballerina disappeared and the office transformed into Rome.
I am always interested in making my coding process faster and more robust. I want to be confident that my code will work as expected. And I want to spend as little time as possible debugging, testing, and hunting down pieces of code that I forgot to update when I make changes to a project.
Code documentation is the collection of easy to understand images and written descriptions that explain what a codebase does and how it can be used.
Pull requests are an essential collaborative tool for modern software development. I wanted to capture the kinds of questions a developer should ask themselves before asking another developer for a peer review.
While writing about optimizing data for performance, I rewrote my transformation function a few different ways and benchmarked the performance of each. Wow! The results were surprising.
Sometimes APIs return data in a form that's not ideal for the client. We can deal with this by applying data transformation functions to the incoming data, to reshape it into exactly what we need.
We frequently work on front-ends along side other teams building APIs. Sometimes those APIs are not yet available. But deadlines and sprint demos are approaching. Are we to sit around twiddling our thumbs? Nope!
2017 was a big year of growth and change for Olio Apps!
At Olio Apps, we use the technical design process to understand a problem, and to formally articulate a solution that is possible to validate with oneself and with one's collaborators.
A few gotchas with the interaction between the
fetch APIs, for those used to