So, I'm writing this post because of an argument that spiralled out of control in a developer community that I once loved (and still do, except ... ). And this post will be largely non-technical unlike all of my previous posts.
I have recently written a programming exercise on a competitive programming site teaching a particular topic in university-level mathematics, namely linear algebra. I'll be honest up-front: I do not claim to know everything about this topic as I've only taken an introductory course on this topic not too long ago, but I thought it would be good to share this knowledge to my developer community in the form of a programming exercise.
Anyway, another person in the developer community much more experienced than I am (and probably the most experienced developer in the entire 1+ million developer community) accused me of misleading fellow developers with the exercise due to my lack of knowledge in the subject area. While I did make a falsifiable comment alongside the exercise (specifically, I claimed that one could not define norm and dot product for polynomials and matrices but said developer gave concrete examples of how they could be defined), there was no proof that my lack of complete knowledge in the subject matter affected the exercise in any way. In other words, everything I included in said exercise, even though incomprehensive, was completely correct.
Somewhere in the heated argument between the two of us, said developer mentioned that "I should just be humble and acknowledge that I am not experienced in the subject matter" instead of defending my exercise. Obviously, I agree with his statement above since the worst thing one could do is be wrong and arrogant about something at the same time. But here is the question to ponder: just because someone is experienced or knows everything about the subject matter, does that automatically license him/her to be arrogant and boss people around with no regards to their feelings?
Feel free to leave your comments and thoughts in the comment section below 😄 I look forward to reading your views regarding this humanitarian issue.
Many times as a mobile developer I have to work on apps without the API ready that was crucial for the feature I was implementing. Either the backend was developed by another team that was not entirely in sync with us or our backend team had no chance to implement those endpoints earlier. For this reason, I was not able to satisfy the Definition of Done but it does not mean that I have implemented the UI only.