Man, if I'm trying to decide which company to work for, and I see a blog post from its CTO crowing about regularly checking in code on Saturdays and Sundays, I'd start backing slowly away. And when I got to the bit that said "AI has made me three times as productive," I'd turn and run.
Your job at the top is, more than anything else, pushing down a healthy culture. That includes things like setting an example of not working through the weekend. If you're doing it, your reports and their reports will feel the need to do it, too. Don't. And if you do anyway, certainly don't brag about it!
And then listen to this insanity:
> Our team had considered potentially having the customer build their own integration on top of our API in order to get around this requirement, and scoping it out properly would have required many meetings across product, legal, and engineering. I built and shipped a working version in a day. It wasn’t perfect, but it solved their immediate problem and preserved goodwill with the customer.
That's something you're willing to share out loud? Your company's technical process (which you're fully in control of, Mr. CTO) is so cumbersome that it seriously hinders your ability to execute, but, being above that process, you personally choose to circumvent it, foregoing required legal or engineering reviews, and shipping it immediately to your critically important customer? If one of the engineers who worked under you did that, you'd probably have fired him.
One of the reasons I stopped participating was that as the second half of december was approaching I had less and less free time for solving the puzzles. So to me it is also a welcome change, I will try to finish it again this year.
Whenever there's a change like this, my gut reaction is to grieve and try to imagine ways that things could be kept the same.
After thinking, "maybe puzzles could be designed by a group instead of an individual and they could share the work," I then thought, "and couldn't an LLM help?"
And with that, I had to remind myself: Advent of Code isn't about there being 25 puzzles, and so maintaining volume at all costs has nothing to do with it.
And aren't we so lucky that it isn't! Aren't we lucky to have had the prior 500+ challenges given as gifts over the years! Aren't we lucky to have a great demonstration of humility and care! Aren't we lucky to have 12 new gifts to look forward to this year!
> I don’t particularly enjoy building orgs and figuring out people stuff. Engineering management involves navigating interpersonal dynamics, performance reviews, and organizational design. These are crucial functions, but they’re not where my strengths lie.
This bit got me. It's a direct quote from the linked post for those who haven't read it
The most important question for every cross platform framework is what happens to the UI?
Adobe products (both the Creative Suite, and their Flex Builder environment for Flash app) had their own design system that felt foreign on every platform it shipped on. If you wanted something that felt native, you had to reimplement e.g. Apple Aqua in Flash yourself.
Flutter goes out of its way to do that work for you, aiming for a "Cupertino" theme that looks-and-feels pixel-perfect on iOS.
React Native tries to delegate to platform primitives for complex widgets, so scroll views still feel like Apple's when on Apple's platform.
Just about every top-level comment here is talking about that in one way or another; yet the blog post doesn't mention it at all.
It's possible that Apple/Swift's mindshare among developers will lead to a significant number of apps shipping the Swift version for Android even if it means using Apple's UI, simply because they can't be bothered to make something bespoke for Android. Then again, Apple takes so much pride in its design language that it might not be willing to implement anything that feels good on a platform they don't own. If they were to ship an API-compatible widget toolkit, it might e.g. use intentionally bad spring physics to remind you you aren't on an iPhone.
I wonder how big the community part of this is. Is this an open source project of non-Apple people who are trying to break Apple's platform out of its walled garden? Is a lot of it funded by Apple? Ultimately, that's going to shape a lot of how this plays out.
> For massive apps with 1,000 components on the same page, maybe React's complexity is justified. But what the other 99% of apps?
The number of components is not the only yardstick of complexity. Most of the complexity in building a UI comes from state management and how state changes are propagated across the store and the UI.
I worked with Backbone for many years, and I can distinctly recall the hours of frustration I had debugging a UI because it was freezing due to cascading state changes. That was because we were using Backbone Store, which had bidirectional data flow, and when one updated the store, it would trigger a change to the UI, which would change the state store, which would change the UI, etc.
You could argue that the real innovation of React was "unidirectional data flow," but React team made Flux architecture central to the framework, making it easier to adopt good practices, whereas Backbone remained store agnostic and even encouraged Backbone Store which used the observer pattern for many years. I think you should choose a framework that allows you to fall into the Pit of Success, and React was that framework at the time, and for my money, it still is.
This is very interesting to see on here. My mother was the dissenting vote on an FDA panel on this. There are articles about it. I'll copy her words (as reported by something but seems legit)
> She said that the FDA's plan doesn't go far enough.
> "It's hard to dismiss an anecdotal report when you are the anecdote. When a patient is finally tested and found to have gadolinium retention, there's no FDA-approved antidote. So what does the patient do?"
And I want to reiterate that she was "the" no not "a" no. I don't know if her vote alone is what's caused more research into this. But it's probably the thing I brag about her the most. Even though everybody else said it was fine or abstained, she stood strong. If you look up the articles from the time of the panel (2017) you'll see a lot of articles about this panel and how she was the sole no vote. Included in that was a public post from Chuck Norris praising her. He was going to come out to meet us but I think it was a bad Texas hurricane season so that fell through
Palisades MI reactor. Currently shut down and de-fueled but a restart of this reactor is apparently underway, with new fuel assemblies being delivered.[1]
I worked with Backbone, Angular 1, Ember, and then React.
The article overlooks the problems that made React popular:
- Composition: Composing components is easier and more efficient in React. Backbone’s render function assumes "this.$el" is mounted and available in the DOM. That makes composition difficult: you cannot simply nest one component inside another without managing the DOM lifecycle of subcomponents. You don’t need 1.000 components to feel the pain.
- Event handling: You can’t pass an event handler as a string, so the events object must be paired with the selector to locate the element. Any structural changes require updating selectors or managing unique IDs.
- State management: Re-rendering components when state changes becomes messy in Backbone fairly quickly. That mess is why Angular 1 gained popularity. React simplifies this further by enforcing a one-directional state flow.
- Efficient DOM updates: Even if you implement composition and state management ad hoc, you still must update the DOM efficiently to avoid layout thrashing and related issues. React isn’t immune, but these problems are typically easier to handle.
- Other features: Implementing useful capabilities from scratch, like lazy loading parts of components (for example, suspense) or building hybrid apps with server-side rendering, requires significant work.
I'll argue that nowadays, if you want to use vanilla JS with templating support, lit-html (not the full framework, just the template part) is a much better choice than Backbone.
> California hasn’t issued an emergency plea for the public to conserve energy, known as a Flex Alert, since 2022.
Feels like that statement deserves to be contextualized with weather data. There were a few summers leading up to that where all of the major metro areas shared concurrent record high heat days, and sometimes coincided with poor air quality from wildfires (meaning more people closed their windows and ran AC even if they wouldn't have otherwise.)
> It was only five years ago that a record-shattering heat wave pushed the grid to its limit and plunged much of the state into darkness.
They mention it here, but then don't talk about whether similar circumstances have been faced since. Don't get me wrong, this is encouraging, but the article invited this kind of reaction by putting "leaving rolling blackouts behind" in the title.
Funny enough, if you look at the article's original title via the URL slug, it was much more measured:
will give you a git repo without a working set (just the contents typically in the .git directory). This allows you to create things like `foo.git` instead of `foo/.git`.
“origin” is also just the default name for the cloned remote. It could be called anything, and you can have as many remotes as you’d like. You can even namespace where you push back to the same remotes by changing fetch and push paths. At one company it was common to push back to `$user/$feature` to avoid polluting the root namespace with personal branches. It was also common to have `backup/$user` for pushing having a backup of an entire local repo.
I often add a hostname namespace when I’m working from multiple hosts and then push between them directly to another instead of going back to a central server.
For a small static site repo that has documents and server config, I have a remote like:
So I can push from my computer directly to that server, but those branches won’t overwrite the server’s branches. It acts like a reverse `git pull`, which can be useful for firewalls and other situations where my laptop wouldn’t be routable.
You’re right, you don’t know! When I worked on a nuclear aircraft carrier, I learned that the people working down in the reactor spaces got significantly less radiation exposure than the people working on the flight deck. My ship was ported in Japan when the Fukushima disaster happened, and we had to abruptly go out to sea because we couldn’t let the (minimal) fallout contaminate the reactor spaces and make it impossible to monitor the reactor itself properly.
The number 39 refers to the 39% tariff rate on Switzerland.
Kind of insane that the American President just made up a lie that tariffs are paid by foreign countries and rest of the administration just went along with it. It flies in the face of any common sense.
> I use the data to train Nuclear Radiochemistry AI Agents and [...]
As someone who is not involved in this ongoing discussion, I have to just say that invoking LLM agents when asked for credentials is not going to go in your favor.
This is bad but cavity water radiation is usually very weak. Ingestion could be bad but its not like he swallowed a uranium isotope which would be catastrophic.
VP of Eng here. If we take your statements at face value, your manager isn’t doing his job. Toxic employees are death to companies and it’s management’s job to get rid of them. (After attempting to address the issue. But my experience is that toxics are gonna toxic. Don’t coddle them.)
If you’re willing to lightly scorch some bridges, talk to your skip-level manager. If that doesn’t work, or you don’t want to, your best option is to go work for a decent manager, either at the same company or another one. Life’s too short, and you’re not going to be able to fix the toxic employee.
In other words, get someone who can help, or get out. Take your friends with you.
Valetudo is really nice software, but I have a bad taste in my mouth from the community.
I went to the Telegram channel to ask something about why my vacuum running Valetudo would have a specific behaviour (IIRC it moved on its own), they kind of talked to each other for a second to discuss if this question was relevant to the channel, and then, presumably deciding it wasn't, banned me for a year.
I have a friend who did similar tunneling a while ago. It also works on cruise ships.
He discovered that on some airlines (I think American?), they use an advanced fortinet firewall that doesn't just look at the SNI -- it also checks that the certificate presented by the server has the correct hostname and is issued by a legit certificate authority.
My friend got around that restriction by making the tunnel give the aa.com SNI, and then forward a real server hello and certificate from aa.com (in fact I think he forwards the entire TLS 1.2 handshake to/from aa.com). But then as soon as the protocol typically would turn into encrypted application data, he ignores whatever he sent in the handshake and just uses it as an encrypted tunnel.
(The modern solution is just to use TLS 1.3, which encrypts the server certificate and hence prevents the firewall from inspecting the cert, reducing the problem back to just spoofing the SNI).
My mum spent much of our youth, upon return from yearly holidays to her small seaside home town, tumbling rocks. We were kinda cluttered people growing up, so among other things (an extensive sci-fi collection, hundreds of kitchen gadgets, every microcomputer under the sun) we always had little piles and containers of beautiful shiny rocks strewn around the place. I never had the patience for the tumbling process, but on every beach I considered it my responsibility to find the most intriguing shapes and colours of rocks, fill my pockets, and bring them home. She died this year. We were supposed to scatter her ashes on that beach but my dad refused for inscrutable reasons. And I have a big pile of boring, dull rocks, that neither my mum, nor the relentless sea, is ever going to transform.
Maybe I have scar tissue from COVID prices but $20k to install a ductless heat pump vs. a $200 to throw a window A/C in or $700 for a portable heat pump. While I get that these heat pumps are better for the environment and much more efficient it's a last mile issue. The installers charge an arm and a leg and I'm not hurting enough to self install. I'm hoping the window heat pumps that just run off mains will be available to more markets soon, I could buy one of those for every room in my house for less than the install on a single mini split.
Where it did make sense was when I was getting solar. It was only a few thousand since I already had the trades out and reducing the load was important for the ROI on the panels.
My dad used to tie up the Ethernet cable on our family's home router and hide it in a closet. The knots were to prevent us from reconnecting the router and putting it back before he got back home. He'd be able to tell if we tried since he was the only one able to tie that special knot :)
All to prevent my siblings and I from wasting our summers on Runescape or Miniclip or something. Looking back, the hours we were playing each day is nothing compared to the hours he spends scrolling through crap these days. My dad worked in such an intellectually stimulating job before, so it's baffling to see that he chooses to do this all day. I imagine most older parents are in the same boat these days. It has made me hate social media, YouTube, short videos, et al. even more
Your job at the top is, more than anything else, pushing down a healthy culture. That includes things like setting an example of not working through the weekend. If you're doing it, your reports and their reports will feel the need to do it, too. Don't. And if you do anyway, certainly don't brag about it!
And then listen to this insanity:
> Our team had considered potentially having the customer build their own integration on top of our API in order to get around this requirement, and scoping it out properly would have required many meetings across product, legal, and engineering. I built and shipped a working version in a day. It wasn’t perfect, but it solved their immediate problem and preserved goodwill with the customer.
That's something you're willing to share out loud? Your company's technical process (which you're fully in control of, Mr. CTO) is so cumbersome that it seriously hinders your ability to execute, but, being above that process, you personally choose to circumvent it, foregoing required legal or engineering reviews, and shipping it immediately to your critically important customer? If one of the engineers who worked under you did that, you'd probably have fired him.