Apache Spark | Analytics | Software Engineering | Diversity | Microservices | Agile25K and Counting on Stack OverflowMay 29, 2019
Neil Chaudhuri (He/Him)
Neil Chaudhuri (He/Him)
For those who don't know, Stack Overflow is a Q&A site similar to Quora and Reddit that is essential to life as a software engineer. Most of us turn to it at least once a day to see if anyone else has tackled the same problems, and far more often than not, someone has. The wealth of practical knowledge on Stack Overflow is breathtaking, and the site has grown into a mature platform that conducts large-scale surveys and data analysis to provide unique insight into the development landscape and even puts job-seekers in touch with those looking for talent.
Over the years I have answered a lot of questions in the hope of helping my fellow engineers. Some answers are certainly better than others:
- How to write unit tests in Spark 2.0+? This addresses an important but underrated topic we discuss in our Spark course.
- Difference between Throws in method signature and Throw Statements in Java. This is a critical distinction we draw in our Java course.
- What is the purpose of Gradle?. This addresses some key aspects of continuous integration, which is now more critical than ever.
- Why is O(n) equal to O(2n). Because Big O still matters in real life.
- 400 BAD request HTTP error code meaning? This is my highest scoring answer ever by far. I have no idea why.
Contributing to Stack Overflow can be intimidating especially with plenty of users ready to scold you if your question or answer is not deemed sufficiently rigorous. But you should take a chance and do it anyway.
For one thing, you can see how well you truly understand something or learn something new. For another, the ability to communicate effectively on complex topics will benefit you throughout your career. You will also be more marketable as your answers convey a distinct level of understanding that offers far more clarity to prospective employers than resumes that are nothing more than word salad with jargonzola cheese. And of course there is the satisfaction of contributing to something bigger than yourself. Our community--from Slack channels to open-source to free tooling--is built on collaboration unlike few others.
Be a part of that.
I have to be honest though. As with any group of software engineers online, you will have a mix of undeniable talent, hardened opinion, and of course incessant trolling. This is still the Internet after all. There is a Code of Conduct on Stack Overflow, but it strikes me as only mildly effective.
Trolls are a tiny minority, but they will at times be gratuitously mean in their comments. They will downvote your answers without leaving an explanation or making an edit, in violation of community guidelines, merely because they disagree with your approach or your word choice. It's obnoxious, and frankly it used to bother me until I recognized something that should have been obvious from the start. In a male-dominated field plagued by Imposter Syndrome and a culture that harms diversity, it's up to privileged, good-faith engineers to get over petty slights and use our privilege to turn Stack Overflow and other technology forums both online and in the real world into safe spaces where everyone feels welcome to learn and contribute.
So if you haven't already, please get started contributing to Stack Overflow. I have been slacking on my responses lately, so I know you'll pass my reputation score soon enough.