Editor’s Picks

I Am Learning to Code: Week 4, Flexible Schedules, and Sheer Frustration with Github

By Henry Kronk
February 13, 2018

At the beginning of this project, I said that I would report weekly on the process of learning to code. I am currently enrolled in an online-only course offered by Codeacademy titled “How to Build Websites from Scratch.” Last week, I did not write a post. The reason? There was nothing to report. I had become unexpectedly busy with a few other projects and I only made it through a handful of lessons during the week.

The way my Codeacademy course is structure, you can take it more or less at your own pace. There is, however, a dedicated schedule, and students who finish more than two weeks after the final date won’t get feedback on their final project or receive a certificate of completion. This is one thing that really endeared me to the program. When I was in university, I was able to follow a course’s schedule for the most part. But I also wasn’t working full time. I’m currently logging over 40 hours per week, and Codeacademy estimates that an additional 10 hours are required to keep abreast in the course. I really appreciate the flexibility.

The Case for Synchronous Schedules

But I’m also a big believer in synchronous courses. One of the biggest struggles for online educators is promoting student engagement. I’m not aware of any study supporting this, but via my own experience and the anecdotes of my peers, synchronous courses—or those that follow a dedicated schedule—greatly enhance student engagement. Every learner moves through the information at more or less the same pace. Students generally struggle with similar tasks, and they can rely on one another to help each other out. Learners in a non-synchronous course do not have this benefit.

githubDhawal Shah, founder of Class Central, made a similar argument last fall. As Shah writes, “[Asynchronous courses] means that instead of tens of thousands of people learning together as part of a shared experience, everybody is learning at their own pace in significantly smaller cohorts. The always on-demand MOOC trend has led to a drastic reduction in forum activity within MOOC cohorts. At one point Coursera boasted about an average forum response time of 22 minutes; that’s no longer the case.”

Fewer than 500 learners participate in my class’s forum, but it’s still an incredibly lively and productive space. I don’t think it would have the same spirit without a semi-set schedule.

Failure and Success with Github

I’ve made up some ground from last week, but for the most part, the class is in the middle of learning some more advanced CSS at the moment. I’m talking margins, padding, borders, flexbox syntax, positioning—all the things that go into how and where something appears on a web page. So far, I’m fine with Cascading Style Sheets. I’m fine with HTML, and I’ve really been enjoying seeing how websites come together. Learning these languages in an online context has been a great experience.

But I’ve also recently run into some moments of pure frustration. These moments came at the hands of deploying a site via Github Pages. Github for coders is like Flickr for photographers, or Etsy for Artists. It’s a platform where you can upload any kind of code you’ve been working on to show your pals, your potential employers, or just save it for you. With Github Pages, you can also set up a link between your own computer and your Github account, allowing you to deploy your code as its own website without doing any fancy footwork when it comes to hosting, setting up a domain, etc. When sending or ‘pushing’ code from your computer to Github, you need to follow some pretty simple but very specific steps, especially regarding the file path (where your code is saved) both on your computer and on Github.

On Sunday, I thought I would throw together a quick, easy site about Devin Nunes’ continuously pursed lips to make my friends laugh. After I finished, I could not for the life of me figure out how to correctly deploy it with Github Pages. I went through the same steps over and over again and it never worked. I began to really regret the online format and wished I had a human with expertise in the room who could show me how it’s done. We certainly have access to experienced coders via a Slack, but this portion of the class had already received a fair amount of attention. Moderators had already created a 30 minute how-to video. I read their messages over and over, and still it wasn’t working.

On Monday afternoon, I tried again, and it worked instantly. It might have had something to do with trying to figure it out after 8+ hours of coding. I’m not sure if I could have benefited from a human instructor or a few hours of sleep.

MRW my code doesn’t work, then it does, but idk why from r/reactiongifs