<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Stefan</title>
    <description>The latest articles on DEV Community by Stefan (@stefanhk31).</description>
    <link>https://dev.to/stefanhk31</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F98382%2F126e4b7d-03fd-427a-9ef6-7757ae22f27d.jpeg</url>
      <title>DEV Community: Stefan</title>
      <link>https://dev.to/stefanhk31</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/stefanhk31"/>
    <language>en</language>
    <item>
      <title>How I Became A Developer In Six Months (And Counting…)</title>
      <dc:creator>Stefan</dc:creator>
      <pubDate>Wed, 02 Jan 2019 03:11:08 +0000</pubDate>
      <link>https://dev.to/stefanhk31/how-i-became-a-developer-in-six-months-and-counting-2b94</link>
      <guid>https://dev.to/stefanhk31/how-i-became-a-developer-in-six-months-and-counting-2b94</guid>
      <description>&lt;p&gt;Last June, I came up with this crazy idea to learn to code and start a career in tech. I had just finished a one-year post-doc teaching history to college students, and I really had no idea what I wanted to do with my life. I felt burned out searching for jobs in a field that is offering &lt;a href="https://www.historians.org/publications-and-directories/perspectives-on-history/november-2017/another-tough-year-for-the-academic-job-market-in-history"&gt;fewer jobs than it had during the 2008 crash&lt;/a&gt;, and even fewer jobs that don't require candidates to uproot in return for no more than a one-year contract. I wasn't sure what I wanted to do next, but was curious about coding.&lt;/p&gt;

&lt;p&gt;As a teacher, I had already started to wade into the shallows of the digital pool. I had incorporated &lt;a href="https://storymaps.arcgis.com/en/"&gt;GIS StoryMaps&lt;/a&gt; into my classes, and I was starting to play around with Esri software, in the hopes of starting a career as a GIS Analyst. I had learned that an ability to program was useful for a career in GIS, and I figured that I would probably be learning a little bit of Python at some point. A family friend also suggested I consider a career in software, given &lt;a href="https://www.stefanhodgeskluck.com/blog/2018/11/30/ancient-languages-and-computer-languages"&gt;my background with learning languages&lt;/a&gt;. I had spent most of my life thinking that coding was only for super-smart math nerds with CS degrees and/or their own software companies, but the more I thought about the work that coding requires, the more it seemed to align with the strengths and passions I had cultivated in my humanities background: creativity, research, critical thinking, problem-solving, and persistence. Soon, I was drawn in to the world of code. Instead of being a GIS professional who could do some programming, I realized that I wanted to be a programmer who could do some GIS.&lt;/p&gt;

&lt;p&gt;I started to look for a way to learn the skills necessary to make this into a viable career. I glanced at coding bootcamps, most of which offered grandiose promises of instant employment upon finishing, but also found &lt;a href="https://www.freecodecamp.org/"&gt;FreeCodeCamp&lt;/a&gt; (FCC) which offered (as I saw it) similar prospects for someone with enough self-motivation. Through FCC, I also happened upon &lt;a href="https://medium.freecodecamp.org/https-medium-com-samwcoding-how-to-get-your-first-developer-job-in-4-months-ec86da6e5d9a"&gt;an article&lt;/a&gt; about landing a developer job in four months. Having recently earned a Ph.D., I figured I had enough ability and drive to achieve this goal easily. I told myself that I'd plow through the FCC curriculum, and by early 2019 I'd be living the sweet, sweet life as a junior-level web developer! Maybe I'd even be writing my own article about how I managed to get my first developer job!&lt;/p&gt;

&lt;p&gt;It's been six months since I made that decision. As you may have guessed, "the job" hasn't come yet. The truth is, teaching myself to code is the hardest thing I've ever had to do. Yes, including earning my Ph.D. Graduate school was no picnic, but I benefited from the structure of the school year, knowing what I had to do, when I had to do it, and what I was working toward in the long run. Plus, I was funded, so even if I wasn't making the big bucks, I had a regular source of income. Conversely, over the past six months, I have had to provide myself with the structure that was automatically there for me in graduate school. At the same time, I haven't had the regular (if modest) revenue that my graduate stipend (or later, my one-year post-doc salary) offered. I've often felt like I've been finding my way in the dark. &lt;/p&gt;

