Another reason not to return a 404 in that case is that chances there will be monitor tooling in place that will treat a 404 as an "error" that will show up in your alerting, but would not be ideal; it will just be noise.
In my 40s. I feel that way too sometimes. My advice: try new things! I just started motorcycling; signed up for MSF course, got a used bike and it’s awesome. I play beer league hockey and that one night a week playing and being with the boys is precious (and theuropeutic…in a house with only daughters and wife lol). Snowboard in the winter…got my kids into skiing…golf in summer…LeetCode for fun to keep my mind/coding sharp. You get the idea. My day job (Android coding) is kinda mundane and is really just for the paycheck…and so my personal philosophy of life is to keep trying new things, diverse things, not being afraid of new things, and just going for it. I’m never bored and I don’t sweat things like “legacy” and whatnot. Enjoy life!
I'm in my 40s doing the leetcode grind, but weird thing is, I'm actually ENJOYING it. I get a little high when I solve a problem, and I feel good about re-learning / re-discovering data structures and algorithms that I just don't use on a day-to-day basis. I paid for the premium version and enjoy reading the solutions and maybe learning a new trick or algorithm technique or whatnot. And who knows, maybe something that I learn when grinding on some leetcode problem will actually be useful in my day job? Thinking about it, if I ever do land a MAANG job, I don't think I'll stop doing leetcode problems. Sure, I won't go crazy with it like I'm cramming for mid-terms or something, but I'll still hack on them for the pure joy of problem solving, for the sake of problem solving.
I guess where I'm going with this is, maybe change your thinking about leetcode? Don't think of it as a necessary evil in order to land a high paying job that you dread doing each night; look at it as a fun little hobby, with the nice side-effect that you're keeping your data structure knowledge, algorithms and general problem solving skills sharp.
Great article, love Clojure. Was trying to figure out what Nanit does. Might want to consider putting a link to the Nanit homepage on your engineering page. When just typed in nanit.com and saw the baby monitor tech, I thought maybe I went to the wrong place, until I saw the logos matched. Anyway, good read, but please put a link to your home page on your engineering site, or, put a 1 liner in the opening of your blog giving context to what your company does.
> Note that CORS preflight requests are not made for GET HEAD POST requests with default headers.
I really wish the author included an explanation for this. What are "default headers"? What special header(s) needs to be on the request in order for a preflight request to be made?
I think it's just called the "broken stick" rule. Specifically, if you break your stick, you HAVE to drop it on the ice immediately and be done with it. If you even skate back to the bench holding it, you can get called for a penalty.
I don't think it's fair to mention the police confrontations without all the facts / context. Simply put, based on the reporting by The Washington Post, the situation is not so clear-cut:
Why do you feel it is "the natural tendency" to make minorities feel less welcome? My natural tendency -- and anecdotally, pretty much everyone I know -- is to treat people well regardless of their race; to treat people the way you'd want to be treated.
I delivered a session at JavaOne (2001?) on Ant (I was a whiz at it). Then, I had to learn Maven as it gained traction. I'm currently doing Android development, but I'm a little embarrassed to say that I don't really grok Gradle the way I do with Ant and Maven. I don't have anything against Gradle. I just don't want to spend another minute of my life learning another Java build tool. So, I stick to the Gradle defaults when creating a new project in Android Studio, and rely on SO and whatnot whenever I need to customize. Haven't been burned yet.
In my beer hockey league (Charlotte), goalies have to pay the league fees too. And it's up to the player-coach to find a sub if the primary goalie can't make the game. Our league is relatively "formal" in that we all have to be registered with USA Hockey; our games have real refs, time keeper, etc. But I've been in other leagues, less formal, where goalies skate for free.
Developer here. Thanks for checking out my app, Riker. In case anyone is
curious, the iOS app is native, written in Obj-C. The Riker web app is written
using React and Redux. The REST API is written in Clojure and the backend is
Postgres.
Although there is also a fully functional web version of Riker, the app is
preferred since it supports offline mode, provides Watch App and integrates with
Apple's Health app.
Agreed - it would be really great to have automatic recording of reps like we have for steps, but as you pointed out, you would need "smart equipment" and "smart free weights," which are either very far off from happening, or won't happen, which is why I built Riker. Being able to record reps from the Apple Watch is the most friction-less for me so far.
Developer here. Thanks for checking out my app, Riker. In case anyone is
curious, the iOS app is native, written in Obj-C. The Riker web app is written
using React and Redux. The REST API is written in Clojure and the backend is
Postgres.
Although there is also a fully functional web version of Riker, the app is
preferred since it supports offline mode, provides Watch App and integrates with
Apple's Health app.
Sorry if it's already mentioned, but I found it frustrating that I could not get to the winnie homepage (http://www.winnie.com) from the blog. Even the "Home" nav link at the top of the blog just points to the blog's homepage.
You are right. The way I solved for this scenario is that when a record is first created on the device, a GUID is created for it (and stored using another column of course). When POSTing new records to the server for syncing, the server will check the GUID and see if the record already exists in its database, and if so, can ignore it (so the duplicate isn't written).
But yes, you're right overall - full offline mode w/syncing, etc is a big pain :)