Many experienced developers have started with cross platform tools in the early days of mobile apps – and most were not satisfied with the results.
Good thing that David later found out about Ionic when mentoring students, and decided to give it a try. Now David is able to build a variety of apps, especially successful in the area of firefighters where he can make a real change with the tools he provides.
Read Davids full story below!
Who are you?
I’m David Geller. I’ve been developing software since high school which, for me, was a long time ago. I’ve been fortunate to have been involved in some awesome projects over the years and to work with some well known software developers. One of my first jobs was working for a company that was the first commercial licensee of UNIX. Much later in my career I worked for a Paul Allen (Microsoft co-founder) company named Starwave where we built some of the earliest content management and publishing systems for web sites, and built out ESPN.com, ABCNews.com and many other popular sites. Starwave also developed it own commerce and advertising management systems. I’m also a serial entrepreneur and tinkerer.
What is your current job position or role?
I developed and built a company that I sold in 2010 that allowed me to pursue interests and projects that held personal interest for me. I also trained to become a firefighter and EMT and continue with that today as a reserve firefighter.
How did you get into mobile apps?
One of the companies I started was named Eyejot and was the first platform agnostic asynchronous video message platform. With the help of Adobe Flash the Eyejot client was able to run on both Windows and Mac systems. At the time there weren’t any smart phones and flip phones were just starting to support embedded cameras. After the iPhone had come out and Android phones started appearing our users requested a mobile client. So we started exploring our options and discovered a platform named Titanium, from Appcelerator. They were attempting to do what Ionic is doing today. So, we pursued that platform and built a client for the iPhone. It was semi-successful, due in part, to Titanium’s aggressive upgrade strategy that, unfortunately, often introduced sweeping API and architectural changes every few months. Ultimately we viewed our use of Titanium as a failure and realized that we should have built a native iOS. By that time, though, Eyejot was being retired. Would today’s Ionic have been a better solution than Titanium or a native app? On many levels, yes. But, video recording remains challenging for apps built with tools like Ionic, even today (inside a PWA). Though, iOS 13 has introduced some browser-based media management features previously found only in developer versions of Safari. So I’m hopeful there may be options for building Eyejot-like apps, with Ionic, in the near future.
Why did you chose Ionic?
I’ve been mentoring startup groups at the University of Washington’s Foster School of Business (located in Seattle, WA) for several years. One of the startup groups I had the pleasure to work with a couple of years ago had been building a mobile solution for restaurant ordering. They had developed a clever, stylish solution, and had built it with Ionic 2. I had never heard of Ionic before that and was, at first, quite doubtful of its value and potential, based upon my prior experience with Titanium. What ultimately turned me around was using what they had built and seeing Ionic’s superb documentation and robust set of UI components. With an open mind I set out to build my own app and discovered how quickly I was able to do so. I was really impressed with how well it the platform worked and how rapidly I was able to transition creative ideas into actual, working applications.
How did you initially learn Ionic?
Most everything I learned about Ionic came from their site, their documentation and helpful YouTube videos from enthusiasts like Simon Grimm, Josh Morony and many others.
Why did you join the Ionic Academy?
Your videos have always been extremely informative and well produced. They often exposed me to tools I could use with Ionic that I hadn’t previously been aware of. Your more detailed overviews of features and techniques have been invaluable. I learned about image cropping through you and used it with great success in one of my mobile apps.
Which feature of the Ionic Academy do you like especially?
I really enjoy your quick-win YouTube videos. I watch almost all of them, and generally come away having learned something valuable every time.
What apps did you build with Ionic?
My most successful app, to date, is used by several Fire Departments in the Seattle area to manage staffing and scheduling. It was built in concert with a company devoted to building scheduling and training solutions for fire departments. We worked together to build an API that my Ionic app could use to communicate with their back end. Hundreds of firefighters rely upon it daily and there are plans to expand it to serve additional functionality and reach a larger number of organizations.
My most complex app is https://pnwboating.app and serves recreational boaters in the Pacific NW by providing them with a directory of marinas, fuel depots, and clubs as well as guidance for emergency events and trip planning. In terms of device sensors, it supports GPS for location-aware searches and the camera for capturing photos (which can be cropped thanks to CropperJS). It also integrates with DarkSky for location-specific weather forecasts.
A recent app that I shared on your forum is https://rescueme.app. The department where I work as a reserve firefighter has a coverage area of approximately 200 square miles, East of Seattle. We often are called to perform trail rescues and GPS coordinates are often determined and shared with using a variety of coding formats – which can be confusing and difficult to manage. So, the RescueMe app was originally designed with the first responder in mind and uses a library named ‘coordinate-parser’ to help parse all the ways in which people encode latitude and longitude. However, it became clear that there was value in providing a resource for end-users that might need to determine their own position. So, the app services both sides of the emergency. Recently I added support for What3Words and UTM coordinates.
What were the biggest challenges with that app?
With any app the biggest challenges are usually the user interface. How do you provide the functionality that’s required in a manner that’s simple to use. Once the RescueMe app was modified to serve both end-users and first responders, how could I adapt the interface to support them both? I ultimately created an interface that favors the end-user but allows first responders to modify the start page for when they use the app. A more recent feature has been to support the import and management of custom trail-head markers. For that I utilized the sheetjs library to support parsing of Excel files. It took a little while to get that working, but it was well-worth it.
How did the Ionic Academy help you?
Your coverage of Ionic’s Capacitor was incredibly useful for working with GPS positional information.
Do you plan to develop more apps in the future?
Of course! Many more planned! Let me know if you need any screen shots!
If you still fear cross platform looks like Titanium 10 years ago, you should give Ionic a try. With a lot of comfort out of the box, you could be the next developer to provide supportive apps for your local community, build your own business and help the community!