Jump to content

Suggestion: monthly release until Accordance software is rock-solid


Lawrence

Recommended Posts

@Nathan Parker

 

Let me start with a story about Apple.

 

Apple went through a rough patch after they sacked Steve Jobs.

Gil Amelio, a 'corporate turnaround' specialist, was the last CEO before Jobs came back. Amelio was infamous for firing people (eventually being himself 'Ameliorated', as the industry called it) and perhaps not famous enough for hinting at products that led to today's iOS suite. However, their software (Mac OS) was dated and try as they might, they seemed to have lost their development rhythm. Releases were late, deadlines were repeatedly missed, and apparently even Adobe threatened to leave the platform.

 

Aside from all the development under the hood, they instituted one key discipline which brought them back to development credibility.

If memory serves, this happened after Steve Jobs was brought back to Apple from NeXT with his chief of software Avie Tevanian.

They set a fixed period between software releases (6 months?). It didn't matter whether there was a big leap forward or just a bit of progress - users knew when they'd be getting their next upgrade, and it would be an improvement. Eventually, users and vendors accepted that Apple had got its development back under control, and Apple could relax that tight schedule.

 

Accordance is kind of in that troubled period now, substantial progress notwithstanding. Users want to hang on to v.13 (indicating distrust of v.14), sync is still at least 2 releases away, and iOS libraries go weird just by moving resources around. If you're relying on Accordance for preaching, teaching or even just writing essays in Bible college, Accordance feels like a platform where it's good when it works, but then it hiccups and you might have to reinstall everything from scratch ... again. To be fair, my experience with v.14 on the PC has been improving, but I hesitate to recommend Accordance to anyone for mission-critical work, especially if they're using an iOS device or have a multiple-device workflow.

 

It feels like a long time since v.14.0.4 was released, and it seems to be taking longer between releases.

Please consider suggesting to the internal stakeholders that the development team moves to a monthly release schedule until Accordance is rock solid on iOS, Mac OS and Windows platforms, and syncs reliably and correctly among them. Releases should include only tested and stable components - or at least components that are more stable than the previous version - but you don't need to hit everything in every release. Instead, ratchet up the stability a little at a time with each release, and help users regain confidence in the software.

  • Like 1
Link to comment
Share on other sites

This sounds like the sprints we were using in project management before i left. Personally i would let the accordance staff get on with their job and not put any additional pressure on them to get a series of quick fixes out covered in sticking plasters.
 

From other threads, they have found some fundamental issues in the coding which they need to get sorted and properly tested before they think about releasing a beta and i would prefer to wait for a solid platform with minor bugs not picked up in beta rather than keep getting drips with some things fixed and others not.

Edited by ukfraser
  • Like 4
Link to comment
Share on other sites

My supposition is that 14.0.5 is taking much longer than previous point releases because it’s making greater changes to improve stability, which in turn requires a greater amount of testing. For example, User Tool editing and import are unreliable in multiple ways. Some fundamental changes to the way the program operates on User Tools might fix that, but will take time to implement, and need lots of testing to make sure the fixes work on a broad range of cases.

 

Frequent releases can serve to give users and managers a sense that progress is being made, but they can also lead to doing things poorly to meet a deadline (creating technical debt). The Agile methodology with its sprints and regular meetings can also lead to tech workers spending most of their time doing nothing: https://emaggiori.com/employed-in-tech-for-years-but-almost-never-worked/.

  • Like 4
Link to comment
Share on other sites

3 hours ago, jlm said:

 

Frequent releases can serve to give users and managers a sense that progress is being made, but they can also lead to doing things poorly to meet a deadline (creating technical debt). The Agile methodology with its sprints and regular meetings can also lead to tech workers spending most of their time doing nothing: https://emaggiori.com/employed-in-tech-for-years-but-almost-never-worked/.

 

I found the linked article fascinating.

 

