<?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>Forem: Sean</title>
    <description>The latest articles on Forem by Sean (@seanmfox).</description>
    <link>https://forem.com/seanmfox</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%2F102800%2F9cbfdfc1-640c-4098-b0b9-ff2d47a7c726.png</url>
      <title>Forem: Sean</title>
      <link>https://forem.com/seanmfox</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/seanmfox"/>
    <language>en</language>
    <item>
      <title>#100DaysOfCode - The Finish Line</title>
      <dc:creator>Sean</dc:creator>
      <pubDate>Wed, 24 Apr 2019 17:33:27 +0000</pubDate>
      <link>https://forem.com/seanmfox/100daysofcode-the-finish-line-2ijh</link>
      <guid>https://forem.com/seanmfox/100daysofcode-the-finish-line-2ijh</guid>
      <description>&lt;p&gt;Thinking about the number 100 always takes me back to grade school days when the teacher would ask each student to bring in 100 of something.  I’m thinking pennies was my object of choice.  I know, real original!  The goal of the exercise was both a product of fun in the classroom but also an attempt to quantify what exactly “100” actually means.  Many years later, that number is made visible not through coins, but tweets chronicling the number of days straight that I coded for at least one hour.  Like many others before me, I have conquered the challenge of #100DaysOfCode.  And along the way, I think I learned a thing or three.&lt;/p&gt;

&lt;h3&gt;
  
  
  “Not All Those Who Wander Are Lost”
&lt;/h3&gt;

&lt;p&gt;Ah yes, my favorite author of all time, JRR Tolkien, has some wisdom to share that sums up the winding path that my tweets summarize.  Looking through the plethora of updates, it may appear that I’m a restless soul when it comes to focusing on one task at a time.  One day may have involved JavaScript, and then the next C and the third SQL.  The truth was, all three of these tasks were actually part of a larger, long-term goal.  I decided that this Spring/Summer, I would begin an active job hunt to move into tech.  However, several different pieces needed to fall into place for the search to be successful.  &lt;/p&gt;

&lt;p&gt;The first was getting my &lt;a href="//www.seanmfox.io"&gt;portfolio site&lt;/a&gt; up and running with projects containing legitimate README files and use of some more advanced JavaScript/React functionality.  The second step involved gaining a better grasp of Computer Science concepts beyond just the web.  And finally, in order to gain some more structure to my learning as well as familiarity with languages like Java, I enrolled in a software development program offered by the community college.  Some days I found bugs in my deployed sites that needed attention while other evenings were spent doing homework assignments.  Nevertheless, my wandering path had direction and intention throughout.&lt;/p&gt;

&lt;h3&gt;
  
  
  Take Stock of Priorities
&lt;/h3&gt;

&lt;p&gt;Like other working parents, my time is limited.  Most days, I have an hour or two in the evening to pursue my personal interests.  Because of this, I need to choose wisely how I spend these precious hours.  During this challenge, the decision was made for me - the time each day would primarily involve coding.  I had to accept that other passions of mine would need to become severely limited or placed on the backburner until the 100 days ended.  It was a matter of priorities with learning and long-term goals taking precedence.  For 100 days, I chose to put aside many smaller things to focus intently on one big thing.  This temporary arrangement of priorities was well worth it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Sleep Is Important
&lt;/h3&gt;

&lt;p&gt;I admit, I am a student of the “Just One More Bug Fix” School when it comes to closing the laptop for the night.  I become so engrossed in the code and the prospect of the next small win that time seems to fly by and, before I know it, it’s suddenly much later than I thought.  One of the reasons this would occasionally occur was because other evening activities led me to not start coding until shortly before bedtime and a solid hour was still on the docket to do.  The next morning, I would usually pay the price for the decision by not being at my best for the day.  I would also be jealous of those people who seemed to thrive on only a few hours of sleep.  Either way, I know I need a solid 8-9 hours to really feel like myself.  That may even mean learning accept that the new features and bugs aren’t going anywhere and another day is another opportunity to work on them.  Definitely easier said than done!&lt;/p&gt;

