• 0 Posts
  • 17 Comments
Joined 1 year ago
cake
Cake day: June 13th, 2023

help-circle

  • I don’t think poop jokes resonate very well on any of the Lemmy communities I’ve seen.

    Also, if you’re accidentally pooping your pants so hard that it falls down your pant leg and onto the floor, you may want to consider getting a medical opinion or at least doing some pelvic floor exercises. That’s concerning.



  • The autocomplete is fucking fantastic for writing unit tests, especially when there’s a bunch of tedious boilerplate that you frequently need SOME OF. I’m also really impressed by its ability to generate real code from comments or pseudocode.

    Generally, though, I find it pretty awful for writing non-test code. It too often hallucinates an amazing API and I kick myself for not knowing it existed. Then I realize it’s because the API doesn’t actually exist, and the dumb fucker is clearly borrowing from a library from a completely different stack.




  • I left Apple when I got rid of my iPhone 3 and didn’t look back until last year. In the mean time, iOS has grown up nicely, the services are really well integrated, and it’s pretty low on bugs.

    Contrast to Google where every OS update to Android makes the UI more and more similar to iOS, but a shittier version of it. Their home assistant has been losing features and the overall recognition has gotten demonstrably worse as time goes on. It annoys me to no end that Android doesn’t have any native ability to resize a photo before emailing it, so you either send a 7MB photo or go through too many ridiculous steps to resize it first. That’s not even counting the services that Google kills all the time, making any investment into their ecosystem unreliable in the long term.

    I’m not using Apple now because I’m loyal and like them. It’s because Google has put so much effort into making their own phone a shitty knockoff. If I’m paying premium prices for a flagship phone, might as well go with the one that works better.






  • Unfortunately, in doing so, Signal became Yet Another Messaging App. It really damaged their value proposition in my eyes.

    If I need a separate app for SMS, WhatsApp, Messenger, Telegram, Signal, etc, it just becomes a chore to find enough friends willing to move to it exclusively.

    The IM ecosystem really needs to be harmonized on the user end. I remember Trillian was this great app back in the day that brokered all your MSM, Google Chat, etc IM accounts into a single app that let you just focus on messaging people and not worrying about what platform was being used. We badly need this again.




  • My org has issues with e2e, but we keep them because they usually inform that something, somewhere isn’t quite right.

    Our CI/CD pipeline is configured to automatically re-run a build if a test in the e2e suite fails. If it fails a second time, then it sends up the usual alerts and a human has to get involved.

    In addition to that, we track transient failures on the main branch and have stats on which ones are the noisiest. Someone is always peeling the noisiest one off the stack to address why it’s failing (usually time zones or browser async issues that are easy to fix).

    It’s imperfect, and still results in a lot of developers just spam retrying builds to “get stuff done”, but we’ve decided the signal to noise ratio is good enough that we want to keep things the way they are.


  • It works for us to some extent, but there are ultimately people who specialize in various areas. Nobody can be a true master of absolutely every area in a large system with enough knowledge queued up to be able to be an independent power player. And I think that’s reasonable to anybody who works in or near the trenches.

    It should be expected that any member of a full stack team can figure out how to do any particular task, but it’s a waste of resources not to have people lean on teammates who have more recent deep experience in a particular area.

    This goes for both technical areas as well as domains. If my teammate just spent a couple of weeks adding a feature that makes heavy use of, I dunno, database callbacks in the user authentication area, and I just picked up a task to fix a bug in that same area, I have two choices. I can consult with my teammate and get their take on what I’m doing and have them preemptively point out any areas of risk/hidden complexity. Or, I can just blunder into that area and spend my own couple of weeks getting properly ramped up so I can be confident I made the right change and didn’t introduce a subtle regression or performance issue.

    As the number of tech and domain concerns increases, it becomes more and more important for people to collaborate intelligently.

    My team oscillates between 4 and 6 developers and this has been our practice with pretty high success. Quality is high (when measuring our ability to deliver within our initial estimates and our bug count), morale is good, and everyone is still learning with minimal frustration.

    I think the issue of team cohesion comes into play if people are all independent and also stop talking. If I take the couple of weeks in my previous example instead of talking to my teammate for some knowledge transfer, I’m disincentivized from leaving my personal bubble at all. I’m also less likely to stay within overall software patterns if I think I’m always trailblazing. The first time you write new code, you’ve established a pattern. The first time someone repeats what you did, they’ve cemented that pattern. That’s often a nasty double edged sword, but I generally lean toward consistency rather than one-off “brilliant” code.

    Where this can start to break down is when people become pigeonholed in a certain role. “Oh, you’re the CSS guy, so why don’t you take this styling ticket?” and “Kevin, you do all the database migrations so here’s another one” are great ways to damage morale and increase risk if someone leaves.

    Tl;dr: everyone should be able to pick up any task, and they should endeavor to keep their axe sharp in every conceivable area, but it needs to be carefully offset against wasting time by refusing to lean on other people.

    As with most things, it’s usually a matter of personalities and not policies.