&lt;p&gt;Yet even though my self-taught developer plan has turned out to be longer than I had intended, I am still loving coding, and I'm still keeping on the journey. I've already learned lots, not just coding skills, but also more about my own motivations, challenges, and aspirations. I thought this would be a great time to share some of my insights. &lt;/p&gt;

&lt;p&gt;These are the pieces of advice I would have given myself from six months ago. Perhaps they'll be the same pieces of advice I'll need to remember six months from now. If you're thinking of taking up coding, perhaps these will be of use to you, but I think a lot of this applies to any sort of major career transition. Everyone's experience is unique, though, so only take what helps you! 😉&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1: It will take as long as it will take.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;It's easy to read bootcamp ads that say things like "Go from [insert crappy job] to Software Engineer for Google in 8 weeks!" and think that, with enough self-motivation and determination, you can achieve similar results in the same amount of time (give or take a few weeks). And if you can, hey, that's awesome! But there's no set time to "learn code," particularly since most every developer I've ever talked to, regardless of seniority, has remarked that they are still learning. Now I already knew that pursuing work in tech meant that &lt;a href="https://www.stefanhodgeskluck.com/blog/2018/11/30/academics-coding-and-learning-how-to-learn"&gt;I'd always be learning&lt;/a&gt;, but it's more than that: you can't even put a time-frame on learning enough code to land a bottom-of-the-ladder entry-level developer job. If you keep working at it, it's probably more likely to work out than not. But you can't say whether this will happen in eight weeks, eight months, or eight years. (Let's hope it won't be eight years, though!)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2: Take care of your life, then take care of your code.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At the moment, I'm in a relatively fortunate position, since my wife has a full-time job with benefits. So while I'm trying to build a new career, I don't have to worry about all those pesky concerns like healthcare, food, rent, bills, etc. I'm willing to acknowledge that I'm in a very privileged position, and I'm grateful for it. &lt;/p&gt;

&lt;p&gt;Here's the thing, though: even in my relatively comfortable situation, I've found that I still constantly worry about money. Yes, we have enough for now, but my wife's salary isn't enough for us to last forever on just her income, particularly if we want to think about long-term things like a family and retirement accounts (which seem to be getting more expensive by the minute). On top of all this, I've been spending a good deal of time, money, and energy managing chronic pain (a relic of my constant reading and typing in graduate school) and caring for an aging cat. &lt;/p&gt;

&lt;p&gt;If you want to learn to code, especially if you're going the self-taught route, you'll have to deal with the Catch-22 of job hunting in today's market: you need experience to get money, but you need money (and time) to get experience. The quickest path to a job may be moving to a tech-heavy metro area and immersing yourself in an intensive 8-week bootcamp where you code for 12 hours a day. If you want to do this, go for it. But first and foremost, you need to be honest with yourself about what you need in life and what the best plan of attack is to get it. If your finances, your family life, and your health can't afford such an intensive program, you need to do the best with what you have. This may involve taking on a part-time job somewhere to help bring in money and to give you structure while you learn. It may even involve committing to work full-time and devoting evenings to learning code. &lt;/p&gt;

&lt;p&gt;Everyone will have a different balance, and I'm still working on mine. But for me, it's been essential to remember that coding is just one element of a whole variety of factors that bring my life satisfaction. Work hard, code lots, and be persistent, but don't forget that you're more than your code. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3: Listen to yourself before anyone else.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;If you're going to learn to code, it's essential to &lt;a href="https://coder-coder.com/stay-motivated-learning-code/"&gt;remember&lt;/a&gt; &lt;a href="https://zen-of-programming.com/start-programming"&gt;why you're doing it&lt;/a&gt;. This is a fun path, but it is also a very difficult one. Constantly learning means constantly feeling like I don't know what I'm doing, and it's incredibly easy to freak out and/or burn out. To keep moving forward, it helps to remember why I like coding: the creativity of building things, the mental challenge of puzzle-solving, and the opportunity to make more money. &lt;/p&gt;