&lt;p&gt;As you may suspect, there was no “Day 101.” I am still learning constantly (I’m looking at you, Java) and loving it, but also accepting that my current life situation doesn’t always allow me an hour a day to sit in front of a screen to code.  Some days all I can fit in may just be listening to a podcast during my commute, but that’s okay. I also have other hobbies that bring me joy like running and gaming.  I am a person made up of many interests, which I think is a healthy way to live.  So, until programming becomes my full-time career, I will make do with what is currently before me as I strive to do my best.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
      <category>learning</category>
      <category>productivity</category>
    </item>
    <item>
      <title>#100DaysOfCode - The End In Sight</title>
      <dc:creator>Sean</dc:creator>
      <pubDate>Fri, 22 Mar 2019 01:22:29 +0000</pubDate>
      <link>https://forem.com/seanmfox/100daysofcode---the-end-in-sight-25bm</link>
      <guid>https://forem.com/seanmfox/100daysofcode---the-end-in-sight-25bm</guid>
      <description>&lt;p&gt;When any journey begins, a clear plan is often constructed to get from point A to point B. Or in computer terms, 0 to 1. And as a teacher, my entire year revolves around making a plan with specifically intended outcomes (snow days really mess with that spreadsheet!). However, when I started 100 days of code, the plan was simple: Start the count on January 1st and finish the count on April 10th. Some of those days would be focused on app maintenance while others on learning new technologies. It was very much a "go where the river takes you" approach. And, oddly enough, the river has taken me back to academia.&lt;/p&gt;

&lt;p&gt;At the time I hit the halfway mark in the 100 days, I was just starting into the CS50 program. And while working with C (and becoming very appreciative of modern languages), I found I really enjoyed learning the lower level concepts. This intrigue led me to devour the material faster than I had anticipated.  I suddenly found myself looking high and low for similar experiences.  However, what I discovered was that that next step I was seeking most likely wasn’t in a blog post or video.  It would have to be in a classroom.  The truth is, I really like learn. Like, a lot.  My wife is probably tired of me beginning most sentences with, “So, in my one podcast…”  So how can I satisfy this craving to dig deeper?  Well, I decided to go back to school.  My community college actually has an online program for individuals who already have a degree in another field, but want to change careers.  When I discovered it, my first thought was, “hey, that’s me!”  If all goes well, I’ll be done with the certificate by December.&lt;/p&gt;

&lt;p&gt;With this major change, my 100 day updates have become, for lack of a better word, structured.  There is a sequence to how I am learning and encompasses very specific topics (database systems and a review of Java for next semester’s class).  While I can occasionally jump into an app to refactor a bit or tinker with styling, most of my time outside of family and work obligations is focused on school.  And as strange as this sounds, it’s kind of freeing to know that a path has been set before me and my goal is to reach the end.  I find that I dive down fewer rabbit holes, and the ones I do are engaged with intention.  I’m also gaining experience programming based on someone else’s requirements, not just my own (as is often the case with personal projects).&lt;/p&gt;

&lt;p&gt;It's hard to believe that in less than a month, my sojourn through 100 days of code will reach its summit.  I avoid the word ‘conclusion’ since I’m not entirely sure what day 101 will look like.  It will probably find my still reading about data modeling (wow, I forgot how much reading I use to do!), but I’ll be happily doing it.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
      <category>learning</category>
      <category>productivity</category>
    </item>
    <item>
      <title>#100DaysOfCode - Half Way There</title>
      <dc:creator>Sean</dc:creator>
      <pubDate>Thu, 21 Feb 2019 02:35:30 +0000</pubDate>
      <link>https://forem.com/seanmfox/100daysofcode---half-way-there-7ke</link>
      <guid>https://forem.com/seanmfox/100daysofcode---half-way-there-7ke</guid>
      <description>&lt;p&gt;In a glass half empty/glass half full world, I tend to fall into the latter with a penchant for optimism.  Because of this, when I consider I have reached 50 consecutive days of code, my feelings of it are more along the line of, “Wow, that has gone fast!”, rather than “Wait, I still have 50 more days to go?!”  I’m going to attribute this to how I’ve been approaching the challenge.  Since last reporting my &lt;a href="https://dev.to/seanmfox/100daysofcode---first-quarter-finished-1g1"&gt;progress&lt;/a&gt;, here are a few more lessons I’ve gleaned from the 100 Days of Code.&lt;/p&gt;

