|
It's worth refactoring if
- someone has a design that will significantly improve the code, and
- the cost of refactoring will be recouped by making it easier to add new capabilities over the product's anticipated lifetime.
The introduction of bugs is indeed a concern and is one more reason for developing automated testing, the lack of which results in what a former colleague astutely called "verification inertia".
In a major refactoring (rewrite), some things that can help are
- There must be good specification documents so that the rewrite doesn't drop functionality.
- No significant user-visible changes (e.g., to a GUI) are allowed, because this is likely to anger users.
- Customers still want new functionality, so split the development team:
- In release 1, have a small group create the core of the new system while everyone else continues to deliver on the old one.
- In release 2, reimplement a significant portion of the product's capabilities on the new system while still delivering new capabilities on the old one.
- In release 3, shift everyone to the new system, which finally catches up to the old one and delivers the new functionality promised for that release.
|
|
|
|
|
Yup. Well compiled.
That's what I meant by "more carefully and diligently planned" than the norm, where you can just do a (partial) fork, to try things out.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
More or less what we are thinking to do.
Only difference is, we are very few people and we have to split our time, not the team. And we are not refactoring but rewriting it.
Our plan (easy description)
1) Code freeze for current version, only critical things will be done
2) Start new core and set it work in paralel with old staff
3) If tests / logs / checks are good. Start implementing new version of functionalities and move the ones that can be moved to the new core.
4) Do a parallel separated app with all new stuff.
5) Switch off old version in one "guinea pig" production system
6) start rolling out new version slowly to the other parts of the field
7) Go back to normal business in new version
8) start implementing new functionality in new version
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
It's not just refactoring; it's stuff that's not even implemented.
|
|
|
|
|
Recently a younger developer I respect expressed a somewhat common concern. In essence, their concern was that they were finding themselves doing a little bit of everything and not specializing enough. They were specifically concerned that nobody would want to hire them without a key specialization. I'm more of a b-shaped developer
sans-serif
|
|
|
|
|
Kent Sharkey wrote: I'm more of a b-shaped developer According to everyone else, I'm more of an F.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
With the release of Google Chrome 80, Google quietly slipped in a new feature that allows users to create a link directly to a specific word or phrase on a page. A Brave Browser researcher, though, sees this as a potential privacy risk and is concerned Google added it too quickly. A Google feature with privacy concerns? This is a first!
|
|
|
|
|
Wow.
This is bad.
A privacy issue that makes the "attacker" open each individual page and look at it.
It'll catch on in a big way, because it's so much easier to type a search string to open each page and look at it than, say, clicking links to open the pages.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Inrupt, the company behind the open-source Solid project, hires experts in its drive to let users control their data. Where's the horse go? And why is the barn door open?
Quote: At the moment, the Solid Pod server that users would install locally, is just a prototype implementation with "no security or stability guarantees".
Because as we all know, those can be tacked on later
|
|
|
|
|
According to the FT: some big tech companies have privately dismissed Solid as an academic project ... So have only assigned budgets of between half and three quarters of a billion to research methods for breaching pods.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Understanding when smart speakers mistakenly record conversations 'mistakenly'? Riiiiiiiight
|
|
|
|
|
Quote: The average rate of activations per device is between 1.5 and 19 times per day (24 hours) during our experiments.
...
devices have the longest activations (20-43 seconds). Conclusion: They are "recording" you up to 15 Minutes a day, and that only due to television (mostly false positives)
Nice...
I think I am going to start making something like: xkcd: Listening[^]
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Just remember that a vampire cannot enter your home unless you invite it in.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
A research team at the Center for Energy Storage Research of the Korea Institute of Science and Technology (KIST) led by Dr. Hun-Gi Jung has developed a new battery made of silicon anode materials that offers a great improvement on traditional batteries. "It's also a floor polish!"
|
|
|
|
|
Kent Sharkey wrote: silicon anode materials
Meh, like the kids all ask - what's an e between friends? When are the first silicone cpus coming out?
|
|
|
|
|
It fell off, somewhere over the Atlantic.
TTFN - Kent
|
|
|
|
|
Quik, look!
Thar she goes
|
|
|
|
|
Why would an Australian demand usage of the US dialect?
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
For the same reason a Dutch fella would enquire - his curiosity was piqued.
In all seriousness though - help me understand how foolish I am. What do you mean?
|
|
|
|
|
I ain't Dutch, innit?
"Silicon" is English for the substance, and "silicone" is only used for compounds that contain silicon (like bathroom sealant); "silicone" is often used in the US for both.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Heheh heheh
Bloody bewdy! Thanks mate. I love the way many of your comments are like good movies and make more and more sense, revealing their brilliance ever more upon re-visiting. I shouldv'e bloody figured there wouldn't be the distinction made in the US.
For fun - was watching a thing on the idiot box the other day discussing our newly opened national space agency. Amongst all the laughing at the ridiculous acronyms we'll inevitably get and the joyfully printed clothing (ASS cap, anyone?) talk turned to ockerisms of "Houston, we've got a problem". In the most horrible, nasal voice came the morning's goldmine - "Yeah ah, Woomera. We're cactus mate"
|
|
|
|
|
Damn, you've just reminded me of that movie about the Australian observatory that covered some of the first moon landing!
I've no idea what it was called, and can't remember who was in it, but I'd love to watch it again!
That's going to consume the rest of my day, now...
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Ha! The Dish (2000) - IMDb[^]
I just went straight to it, using imdb's advanced search!
Next stop, bol.com.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
|
I wonder what charging current it takes to fill twice as much energy into a battery in five minutes.
And I wonder which cable dimension is required to carry that current.
Obviously you could raise the voltage to, say, 12 kV. That might require a rethinking of the insulation.
|
|
|
|