&lt;p&gt;I've also found it important to acknowledge that my interests develop as I learn more. I didn't start graduate school knowing exactly what I wanted to write for my Ph.D. dissertation, and I shouldn't expect myself to know exactly what I want to code for the next 3-5 years of my life. When I started on this path, I wanted to learn Python and get into data science, in order to follow my GIS interests. Over time, I've found myself more and more drawn to front-end web development, because I enjoy the process of web pages and apps. I also enjoy thinking about aesthetics, so I'm increasingly curious about UX/UI design. &lt;/p&gt;

&lt;p&gt;There are a lot of different skills to hone, and a lot of different projects to work on. Thinking honestly about what you want, and listening to that little voice inside your head, will help you figure out how to follow your passions in code. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4: Get organized!&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;For me, the last year has been filled with harsh truths. Perhaps one of the most shocking truth for me has been that I'm not nearly as well-organized as I'd like to be. As a teacher, I was always able to keep track of records on excel spreadsheets, and I've managed to stay on top of deadlines well enough through most of my life. In code, however, there are so many different things to look at, so many shiny objects to capture my attention, that it's been incredibly difficult to determine how best to manage my time and energy in order to achieve short-term and long-term goals. &lt;/p&gt;

&lt;p&gt;There are a few apps that I've found to be particularly helpful in organizing my tasks and projects. I track how I'm spending my time with &lt;a href="https://www.hourstimetracking.com/"&gt;Hours&lt;/a&gt;, and I've recently signed up for &lt;a href="https://trello.com/"&gt;Trello&lt;/a&gt; in order to create boards for various projects, learning goals, people to contact, etc. &lt;a href="https://getpocket.com"&gt;Pocket&lt;/a&gt; has been a great resource for the hundreds of websites, apps, and articles that I find: instead of keeping 20 browser windows open at once, I can save pages with specific tags, so I can look at them later. &lt;/p&gt;

&lt;p&gt;I imagine organization will always be a place for me to improve. With so much to do, and so much to learn, and so many sources to go, it's particularly essential for learning to code. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5: Get Out There!&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Every piece of advice I've read about finding a job, regardless of field, talks about the importance of networking. I used to always groan at this kind of advice. As an introvert, I'm most comfortable on my own, or with people I know, and going out and meeting new people has never been my strong suit. I think that is part of what appeals to me about coding: the work allows you to spend a lot of time in your own head, trying to figure out the best way to design, build, and debug for a project. &lt;/p&gt;

&lt;p&gt;Over the past six months, though, my biggest motivator has been interacting with other people. I love being in my own head, but if I had spent the last half-year sitting at my desk working on algorithms all day, I probably would have burned myself out.&lt;/p&gt;

&lt;p&gt;If you want to learn to code, particularly if you're not doing it through a formal degree program or bootcamp, I can't tell you how essential it is to find people to help you on your journey. The online communities of FCC, dev.to, and &lt;a href="https://www.codenewbie.org/"&gt;CodeNewbie&lt;/a&gt; are great, and I recommend following them. Even more important, in my experience, is finding people to talk to in person. Look for meetups in your area. Personally, I've been fortunate that there are welcoming communities in my hometown of Knoxville (huge shout-out to &lt;a href="https://codeconnective.com/"&gt;Code Connective&lt;/a&gt; and &lt;a href="https://knoxdevs.com"&gt;KnoxDevs&lt;/a&gt;!).&lt;/p&gt;

&lt;p&gt;Everyone says that networking with people is a crucial part of landing a job. I hope this will also be the case for me, but in my experience so far, networking is a lot more than just a means to an end. Meeting with other developers has given me invaluable access to feedback, collaboration, direction, motivation, and even commiseration, as I have pushed forward on this path. I may be a self-taught developer (in that I don't have a CS degree and haven't been to a bootcamp), but I'm definitely not doing this alone. &lt;/p&gt;