&lt;h3&gt;
  
  
  Balance of Projects and Learning
&lt;/h3&gt;

&lt;p&gt;For the past few months, I’ve been going head-long into creating projects to showcase in my portfolio for job hunting.  Even when I started into #100DaysOfCode, I was still iterating on these apps.  Over the past few weeks, I have become much more intentional to not just remain on the treadmill of feature creep, but take some time to learn.  When React Hooks were released, I decided to spend some time figuring them out.  I also dove into the CS50 program just to expand my knowledge and work my brain a little bit in wrestling with the fundamentals of computer science.  This change in routine has been really good for me.  Up to this point, a part of me felt like I needed to constantly be working on my side projects.  Now, I’m okay with stepping away from them for a little while in order to grow as a more well-rounded developer.&lt;/p&gt;

&lt;h3&gt;
  
  
  It’s Okay That Some Days Are Like Aqua-Jogging
&lt;/h3&gt;

&lt;p&gt;A few weeks ago, I began to do some aqua-jogging.  As its name implies, it’s basically running in a pool.  What I soon discovered about it, though, is that for how hard you tread the water, you really aren’t going to go anywhere fast.  It was during one of these sessions that a connection to coding occurred to me.  At the end of some nights, I don’t necessarily feel like I’ve made significant progress in my coding journey. This is especially the case when an evening inevitably becomes devoted to trying to solve a bug that was the result of human error (a.k.a. me).  It kind of feels like wasted time since no “distance” has really been traversed.  In needing to put into words each day what I accomplished, I realize that even those “useless” times bear some fruit.  There is growth even if it feels like slow going.&lt;/p&gt;

&lt;h3&gt;
  
  
  Inspiration From Others
&lt;/h3&gt;

&lt;p&gt;The more I check out what others are doing for  #100DaysOfCode, I get really excited for new things I can learn in the larger scheme of development and engineering.  I even started to make a list of technologies I have heard about and want to explore.  I’m not necessarily planning to master them all, but in growing in familiarity with them, I can be in dialogue with more people.  There are so many amazing things that improve our world and I want to see what tools can make that possible.&lt;/p&gt;

&lt;p&gt;With 50 days to go, and the possibility of continuing the streak after that, I’m humbly confident that I will successful in my endeavor.  I’ll be sure to post an update when I hit 75 days and, if all goes as planned, when day 100 rolls around.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
      <category>learning</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Changelog: See Your Tag Moderators</title>
      <dc:creator>Sean</dc:creator>
      <pubDate>Thu, 14 Feb 2019 00:53:21 +0000</pubDate>
      <link>https://forem.com/seanmfox/changelog-see-your-tag-moderators-4n25</link>
      <guid>https://forem.com/seanmfox/changelog-see-your-tag-moderators-4n25</guid>
      <description>&lt;p&gt;Ever wonder who helps to moderator the various post tags?  Well, now you get to meet them (so to speak)!  In a &lt;a href="https://github.com/thepracticaldev/dev.to/issues/1677"&gt;proposed feature&lt;/a&gt; started by &lt;a class="mentioned-user" href="https://dev.to/jess"&gt;@jess&lt;/a&gt;, the thought was that it would be nice when looking at a tag's page (such as &lt;a href="https://dev.to/t/javascript"&gt;https://dev.to/t/javascript&lt;/a&gt;), a user could find out who moderates a particular tag.&lt;/p&gt;

