User:

Log in user:

(step 1 of 2)


Write your email address in the white field and then click the "Confirm" button.

Log in user:

(step 2 of 2)


Write your password in the white field and then click the "Confirm" button.
Or click the "Request password" button to request forgotten password.

Log in user - Failure:


Email address has not been found!
Click the "Previous step" button to to enter your email address again.
Or click the "Register user" button to register your email address.

Log in user - Failure:


Pasword does't match!
Click the "Previous step" button to enter the password again.
Or click the "Request password" button to request forgotten password.

Request password:

(step 1 of 2)


Write your email address in the white field and then click the "Confirm" button.

Request password:

(step 2 of 2)


Your password has been sent to your email.
Please also check your spam folder.

Request password - Failure:


Email address has not been found!
Click the "Previous step" button to enter your email address again.
Or click the "Register user" button to register your email address.

Register user:

(step 1 of 5)


Write your email address in the white field and then click the "Confirm" button.

Register user:

(step 2 of 5)


Registration code has been sent to your email.
Please also check your spam folder.
Copy the registration code from your email in the white field and then click the "Confirm" button.
Or click the "Previous step" button to request the registration code again.

Register user - Failure:


Email address already exists!
Click the "Previous step" button to enter the email address again.
Or click the "Log in user" button to log in with your email address and password.
Or click the "Request password" button to request forgotten password.

Register user:

(step 3 of 5)


Set your user name in the white field and then click the "Confirm" button.

Register user - Failure:


Registration code does't match!
Click the "Previous step" button to enter the registration code again.

Register user:

(step 4 of 5)


Set your password in the white field and then click the "Confirm" button.

Register user - Failure:


User name already exists!
Click the "Previous step" button to set another user name.

Register user:

(step 5 of 5)


User has been successfully registered.
Click the "Log in user" button to log in.

User settings:

User settings:


Please log in to be able to open user settings.
Click the "Log in user" button to log in with your email address.
Or click the "Register user" button to register your email address.

User settings:


Your subscription has been successfully canceled.

User settings:


Your subscription has been successfully established.

Write comment:

Write your comment in the white field and then click the "Add comment" button.

Don't make it worse!



Making progress

If you are lucky to be tasked with developing a new generation of the system, first get to know the old generation thoroughly.
Find out which solutions worked and which didn't work.
Find out why things were done the way they were done.
Find out what the customer appreciates in the system and what bothers them.

Avoid repeating old mistakes.
Don't deprive the customer of the features he was used to.
If necessary, do not forget the backwards compatibility.

Look at history and learn from it. But also use new knowledge and new technologies and don't be afraid to discover new ways.

© Radim-Automation, 2020–2025. All rights reserved.
Sharing of this article is permitted with proper attribution (link to the original page).


Related previous articles:


Related next articles:


"The farther back you can look, the farther forward you are likely to see."
– Winston Churchill

If the customer/operator has become accustomed to certain visualization layouts and operating philosophies, then it is difficult to teach them a different visualization concept, even if it is better.
Therefore, try to design the layout of the visualization and the philosophy of operation in such a way that you do not have to change it significantly in the future.

"When planning a controls upgrade, first consider your goals for the upgraded system. Are you trying to protect against future obsolescence, increase system flexibility, enhance technology or meet budgetary or cost of ownership requirements? Also consider your available downtime for the controls upgrade. All of these aspects can play a key factor in choices about enhancing system characteristics and the overall solutions for the upgrade."
- Beckhoff Automation LLC (06/2021). White paper - Machine Control Migrations Hinge on System Openness - Key aspects to consider when upgrading controllers and automation platforms include increasing flexibility and adding capabilities while being cost conscious.

It's easy to give advice at the beginning of a project. Everyone here knows best. But are these consultants able to bear the consequences of a failed development that lasts for years and cannot reach satisfaction?

