More from Elevation Lab - Blog
After having $10k+ of camera gear stolen, we set our to make the best AirTag mount for cameras. We wanted it to be very discreet and something you never needed to take off. After many design iterations, tool changes, testing exotic materials, drop testing with old camera bodies - we have TagVault Camera Mount for AirTag. Oh, and it is freaking gorgeous. We CNC machined an oversize tripod screw on our Swiss lathe. And the body is made from carbon fiber reinforced composite. T20 Security Torx driver included. Compatible with all Arca-Swiss geometry tripods. We use it everyday in our photo studio. It is compatible with most cameras including: Sony A7 series, A6 Series, Canon EOS & RF, Nikon DSLRs and more. It works on most smaller cameras, just check that the battery door is at least 32mm/1.25" from the center of tripod mounting point, so you can open the door when installed. It's the cheapest one-time insurance you can buy. Also available on Amazon: https://amzn.to/4gW8dzM
With the popularity of our TagVault Surface Mount for AirTag, we wanted another option that was just as durable, waterproof, and secure - but with a more minimal industrial design. So we designed TagVault Surface Aero. It will look great on your motorcycle and even more discrete. Mounts in seconds with strong 3M adhesive. IP68 waterproof, with a new patent pending hidden gasket. Sleek lines with an ultra low-profile It's the best one time insurance you can buy. Also available on Amazon: https://amzn.to/3EMsQ4c
We wanted to make a better braided steel AirTag mount - more compact, stronger, really well made. So we fired up our Swiss lathe and machined a custom oversized screw that keeps it secure and looks awesome. It is T10 Torx and comes with an included driver. There is an inner patent-pending gasket that keeps AirTag water tight. The braided steel loop is strong and has the perfect amount of flex. And the body is also more compact than any other braided steel AirTag mount, manufactured with an extremely strong and tough glass filled polycarbonate composite. Also available on Amazon: https://amzn.to/41ikytG
My camera bag with $10k of gear was stolen from my car. When I saw the broken glass and empty backseat, I immediately pulled up FindMy to track the thief - only to find that its last location was my office 3 months ago... because I hadn't changed the AirTag's battery. It was a terrible feeling on top of a worse one. That is why we designed TimeCapsule - it gives you a whopping decade of power so you don't have to remember to replace the battery annually. It's especially nice for folks like us with a lot of AirTags to manage. Just discard the AirTag's back plate and CR2032 coin cell battery, set AirTag on the contacts in TimeCapsule, add 2 AA batteries (we recommend Energizer Ultimate Lithium), then screw her shut. Now you've got 14X more power capacity. It's also fully waterproof so it stays powered in any environment. And no expense spared construction. A fiber reinforced composite body with premium CNC machined screws. Great for long-term storage like an RV or a boat. And a must have for anything of high-value. It may be the most valuable product we've ever made. Also available on Amazon: https://amzn.to/49MY4Dt
We wanted an ultra-secure AirTag case that could be mounted to anything. Easy to change AirTags battery. Waterproof. Robust. And discreet. So we designed TagVault Universal Mount for AirTag. It has mounting holes for screws, rivets, and slots for zip ties. Or just epoxy it down. IP69 waterproof It opens the same way TagVault Security mount does and the key is included. It is extremely tamper-proof and low-profile. It works great!
More in technology
Today I learned that Kagi uses Yandex as part of its search infrastructure, making up about 2% of their costs, and their CEO has confirmed that they do not plan to change that. To quote: Yandex represents about 2% of our total costs and is only one of dozens of sources we use. To put this in perspective: removing any single source would degrade search quality for all users while having minimal economic impact on any particular region. The world doesn’t need another politicized search engine. It needs one that works exceptionally well, regardless of the political climate. That’s what we’re building. That is unfortunate, as I found Kagi to be a good product with an interesting take on utilizing LLM models with search that is kind of useful, but I cannot in good heart continue to support it while they unapologetically finance a major company that has ties to the Russian government, the same country that is actively waging a war against Ukraine, an European country, for over 11 years, during which they’ve committed countless war crimes against civilians and military personnel. Kagi has the freedom to decide how they build the best search engine, and I have the freedom to use something else. Please send all your whataboutisms to /dev/null.
What happens when you hand an educational robot to a group of developers and ask them to build something fun? At Arduino, you get a multiplayer robot showdown that’s part battle, part programming lesson, and entirely Alvik. The idea for Alvik Fight Club first came to life during one of our internal Make Tanks, in […] The post Alvik Fight Club: A creative twist on coding, competition, and collaboration appeared first on Arduino Blog.
It was time to upgrade Hibernate on that one Java monolithic1 backend service that my team was responsible for. We took great precautions with these types of changes due to the scale of the system, splitting changes into as many small parts as possible and releasing them as often as possible. With bigger changes we opted for running a few instances of the new version in parallel to the existing one. Then came Hibernate 5.2. Hibernate 5.2 introduced a new warning log to indicate that the existing API for writing queries is deprecated. Hibernate's legacy org.hibernate.Criteria API is deprecated; use the JPA javax.persistence.criteria.CriteriaQuery instead Every time you used the Criteria API it would print the line. Just one little issue there. Can you see it? Every time you used the Criteria API it would print the line. In a poorly written Java backend service, one HTTP request can make multiple queries to the database. With hundreds of millions of HTTP requests, this can easily balloon to billions of additional logs a day. Well, that’s exactly what happened to our service, resulting in the CPU usage jumping up considerably and the latency of the service being negatively impacted. We didn’t have the foresight to compare every metric against every instance of the service, and when the metrics were summarized across all instances, this increase was not that noticeable while both new and existing instances of the service were running. Aside from the service itself, this had negative effects downstream as well. If you have a solution for collecting your service logs for analysis and retention, and it’s priced on the amount of logs that you print out, then this can end up being a very costly issue for you. We resolved the issue by making a configuration change to our logger that disabled these specific logs. This does make me wonder who else may have been impacted by this change over the years and what that impact might’ve looked like regarding the resource usage on a world-wide scale. I’m not blaming the Hibernate developers, they had good intentions, but the impact of an innocent change like that was likely not taken into account for large-scale services. Last I heard, the people behind Hibernate are a very small team, and yet their software powers much of the world, including critical infrastructure like the banking system. I’m well aware that we’re talking about Hibernate releases that were released around the time I was still a junior developer (2016-2018). Some call it technical debt, others call it over half a decade of neglect. unmaintaned monoliths suck, but so do unmaintained microservices. ↩︎