Pressing In And Pressing Onwards

Over a month and a half ago I was invited to join a beta cohort with Flatiron School.  It was totally unexpected and a real honor to be considered.  I was initially quite hesitant to embrace the opportunity because of the amount of commitments I already had going in my world.  Instead, I chose to bite the bullet and give it my best shot.

The cohort began and it was a rush of newness and close-knit learning with a set group of coding students.  I loved it!  But life hit me harder than I originally anticipated.  Sadly, I had to back out of the cohort some weeks later.

It was my intention to remain a full-time member of the cohort so that I could fast-track myself to a career change from public education.  The hurdles, however, in my personal life were higher and more frequent than I could have imagined, post-deployment. (Yes. I recently returned from a nine-month deployment overseas in Afghanistan.) So, there I was, working my butt off day and night, hunched over my computer.  It was steady going for the first two months until the object-oriented Ruby (OO Ruby) section.  Nevertheless, I pressed through the OO Ruby section hard and with more intensity.   But as time passed during my days in the cohort, my pace was stymied by some personal matters that would not relent. In fact, they have not abated.

About three weeks ago I gave notice that I would be leaving the cohort.  It really hurt my heart to have to say those words because I felt as though I was giving up and failing. I must confess that my pride was hurt because I wanted to ignore my limits to handle so much at once.  But the woo of wisdom came through and won my ear and obedience.

So what now?  Financially speaking, I accepted a teaching position as music teacher at a local elementary school to help me to continue my time with Flatiron School.  The toss-up is that what I gain in a fractional boost in monetary security, is a gaping loss in time to devote to my coding.

Unfortunately, I have not logged on to Learn.co to work for close to a month.  My heart is aching over this because starting this new job is consuming so much of my time as well as my energy and heart.  To be quite vulnerable, I want to cry my eyes out!  I need to finish my web development course at Flatiron this year!  I am determined and will not quit, so long as I have some funds left to pay for it, which is about three more months worth of money. So, again, I'll give it my best despite all the hurdles.  

I just have this dream of working on a team of coders to build amazing technologies. Some days I awake and feel as though that dream is slipping away from me, and that I'll forever be stuck here where I grew up, struggling to make ends meet as a teacher.  I know the work that I do as a teacher is important.  But it is not my passion. My passion is technology.  ...And obviously having a job that enables me to afford an apartment of my own would be nice.  Yes. The South Florida tri-county area is atrociously expensive.  The cost of living has far exceeded teacher pay.  And pay raises have been laughable and insulting scraps since the year of the 2007-2008 stock market crash.

When you're in a position where you're looking up out of a pit, all you can think about is getting out and the means to get out of it.  Every protruding stone, rock, tree root, and crevice is viewed as an opportunity or leverage to climb out of a gradually deepening hole in the earth.

I am not giving up. I'm just daunted at the moment by how quickly I can find myself financially trapped if I lose more time and money due to the hurdles I won't enumerate on this public blog. But they are legitimate even though they are negatively impacting my time to work. I recognize that I am not some victim and I am not the only person in the world struggling for comeuppance. I am not special in this way. I just recognize that I have to help myself as I pray to God for mercy, focus, and perseverance. 

Keep me your thoughts...whoever is reading this blog.

Why I Decided to Learn Software Development

It was a long time ago actually that I took a nascent interest in coding at all.  In the spring of 1996, I completed my high school freshmen enrollment schedule before graduating middle school.  The fall came, and I found myself in a computer programming class learning BASIC.  At the time I felt intimidated by not only the programming language, but especially the other students who seemed to have prior experience and were keeping up with the teacher. It didn't click for me at that time. I visited my guidance counselor and got out of it. It would be years before I'd ever seriously look at code again. Instead, I took a serious interest in music for the remainder of my high school years, all the way through college and meanwhile harboring a deep love of tech. 

In 2005, I graduated from the University of Florida as a music educator. Five years later the county cut my music position after I enlisted in the U. S. Army Reserve in 2010. So from 2011 onward  I spent years on and off active duty, bouncing between the Middle East and the United States from 2012 until the present.  Throughout all of these years I really wanted to code. In fact, it grew to the point that I knew I didn't want to teach anymore. I still felt that it was beyond my ability until I met my good friend, Staff Sergeant Myers, who encouraged me to take the plunge because he had seen my raw potential in tech whether as an information technology professional or software developer.