It is usually experienced people who are not asked for their opinion when a concept is being defined, but who repeatedly have to struggle with the consequences of wrong decisions, workarounds and fixes due to the fact that conceptual decisions were not made based on experience.

⇒ Involve experienced people in conceptual decisions and thus avoid later problems.
⇒ Hold people accountable for their decisions and actions!

"The entire development cycle should be structured in such a way that communication with the customer is as frequent as possible, which is ultimately more important for the success of the project than the technology used."
Translated from:
- Petr Paleta. Computer Press (2003). Co programátory ve škole neučí (Page 255).

"It is important to distinguish between adding resources to a project that is in trouble and simply reacting in a "knee-jerk" fashion by increasing funding. It is true that, conscientiously applied, additional resources in the form of personnel, support, and money can help a project. This is particularly true in situations in which initial funding was too low, throwing the project's completion into question from the beginning. Howerver, before simply reacting in a panic mode to project troubles, the first step is to conduct a realistic analysis of where the project currently is, how it got there, and how additional funding can bring it back on target."
- Jeffrey K. Pinto, Om P. Kharbanda. Business Horizons (1996). How to fail in project management (without really trying) (Page 50).

"A good interface is easy to learn, leads to faster reaction time, safer operations and higher productivity. You deserve a system that is intuitive - one that at a glance you can see what actions need to be taken and is easy to navigate."
- General Electric (2021). Modern HMI/SCADA Guidebook for Efficient Operations.
- https://www.ge.com/digital/lp/modern-hmiscada-guidebook-efficient-operations

"The information that should be available on a graphical user interface (GUI) of a machine depends heavily on the type of machine and its application. However, here are some basic pieces of information that are often displayed on a GUI:

1. Status Information: The GUI should display important status information about the machine, such as whether it's powered on or operational, whether it has issues or error messages, and whether all systems are functioning properly.

2. Operational Parameters: Display the current operational parameters of the machine, such as speed, temperature, pressure, voltage, etc. This allows the user to monitor the machine's current state and make adjustments if needed.

3. Process Overview: If the machine is involved in an ongoing process (e.g., manufacturing, processing, analysis), relevant process data and steps should be displayed on the GUI. This helps the operator monitor the progress of the process and identify potential deviations.

4. Warnings and Error Messages: Display warnings or error messages if problems or critical situations arise. This enables the operator to react quickly and take appropriate actions.

5. User Interaction: Provide interfaces for user interaction, such as adjusting settings, changing parameters, or issuing commands. This includes buttons, dropdown menus, text fields, and other elements.

6. Historical Data: A history or log of past events and activities can be helpful for identifying trends, diagnosing errors, or making performance improvements.

7. Documentation and Help Material: Provide user manuals, help tutorials, or links to further information so that users can learn about operation, maintenance, and potential issue resolutions.

8. Visualizations: Depending on the application, charts, graphs, or visual representations of relevant data can be useful for recognizing relationships and trends more easily.

9. User Profiles and Settings: Allow users to create individual profiles and configure specific settings to match their workflow.

10. Safety Information: If the machine could potentially be hazardous, the GUI should display safety instructions, emergency stop buttons, or other safety mechanisms.

11. Contact Information and Support: Provide contact information for technical support or customer service in case users need assistance or support.

It's important to carefully design the GUI based on user needs and the type of machine to ensure a user-friendly and efficient experience."

- https://chat.openai.com (What information should be available in the machine's graphical user interface?)

Why is there never enough time to do it right the first time, but always enough time to do it over?

"The saying "There's never enough time to do it right the first time, but always enough time to do it over" reflects a common observation about human behavior and project management. It suggests that people often rush through tasks or projects initially, hoping to save time and effort, but end up making mistakes or producing subpar results. As a result, they eventually need to invest more time and resources to fix those mistakes or redo the work properly.

There are several reasons why this phenomenon occurs:

1. Underestimation of Complexity: People might underestimate the complexity or difficulty of a task or project at the outset. This can lead to inadequate planning and allocation of resources, resulting in mistakes or oversights.

