Challenge: The Phantom Bash Loop

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,547
Reaction score
1,299
You will agree with me on this statement ?
Any piece software will evolve over time.

The original programmer might have left the company and someone has to take over the task of maintenance. Let alone debugging effort.


What makes you think the new comer is good enough to even take over the “easy” existing code?

That is why documentation exists.
You are quoting something we all understand, but trust me I have seen fallacy over these statement all the time, that some code are so easy and so verbose at the same time end up doesn’t look easy to read at all.

The part that makes something easy is context.
I have shown you E=mc^2, it is so short and so easy to read. The context is where make it so difficult to understand.

What makes something easy to debug is to make the programmer understand the context first. But again, good codes are only readable, it has to be performant too.

There are a lot of times performant codes are not easy to read. Getting competent is also just as important in the engineering world. Don’t think easy is only about readability. Things are easy too when the person whom took over is competent

So while I may agree with your statement, I may also disagree with your statement because you are just steering to only half the picture.

In your words, if you need to implement the sorting algorithm in your program, i bet you will just be using bubble sort? Because it is so easy. You will skip over the quicksort completely because some parts of it are difficult to understand and difficult to write comparing to the bubble sort.

There isn’t always the case where there exist something readily available to you like having a “sort” function. I am not talking about reinventing the wheel, I am talking about a custom algorithm that fit your use case. Trust me competency and context wins over just mere readability. Readability alone has been so often a fallacy.

There is nothing in the Linux kernel source that is readable and hence easy. If you are maintaining it, you better be competent.

In the context of this thread, I am showing you a road to competency. If you just want to talk about readability and ease, you can start your own thread to demonstrate it. Things only get easy when a person gets better.

BTW the problem you quoted about having new programmer take over old code is a process problem, not an engineering problem. It should be resolve where how do you enable knowledge transfer, and how do you keep a team of developers that know the system where so that there is always ways knowledge transition from one set of developers to another set.

These knowledge can exist as frameworks, as a product, as components, as documentation and many things. The code doesn’t necessarily need to be simple, it can be necessarily cryptic when it is about performance, but it has to be well encapsulated and techniques well documented.

:)
 
Last edited:

peterchan75

Supremacy Member
Joined
Apr 26, 2003
Messages
6,716
Reaction score
529
BTW the problem you quoted about having new programmer take over old code is a process problem, not an engineering problem. It should be resolve where how do you enable knowledge transfer, and how do you keep a team of developers that know the system where so that there is always ways knowledge transition from one set of developers to another set.


:)

In the real world, it is always a process problem. That's given. If a system is difficult to maintain, often times it get ditched. Since most staffs either got chopped or left, nobody cares. Twitter is a good example. When a company is in trouble, mgmt always blame the process. I have seen expert consultant came and helped developed a global supply chain planning system. When it went live, the system stalled. They ended chopping the system into parts. Consultants always get paid and left. :D

Just to illustrate how difficult is to hunt down a problem in a over designed system with the flooded Lexus.
 

davidktw

Arch-Supremacy Member
Joined
Apr 15, 2010
Messages
13,547
Reaction score
1,299
In the real world, it is always a process problem. That's given. If a system is difficult to maintain, often times it get ditched. Since most staffs either got chopped or left, nobody cares. Twitter is a good example. When a company is in trouble, mgmt always blame the process. I have seen expert consultant came and helped developed a global supply chain planning system. When it went live, the system stalled. They ended chopping the system into parts. Consultants always get paid and left. :D

Just to illustrate how difficult is to hunt down a problem in a over designed system with the flooded Lexus.

This thread is about the bash challenge, please kindly keep the conversation to its intention?

Thanks
:)
 
Important Forum Advisory Note
This forum is moderated by volunteer moderators who will react only to members' feedback on posts. Moderators are not employees or representatives of HWZ Forums. Forum members and moderators are responsible for their own posts. Please refer to our Community Guidelines and Standards and Terms and Conditions for more information.
Top