[HN Gopher] Lets talk about changelogs (how I loathe 'bugfixes a... ___________________________________________________________________ Lets talk about changelogs (how I loathe 'bugfixes and performance improvements) Author : jandeboevrie Score : 179 points Date : 2021-01-02 11:53 UTC (11 hours ago) (HTM) web link (raymii.org) (TXT) w3m dump (raymii.org) | awinter-py wrote: | > probleemoplossingen en prestatieverbeteringen | | love 'bugfixes and performance improvements' in dutch | magoon wrote: | What it takes to get through app review | enra wrote: | As a startup we write fairly detailed changelogs weekly [1]. For | us it has been a major way to communicate all the new features | and fixes as they come available to users. It's also a good way | for the team to celebrate their accomplishments. I was surprised | to learn it also had helped with investors and generally | marketing. | | Usually the person who was a major contributor to the highlighted | feature of the week writes the changelog and then we look through | our PRs to add anything that could be interesting. We don't | include things like "migrated x" "upgraded library x" if there is | no visible benefit for there. | | Wrote about the lessons here: https://link.medium.com/9YuBV3dUIcb | | 1: https://linear.app/changelog | nudgeee wrote: | One of the reasons larger apps post unhelpful changelogs like | these is because they probably run a feature flag/experimentation | system. It is a backend driven system that allows app developers | to remotely switch on and off features and code changes. This is | really useful when rolling out updated features, you can roll it | out gradually, eg 1%, 5%, 10%, 100%. Roll out a new feature 1% | and notice its crashing for a subset of those users? Roll back | the flag so users see the old UI and fix the problem for next | release. It's better than updating a feature for all and having | it crash for everyone (yes, even with testing sometimes bugs | sneak through, especially when you have millions of users). | | It also allows app developers to bucket users in groups and A/B | test experiments on users to see what works best. It would not be | uncommon for the larger players (Microsoft, Google, Facebook, | Pinterest, Uber, Spotify, etc) to have 100s or 1000s of | experiments running concurrently. It also decouples rolling out | features from App Store releases. | | Having said that, I also hate generic changelog messages and not | defending the practice. If new features are to be launched with | the build, write it in the changelog and add "(rolling out)" or | "(coming soon)" next to it. | Rockslide wrote: | > If that is all you're going to put there, then just leave it | blank. | | Well, I would love to. Unfortunately neither Play Store nor App | Store allow you to do that... so "bug fixes and performance | improvements" it is, 99% of the time. | TrianguloY wrote: | I also have automatic updates off and I really like checking | changelogs to know what new things I can play with. | | And I don't mind reading 'bugfixes and performance improvements' | ... but only if that's really what the new version is about. I | like changelogs, but even for me a 'we fixed an issue where if | you enter a 1025 characters text into the title textbox and press | back twice while rotating the phone the app closes' is probably | too much, but if you added a new option to increase the text size | please say it, I don't want to check all the settings screens | each time each app updates, and more often than not someone tells | you 'hey, aren't you using this option?' No, no I wasn't, because | no one told me. | | Are you a big company and you have automated updates? Why not | have an automated checklist of changes too? I'm sure you have a | 'roadmap list', so use it. | [deleted] | recrudesce wrote: | As a tech person, I don't care. | | Most general users of apps on phones wouldn't give an absolute | crap if you "fixed a buffer overrun in the X function", because | that means nothing to them. If they read that you've made | performance improvements, then great they can continue to play | Candy Crush but not have it crash so often. They won't CARE that | you "optimised the use of the strcopy function" or some crap like | that. | | Remember the app stores are targeted towards consumer users of | phones, not tech people that live on Hacker News websites. | jrootabega wrote: | In an "app store" context, the apps don't serve you; you just | generate content/engagement for them. The apps you're looking at | don't WANT you to be informed because you might choose not to use | them. These notes are just a formality standing in for forced | automatic updates. Spotify on Google Play is particularly | insulting. They basically tell/shame you that you should just | always update without caring about the changes. | coldtea wrote: | > _In an "app store" context, the apps don't serve you; you | just generate content/engagement for them._ | | This is a non-sequitur. | | There are all kinds of apps in an "app store" context, and the | apps I use serve me very well, thank you. I also don't generate | any "content/engagement" for any of them. | | Whether apps have good changelogs or not is also not a factor | of whether the apps are in an app store or not. | | You maybe meant to say "social apps" as opposed to "app store" | apps. | jrootabega wrote: | I guess I'm focusing on the ones at the top of the food | chain, and the what I think is the predominant relationship | in app stores, not necessarily the social ones. Eg the | Microsoft ones in the article | baby wrote: | That was not really interesting, so I'll start a related thread: | | - why is performance often favored instead of improving, | refactoring, documenting, simplifying, etc. And how can we change | that? | | - why are bug fixes so hard to track? Often developers fix | something without marking it as a bug fix. And how can we change | that? | kevin_b_er wrote: | Because you aren't meant to know what the changes are, just | consume. | jka wrote: | As with many others here no doubt, I spent a lot of time in 2020 | viewing diffs between library versions, reading changelogs, and | tracking upstream bugs/features. | | Although I'll try to resist going on too much of a pro-FOSS rant, | the change audit process is much easier for open source projects | since you can read not just the changelog entries, but also the | corresponding code to verify the claims. | | That helps with various things including developer trust - it | helps you determine whether a project and authors use test | coverage to reproduce bugs and prove their fixes, whether | performance improvements are measurable, whether there are risky | side-effects to look out for, and so on. | | Increasingly I think that these kinds of 'software due diligence' | should become part of recommended software engineering workflows, | and that makes me wonder whether some of the repetitive aspects | can be automated. | | A genuinely user-focused, trustworthy app ecosystem would, I | think, allow some of these 'change audit' processes to be visible | to users so that they can make informed upgrade decisions, and to | create a marketplace incentive for upgrades to be reliable. | einpoklum wrote: | It is much more likely to see decent Changelogs on Free Software. | | (For many reasons, but including: "We added a new backdoor to | satisfy government mass-surveillance program requirements.) | [deleted] | xyzelement wrote: | I just looked at WhatsApp (one of his examples) and it has a | detailed "what's new" in both the Apple and Android app stores | that's listing three high level features. | | Sounds like the screen shot he took in September really was a | bugfixes and performance release. | | So it sounds like these apps (at least, WhatsApp) follow a wise | policy - tell the users what has changed that matters and don't | drown them in irrelevant information. | | I had the same policy for my teams - tell users 4-5 new | features/changes to workflow they are going to see and for g-d's | sakes, do not drown that out by listing 400 irrelevant | infrastructural changes we happen to be pushing out. | henkdevries wrote: | If an app is good enough, developers and managers and "agile | coaches" and such don't stop, they start doing busywork. It looks | like they're working and progressing, but all they do is scare | users away with by removing features, breaking workflows and more | horrible stuff. You're just making money for the shareholders, | nothing more. They don't care about users... | dvfjsdhgfv wrote: | In the case of many popular apps, it's a bit more than that: | they're actively fighting what they perceive as bad actors, | that is people trying to use their app not as intended, using | their protocol outside of the official app and so on. In this | case they have nothing to gain by describing the changes in | more detail in the changelog. | joshspankit wrote: | Every time I see "bugfixes and performance improvements", I | immediately assume that they've installed more tracking code. | | Just like when I see "50% less sugar", I immediately assume they | replaced sugar with chemicals. | [deleted] | cesarb wrote: | The worst of these is the "Google" app. For over a year, every | single new version has the exact same four-entry changelog, which | translating from Portuguese is something like: "enhanced search | page appearance; new doodles designed for app experience; off- | line voice actions, available only in the USA; web pages opened | directly within the app". I have the slight suspicion that most | of the almost weekly updates to the "Google" app do not have | these four changes... for that app, "bugfixes and performance | improvements" would actually be a _better_ (more correct) | changelog. | WesolyKubeczek wrote: | Let me guess: the most recent changelog is getting picked up | for every new version. | ChrisMarshallNY wrote: | My changelogs are pretty complete. | | One reason might be that they are not automatically generated. I | hand-edit each entry. | | Sometimes, I copy and paste the changelog entry into the last | commit of the release (but I make sure to have a short, succinct | initial sentence, as that is what shows up in Git browser | history). | | The changelog may end up being a lot more "generalized" than the | commit comments, though, as it's meant to be read by users. | | I appreciate the kinds of changelogs that you usually get with | developer tools, where they are like encyclopedias. | thomaspaulmann wrote: | For early-stage startups, writing changelogs is also a great way | to close the feedback loop with their user-base. We write | detailed release notes at Raycast [1] to highlight feedback that | we addressed. This way our users see that we care about their | feedback and feature requests. | | [1] https://raycast.com/changelog | johannes1234321 wrote: | With many apps an issue for changelog writers is that often | behavior is tied to feature flags, which can be remotely enabled. | Thus a new feature is rolled out in the app but only visible to | some testers. Only after a while it's enabled for all users. Thus | app release is independent from availability of a feature. | | That said "Bugfixes and performance improvements" is as useless | as it gets ... | vbezhenar wrote: | I wonder how those features pass Apple review? It's easy to | disable those flags to get review passed and enable them later. | mackey wrote: | It depends on the feature. For things that involve material | changes to your app or a feature that you don't want Apple to | be surprised about, usually you will include user credentials | in your submission that have that feature enabled and give | them a heads up. If's a smallish feature, you don't usually | sweat app review. It's obviously not a perfect system. | robotnixon wrote: | I'm pretty sure that's what Fortnite did right before they | got kicked out of the App Store. | | Before my company implemented IAP in a few of our apps we did | the same thing, but decided the risk was too great. Getting | rejected is one thing, but getting your account terminated is | obviously a much bigger deal. | JimDabell wrote: | You provide Apple with login details when you submit your | application. Just enable all the features in advance for | Apple's test account. | olivierlacan wrote: | This is precisely why I started https://keepachangelog.com/ many | years ago. Release convenience shouldn't come at the cost of | properly communicating about notable changes for software users | (whether developers themselves, or software consumers). | | Instinctively, developers reach for automation to solve this | problem but this is an editorial problem for most software. Code | changes very rarely map to notable changes for your intended | audience. Even with rigid system like conventional commits, you | can't entirely automate proper human-focused changelogs and | release notes. | | You're going to have to clean things up and editorialize if you | really care for your software users to understand what notable | changes are included in a given version release. | | If you can't think of any, maybe you're releasing too often. If | it's impossible to tell things apart because there are so many | changes as another commenter pointed out, I think you have a way | bigger problem. | mfDjB wrote: | The reason these bigger apps just put "Bugfixes" and "Performance | Improvements" in their changelog is because when you have many | teams contributing to the software not only through actual code | editing but also feature flagging what features go out on what | release, rollback policies etc this becomes a nightmare to fill | in. Doubly so when different users are receiving different | experiences. | | The article says at the end: "You see? Not that hard right?". It | is that hard in bigger organisations. | 0xbadcafebee wrote: | Which is a good indication that the organization actually has | no idea what the heck is going into the update. | damnyou wrote: | Assuming there are good rollout and incident review processes | in place, this isn't much of a problem in practice. | toast0 wrote: | If you're shipping a mobile app with client side code (so, | nearly all of them), there is no good rollout process. | | You can't ship a quick update with Apple, because review | isn't quick. Users who upgraded soon after release will be | stuck with something broken until the new version is | available. | | You can usually ship quickly with Google, but users are | slow to upgrade, but may have caught your first one, and | not get your second one for some time. | damnyou wrote: | I'm talking about feature flag based rollouts, which | don't involve going through Apple or Google. | coldtea wrote: | > _The article says at the end: "You see? Not that hard | right?". It is that hard in bigger organisations._ | | The size of the organisations is not important, as is the size | of the team working on the particular feature/app. | | Apple is huge, for example, but eg. Logic Pro has great | changelogs. | | We also see huge apps (with large teams) do better than than | small apps (with much smaller teams). It's more about | bothering/caring than difficulty. | mackey wrote: | Apple has a much more traditional engineering structure and | traditional release cadence though. A lot of the "worst | offenders" of these types of release notes are structured and | work much differently. They release updates 1-2 times a week, | sometimes release features weeks after the code has shipped | to users, and sometimes in stretched out rollouts. | | They say there if there is a will, there is a way, so in a | sense I agree that these companies probably could do | something about it if they really wanted to, but I also don't | think it would be easy, and considering how few people | actually look at release notes, I am not sure the investment | is worth it. | damnyou wrote: | Logic Pro doesn't have server-side feature flags. | coldtea wrote: | Many apps don't have either, and they have shitty | changelogs still... | damnyou wrote: | As far as I know all the big apps the OP is complaining | about have server-side feature flags. | joepie91_ wrote: | > when you have many teams contributing to the software not | only through actual code editing but also feature flagging what | features go out on what release, rollback policies etc this | becomes a nightmare to fill in. | | This is a terrifying sentence to me, because what it implies | but doesn't say outright, is that there's not a single person | in the organization who actually fully knows what is being | released. If there were, then they should already have this | information! | | Honestly, if you don't have a release manager with a 30,000 | foot view of the operation, you probably have bigger | organizational problems than "it's hard to know what to fill in | on the app store's release notes". | | This is how retrospectives on supply chain attacks start, | basically. | toast0 wrote: | > there's not a single person in the organization who | actually fully knows what is being released. | | Sometimes there is, but as siblings point out, it's difficult | or not cost effective to distill this information into an app | store changelog blurb. | | More often (in my opinion), it's the terrifying situation you | describe. Nobody know what the heck is going on at an overall | level. Which can work surprisingly well, but often means | efficiency (network, memory, cpu, disk space) is very hard to | come by. | SpicyLemonZest wrote: | Many applications are big enough that no single person can | hold the full details of what's being released in their head. | If a release contains a hundred changes from a dozen teams, | there's no way a VP or CTO sitting on top can understand them | all in any depth, so "performance improvements + bug fixes" | may well be the full contents of the 30,000 foot view. | | That doesn't mean it's impossible to produce more detailed | notes for a big application, but it's a pretty involved | process basically requiring a "release note manager", not | something that happens by default. | damnyou wrote: | No. what it signals is that app releases are decoupled from | feature releases. Of course people know when a new and | important feature is being released, it's just completely | independent of when the app store update goes out. | JimDabell wrote: | > This is a terrifying sentence to me, because what it | implies but doesn't say outright, is that there's not a | single person in the organization who actually fully knows | what is being released. If there were, then they should | already have this information! | | It's not the collection of the information that's difficult, | it's delivering it to the user in an appropriate way when you | use phased rollouts with feature flags. | | The change log that the App Store presents to the user is | static and identical for everybody. The changes that a user | actually experiences are not. So you might have 0% of your | users experiencing a certain feature when the release goes | out, 10% a day later, 50% a day after that, and 100% at the | end of the week. Or, if the metrics show a bad response, it | might end up at maximum 10% seeing it, and then it dropping | back down to 0% the next day. | | Apple gives you a static text field to enter the change log | information, with limited length. If you have ten different | features to release, your users will all receive them at | different times, and not all of them are guaranteed to make | it out to everybody, how is a static text field supposed to | deliver that information? | temac wrote: | It is bugfixes or performance improvements about things that | exist, though. | hashkb wrote: | Difficulty of task never excuses doing a lazy job. Especially | if you hope people will pay you. | fwip wrote: | If it's worth doing, it's worth doing half-assed. | CJefferson wrote: | The problem is often the "bugfixes and performance improvements" | are a list of 60 things, and for almost all users "there are less | crashes and it is faster" is all they would want to know. How | many users want to read (OK, possibly people here) | | "On some versions of glibc, the 32-bit specialisation of memcpy | which used SSE2 instructions had a bug when the memory being | copied crossed the 2GB boundary, so in that case we now use our | own memcpy" | | Or "Changed some internal lists to be only be sorted when they | need to be rather than eagerly sorted whenever elements are | added, which speeds up start-up time". | degenerate wrote: | A lot of people here would like this level of detail, actually. | But general apps are intended for the general population, which | is why big orgs go for the minimum watered down version. It's | more work and overhead if they confuse their users. | pc86 wrote: | I think the author of the article brings up a good point | regarding this, though. If you're a non-technical user, you're | not going to read it at all. You might update, you might not, | but you're not going to look through the list of changes. | | If you're a technical user, you know it's unlikely that update | == "more crashes and slower load times" so saying the opposite | isn't helpful, and a list of things _might_ be helpful. | | So as a user of an app you probably fall into one of 3(ish) | categories: | | 1. You read the changelog and something is relevant to you. | | 2. You read the changelog and nothing is relevant to you. | | 3. You don't know what the changelog is. | | Listing the bugs that are fixed helps some of these groups. | "Bugfixes and performance improvements" is a given, and helps | no one. | grayclhn wrote: | Even when I'm in group 2 and don't want to read every update, | I'm reassured by the fact that users in group 1 can find | relevant information. I also sometimes move from group 2 to | group 1 when I need to track down what version introduced | something that's just now causing me problems. :) | brewdad wrote: | I tend to fall in either 1 or 2 depending on whether I've | been bitten by a specific bug and need to know if it has been | fixed. | | The worst changelogs are the ones that say "Performance | improvements and bugfixes" only to find out the entire user | interface has changed after updating. | a1369209993 wrote: | > If you're a technical user, you know it's unlikely that | update == "more crashes and slower load times" so saying the | opposite isn't helpful, and a list of things might be | helpful. | | Umm, no; if you're a technical user, you know it _is_ likely | that update == "more crashes, slower load times and useful | features breaking or disappearing entirely", regardless of | what the changelog says, because you've observed exactly that | happening with eg your webbrowser or image editor. | | > "Bugfixes and performance improvements" [(]is a given[)], | and [(]helps no one[)]. | | Well, you're half right. | toast0 wrote: | > If you're a technical user, you know it's unlikely that | update == "more crashes and slower load times" so saying the | opposite isn't helpful, and a list of things might be | helpful. | | It's precisely _because_ an update might bring more crashes | that I 'd like to see what changed. | johnisgood wrote: | Look at SBCL's changelogs, I like those. I definitely would | like that over "there are less bugs and it is faster". | viceroyalbean wrote: | Doesn't have to be coverage of every minute detail down to the | implementation, but a rough outline of at least the most | significant changes seems like a good middle ground. On several | occasions I've revisited a feature (or even an entire | application) upon seeing that an issue I've had has been | addressed in the changelog. | christophilus wrote: | I prefer the detail. You could always make the first line: "bug | fixes and performance improvements" with details following. | Then people who don't care can ignore the details, but people | who do care can get an understanding of what the change is | about. | | Deep understanding of a change is really helpful when looking | through history or trying to make sense of why this particular | line was changed, etc. | bauerd wrote: | This is about app store changelogs, not commit messages | johnisgood wrote: | So it is more important than ever because there are no | commit messages you could go through, right? | zikzak wrote: | I have never understood "it's an app store" precludes an | expander or link to details. | lallysingh wrote: | Two reasons: | | + Customers will often have no understanding of what | you're saying, but still click the link and give low | reviews for it's content. | | + More stuff the the app store review team to refuse | publishing an update for. | goldenManatee wrote: | There's also a mitigating liability aspect to this. If you | start providing minutiae detail, you may start revealing pretty | big faults that have escaped to prod. People question the | safety of your product and now you're open to lawsuit or at | least micromanaged by some unforgiving end-customers. To cope, | you start to not fix certain problems so you won't have to | report the bugs or you start lying what the bugs were. I'm not | so sure it's on net a useful direction to be quite that open. | wbl wrote: | Has there ever been a lawsuit in which a company was held | liable for bugs despite the usual disclaimer? | Nextgrid wrote: | Let's stop condoning covering up incompetence. | | If you fuck up, admit to it, fix it and learn from it. | | If you fuck up bad enough that someone had a good case | against you then you should make them whole and use the | opportunity as a wake-up call to make sure this never | happens. | maxerickson wrote: | Aren't the flaws the sources of the liabilities? | curryst wrote: | Sure, but most people accept that flaws are inevitable. | It's not practical (or profitable) for most industries to | produce totally flaw-free software. | | If you can't stop the flaws, the next best option is to | shield yourself from those flaws harming your financial | well being. | pc86 wrote: | Having a changelog does not make you more open to | lawsuits. | pjc50 wrote: | Are there _ever_ successful software product quality | liability lawsuits? | 1vuio0pswjnm7 wrote: | In the US, a software license cannot limit liability or | damages arising from physical harm. Think of an instance | where software is the cause of physical harm. | WesolyKubeczek wrote: | This explanation doesn't make me empathetic at all, and lousy | changelogs are still lousy. | WalterBright wrote: | Back in the 80s when I was starting out in the compiler | business, I thought it would be a good service to include | with it a list of the known bugs. | | It didn't take long before a magazine reviewer did a compiler | roundup and simply printed the bug list as his "review". It | was a disaster for my business. | | It took me 20 years to get over being brutalized by that and | make the bug list publicly available again. | | https://issues.dlang.org/ | julik wrote: | This is likely why useful and important details in changelogs | are suppressed. Products where owners/managers value and | emphasise transparency are much better at this, but it | requires a specific culture. I mean - it does take guts to | say "All media in the application could be downloaded without | authentication by anybody on the internet. This has now been | fixed." | zbrozek wrote: | It's important to list what bugs you fixed. You can do fancy | things like group your changelogs under headings if you want to | make it easier to maintain focus for different audiences. A CAD | tool I use, for example, lists every single bug fixed and | references a ticket number with each. This is extreme, but much | better than the opposite extreme. | | It lets me know when I can stop using workarounds, or alert me | to landmines I've unknowingly tripped and lets me go back to | verify old designs. | | Regardless of who the user is, a changelog is supposed to tell | you what actually changed. If you're not going to do that, | don't bother having one. But if you don't bother writing one, | I'm not going to bother updating to the new version. From my | (the user's) perspective there's no incentive to do so unless I | know what I'm getting. There could be anything in there, so | I'll stick to the devil I know. | jandeboevrie wrote: | Hehe I'd be happy to read such a changelog | sltkr wrote: | I doubt you would. A large app each would have hundreds of | changes like this. It would get pretty boring after the first | dozen or so. | gregmac wrote: | I think the key is describing the user-facing effects and | impact. This means knowing your users (are they developers, IT | or highly technical? Do they automatically or manually update | quickly, or do they take time to evaluate before rolling out | updates?). It's a way to convey continuing value to users and | convince them it's worthwhile to keep paying, and get motivated | to get the update. | | I'd try to change what you wrote to something like: | | "Fixed out-of-memory errors on some 32-bit systems" | | "Improved startup time for configurations with lots of items" | | This makes it easy to gauge if this update is important to get | installed ASAP, such as fixing something they've experienced or | are likely to experience. | | Grouping "several UI fixes" or "performance improvements" is | usually fine, but I tend to call out something like "fixed UI | bug where a network error could result in changes not being | saved with no warning" or an issue that a sizable chunk of | users had reported. | | Doing this well takes time, though, as you have to synthesize | the internal ticket summaries, PRs and/or commit messages and | reword almost everything. This is understandable for open | source or free/indie apps, but for subscription/"enterprise" | software it's definitely one of the differences between "great" | and merely acceptable (or worse). | WalterBright wrote: | > Doing this well takes time | | For us, not that much time, as everything goes through the | bug tracker (even enhancements) so it's mostly a copy-pasta | job. When I submit a fix for a bug, I'll often edit the | subject to accurately reflect what the problem actually | turned out to be. | leesalminen wrote: | > but for subscription/"enterprise" software it's definitely | one of the differences between "great" and merely acceptable | (or worse). | | I couldn't agree more. | | I tried writing more informative but easy to digest release | notes when a couple noisy users mentioned at a trade show | that they wanted to know more about our bug-fixing efforts. | | To my surprise, we got a huge volume of communications from | our users that they loved our new release note style and to | keep it up. | | It takes us about 1 hour / release to write. We release small | changes weekly and large changes monthly to about 1mm MAUs. | mkr-hn wrote: | See Reaper (the audio thing) for the opposite extreme. The | changelog lists _everything_ , so sometimes you miss | significant new features because they don't make a big deal | about it. | | https://www.reaper.fm/download.php#whatsnew | | They put a whole notation editor in and didn't say anything | past the item in the changelog. Most tools like it have a | notation editor, but it's a $300 addon instead of a free update | to the standard $60 package. | alexcroox wrote: | I automate the app deployments for our team and "bugfixes and | performance improvements" is the changelog because it's totally | automated on release. Yes the automation could grab something | from the commit logs but I'm not confident I'd want to expose | some of our commit messages. Also recent versions of iOS have | further hidden away the update ui making it very hard to find for | most users, so why bother taking the time to add them manually | when 99% of your user base will never see them? | Kudos wrote: | You can maintain a file with the current/next changelog in your | vcs and pull from that. Works with automation, but is still | curated. | kingosticks wrote: | I think I'd argue it's not "totally automated" unless skipping | the changelog generation step was the intention. In which case | no need to justify that with any reasons, that's your (valid) | choice to omit some documentation. We used to maintain our | "customer-facing" changelog as we merged the associated code | but that did create work when trying to release and finding | some people had forgotten to provide an entry, which ultimately | reduced release frequency. So now we don't include a changelog | in the release itself, we create it after the fact and it's | more of a "living" document hosted online (having to create | another new release just because of dumb mistake in your latest | changelog is really annoying). For those that are really | interested, they can check the commit logs. For those less | interested, they can wait for the online changelog to be | written. It's likely they'll only have to wait a few minutes. | Obviously the former is easy for open-source projects. I'm not | convinced our new way is better yet but I'm willing to wait and | see if the release frequency improves. | twright wrote: | One time I wrote simply "bug fixes" for an app update and it got | rejected because the description was too short. I changed it to | something more in the lines of "bug fixes and improvements" and | it got accepted. I generally like writing changelogs for users | but I also wonder how many people have automatic updates on and | never read them. | CM30 wrote: | Yeah, it is nice to know what the actual changes are, rather than | a vague 'fixes were made' statement. Nintendo's update logs for | games have to be some of the most hilariously vague in that | regard, with many of the updates being just: | | > Several issues have been fixed to improve gameplay experience. | | But at the same time I guess I can see why companies and project | creators don't go into more detail. Maybe the actual bugs fixed | were so weirdly technical that most users wouldn't understand | them at all, or care (if the user hovers over this button for | 1/300th for a second, there's a 0.0001% chance their next message | might not save properly). Maybe they (perhaps sadly) don't | remember what exact things they fixed, since they fixed so many | bugs. | | Either way some more detail would be nice for those that do care | about this stuff. | rubyist5eva wrote: | > Nintendo's update logs for games have to be some of the most | hilariously vague in that regard | | On the flip-side, the changelogs for Super Smash Bros Ultimate | and Splatoon 2 are some of the best I've ever seen. | WalterBright wrote: | We list all the changes: | | https://dlang.org/changelog/2.095.0.html | mottosso wrote: | Yes, this! | rpearl wrote: | when we build a new feature, it's gated by a flag controlled by | the server. The app version with the feature is distributed well | in advance of the intended rollout. So, we can't even put the new | feature in the change log for the update that includes the | feature, and the rollout won't be associated with an app update. | | All we can really put in the change log is bug fixes, and the | circumstances that result in a bug can often be obscure and hard | to describe in user-facing terms, so it gets summarized: "bug | fixes and performance improvements". And for the play store and | the app store, we have to put _something_. | dasil003 wrote: | Contrarian viewpoint: | | I'm very passionate about this idea for open source software, | especially things like ruby gems or npm packages that I might use | as a dependency, but for some reason I can't muster the | indignation to care about this for apps. Maybe it's because I | care primarily that the app works and the latest version is | stable. I'm generally not going in and considering upgrades to | apps strategically, and even if I did I have no ability to see | the previous changelogs let alone install those versions. If for | some reason I want to avoid an upgrade now I'm living on borrowed | time and need to start thinking about a replacement or carefully | curate my backups so as not to lose access. Sure in a perfect | world it would be nice to have perfect changelogs, but it's so | far down the list of things I want out my apps that I place zero | value on it. | p0nce wrote: | The D compiler have had a great changelog since years and it has | made a difference to popularize what went into an update. Each | major change comes with examples, and it's great content. | | https://dlang.org/changelog/2.095.0.html | ulisesrmzroche wrote: | Maybe like a couple bullet points, nothing too technical, but | it's a good spot to talk to your customers and make them happy. | | It does depend on the product though. I can see a developer tool | maybe even just going so far as to putting out their internal | change log, but for other customer segments, it's best to keep it | short and (hopefully) funny | rodone wrote: | Bugfix: closed open single quote in title. | phreack wrote: | Worst offenders aren't even those. Some go as far as an | 'Information not provided by developer', and the worst of them | all - Netflix's 'You just worry about what to watch next.'. | Irritates me to no end, I now only update manually and if there's | no apparent benefit I just don't. Saved me from seeing some apps' | changing icons into something awful, or hostile UX redesigns. It | was a shame when Discord, who used to have some of the very best | changelogs, turned into this practice. | mottosso wrote: | This topic and responses to it warms my heart. :) I've made it a | habit for my current project to turn changelogs into blog-like | material for the end-user. The kind of changelog I would like to | see from other software, especially the kind I care about. | | For example: | https://learn.ragdolldynamics.com/releases/2020.12.01/ | brokencode wrote: | How much value does the average user get out of better patch | notes? None, since they don't even read the patch notes. So is | that worth the time for each issue to write and edit a user- | facing piece of documentation? | | Every little task like this is a waste of time and mental energy | that slows down useful work. In my opinion, this is just not | worth the effort. | bartread wrote: | I too basically disagree with the author (for reasons I'll go | into below), but I think it's worth unpacking a little further | that high quality release notes _can_ form an important part of | your communication strategy with your users. Note: high | quality. | | Many years ago I worked for a tools company where, for our less | popular tools, user count would be in the thousands to tens of | thousands, and for the more popular tools, it would be in the | hundreds of thousands. _Every single time_ we put out a release | you could guarantee that a handful of people would ask for | release notes even though we 'd always publish them. Clearly | people wanted them. | | Now I work for a company where our platform caters to two very | distinct groups of users - one group internal, the other | external. Particularly for the internal users release notes are | hugely important in order to avoid disrupting their work and | deliverables to customers. | | In both companies we've often had an "additional bug-fixes and | performance improvements" item in the list. | | Why? | | Because people only have so much attention to go around: | they're busy and, particularly in my current role and with our | internal users, it's critical that we draw that limited supply | of attention toward the most important changes. That's much | more valuable than sending out an exhaustive document of every | single change every time we do a release. We've found that if | we supply exhaustive notes, fewer people tend to read them, and | we get complaints that they're too long. As you've already | suggested it comes down to ensuring that the release notes you | provide are actually valuable to users. | | Together with other documentation and training materials, | release notes can provide a useful jumping off point for | learning how to work with changes and improvements to our | software. | | (Not everybody reads them, of course, but having them does at | least mean that when they inevitably ask for help/information, | we can point them at the release notes as a starting point.) | altitudinous wrote: | I used to love posting detail about what I change in my apps. But | now the text isn't really surfaced - folk have automatic updates | turned on, and the text is deep in the app store now. | | My changes are mostly technical when I use the "bug fixes and | performance improvements" text, but I tend to write more for the | app store reviewers to let them know what is going on. I know | they read it. | | In the end my audience of users are very non technical. I am | authentic to them, that is the image that I sell my apps with, | and I am good at it. So they just don't care that I've updated | library X, or improved error handling somewhere, or I support | Apples latest devices now. They do have faith that I am doing the | right thing, and they write to me as if they know me, and I like | that. | Santosh83 wrote: | These are changelogs for end users, not fellow developers. In | fact I expect that even these "one line notices" will be | dispensed with in future as the concept that _any_ software or | device requires an always-on connection to the Internet becomes | fully normalised. Apps /devices will simply update and that's | that. You won't be given any sort of option or toggle. Does | anyone seriously ask the govt NOT to maintain a road or bridge? | Such will be the case with software too. | | Individual freedoms and privacy have no future in the direction | technology and society are going. | blargmaster42_8 wrote: | Translateing : #$(ticketId) Resolved by $(implementation details) | into something the end user understands IS HARD! ___________________________________________________________________ (page generated 2021-01-02 23:01 UTC)