2. Pressure to Meet Deadlines: There is often pressure to complete tasks or projects quickly to meet deadlines. This can lead to shortcuts being taken or important steps being skipped in the interest of saving time.

3. Lack of Attention to Detail: When rushing through a task, individuals might not pay enough attention to details, leading to errors that require corrections later.

4. Overconfidence: Sometimes, people might overestimate their abilities or knowledge, leading them to believe they can complete a task quickly without proper preparation or diligence.

5. Incomplete Information: In some cases, tasks or projects might be started without having all the necessary information or requirements. This can lead to incorrect assumptions and decisions.

6. Limited Resources: Constraints on resources such as time, money, or manpower might force people to cut corners initially, with the intention of fixing things later when more resources are available.

7. Learning Curve: Sometimes, tasks involve new skills or technologies that individuals need to learn along the way. Initial attempts might be suboptimal as people are still acquiring the necessary expertise.

The saying serves as a reminder that investing the necessary time and effort upfront to do a task properly can save more time and resources in the long run. Proper planning, attention to detail, and thorough execution can help prevent mistakes and the need for redoing work.

However, it's worth noting that the saying is not universally true. In some cases, rushing through tasks might yield acceptable results, and redoing work might not be necessary. It all depends on the nature of the task, the level of expertise involved, and the specific circumstances."

- https://chat.openai.com (Why is there never enough time to do it right the first time, but always enough time to do it over?)

"Don't dig deep into anything because it costs us money. Just pretend that we are experts and hope that the others gets the chestnuts out of the fire."
- unnamed user (own experiences leading to this ironic statement)

What does the customer need?

"Understanding what a customer needs is a fundamental aspect of providing good customer service and delivering products or services that meet their expectations. Customer needs can vary depending on the context, industry, and individual preferences, but they generally fall into several categories:

1. Basic Needs: These are the essential requirements that customers expect to be met. For example, if someone is buying a smartphone, their basic needs might include making calls, sending texts, and accessing the internet.

2. Functional Needs: Functional needs go beyond the basics and encompass the specific features or capabilities that customers are looking for. In the smartphone example, this could include a high-quality camera, long battery life, or a specific operating system.

3. Emotional Needs: Customers often have emotional needs tied to their purchases. They may want to feel a sense of belonging, prestige, or security when buying a product or service. For instance, luxury car buyers may seek a sense of status and prestige.

4. Convenience: Many customers value convenience. This can include factors like ease of purchase, user-friendliness, and accessibility. E-commerce websites, for instance, need to be easy to navigate to meet this need.

5. Price and Value: Customers often want to get good value for their money. They may prioritize finding products or services that offer a balance between quality and affordability.

6. Customer Support: Excellent customer service and support are essential for addressing customer needs. Prompt responses, helpful information, and problem resolution are key components.

7. Customization and Personalization: Some customers value products or services that can be tailored to their specific preferences. This could include personalized recommendations on an e-commerce site or customizable software settings.

8. Quality and Reliability: Many customers prioritize quality and reliability. They want products that work as expected and are built to last, reducing the need for repairs or replacements.

9. Sustainability and Ethics: An increasing number of customers are concerned about the environmental and ethical impact of their purchases. They may seek products or services that align with their values in terms of sustainability and social responsibility.

10. Feedback and Input: Customers also need a way to provide feedback and input, whether it's to express concerns, make suggestions, or report issues. This helps companies improve their offerings.

To understand what a specific customer needs, it's crucial to engage in effective communication, actively listen to their requirements, ask clarifying questions, and gather feedback. This can be done through surveys, focus groups, customer interviews, or simply by interacting with customers in the course of business. Meeting these needs is key to building customer loyalty and growing a successful business."

- https://chat.openai.com (What does the customer need?)

Does it make sense to think about digitalization if we don't see any use case?