&lt;p&gt;Whether on desktop or mobile, the left sidebar will show a list of the moderators below the other currently displayed information.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F32000565%2F52248833-3fc0ad80-28be-11e9-873f-300f854a0825.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fuser-images.githubusercontent.com%2F32000565%2F52248833-3fc0ad80-28be-11e9-873f-300f854a0825.png" alt="Tag Moderator Example"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you haven't done so yet, make sure to take a minute and thank these awesome people who give back to the community in a great way!&lt;/p&gt;

</description>
      <category>changelog</category>
      <category>meta</category>
      <category>opensource</category>
    </item>
    <item>
      <title>#100DaysOfCode - First Quarter Finished</title>
      <dc:creator>Sean</dc:creator>
      <pubDate>Sun, 03 Feb 2019 02:58:00 +0000</pubDate>
      <link>https://forem.com/seanmfox/100daysofcode---first-quarter-finished-1g1</link>
      <guid>https://forem.com/seanmfox/100daysofcode---first-quarter-finished-1g1</guid>
      <description>&lt;p&gt;January 1.  A time for fresh starts, new adventures and jumping into the foray of resolutions that the New Year draws out of us all.  As the beginning of 2019 loomed, I knew I wanted to try something different with this year.  I had spent most of 2018 watching the dev community from the sidelines hesitant to engage in #CodeNewbie, #DevDiscuss or the various other hashtags that abounded.  I'm going to peg that on my introvertedness with a dash of impostor syndrome thrown in.  So to break this status quo, convinced myself that it was time I stepped up my social game through participation in #100DaysOfCode on Twitter.&lt;/p&gt;

&lt;p&gt;If you’re not familiar with this concept, the rules are pretty straight-forward - code for one hour for one hundred days and tweet what progress was made during that day.  This practice of participating in some sort of streak wasn’t entirely new to me.  I had attempted a few run streaks but generally bailed on these more due to my body revolting against the endless miles rather than a lack of discipline.  My biggest concern to completing this task is that life happens - some days, finding an hour to sit down and work on something productively is just not viable.  I knew that at some point, I would need to come to terms with this reality, but figured I would cross that bridge when I got there.&lt;/p&gt;

&lt;p&gt;Now with January coming to an end, I have hit 25 days - woohoo!  It has been an enlightening experience so far.  To help sum it up, here are a few thoughts after wrapping up the first quarter of this project.&lt;/p&gt;

&lt;p&gt;First, I now have a code log...kind of!  Looking back through my tweets, I get a little glimpse into the past as to what I spent all my time working on.  In not being the journaling type, short messages for each day are doable for me.  It didn’t have to be overly verbose or intensely in-depth.  KISS is sometimes the most sensible way to go.&lt;/p&gt;

&lt;p&gt;Second, I had to finish each day by asking myself, “Self, what did you accomplish today?”  Some days, this answer was really easy to determine.  For others, it became more a matter of accepting that I had spent an entire evening just searching for error message solutions.  Both of these types of days are the norm for developers.&lt;/p&gt;

&lt;p&gt;Third, I realized the beauty of CodePen and Free Code Camp.  For the days when I had to stay at school late, being able to jump on an editor for a while and work through the JavaScript review was priceless.  While not the ideal setup, it worked for what I needed it to.&lt;/p&gt;

&lt;p&gt;But with all these glorious benefits of #100DaysOfCode, there is an area or two that I am still struggling.  One such way is when it comes to remembering to tweet before heading to bed.  By the time I’m wrapping up my code for the night, it’s already much later that I intended to stop.  All I can think about at that point is getting what shuteye I can.  Most of my tweets go out the next day as a result - whoops!&lt;/p&gt;

&lt;p&gt;The other truth is that, in the very near future, I’ll be jumping into marathon training again (darn injuries!).  In my family being my first priority, the limited time I’ll need to split between running miles and running code will become much more challenging.  While not ideal, piecemealing the time I need throughout the day may be my best option.&lt;/p&gt;

