Published on

Project Update

Authors
  • avatar
    Name
    Andrew Kallinikos
    Twitter

It's been awhile since there has been an update on here. The project is not dead. Currently, as I am a team of one, development can be significantly impacted by life events. I had to work longer hours during the beginning of the summer to meet a project deadline. This limited my development time as well as my desire to develop after a 12 hour work day. Once the project was completed, my girlfriend and I purchased our first home. Between work and fixing up the new place I had no time to even think about writing code.

App development is not all writing code, there is a lot of planning and decision making involved on how to create the best experience for users. While I was stuck painting walls and installing lights, my head was in the clouds thinking about how to develop this application once I was settled in.

Privacy

This is one of the most important topics for me. For an AI to learn you need to supply it data, there is no way around that. If you want to create an app that will tell someone the conditions are right for them, it not only has to learn a spot, it also has to learn about and “know” that person to a degree. From the beginning I have thought a lot about how to handle user data.

Machines have gotten very good at learning what someone likes and what someone may like (think YouTube and Instagram suggestion algorithms). Unfortunately the people behind these machines don’t always have the best intentions in mind. There are far too many apps that collect an unnecessary amount of personal data and sell it to shady advertisers.

I have thought and continue to think about the minimal amount of personal data I would need to collect to make the app function well. I have also thought a lot about how to protect it from malicious actors. I will be transparent on what kind of data is collected and what I am doing with it. There is a lot more I can go into on this topic, but I think this warrants its own post.

Accuracy of Data

Our little server has been chugging along collecting forecast data we can use later on. When Covid struck, I noticed some of the major forecasting sites became very unreliable in predicting conditions. In general, weather forecasts all together became less reliable and this was due to a lack of air traffic. How do aircraft affect weather forecasts? They act as flying weather stations, reporting data back for forecasters to update models with.

Surf forecasts got so bad, I pretty much ignored whatever the major sites were saying and started using short term raw data to come up with my own forecast. While this is great for developing a surf forecasting app, it got me thinking on how to harden this application against shifts, especially since forecasts will eventually be handled by a machine that does not know about outside world events.

The great challenge this app is taking on is creating a service that will accurately and reliably tell you when and where to score.

Reliability, Scalability, and Sustainability

As this app grows in users and regions, it will need more resources too keep up with the increased demand. One thing I am keeping in mind is creating the proper foundation to create this app upon. It’s likely this app never sees more than a few users, but hopefully one day it is widespread among many. Regardless if it’s just me or millions. the goal is to create an app that works and works well.

A lot of thought has gone into what languages, frameworks, and methods to develop with. Additionally there will be a point we need to move on from our little raspberry pis and host on more reliable and powerful machines. As much as I love the DIY nature of this project, eventually my time will be better spent creating features, and spending less time on server maintenance and upkeep.

Coming Soon!

Its been awhile, but I’m excited to get back on track with this project. In the somewhat near future I am hoping to get a pre-alpha launched for people to play around with. Unfortunately, this will not be open to the public for testing. As the app develops, I will release a post talking about the features and what to expect, as well as start letting more people sign up!