Hacker News new | past | comments | ask | show | jobs | submit | wbond's comments login

I have a few open source projects that have lasted for 10+ years, and I can’t agree more with approach #2.

Ideally you want your scripting to handle of the weird gotchas of different versions of host OSes, etc. Granted my work is cross-platform so it is compounded.

So far I’ve found relying on extensive custom tooling has allowed me to handle transitions from local, to Travis, to AppVeyor, to CircleCI and now also GitHub Actions.

You really want your CI config to specify the host platform and possibly set some env vars. Then it should invoke a single CI wrapper script. Ideally this can also be run locally.


Yet most people end up liking that car and the balance of features, looks and price. Sure, they’d love to not pay for premium gas and have the extra trunk space, but in the end they’d much rather have a car that basically never gets stolen, gets updates for years, and does what they want 97% of the time.

Meanwhile, other people spend far more time maintaining and protecting their cars that can use cheaper gas and they have full access to. But they have to be much more vigilant about what neighborhoods they park in, and once two years comes around they can no longer get replacement parts, and if the lock has an issue, people can trivially steal their car.

Or maybe this is just a tortured analogy to start with. If you don’t like Apple, just buy something else.


ChannelLock makes good ones with tight tolerances, smooth adjustment and accurate measurements in metric and standard (one on each side). I often use them as a first attempt and if I need more torque I check the size they are set to when grabbing the correct combo wrench or socket.


I know various companies have been looking into sponsoring his work for iOS, since it can make a big difference in the edit/build/run cycle since linking times can be fairly high. I was even personally supporting it for those reasons for a number of months.

From what I understand, it is part way there to fully supporting what is needed on macOS/iOS, but then it is hard to throw money at it when it isn’t a replacement yet, especially since sponsorship isn’t guaranteeing work goes into your needs.

So sort of a chicken and egg situation. Recently it seems work has been focused on some mainframe architectures, and I wasn’t actually using it at all, so I stopped sponsoring.

All this to say is that it isn’t specific to mold, but open source projects in general. If the source is available and it works, there is no incentive to sponsor, and if it doesn’t yet do what you want, there isn’t a guarantee that your sponsorship will move the needle.


If you are looking for some other bad TLS configs, I run a site that augments this at https://badtls.io/.


Your certs are all self-signed, so testing against them doesn't really help somebody unless they go out of their way to trust your root.


BadTLS covers some scenarios that public CAs cannot sign certificates for, e.g. a certificate that expired in the 1960s.


Your statement is correct.

BadTLS explicitly exists to test certs that you generally should not, but often do, run into in the wild. As a result, most software handles these in poor ways, with error messages that are unhelpful at best.

Writing tests that utilize a custom root doesn’t seem all that much work for a library supporting TLS.


Could provide a link with some info? I tried to look around to confirm but didn’t find anything. This sounds like it could be really useful.


Someone's reported this as https://bugs.swift.org/browse/SR-16047. The bug is that A11 and older processors don't have a CAS instruction, and LLVM's lowering accidentally added xzr to the set of "valid registers" for the replacement instruction sequence. So if you're seeing crashes in MetadataAllocator in iOS 15.4, this is probably going to fix it for you.


Off topic, but nice to see you around here after years since we’ve met in person! Also nice to see other engineers from NH represented.

I’ve also done gigs for 7, 5, 2 years, one for 8 months and now I’m 2 months into my new gig. I would concur that ramp up speed has been pretty similar at most. I’m not sure the first move (after 7 years) was harder than the others.

Honestly, I think it tends to be harder emotionally to walk away from the situation. From the familiarity to the network, it can feel weird leaving that all behind, even if there are obvious reasons you need to leave. Once you’ve made the break, starting new tends to be similar: spending a few months getting familiar with the exact tech stack, the people, projects and business. Usually after a handful of months you’ll start feeling in the groove and know enough of the environment to feel like you are making serious contributions.


Hey! Yeah, I started a new gig at the beginning of this year and the only thing different is this is far and away the largest tech company I have worked at. The one thing I am struggling with is coming to grips with the scale and accepting I will never have my head or hands around the whole thing.

One other point worth repeating came from a friend who was a Marine: "You have 6 months before you're part of the problem." Once you are on your feet anywhere, do try to create the change your teammates have been desperate for but lack the enthusiasm to push for. Use your New Person Karma up-front.


Should I be worried for ST without you?:)

Congrats on new things! I just switched to a new thing myself!


Nah, ST is going well. Jon is the mastermind behind it all, and Ben has been doing excellent work, and Tim is rounds out the ST team. On the Merge side, Dylan and David are hard at work. I think Sublime HQ is hiring in the Sydney area also.

That said, I am still contributing the community, albeit a little slower. Hoping to have a first-rate Swift syntax done in the next month or two, plus continuing to plug away on some Package Control work.

Congrats on the new role and continuing to push yourself!


How big is the app you are working on? How long does an incremental build take including linking and signing?

30 incremental builds an hour sounds pretty high to me, unless you’ve got a smaller app. On Intel machines, I’ve been seeing minimal incremental build times of over a minute. The M1 obviously make some pretty significant improvements in this situation.

However, while I’m relatively new to the iOS world, it seems linker performance is a fairly hot topic. I know more than a few people are eyeing support for Mach-O linking in mold, based on the massive speedups shown for Linux.


It really depends in coding style. For example, I always like to write the smallest possible change to address a feature and bug fix that's testable, then I start writing unit tests, then back to code, then back to unit tests and so on. So it's not uncommon to do a lot of incremental builds (but yeah 30/hour is on the high side). Sometimes this is not feasible, e.g. working on a complex component which has a simple public API but does a lot of heavy lifting internally - in that case it takes a while to get to a testable change.


My understanding is the newer 5k by LG is far less troublesome - as shared with me who’s had three different units over the past 5(?) years.

I’ve had one for the past year with zero issues also.


Yes, I bought one last year and it has been fine, no problems at all.


If you deal with a small local bank, you may be able to get a portfolio mortgage that they hold, with some unique benefits. I recently did this, they matched the rate my existing lender (big international bank) gave me, plus they offer a float down on the rate once per 12 months for a fixed fee of $975. No refinance necessary.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: