Know that you will save it in the repository Feb 18, 2025 code repository work changes task
3 min read

I patted three programmers on the shoulder and asked what they were working on. “I’m refactoring these methods,” was the first one’s reply. “I’m adding some parameters to this web operation,” said the second. The third one said, “I’m working on this use case.” It may seem that the first two were absorbed in the details of their work, and only the third saw the bigger picture, and his approach was better. I asked when and what they were going to put in the repository, and then the picture changed dramatically. The first two clearly understood what files they would be, and were going to finish the work in about an hour. The third said, “I suppose I’ll finish in a few days. I’ll probably add some classes and somehow modify the services.
...
Try before you decide Feb 16, 2025 in • JAVASCRIPT
mary tom poppendieck javascript architect decision team solution information
3 min read

Many choices must be taken during the attachment-forming process. Some may be related to the library or infrastructure selection, while others may be related to the application of particular design patterns.In any event, the architect is often in charge of making the choice. The architect gathers all available data, considers it for a period, and then specifies the guidelines that the developers must follow. The fact that there is an improved method won’t surprise you. The decision-making process is described by Mary and Tom Poppendieck in their work on lean development. They think that the ultimate choice should wait until the most crucial moment, when the team’s inaction will have permanent (or difficult to reverse) repercussions and a decision will be made on its behalf if no decision is made.
...
Do not touch this code Feb 15, 2025 development server testing code team
3 min read

Each of us has had something like this happen at some point. Your code has been uploaded to the staging server for system testing, and the department head Testing informs you that there is a problem. You are immediately ready to respond: “Let me quickly fix everything: I know what the issue is.” However, in a broader sense, the problem is that you, as a developer, believe you should be granted access to the server where testing is being conducted. In most cases, when it comes to web development, the architecture can be broken down into the following parts: -Local development and unit testing on the developer’s machine Development server where automated or manual integration testing is conducted Staging server, where the quality control team and users conduct acceptance testing Combat (production) server Yes, there are other servers and services, for example, for managing source code or software defects, but the idea is clear.
...
Prevent the occurrence of errors Feb 01, 2025 july dd recording date errors user users instructions
3 min read

Error messages are the most critical form of interaction between the user and the system. They arise when the user’s communication with the system is on the verge of breaking down. It is easiest to assume that errors occur due to user fault from entering incorrect data. However, the mistakes people make are predictable and happen systematically. Therefore, you can “debug” the interaction between the user and the system just as you debug the interaction between other components of the system. Let’s say the user needs to enter a date within a specific range. Instead of allowing them to enter any date, wouldn’t it be better to provide a tool like a list or calendar that shows only the permissible dates? This would eliminate any possibility of entering a date outside the allowed range.
...
Install me Jan 23, 2025 in • CANADANORTH AMERICAN
ip canada immediate world program file problems textbook product
3 min read

I am not at all interested in your program. I have plenty of my own problems and a long list of tasks. I only visited your site because of unverified rumors that your program would solve all my problems. Please forgive my skepticism. If eye-tracking studies are correct, I’ve already read the headline and am scrolling through the page looking for the blue underlined link Download Now. By the way, if I accessed this page from a browser running on Linux and my IP is from Canada, it can be assumed that I need the Linux version from a North American mirror, so please don’t ask about that. I understand that the file download dialog will open immediately, so I’ll send this thing to my downloads folder and continue reading.
...
One binary file Jan 19, 2025 in • GIT
environment bazaar git code changes version production
3 min read

I have encountered projects where part of the code was rewritten during the build process so that a separate binary file was generated for each runtime environment. This approach always complicates things unnecessarily and creates the risk of incompatible versions appearing with each installation. At the very least, several almost identical instances of the program are built, each intended for installation in its corresponding environment. Too many moving parts arise, which means more opportunities for error. Once, I worked in a team where after every property change, it was necessary to save the code and conduct a full build cycle, so the testers were idle every time a minor bug was found (did I mention that the project also took an incredibly long time to build?
...
Durability of temporary solutions Jan 14, 2025 first change solution solutions standards problem
3 min read

Why do we create temporary solutions? Usually, the culprit is an urgent task. Sometimes, it’s an internal task for developers—to create a missing tool for the development chain. Other times, the task is external, user-oriented, such as a workaround to compensate for missing functionality. In most systems and teams, you can find a module that somehow stands out in the system. It is considered a draft version, and it will need to be redone later because it does not meet the standards and rules that the rest of the code lives by. You will definitely have to hear developers’ complaints about this. The reasons for the appearance of such code can vary, but the main reason for the emergence of intermediate solutions is their usefulness.
...
Use quantitative criteria Dec 28, 2024 ms. system criteria time work users
3 min read

“Fast” cannot be a requirement. Nor can “having a good response time.” Or, let’s say, “scalable.” The main reason is the lack of objective criteria for meeting such requirements. But users still need these characteristics. The architect’s task is to ensure that the system possesses the necessary qualities and to balance the inevitable contradictions that arise. between them. Without objective criteria, the architect depends on whims the client (“No, I can’t accept the program – it doesn’t work fast enough”) and the developers, obsessed with their compulsions (“No, the program isn’t ready yet – it doesn’t work fast enough”). Usually, we try to record all such requests, just like any other requirements. But this record often looks like a set of vague epithets: “flexible,” “easy to accompany,” and so on.
...
Satisfy your ambition through Open Source Dec 19, 2024 in • GOOGLEPC
google apple microsoft code projects project work programmer
3 min read

As a rule, the programs you write at work do not satisfy your most ambitious programmer dreams. It may happen that you are developing software for a huge insurance company, but you would like to work at Google, Apple, Microsoft, or start your own startup that will bring about the next revolution. You will never reach your goal by developing software for systems that do not interest you. Fortunately, there is a solution to your problem: open source, that is, projects with open source code. In the world, there are thousands of open-source projects, and many of them are quite active, where a programmer can gain any experience their heart desires. If you are drawn to the idea of developing an operating system systems, choose one of the ten available operating system projects for yourself.
...
Your clients mean something different than what they say Dec 17, 2024 start clients need client task project
3 min read

I have yet to meet a client who wouldn’t be happy to tell me what they need – usually down to the smallest details. The problem is that clients don’t always tell the whole truth. Overall, clients don’t lie, but they speak in their own client language, not in the language of developers. They have their own vocabulary and their own context. They leave out important details. They talk as if you have also worked in their company for twenty years. And it is all complicated by the fact that, in reality, clients often don’t know what they need! Some have an understanding of the big picture, but they are rarely able to articulate their vision clearly. For others, the overall picture may be less vivid, but they know what they don’t need.
...