Identifying problems and providing solutions…
Problem: Teaching only works when the learner is eager to pick up and trial new things outside their comfort zones without worrying about deadlines around time management.
Solution: But of course is aware of time taken to complete the task in hand, informing those that need to know how much time and effort it has taken.
Problem: There are certain types of people that are comfortable explaining vs demonstrating. It’s becoming rare to experience both, explanations and demonstrations at a time of reaching out for help when in-between tasks.
Solution: Arrange a time when it’s suitable to go though and discuss the issue and possibly pair programme to find a solution together.
Problem: There are multiple ways to do the same things in programming, some are very long winded, some are coupled into codes and others copied and pasted from elsewhere.
Solution: The best way is to keep it short and simple just so it’s easier to read and understand without having to write comments inside the code.
Problem: But not everybody is the same, so expect people making things different unintentionally.
Solution: Taking a moment to spare some time training individuals and possibly if there are multiple methods to execute the same feature then maybe discuss the best approach to do it and document it as a guideline.
Problem: Now when dynamics change more often, it becomes harder then ever to keep on top of changes made by others especially those that come and go.
Solution: Go the extra mile if you have a better understanding of what is required by evaluating with teams and possibly rectifying the issues sooner then later.
Problem: Then you have other issues appearing when certain members are trying to improve features that are already agreed with and working as expected with the end users.
Understandably… keeping things consistent with UI, code bases, folder structures.
Solution: These types of changes should ideally be left on a separate branch and thoroughly tested with multiple people before merging into the master or release branch – just think of it as a larger incremental change. E.g. v.1.0 to v.2.0