This Saturday, we had an AMA “Ask Me Anything” with Cameron Carmichael Alonso in the ATC Education Group Workshop, where our members got a chance to ask him questions.
How did you get into programming?
I got into programming out of sheer curiosity, more than anything. I always enjoyed seeing how things worked, and having family work in technology was a big driving factor, as I got to see things being built quite closely. I played around with web dev when I was younger (back in the FrontPage days, that was a while back!), before getting curious about iOS and mobile development when these became more prominent.
I properly learned to program back when I was in high school, I had a free summer and had wanted to try building an app for a while… so I tried some tutorials and played with some libraries to get a feel for things. Eventually that lead to me building LiveFlight, which was a big step to getting me to where I am today.
How long did it take you and the team to create the new UI design?
Laura worked on this mostly. The main difficulty when changing the UI is to keep it familiar enough for existing users, whilst making it work nicely on the wide variety of display sizes we support. I think we iterated for just over a month before finalising.
How do you stay productive and get things done?
Nice question, it’s something we deal with being remote workers, and an area I’m always trying to improve on myself. The main thing is to be passionate about what you do, and then most of the productivity stems from there.
I’m in university at the same time, so my first job is to prioritise tasks from work and uni, and designate time for each at the start of the week. I use Todoist mainly to keep track of what I need to do, as I can assign it by day/time, tag and associate with projects. It’s super useful.
A bit part I found as well is associating different locations with different tasks. For example, I work out of a co-working space, which I associate with all my Infinite Flight work. Sometimes, if I’m not coding and working on some general admin, I find a coffee shop to be useful.
What’s the most challenging thing for you when you’re developing content for Infinite Flight or LiveFlight?
Time management. There is always a lot of things I want to do and not enough time to do them all, sadly.
What are your plans for the future of LiveFlight? Anything you can share already?
Lots planned! I am working right now on a new backend, where I streamline a lot of the “chunky” operations so everything runs quicker. My main frustration is the speed, most of the code was written by a younger, less experienced me. Hoping to get this deployed early next year.
I’d love to rework the web version as it’s a little dated and could do with a lot of optimising. Hoping for early next year too.. but we will see.
I have a few cool things that I started working on for the iOS app, so stay tuned!
What is the hardest part of being a website developer?
Hardest part is probably keeping up with how vast the web platform is. There are always new web libraries, new web browsers to test on… it all moves at a fast rate, which means a lot of testing and evolving as the website iterates.
We’re working on some new features for the Infinite Flight website now which required me to rewrite how we handle URL routing (the thing that translates your URL to a specific page on the website). It’s rewarding as you see results, though.
You have been with Infinite Flight since its earliest days. How did you find them (or, how did they find you)?
I started out as a user! Right when I got the app on iOS, they put a call out for Android beta testers and I got in. I was very active there for a while, we tested cool things like early iterations of multiplayer and the 737, 777…
Laura pinged me with an early version of the API, which I used to learn to work with mapping… which lead to LiveFlight! I was still in high school at the time, but I was able to start working with Infinite Flight as soon as I finished.
Obviously, one of the hardest aspects of building a sim on a mobile platform is lower performance specs compared to other platforms. If any, what are the most frustrating limitations of developing a mobile flight sim?
I think the most frustrating part for me is dealing with changes between iOS/Android, different screen sizes, etc. From a UI perspective, it adds some complexities. But on the bright side, working on mobile means our sim is incredible optimised. It’s quite cool the level at which we achieve this.
How do you feel about the direction IF is going in regards to future plans?
Some things are too early to talk about, but we have some exciting things planned (both in terms of content and features). I feel quite excited since we are in a unique corner of the market, and I really love what we build!
How do you feel about the members of the community who always nag on Infinite Flight before their work is even done or released? There is a line between feedback and just being a simp, so more specifically how do you feel about the latter?
That’s a nice question. It’s a part of what we do (for better or worse), and there is always some useful feedback in a sea of comments.
I think the A350 was a cool experiment to see how early we can show things to people, these things take time and some people won’t understand that without having experience. Some comments are also just not possible to respond to.
That said, I always believe that everyone should have some programming taught in school, as the logical skills you can acquire from it are really useful to understanding how a lot of things work.
What’s your favorite aircraft in the fleet?
I love the 787 something about it is just so cool. Would love to see that have a live cockpit someday.
Favorite staff member?
Hard question, they’re all lovely!
Besides the clock you worked on with the 172, what else have you worked on with the 172 you can share?
I worked on the GPS for the steam gauged C172. It’s a Garmin GNX375, cool piece of tech.
I built a couple of the things in the A350 which hopefully we can share more of soon.
Any plan to bring LiveFlight to Android?
I would love to, but it’s not too high on the priority list right now. It’s a lot to keep maintained being just myself.
I will probably improve the web version as a first step and hopefully can base an Android version off of some of that code.. I can report more early next year.
In what ways has your thinking been challenged or changed by working with Infinite Flight and the community at large?
Working at a global scale has always been something that fascinated me. There’s a bunch of different timezones and different cultures thrown into the mix, so I always find it interesting to see different approaches to problems. Definitely an exciting work culture!
Being able to travel to events and meet people like you has also opened my mind quite a lot, it is cool to hear about how people use Infinite Flight differently in widely varying stages of life.
What’s one thing a co-worker has done that surprised you in terms of how you perceive a task or challenge?
I feel like I need more time to think about a good answer for this one. Most examples I can think of come down to a technical level of how we implement things to be efficient, or working with different skill sets across the company.
What do you expect to get out of/discover in the future with your relationships with friends and co-workers here? Do you find that your personal growth has been augmented by that?
I enjoy the uniqueness of people and it’s cool to hear about how their lives change with Infinite Flight. Being at Cosford this year made me think how cool it is that everyone in that room were there because of our shared love of aviation, and it does help my personal growth.
Is it hard to learn programming and to design and build aircraft?
It has it’s challenges like everything, but it isn’t impossible. Check out something like codecademy.com if you want to try learning! Great skill to have.
Can’t comment for aircraft design though, 3D modelling is one skill I definitely don’t have.
If you’d like to join in discussions such as this with like-minded people like yourself and experts in the field, to learn and improve, I’d encourage you to sign up for our Workshop.