What is Coding? (And what I like about it)

las Vegas taxiYashica Mat 124-g, Ektar 100 rated at 400 and pushed two stops

When I started researching software engineering back in January, I didn’t know much about what coding was past fiddling with <p> and <img/> tags in html. I’m still getting questions that lead me to think a bit more exploration of this topic would help. And maybe get some more people to try it, because coding is really fun! Even better, it’s a really important skill to have as technology progresses and we inch towardThe Singularity.

Software engineering/coding/hacking/computer programming/etc are all terms used in a variety of ways to refer to the act of using a language to make stuff happen using a computer. There are a lot of programming languages being used out there, and the industry is shifting toward new ones all the time. Facebook recently introduced a new one called Hack, ios and android each have specific languages used for development, I’m hearing rumors that Python is out and Javascript is in, but I’m sure next week that will all be old news. Once you know one language there is enough crossover to start picking up others, the way Romance-based language speakers can pick up Italian or Spanish or Portugese more easily than a first-language Chinese speaker because there are similarities between the way the different languages work.

Want to know what it’s like to work with one of these languages? There are so many free resources out there by now that deciding which one to use is probably the hardest part of beginning to learn. Some of the most commonly-referenced resources are Khan Academy, Codecademy, Udemy, and YouTube. I’ve actually had several important breakthroughs watching different YouTube videos, because sometimes a concept needs to be explained a certain way before I can really grasp it. I think you can’t really know what it means to code, or if you’d like to code, unless you try it.

I’ve always liked jigsaw puzzles. Like Ross, kicking back with a puzzle for a few hours sounds very relaxing and enjoyable to me. I’m also a self-starter and a self-driven learner who will passionately dive into a question or project. All of these are good qualities for a computer engineer to have because it’s about coming up against roadblocks and trying to figure out the solution all day every day. I also have developed a hearty resistance to worrying about what other people think of me, which is very handy in this field because it means I worry a lot less about “looking dumb” and will ask questions and raise my hand and dive into google every time I don’t know something or forgot how to do something. One YouTibe video I watched emphasized how lazy programmers are and how they can’t remember anything. Hooray! I can’t remember anything either, and luckily there are resources out there to answer almost any question you can think of.

Within the industry there are a variety of roles to pursue, from user-interface design to front-end-web development to very data-heavy backend positions. Anything toward the front-end is going to be an ideal position for me, and bonus points if I can find a position that allows me to blend my blogging and social media experience with whatever tasks I’m assigned. Oh my, and what if I added in my photography as well! That would be a dream. I think of the coding as a skill to integrate into my career, not something I’ll be pigeon-holed into. Their are a wide array of options, especially in the Bay Area. I’m very fortunate that I’ll be able to take some time with my job search and find something that’s a good fit for me.

There are, of course, plenty of coding roles and computer programmers who are spending their days alone clickety-clacking for 12-hours a day. That won’t be me. Saying I’m an extrovert doesn’t mean I need to be talking to other people all day long, I’m looking for a change that will allow me to oscillate between being in my flow and checking in with my coworkers. Many teams in the Bay Area hold scrums or standup meetings, short little bursts where everyone can check in on their progress and collaborate. In my prep course last week we held our first “hackathon” in groups of four, deciding on a project to pursue and then collaborating together as we typed away on our own computers. I loved it. I hear those happen sometimes on Friday nights with booze and yummy food! Last night a group of us worked through figuring out how to write a while loop for one on the class exercises and it’s awesome to see how people share and collaborate, and how there are so many ways to get to the right answer. It leaves a lot of room for collaboration and validation.

Working with code is often about setting a goal, getting stuck, trying fifty different things to test out some theories, wiping away lots of work and trying a different route altogether, searching for other people’s questions on the Internet to see if they had a similar problem, asking your own questions, and being okay with leaving something behind entirely and working on something new. And then repeating the process above all over again. But there are small victories along the way, and it feels like magic to open the browser and watch something run and see that a thing from your mind is now playing out live on the screen. I love to dream up new ideas/projects and being able to code gives me unlimited potential to create anything I can imagine. That is incredibly enticing and motivating for me.