&lt;p&gt;Overall, I’ve been pretty happy about this one hundred day adventure.  I’m really looking forward to making new connections with other devs on the same journey.  I’ll be sure to give another update once I hit the halfway mark - that’s only a few weeks away!&lt;/p&gt;

&lt;p&gt;Happy coding!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>webdev</category>
      <category>learning</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Is an opinionated framework good for newbies?</title>
      <dc:creator>Sean</dc:creator>
      <pubDate>Tue, 25 Sep 2018 18:46:36 +0000</pubDate>
      <link>https://forem.com/seanmfox/is-an-opinionated-language-good-for-newbies-1jcf</link>
      <guid>https://forem.com/seanmfox/is-an-opinionated-language-good-for-newbies-1jcf</guid>
      <description>&lt;p&gt;As a self-taught developer, I have a feeling my story is similar to others.  I was first exposed to HTML and CSS followed by a smattering of JavaScript.  At that point, the curriculum I was followed diverged into a completely new realm of coding that I had never heard of: Ruby on Rails.  After getting the basics and nuances of Ruby, I found myself knee-deep in the Rails framework.  I was awed and amazed by the power of how all the different files could be compiled into a website and the ease at which it could be accomplished.  It was awesome!  I was so enthused by my Rails experience that I even started developing my own app so as to put my skills to the test.  It was going great...until I rediscovered JavaScript.&lt;/p&gt;

&lt;p&gt;I found myself spending less time adding new features to my pet project and eventually stopped working on it all-together.  My attention had become fully enamored with the idea of a full-stack app all in JavaScript.  Just like I had done in Rails, I left the tutorials behind and embarked on my own creation.  This time I had used a MERN stack for my app's structure.  At this point, after months of tinkering with this app, I am still fully engaged in refactoring and advancing it.  In having followed the same path twice, what was different between Rails and MERN that with the former had me losing interest and the latter still holding on tight?  It's all a matter of opinion...or should I say opinionated. &lt;/p&gt;

&lt;p&gt;Don't get me wrong, Ruby on Rails is a really impressive framework that serves a wide variety of purposes, especially due to all the set-up it provides right out of the box.  However, one of the biggest hurdles I faced as a self-taught newbie was learning the "Rails Way" of doing things.  I became overly critical of my code base feeling that I was somehow violating all the fundamental rules of Rails.  The freedom that should come from using an opinionated framework was lost on me as someone newly arrived to the programming world.&lt;/p&gt;

&lt;p&gt;Working within a MERN stack, however, was and is really exciting for me at this point.  I'm constantly trying new things out, completely breaking my app, and then attempting to figure out what went wrong as I fix it.  I know the solutions I reach are not perfect, but I feel that they are still acceptable.&lt;/p&gt;

&lt;p&gt;I think about how my daughter colors in pictures.  As a toddler, her goal is to get the crayon on the paper, with the expectation of casualties to the floor or table.  The concept of staying within the opinionated lines on a page is lost on her.&lt;/p&gt;

&lt;p&gt;Likewise, as a new coder, my goal most days is to get code into an editor and see something appear on the screen, with the occasional pretzel crumb casualty in the keyboard.  Non-opinionated frameworks, like Express, help me to scratch this itch as I still learn what all the lines in good programming are.  And, like most of us as we learned to color in pictures, we realized and appreciated the lines on the page for what they were and how those opinionated outlines could help us create some pretty cool art projects for the fridge.&lt;/p&gt;

&lt;p&gt;So, both newbies and veterans alike, what has been your experience if you've worked with both opinionated and non-opinionated frameworks?  What can new learners take away from each of these systems?&lt;/p&gt;

</description>
      <category>rails</category>
      <category>beginners</category>
      <category>learning</category>
      <category>discuss</category>
    </item>
  </channel>
</rss>
