I have now been immersed in full stack software engineering for four weeks at Code Chrysalis. The amount of new information I’ve consumed in the last week is indescribable. I can now say that I am a full stack developer (with limited experience).
Code Chrysalis isn’t just about learning how to program the full stack. We have a code of conduct, which among many great ideals also states that there will be
No swear words, no racial slurs, no words that hurt others or make others uncomfortable.
It is a good goal, but several of us have slipped on the “No swear words” portion of this code. As a result a swear jar has appeared in the classroom and it costs ¥100 for each infraction. So far there are only a few coins rattling around inside the swear jar and it is a great reminder to watch our words carefully.
In addition to the Code Chrysalis Code of Conduct (CCCC) we also have the Programmer’s Oath hanging on the wall. The Oath is from Nick Johnstone who has shared it on github for public use. I decided to review it again today and see how well I am upholding the tenets of the Oath.
- I will only undertake honest and moral work. I will stand firm against any requirement that exploits or harms people.
So far most of my projects have had low stakes and involve pokemon, pictures of cats, or data about Star Trek. I suppose I should review where I am getting the Star Trek data to make sure it is in the public domain.
- I will respect the lessons learned by those who came before me, and will share what I learn with those to come.
There have been good conversations at CC about learning new things from everyone and that each of has something to teach, so I believe this is covered.
- I will remember that programming is art as well as science, and that warmth, empathy and understanding may outweigh a clever algorithm or technical argument
As I struggled mightily this week with making my algorithms clever this is a good reminder to focus on empathy and understanding. Which I also need to work on.
- I will not be ashamed to say “I don’t know”, and I will ask for help when I am stuck.
Why is this so hard? If I knew everything I would not have enrolled in CC to start with, but asking for help is sometimes my last resort. Today when I was stuck I did ask for help and I was unstuck within minutes.
- I will respect the privacy of my users, for their information is not disclosed to me that the world may know.
- I will tread most carefully in matters of life or death.
- I will consider the possible consequences of my code and actions. I will respect the difficulties of both social and technical problems.
These few are easy to follow since I don’t currently own anyone’s user data or have a stake in any real world applications. Data Privacy is a hot topic in the news these days and I hope that it stays a concern for all developers.
- I will be humble and recognize that I will make mistakes.
I failed at this during the last week.
- I will remember that I do not write code for computers, but for people.
Returning a ternary operator with four conditional statements that all fit on one line is great for getting the code to fit on the screen for presentations, but it makes for hard to read code. I will be refactoring one of my projects this weekend and will keep this in mind.
- I will be diligent and take pride in my work.
While drinking in the firehouse of information and moving quickly from one project to the next over the last few weeks this has been easy for me to let slide. I have a tendency to just get it “done enough.” This is my reminder to myself – If I don’t have the time to do it right, when will I have the time to do it over.
- I will recognize that I can and will be wrong. I will keep an open mind, and listen to others carefully and with respect.
My listening skills need to be better. Which is a nice way of saying I wasn’t always respectful this week.
Looking over this list I have a lot of room to grow. I know I am remembering my worst behavior from the past week and that there were many times I did follow these tenets, but I can do better.