I am a senior citizen with no real experience in tech, but I have a relative who works in it and the article goes a long way to explain what I hear from him about how his company works. I have grown increasingly concerned over my lifetime about the deterioration of core building blocks of our society. There is a veneer of progress, but even a rich society cannot maintain it's lifestyle when honest, competent and efficient work is not seriously pursued. Collapse is inevitable, though it may take many years to become apparent. These are just my own biased musings as one observer who tries his best to understand the world around him. 

 

I am thankful that my security is not in the things of earth but in the promises of God of a heavenly inheritance in Christ. IMO this is not a head-in-the-sand, pie-in-the-sky mentality. It is a fundamental reality consistently taught in both Testaments. Our hope is in the things that cannot be shaken.

  • Like 2
Link to comment
Share on other sites

Frequent releases aren't a necessity, especially if the releases are forced and cause more problems. That's how I feel the release of version 14 was handled. Don't make the same mistakes.

 

Instead, I've been harping on the constant refrain that what helps is more openness and communication. If progress is being made, it's good to say it, but saying more is good too. I realize there's a level of communication that may seem bad (for instance saying that sync being resolved is at least 2 releases away strikes one as bad news and can potentially lose sales), but saying, we really messed up that first release and it has caused us to do some deeper reprogramming which has derailed us from our planned release schedule, but in our next release we are focusing on X, Y and Z issues being fixed, and once those are in place it will prepare us to better attack problems F, G, and H.

 

That to me is closer to what the Apple release schedule was ultimately about, taking apart the big problem and start putting some wins on the board to gain momentum to increase both employee and user morale.

  • Like 2
Link to comment
Share on other sites

Thanks everyone for the feedback!

 

I’m hesitant of us committing to a particular schedule for releases, as that’s what got us into the issues with Accordance 14 in the first place. I’d rather our programmers take the time to release something that works instead of releasing updates on a set schedule that could pressure our programmers to release something that isn’t ready.

 

In terms of 14.0.5, the update will resolve/improve some deeper-level changes such as improving the connection between Accordance Desktop and Accordance’s Servers. Part of the holdup was I had planned to “battle test” a pre-beta build on my Windows machine by downloading my entire Accordance library with it. Unfortunately, the time I chose to run the “battle test”, I had a series of internet outages which prevented me from conducting the tests. I finally got the tests done, but you can thank my local ISP for part of the holdup. I seem to be cursed for having reliable Internet where I live.

 

This is one of our deeper-level improvement updates we’ve released, so we want to ensure it’s rock-solid when we get it out to customers. I also wanted to “battle test” it personally before we released it to customers (and even beta testers), and I would have had the tests done sooner, but my Internet decided to keep going on vacation.

  • Like 3
Link to comment
Share on other sites

Just to clarify - I'm not suggesting that programmers be pressured to ship buggy code just because a deadline has been reached, and it's good that everyone is of the same opinion. We definitely don't want a repeat of the v.14 launch problems.

 

But software development isn't always like putting together a jigsaw puzzle, where the picture is complete only when the last piece has been put in place. It's more like a growing tree, person or animal, where each period of growth adds a unit to the structure, strength and stability of the organism, while the whole continues to function. There will always be experimental or unfinished work during development, but there should also be a series of code check-ins that represent completed units. It's these completed units that I was suggesting to be more regularly released.

 

There are also times of deep surgery, where releasing anything will result in a mess. I thought we were at a different phase in v.14 development - belts and braces, as a retired colleague used to call it.

 

I suppose the main takeaway is that whichever point we're at, the view from outside is still fairly opaque. That's fine when the product is solid. When it isn't, 3 months can feel like a long time.

Edited by Lawrence
  • Like 3
Link to comment
Share on other sites

Thanks for the clarification. One of the things I’m looking into is seeing if I can provide at least a general roadmap with Accordance 14 development without over-promising too many specifics or too many dates. As I get more info I can share, I’ll update everyone.

  • Like 3
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...