This post morphed from talking about what coding is to why I started writing it, and that works great for me because it was inspired by some questions on my last post asking for further clarification re: why I’m interested in this particular shift. One more I’ll add is a desire to contribute directly to the movement to get more women into tech. Did you see the WSJ graphs compiling the most recent data on women (and minorities) in tech and leadership? Not great. These companies are shaping our lives and the way we see the world in a variety of ways. Women have particular needs and viewpoints that should be part of the conversation! I want to be a part of the movement to normalize, inspire, motivate, and teach. You shouldn’t be afraid to join in if you wear lots of dresses, or claim the title of artist, or have an English degree, or have a creative/service-based job history, or your voice is a little high-pitched, or write on a lifestyle blog, or spent the last six years of your life describing yourself as a SAHM, or you find yourself referencing Friends in far too many of the conversations you have. I’m all those things and I know there’s room for me in this space (and I think there’s room for you too.)

Addendum 7/28/2015: The discussion in the comment section about my use of the term software engineer prompted me to bring the issue up in class tonight. It was great to hear our teacher’s view of the evolution of the term software engineer and all of the other terms associated with it, and my takeaway from his response was that he would define the students in the class as programmers, specifically focusing on web development. There is no governing body regulating the term software engineer, and the industry is shifting in a way that may dilute the meaning of that term (similar to what we’ve seen happen to the term consultant over the past decade) but for now, it seems like it is best practice to avoid the controversial-to-some use of software engineer for people like me who are doing these self- or guided-study career change programs. I like web developer because I feel like it is easiest to communicate what I’m doing to a variety of people using that term.

4 thoughts on “What is Coding? (And what I like about it)

  1. I’m a woman working in tech and I do a lot of volunteer work to promote the field to more girls and women – very much love seeing other ladies get excited about tech careers! When I give presentations on women in tech issues, I often include the graphic from this post: http://www.npr.org/sections/money/2014/10/21/357629765/when-women-stopped-coding

    It always seems to shock people just how drastically the numbers of women have fallen off in this field compared to others.

    FYI some notes about the terminology of the field for anyone who is reading and wants to learn more (also especially important when looking at job titles during job hunting!) – there are actually significant differences between computer engineering and software engineering. This website has a good description: https://uwaterloo.ca/software-engineering/future-undergraduate-students/frequently-asked-questions#Difference

    The above is specific to one university’s programs, but the differences described are typical for most places. I work with all three (computer scientists, computer engineers, and software engineers) and we are very specific about terminology when we post job openings. Web developers / programmers are different as well! I think those are more along the lines of what you are pursuing, since getting an engineering degree most definitely requires strong math abilities :) The more you dig into the field, the more you’ll learn about the various flavors of tech jobs.

  2. Thanks for this post. Although you don’t owe me or anyone else on the interwebz an explanation of your interest in coding, it’s interesting to hear about. As I mentioned in a previous comment, I like coding too. I agree that it’s an important skill for people to have, and that it’s important women continue to advance the field. So I get where you are coming from and I look forward to hearing about how your path progresses. You do you, and everyone else can do what they need to do.

    That said, if the point of this post is to justify to your audience why you like coding, I think you may be further alienating some of them and maybe even future employers by including all of your interpretations of “what is coding”. These people are skeptical not out of ignorance of coding, but because they perceive that you don’t know what you’re getting into. There were comments in this post that scream “newbie” to those who are close to the field in one way or another.

    This is not to discourage. Everyone starts somewhere, no matter the field. I would just recommend you not try to posit yourself as a source on the topic too early, or you’ll come off as a case study in the Dunning-Kruger effect. (That’s the phenomenon that the less someone knows about a field, the more likely he or she is to rate his or her competence as being higher than it truly is.)

    ps: And for goodness sake don’t justify the relevance of software engineering in terms of The Singularity! (And fix that error in the tag at the end of the first paragraph!) :-p

  3. “Anything toward the front-end is going to be an ideal position for me, and bonus points if I can find a position that allows me to blend my blogging and social media experience with whatever tasks I’m assigned. Oh my, and what if I added in my photography as well! That would be a dream.”

    It sounds like you truly know what you want to do with your life career-wise. That’s great! This list seems to describe a marketing position rather than a programming one. Incorporating social media and content optimization typically falls under Content Manager or Community Manager. Both would be perfect positions for an extrovert, allow group work, still give you a chance to use your html skills, and allow for individual challenges.

    Hope that helps give you some direction for when you complete the bootcamps!

  4. I saw this article and thought of you – https://medium.com/@racheltho/if-you-think-women-in-tech-is-just-a-pipeline-problem-you-haven-t-been-paying-attention-cb7a2073b996
    The author teaches software development at Hackbright.

    Your ideal job description (quoted by Lauren) sounds like what my husband does, and he is in marketing. The job title is Digital Marketing Coordinator and he manages the company’s website and social media, and generates content for those (including photographing events and people). We are in New Zealand, so things may be totally different for you, but that could be another job title to look out for.

Comments are closed.