&lt;p&gt;I hope some of this has been useful to you! If you're in a similar situation, whether learning to code or on another career path, what things have you learned that help you move forward?&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>career</category>
      <category>beginners</category>
      <category>yearinreview</category>
    </item>
    <item>
      <title>Learning How to Learn    </title>
      <dc:creator>Stefan</dc:creator>
      <pubDate>Fri, 28 Sep 2018 14:43:18 +0000</pubDate>
      <link>https://dev.to/stefanhk31/learning-how-to-learn-----2bb5</link>
      <guid>https://dev.to/stefanhk31/learning-how-to-learn-----2bb5</guid>
      <description>&lt;p&gt;I posted this on my personal blog site (stefanhodgeskluck.wordpress.com) a few weeks back, and I thought it would be appropriate to share with this community. &lt;/p&gt;

&lt;p&gt;&lt;b&gt;Learning How to Learn&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;In May 2009, the semester before I started graduate school, I attended a conference on late Roman imperial history. I was excited for the conference, because this was the field I had intended to study, and I thought that I would be familiar with the subjects of the talk. After all, I was a star student in my undergraduate program, getting As in Latin and Roman History courses, and easily being able to memorize what I thought were the key components of studying ancient history, such as emperors’ ruling dates, key battles, and the names of various barbarian confederations. &lt;/p&gt;

&lt;p&gt;Very quickly, it became apparent to me just how much I didn’t know. Sure I could rattle off key dates, but the level of specialized knowledge of individual texts, scholars, and methods of research that the conference presenters shared was way over my head. I felt like I had just moved cross-country to devote the next phase of my life to something I had absolutely no grasp of. I was overwhelmed, an impostor, and a fraud (or at least that’s how I felt). &lt;/p&gt;

&lt;p&gt;Of course, since then, I have become more familiar with late Roman history. In graduate courses and my own projects, I learned much more of the specialized knowledge and skills that had seemed so foreign to me at that first conference. I’ve researched and written about a specific area of late antique history, and have written a dissertation that has proven to a community of scholars that I have enough of a grasp on the field to deserve a doctorate.&lt;/p&gt;

&lt;p&gt;Here’s the thing, though: all that knowledge isn’t the most important part of my experience. Neither is the dissertation that I produced from it. Even after studying for nearly a decade, there are a lot of things about Late Antiquity that I still don’t know. I can’t tell you, off the top of my head, what the average fourth-century peasant ate for breakfast in rural Cappadocia, or how bishops in small towns in north Africa conducted business within the imperial bureaucracy, or how widely classical Greek medical theories were understood among educated fourth-century Christians.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The most important thing I learned in graduate school is how to embrace the state of constantly learning.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This is an important lesson for me to remember now, as I have recently begun learning how to program in order to pursue a career in web development. Many times over the past few months I’ve thought back to that first conference, when I felt so out of place. Starting programming, there are just about as many things to learn as grains of sand on the beach. Even narrowing things down to one specific programming language, like JavaScript, leaves mountains of concepts, tools, and methods that are necessary to learn. What’s more, conversations with programmers have taught me that most people don’t devote their careers to one particular language, and always end up learning new things on the fly as they start new jobs and take up new projects. Learning a programming language involves not just learning the language itself, but learning the language of the language: all of the technical phrases and jargon that people in the field tend to take for granted. Like I did with my history studies, I have to be patient with myself as I learn these languages.&lt;/p&gt;

&lt;p&gt;Even as I write this now, I realize something that I wish I had known back in 2009: knowing how to learn is far more important than knowing particular facts. As I do daily coding exercises, I often find myself frustrated that I can’t get my code to do what it’s supposed to do, and sometimes (but only after struggling through it myself) I start searching StackOverflow and FreeCodeCamp forums for the “answer” to the problem. When I find that “answer,” it usually ends up raising a number of further questions: why does a certain method work? Why does it work on strings, but not integers (or vice versa)? Why did my first attempt to solve the problem not work? How can I remember this in the future and apply it to similar problems? I know more about coding today than I did three months ago. What’s more important, however, is that I know what I don’t know, and I am beginning to know what kinds of questions to ask.&lt;/p&gt;