"If you don't see any practical use case or clear benefit for digitalization in your specific situation, it may not make sense to pursue it blindly. Digitalization should always align with your organization's goals and needs. Here are some considerations:

1. Assess Business Objectives: Start by identifying your organization's objectives and challenges. Digitalization should align with your strategic goals, whether it's improving efficiency, reaching new markets, enhancing customer experiences, or reducing costs.

2. Customer Demands: Consider whether your customers or clients expect or would benefit from digital solutions. If there's no demand for digital services, investing in them may not provide a return on investment.

3. Competitive Landscape: Analyze your competition. If your competitors are effectively utilizing digital technologies to gain a competitive advantage, it might be necessary to explore digitalization to stay relevant.

4. Cost-Benefit Analysis: Conduct a thorough cost-benefit analysis to determine if the potential benefits of digitalization outweigh the costs. If the investment doesn't offer a reasonable return, it might not be justified.

5. Resource Availability: Evaluate whether you have the necessary resources, including financial resources, technical expertise, and staff training, to implement and sustain digital solutions effectively.

6. Future Growth: Consider the scalability of your organization. Even if you don't currently see a clear use case for digitalization, it's essential to think about your organization's future growth and whether digital technologies could play a role in that growth.

7. Technology Trends: Stay informed about industry trends and emerging technologies. While there may not be an immediate use case, technological advancements could create new opportunities down the line.

8. Customer Feedback: Engage with your customers or stakeholders to gather feedback on their needs and preferences. They may provide insights that could uncover potential use cases for digitalization.

9. Pilot Projects: Instead of a full-scale digital transformation, consider starting with smaller pilot projects to test the waters and assess the feasibility and impact of digital solutions in a controlled environment.

10. Consult Experts: Seek advice from digital transformation consultants or experts in your industry. They can provide insights into potential use cases and help you determine if digitalization is appropriate for your organization.

In some cases, it may indeed be the case that digitalization doesn't make sense for your organization at a given time. However, it's essential to regularly revisit this assessment as technology and business landscapes evolve. What might not be relevant today could become essential in the future. Ultimately, the decision to pursue digitalization should be guided by a thorough understanding of your organization's unique needs and circumstances."

- https://chat.openai.com (Does it make sense to think about digitalization if we don't see any use case?)

Often the person who knows the answer or the right way is closer than you think. All you have to do is ask.

Complaints and identified problems are good sources of innovation.

"By continuously improving the design of code, we make it easier and easier to work with.
This is in sharp contrast to what typically happens: little refactoring and a great deal of attention paid to expediently add new features.
If you get into the hygienic habit of refactoring continuously, you'll find that it is easier to extend and maintain code."

- Joshua Kerievsky. Addison-Wesley (2004). Refactoring to Patterns.

"Never discourage anyone who continually makes progress, no matter how slow."
- Plato

Benefits and risks of software updates via remote access to customer machines

In today's agile world, quick and easy software updates are essential for maintaining technologies and systems. However, the transition from manual installation of updates to remote access raises an important discussion about the risks and benefits of this approach.

Technical feasibility and tools:
The technical aspect is not an obstacle. With today's concepts and tools, the application software can be updated on remote machines at the customer's premises.

Risks:
However, the main concerns relate to the risks associated with this procedure. There is a possibility that the installation of the new software version may cause unexpected problems that can have serious consequences. The machine may no longer be able to be started and may even no longer be accessible remotely. A specialist then has to travel to the customer. This can take up to several days and leads to expensive production downtime for the customer.

Benefits:
Conversely, remote software updates have many advantages. Customers do not have to wait for a technician to be present, which saves time and travel costs. In addition, the rapid availability of updates can improve overall customer satisfaction and increase efficiency.

Solution:
To minimize the risks associated with remote updates, clear rules and procedures must be established. These include thorough testing of updates prior to deployment, detailed data backup and recovery plans and adequate training of customer personnel.