Computer Science is Beautiful

Computer Science is beautiful. It is one of the most unique professions in the world that is surrounded by an amazing culture of people from all walks of life. Websites and resources like Codeacademy and Coursera allow the teaching of Computer Science all around the world. As Computer Scientists we are quite literally building and changing the infrastructure of the world of tomorrow. However, sometimes we need to take a pause from all of the progress we’ve made on behalf of other people, and ensure we are building and fostering our own profession.

Computer science is brutal. It is unforgiving, it spits in your face, and it knocks you when you’re down. We’ve lost a lot of great programmers along the way due to inhospitable conditions. We’ve discriminated against some of the brightest minds and thus have lost potential. We shoot down the ideas of others for no reason other than we think we know better. The fact is that we are all learning. Computer science is a life long pursuit and we are never really done. We always want to learn more, do more, and change the world. Different people are at different positions of this journey at different times in their life. While a 10 year old is making her first Minecraft mod a 50 year old is writing his first “Hello World.” Does this make either of them more or less worthy to call themselves a computer scientist?

Although your mileage may vary we are all striving for the same thing. We all want to learn more about what we love, what interests us, and what makes things tick. We all have the same passion and the same fire. Our motivation, age, skill, gender, ethnicity, or general background may be different but we are all the same. We are all computer scientists.

This is a plea to all people who aspire to be computer scientists from the youngest of the young to the oldest of the old; from the novice to the intermediate to the expert to the wizard. We should all strive to support each other in our pursuit of knowledge and creating a better tomorrow for all.


The Trifles

Stop arguing about your text editor preference. Just as we all have our preferred textbooks, the tool we use for learning may not work for another. Different people use different tools for different reasons. Maybe you want full customization and like to mess with every single nitty gritty detail, or maybe you want things to just work — it doesn’t matter. We are all working on creating something that interests us. We shouldn’t allow something so trivial or so simplistic to come between us as a community and profession. Even when the discussion is brought up “jokingly” or “for fun” this proves that there are biases that affect new developers negatively.

There is no best programming language and there never will be. There is no universal language, and even if there was we would all still have our dialects and accents. So why should we consider programming languages to be any different? Programming languages allow us to express our ideas in algorithms and functions to create a real world effect. Why should it matter whether or not we use crayons, colored pencils, pastels, or oils to create our own personal masterpiece? Who are we to judge how people create their own medium? There will never be a best language so we should stop trying to convince ourselves otherwise. Support everyone with their choices of how to express their ideas and provide advice on how to improve upon them in the future.

Current skill level is irrelevant. We all started programming at some point and all of us weren’t born command line wizards despite what we may think; we learned and we struggled. We all wrote a lot of horrible code on our way to becoming computer scientists. We all refrained from sharing this code with the world for fear of being ridiculed. We feared the reaction of our peers and we feared their disapproval. We all need time to grow. We now manage to write slightly less horrible code and we hope to share it with our friends and the world. So stop stifling the growing computer scientists. Don’t shut the door on them before they have had time to grow and to figure out what they are passionate about. We should be fostering the growth of fellow computer scientists. Help them avoid some of the mistakes that we have made in the past, but give them enough freedom to make their own mistakes along the way.

Your company and work that you do is not better than anyone else’s. It doesn’t matter if you work at a top tech company or are just starting your career at 35 making websites for local companies. The company that we choose to work for doesn’t define our worth as programmers. It simply says a little about the opportunities that we are afforded in life. Our work may be the most interesting thing in the world to us, but different people have different goals and aspirations. Don’t make people fit in your mold of expectations. Encourage people to branch outside of the norm and pursue atypical technical careers. We shouldn’t think of ourselves better based on how many perks we may have, what we may be paid, or the product that we are working on. We are all trying to make our impact on the world with what works best for us.


The Important Stuff

Computer science is beautiful. Our goal should be to share that beauty with as many people as we can. It shouldn’t matter what someone’s story is, but it should matter that you are able to pursue your passions without molestation of your beliefs or decisions. We are all trying to make our way in the world and make our own impact in our own way so why don’t we help each other do that? The change starts with the smallest of us, but we all have to pitch in to make the beauty of computer science available to those that wish to experience it; it’s your duty and responsibility.