Hacker Newsnew | past | comments | ask | show | jobs | submit | ampersandy's commentslogin

Have any examples in mind of the “really good tracks?”



Good, but it doesn't really feature the technique described in the original comment.


you're right, i just really like this track :~)


It looks like they've copied the template/page from a previous diagram file and forgot to remove one of the lines, probably just an accident.


Because users do not know that there's some hypothetical "better" experience they could have had and do not care, unless your service/tool/whatever is not functioning correctly. Prioritizing your employees' enjoyment and experience to deliver more, faster, and consistently, is in all likelihood a better decision than prioritizing some subjective improvement to user experience.

Of course there are exceptions. But it's definitely a hot take to say you should never prioritize DX over UX.


> Because users do not know that there's some hypothetical "better" experience they could have had and do not care, unless your service/tool/whatever is not functioning correctly.

If your business competitors prioritise UX over DX, your users will soon know. And then they won't be your users any more.


Many users will prioritize the features they need, shipped promptly, and without bugs, over a nicer UI.


This is one of those "false delima" logical fallacies. The idea that you have to choose between a "nicer UI" and "many features, no bugs, shipped promptly".

All those are important, and given a talented team, there is absolutely no reason why you cannot have good UX, lots of features, few bugs shipped on time.


Yes, and going back to the original point, a company’s posture on this is entirely a business decision and not a “UX MUST BEAT DX” truth


Going back to the original point, "the features they need, shipped promptly, and without bugs" you speak of is actually part of the UX (user experience)!

Maybe you are mixing up the UI design with the UX? In any case, the original point is just highlighting the importance of UX, without giving any solid examples of DX.


The implied disagreement for why neovim exists to provide functionality that wouldn’t have been merged into vim.


There’s a difference between “I don’t want any photos of my kids in a server anywhere” and “please don’t share pictures of my kids to other people unless we do it privately”, which your wife immediately violated by screenshotting an obviously private message.


I wonder how many of these people have kids over the age of 10.

By 4 years old, my kid was on social media, because he went to a birthday party and a stranger took a picture.

Would be weird having everyone but the children go around the great grandparents when the great grandparents turn 100.

When they are on a soccer team, they don't take a team photo?

All because we are afraid a face is going to do what exactly? Reminds me of the whole 'don't put your last name on the internet'.


What's weird to me is posting any of this stuff to social media. It's great to have family photos with the great grandparents, but why does it have to go on Facebook?


It goes on Facebook because that's how people communicate with a wider circle of friends. They don't care about the whole internet, but they want the friends that they do not see every week to stay involved in their lives. FB absolutely maintains those connections over years of minimal personal involvement.

You can debate whether that's a good idea. You can even debate whether you think the connection is real (but I think the feeling of a connection is enough to consider it "real"). You can certainly debate the use of these images in corporate machine-generated ads... but deal with the first paragraph: I think we understand why genuine people might still post on social media.


This is quite a huge improvement. Prior we'd have one relative take a picture and it would be lost to time.


how are strangers getting to a birthday party of your childs friend?

or are the parents (which they most likely were) of your childs friends strangers to you? they should not be.


You don't have kids huh?


i do have kids and i make it a point to get to know other parents of my kids friends. they are not strangers. a stranger is someone who i meet once and never see again, or don't meet at all. parents of my kids friends or even any parents from my kids school are not that.

what bothers me here is that on the one hand we have this concept of stranger-danger, and on the other everyone is a stranger, just because you haven't talked to them yet? that doesn't make sense. calling the parents of my kids friends strangers just feels very wrong to me.


It’s not prioritization if it doesn’t hurt.


I don't really buy the two main criticisms around code review. They're stated as intractable downsides but are really just cultural issues around how you perform code reviews.

If your coworkers are sending changes for review that don't explain why the changes are being made (and therefore provide the context), reject it until they write a proper summary/test plan that does explain it. You should review the "metadata" of changes before you ever review the code itself and if done well, you'll probably be able to guess what a lot of the incoming changes are before reviewing the code. This makes it easier to spot code that deviates from the stated purpose of the changes and can help identify faults in both understanding of the overall problem or the system being built, especially in more junior engineers.

If your coworkers are taking to long to review changes, work with your team to incentivize expedient code reviews, or talk to the people that aren't reviewing enough code to help everyone else get more done. You should also utilize a stack that lets you continue progressing with your work even when waiting for reviews (like stacked diffs).


The first criticism ("Context Gaps. The reviewer doesn’t have the full context of how and why decisions were made for the code they were reviewing.") is one of the things I consider a _advantage_ of code reviews. The article just dismisses the idea that having the reasons for decisions written down is useful, which I find extremely strange.