&lt;p&gt;Do I still have moments where I start freaking out, asking myself why the hell I thought it would be a good idea to leave my comfort zone and learn to code, and wondering if anyone would ever actually pay me to do this? All the time. I certainly hope that as I continue, I will have fewer of those moments, but the truth is, I think they will continue for quite some time. What is more comforting to me is the knowledge that I’ve had these moments before. Whenever I encounter a new coding problem, read a blog about something completely foreign to me, or attend meetup where I’m not even sure that everyone around me is speaking English, I like to remember that I’ve been in this situation before. The most important part of my graduate education is that I’ve learned to accept and embrace it.&lt;/p&gt;

&lt;p&gt;*Note: I'd like to make my own blog site, but I want to learn a bit more and build some other projects first, so I'm using WordPress for now. There are a few resources on Medium for building a blog from scratch, but if any of y'all have done this and would like to share your advice, I'd love to hear it! &lt;/p&gt;

</description>
      <category>webdev</category>
      <category>career</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Explain DOM Like I'm Five    </title>
      <dc:creator>Stefan</dc:creator>
      <pubDate>Fri, 28 Sep 2018 14:36:31 +0000</pubDate>
      <link>https://dev.to/stefanhk31/dom-----4hai</link>
      <guid>https://dev.to/stefanhk31/dom-----4hai</guid>
      <description>&lt;p&gt;I know that DOM stands for "Document Object Model", and it has something to do with transferring code to a browser....but that's about it. &lt;/p&gt;

&lt;p&gt;I keep encountering it as I'm learning React, but I have yet to find a nice, concise description of what it is and what it does. Anyone have any good articles to link to for this? Or a short, snappy description that will help me understand its importance?&lt;/p&gt;

&lt;p&gt;Thanks!&lt;/p&gt;

</description>
      <category>explainlikeimfive</category>
    </item>
    <item>
      <title>How to Combat Information Overload?     </title>
      <dc:creator>Stefan</dc:creator>
      <pubDate>Fri, 07 Sep 2018 15:18:58 +0000</pubDate>
      <link>https://dev.to/stefanhk31/how-to-combat-information-overload------415c</link>
      <guid>https://dev.to/stefanhk31/how-to-combat-information-overload------415c</guid>
      <description>&lt;p&gt;Hi all! I'm currently learning to code, in order to make a career transition from academic life to web development. I've started in June, and have gone through a fair portion of FreeCodeCamp's curriculum, taken a Python class on Udemy, started reading Medium articles, subscribed to some podcasts, followed some coding-related Twitter feeds, and connected with people in my area through Meetups and Slack groups.It's been really exciting, and I've found that I enjoy the logical challenges of creating functional code (which isn't to say that they've been easy, by any means!). This type of work blends well with my natural interest in the structure of spoken and written languages. &lt;/p&gt;

&lt;p&gt;Here's my confession: I am &lt;em&gt;totally&lt;/em&gt; overwhelmed by all of the resources.&lt;/p&gt;

&lt;p&gt;Don't get me wrong: I'm happy that there is such a vibrant community of self-taught developers, and that there are so many places I can go to get help. But there's also just so much stuff! There are like, 10000+ articles, threads, posts, feeds, video lessons, etc. that I could read every day, and half of them seem to assume knowledge of concepts I only have the vaguest idea about.&lt;/p&gt;

&lt;p&gt;So, I guess my big question to all you self-taught devs out there is, how do you handle this? I wonder if I should devote myself entirely to pushing through FCC, then start looking more at articles, podcasts, etc. It's also possible that I could pay for something like a bootcamp or an online certification program, just to give me some structure. But that then begs the question of which program to join and how much $$$ to pay. (Hint: the closer to 0, the better!)&lt;/p&gt;

&lt;p&gt;I know there isn't a magical straight path that will automatically show me everything I need to do (like the quest arrow in Skyrim) to get a job doing web development. But I have to imagine that I'm not the first person to start on this career and have a "holy crap I'm so in over my head" moment. (At least I hope I'm not!)&lt;/p&gt;

&lt;p&gt;I'd love to hear how others have navigated this early point!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>career</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
