Cloud Messaging

Ah, Cloud Messaging. What fun. I have gotten this to work in React Native on Android, and I thought well gee, I should use this in the web version too! But it doesn’t work in IE, and even in Chrome it only works over https (which I don’t have in my development environment), and you need a service worker, blah blah blah. This is starting to sound like a pain in the ass.

So then I thought OK, what do I do when I can’t do cloud messaging? Web sockets? Polling? Polling seems horrifyingly primitive, but it’s super simple, and it will always work if the server is working at all. So I’m going to need it as a fallback anyway in case whatever web socket garbage I’m going to need isn’t available. I’m not totally convinced that web sockets are more efficient anyway. I mean I’m supposed to have a socket connection open to every single person using the web app? At least with polling, not everyone is connected at once, and I can tell them to poll less frequently if things are getting out of hand. I could exert some control over how many web sockets I have too, by kicking out the idle ones as new ones come in… but then all the disconnected web sockets are going to be knocking on the door again when they become active, and it starts to look a lot like polling! So I may as well just do it.

Mostly Live

I have the web version of the app running, and while it is pretty gruesome, it seems to mostly work so far, after a few bug fixes. This is going to be a long process. But it is live! Nobody is going to see it yet, because I am not advertising it anywhere. I think the chances of someone stumbling upon it by typing in the URL randomly are pretty low. Once I have the mobile app ready, then maybe people will stumble across it in the play store.

But regardless, all the pieces are in place. I have found that the process of publishing from eclipse to tomcat is very “sticky”. As in, it is a cumbersome process just to publish a new version. I usually have to delete and regenerate things at several steps in the process, or else I end up still running the old version. So I need to figure out a better process for that. Other than that, though, things are going pretty well so far.

Going Live-ish

My dear old mac mini acted like it was dying this weekend, so I decided to take the leap and move to the “cloud”. It’s 5 bucks a month so I get to have one less Starbucks a month, and the domain name was a dollar. Hard to argue with that price. I have since found out you can get domain names for free, so I suppose I overpaid.

Anyway since my last post I wrote a mobile app for the dating site! I used react native, which is pretty easy to pick up except that my programmer-level graphic design skills are somehow even more on display. So things are going to be pretty ugly at first. But what are ya gonna do, you gotta start somewhere.