3 ms·
We have built software for a long time and we have learned a lot. There are many good ways (patterns) to reuse when you need to solve a particular problem. Uncl
by makach 6y ago
We have built software for a long time and we have learned a lot. There are many good ways (patterns) to reuse when you need to solve a particular problem. Uncle Bob speaks the truth.
For me, the challenge has never been with the architecture or our combined technical knowledge.
What I have observed as the main challenge is that most technologists start solving the problem before they know what the problem is.
- Spearchucker 6y agoThis, so very much. It helps to spend time understanding a situation before assuming you have appropriate ideas about changing it. Management consultants (good ones may be rare, but they exist) have some pretty complex process models just to get a handle on the problem.
- antupis 6y agoPersonally I have found that actually understanding situation means that I write code that solves it.
- username90 6y agoIf the people asking you to solve a problem don't know what problem they want solved then there isn't much you can do except try to solve something and see if they complain. You could argue that you should talk more with the stakeholders, but most of them don't have the skills required to accurately identify their own problems. Instead they need to see something running and then notice when things are missing, which is why we start building stuff without knowing what problem we ultimately are supposed to solve.
- makach 6y agoAn business analyst appeared in the wild (..) as a consequence of stakeholders not knowing or having the necessary skills. BAs are experts in illiciting user requirements and transforming them into specifications and goals you can use to solve a problem. Unless you know your goal you will never be able to deliver on your customer's expectations.
- PaulDavisThe1st 6y agoBA's work on business software which is typically written to help support processes and workflows that lean toward structure, definition, repeatability and so forth. There's lots of software in the world (all creative software, for example) that doesn't share these attributes, and all the skills of a BA are useless. The scope of software is larger than webdev and larger than business.
- makach 6y agoCompletely agree, and for that you probably have a clear picture of what you want. I whimsically develop programs for myself that I could manually sort out in 5-10 minuts if done sequentially.
- PaulDavisThe1st 6y agoAn equally large challenge is that solving a problem with software (and sometimes hardware) tends to lead to new problems that are experienced as part of the original problem. Another equally large challenge is that the person/people with the problem to be solved doesn't actually understand the problem and is incapable of describing it in a way that makes it a priori understandable.