In short, while I deployed to Kuwait in 2016, that year proved to be what I consider the most crucial year for tech and my country (US), whether one was a systems administrator, cybersecurity professional, and/or a coder. In my eyes, 2016 was a pivotal year where the virtual world and the real world coalesced, or maybe even collided, in perhaps a perfectly unintended way. I was both riveted and dismayed by the entirety of 2016, and the role tech had within it.  Something ignited within me that year, such that I formed a plan to get educated and experienced in tech some way, somehow.   

My values were ignited that year and were challenged! And my passion for tech suddenly had deepened with meaning and purpose. All I needed was the means to act on my vision to create, that is, to code and collaborate on health-conscious technologies. Why? 2016 was a call to action. That year showed me that the unintended consequences of things we develop without any ethical foresight and preemption could have real-world implications--particularly in the areas of privacy, security, and epistemology or truth. That year also proved that software developers (or engineers) have a philosophical imperative to create with a conscience. Apple made a subtle but powerful video advertisement titled, "Designed by Apple in California."  One portion of the video asks the following: "Will it make life better? Does it deserve to exist?" One can hate Apple's high-walled ecosystem of products, but we certainly cannot doubt their intention and caring thoughtfulness about user experience.

Finally, the current business model for the most popular web platforms enlivened me to the importance of the way web technologies are designed. For instance, I would encourage moving away from user interfaces and experiences that are inherently meant to commoditize the user. What do I mean? Perhaps define and create better social media platforms that do not psychologically and physiologically exploit the user's baser instincts (e.g., dopamine-fueled scrolling on bottomless feeds and a token economy of "Likes.")  To wit, I think existing web and mobile technologies are amazing!  But I believe that we can do better, and I would like to be part of shaping a future that cares about the mental and social well-being of the user.  I believe learning software development enables me to have a seat at the table and even perhaps help to remake the table for a better social web and real-world experience.

JavaScript: Strings and Numbers

Since having started my search for a coding school, I have taken full advantage of Flatiron School's free online Bootcamp Prep course.  It appears to provide a lot of the fundamental requisites for success in the developer track

HMLT & CSS

To review, I have gone over HTML and CSS, with which I have a good deal of experience already.  I did, however, gain some additional knowledge that was unknown to me.  Rather, I have worked with these things through raw experimentation, without knowing them by name./

  • Compound Selector
    • h1, h2, #box {...}
  • Descendant Selector
    • #nav li {...}
  • Child
    • #list > li {...}
  • Adjacent Sibling
    • h3 + p {...}
  • General Sibling
    • h2 ~ p {...}
  • Universal
    • * {...}
  • Attribute Selectors
    • img[alt="Cat"] {...}
  • Pseudo Selectors
    • a:link {...}

JavaScript (JS) and the Document Object Model (DOM)

As for JS and the DOM, I have prior experience with this from introductory resources that I've utilized across the web. The bootcamp prep course has been a focus on utilizing the inspector tool with the Google Chrome Developer Tools and how to select certain elements within a page by using JS. For example, in order to find a CSS ID, such as "#height", I would type the following into the inspector Console:

document.querySelector("#height")

This might return something like this:

<p id="height">74</p>

And if I want to get the sole value from the elements returned with the previous code, I can add innerHTML to it.

document.querySelector("#height").innerHTML

This might return something like this:

"74" Now, let's say that I want to add two additional inches to the height. Note that the innerHTML value immediately above is a string and will need to be converted to a numerical value. This can be achieved by using the parseInt() function. Otherwise, if we simply attempt to add 2 to document.querySelector("#height").innerHTML , it will simply return a concatenation of "74" with the 2 , returning a new string value of "742" instead of the number 76 .

Here is an example using parseInt() :

parseInt(document.querySelector("#height").innerHTML)

This will return the following:

"76"

Instead of typing all of the code in the previous example, it can be stored in a variable for easier use and less code in the future.

var heightSelector = document.querySelector("#height").innerHTML

Then we can utilize the parseInt() function again and add two inches to it.

parseInt(heightSelector) + 2 will return the same value as the previous example: "76" .