'You should review the "metadata" of changes before you ever review the code itself'

That's a great approach. It sounds logical, but I certainly don't do it consistently. :-)


The context is not just "why the change was made". That point is usually clear from ticket in the first place. The context is "do other places in code use the same tactic" question. It is also the "I tried these four things and three of them failed because of X" or "I had to choose between these two solutions and picked this one".


Having the “why” in the same place as the code I think is critically important. Who knows what ticketing system you’ll use in the future, it’s fine to link to but it shouldn’t be where all the context is stored.

If you think about a pull request as a story you have who, what, where, when, and why. Most tools handle the first 4 but the why is critically important to anyone, including yourself, who needs to understand the nuance of the change that can’t easily be expressed by the code itself without a novel size comment block.

I find that a lot of times people forget the “why” when submitting a change set and simply restate the “what”. At the time you make the change it’s all fresh in your mind and you trick yourself into believing you’ll remember all the details but in reality that’s no my experience.


Do those things matter once the code is actually written though? They're important during the dev process, particularly if you're deciding between two different-but-valid approaches, which is why teams should be communicating and discussing things, but once the decision has been made it ceases to be anything worth worrying about. It's a sunk cost. It shouldn't need to be a part of a code review unless the comms are failing ahead of the review process. If that's the case then you should try to fix the comms issue.


A lot of what we devs think are vitally important... just aren't. Or, they have a steep time decay on how useful they are.

I do have the longest code review summaries on my team, amusingly. So, I clearly like the idea of it being a discussion and capturing some of that. I would be challenged to say what part is most important overall, though. In large, because not all code changes are the same.


"Do those things matter once the code is actually written though?"

That's a great question. I guess it depends on how much the code will change in the future. These things CAN get relevant again when you consider changing that code. E.g. if it turns out later that the library I've chosen isn't maintained anymore. Or we would need some more functionality, but this library doesn't provide it. In these situations, it's useful to see which other alternatives we've considered.

That said: I can't really estimate how often this turns out to be relevant, indeed. I guess the answer might be very different for different projects.


I think it does not make sense to write them down as comments or in the pull request or anywhere else. It makes sense to talk about them during review process where reviewer might have different opinion - or might think the other option is better because reviewer does not know about the issue.


This is the kind of stuff I would add in the commit message (and PR description): "I ended up choosing solution A because B, I also tried C and D, but that didn't work so well because E".

Everything you say that's not written down will be lost in the aether within weeks, months at best. I'm a huge fan of async communication because everything will be written down.

If there's a discussion "why did you go with A and not B", in an (async) code review then anyone can come back to it a year later and read up on why it was done in this particular way. I've found this useful on a number of occasions.

It certainly beats "Alice, you changed this last year, but why is it done like that? Wouldn't X be much more convenient because Y? It's hard to add Z now.", "ehm, I discussed it with Bob, but he since left the company. I don't quite remember, I think it was A? Or maybe B? Or was it C?"


Generally, those are all good things to include in the commit message.


I dont think so. The "do other places in code use the same tactic" especially not. This is something ideal reviewer would check, consistency is important. But it does not make sense to write it anywhere.


What about staying inside with cool/dry air causes these infections? Genuinely curious.


Recent studies suggest it's not just staying indoors or viruses hanging around longer in cold/dry air. Exposure to cold temperatures may suppress specific immune mechanisms in respiratory tract. See paper out this month, Huang et al "Cold exposure impairs extracellular vesicle swarm–mediated nasal antiviral immunity" https://www.sciencedirect.com/science/article/pii/S009167492...


Staying inside should be obvious by now. These pathogens evolved to exploit the fact that people get together in close quarters and breathe together.

Cold/dry air: most respiratory viruses we've looked at survive for longer in cold, dry, dark air.


Sorry I don't have a link but I read few years ago that dry air typical of heated indoor spaces in winter means that virus (or maybe virus + moisture we breath out) stay suspended in the air longer


Low relative humidity dries out the aerosol droplets faster before they have a chance to settle out of the air.


> it was assuredly brought high up into the DoJ and approved.

The warrant was approved, but the issue at hand is that these safety deposit boxes were raided when "the warrant authorizing the raid explicitly forbade the FBI from seizing the safe deposit boxes or their contents."


IIRC judges aren't exactly lining up to throw the book at the feds when they misbehave. I'd love to to hear from someone more well informed though -- do judges just look the other way?


I love learning more about the ampersand, for obvious reasons.

I've used this unixname for a long time and it's always immensely satisfying when people realize it's just my real name.


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

Search: