A few weeks back, Rebecca Murphey tweeted out a link to a survey she was running involving how people learn JavaScript and how it has impacted their careers.

Have you worked on getting better at JS in the last year? I’d love your inputhttps://t.co/qEGaIWW6ha I’ll share what I’ve learned soon!

— Rebecca Murphey (@rmurphey) January 12, 2016

More recently she shared the raw results as a CSV dump and I thought it would be fun to parse the results. I was genuinely interested in the data and I thought it would give me a chance to play with a JavaScript charting engine. I’ve taken a stab at rendering the data and I thought I’d share the results. I’ll link to the demo at the end, and please note that any mistakes are entirely on my end, and not Rebecca’s fault.

I began by looking into CSV parsing with JavaScript. A quick search turned upPapaParse which has an incredibly simple API. Here’s what I had to do to parse the data.

 Papa.parse("./learning-js.csv", {     download:true,     header:true,     complete:function(results) {         allData = results.data;         doCharts();     }    }); 

That’s pretty darn simple. PapaParse has quite a few options so I definitely recommend checking it out.

I then looked into charting the results. I began with Chart.js which was pretty and easy to use, but I couldn’t figure out how to make the pie chart labels show up all the time and not just on mouse over. I found a workaround, but honestly, it just kind of bugged me that I couldn’t do it easier so I punted and went over to Chartist.js . Personally it was the mascot that sold me.

The API was a bit weird in places, but I was able to get some basic charts written out. I thought the engine made some odd choices for colors. For example, a two-slice pie chart would use a red and then a near-red color. You could distinguish the slices, but they were pretty close. You can tweak the colors of course, but the defaults for the pie chart seemed odd in my opinion.

Anyway, here are the questions and results, taken out of my ugly demo app and positioned a bit nicer.

Have you focused specifically on improving your JS skills at any time in the last year?

Absolutely no surprise here.

Which resources did you use to help you learn?

Kinda surprised how high blogs rank here, especially since blogs seem to be better for one offs, like, “How do I do cowbell in X”, versus more broad training. Then again, maybe people need more concrete examples versus learning JavaScript at a broad level.

During your learning, which areas have been particularly challenging?

Just an FYI, I skipped a few question. Anyway, the chart. And I apologize, this is a big one.

The labels are pretty much unreadable there. You can find a larger versionhere. Again, just click for the “full” view. Top three issues were:

  • Build tools
  • Understanding how to apply things to the real world
  • Lack of mentoring/guidance

Number two in that list is a particular pet peeve of mine. I’ve seen far too many examples that are so far removed from reality that they are near useless. (And to be fair, I’ve done it myself.)

Which technologies do you use in your current role?

Again, no real surprises here, although I would have thought Node would have been higher. I apologize for the clunkiness of some of the labels.

How long have you been working professionally in web development?

Woot - I’m not the only old person in tech! I’m squarely in the 10+ years bar there. I began working with the web around 1994 or so.

How would you rate the improvement of your JS skills in the last year?

This is a good chart. Well, not my design - I don’t like the lack of space. What I mean is - it looks like most people are improving, and improving at least a little bit. Hey, you don’t have to go from noob to demigod in one year. Baby steps is just fine.

Have you gotten a new job, a promotion, or new responsibilities since improving your JS skills?

I’d say that’s a damn good chart too.

The full report

Ok, I should clarify - this isn’t a full report - I didn’t chart the questions focused on the one resource that was best/worst. But you can view everything here:http://static.raymondcamden.com/rmurphey/

Please - for the love of God - do not view source. Seriously. I’m not being humble. This is absolute crap code. Thanks again to Rebecca Murphey for creating this survey. I’d strongly recommend checking out her js-assessment project as well.

Survey Results for Rebecca Murpheys Learning JavaScript Survey的更多相关文章

  1. Multimodal Machine Learning:A Survey and Taxonomy 综述阅读笔记

    该笔记基于:Multimodal Machine Learning:A Survey and Taxonomy 该论文是一篇对多模态机器学习领域的总结和分类,且发表于2017年,算是相当新的综述了.老 ...

  2. 论文解读(GraphDA)《Data Augmentation for Deep Graph Learning: A Survey》

    论文信息 论文标题:Data Augmentation for Deep Graph Learning: A Survey论文作者:Kaize Ding, Zhe Xu, Hanghang Tong, ...

  3. AMD - Learning JavaScript Design Patterns [Book] - O'Reilly

    AMD - Learning JavaScript Design Patterns [Book] - O'Reilly The overall goal for the Asynchronous Mo ...

  4. Learning JavaScript with MDN & 使用 MDN 学习 JavaScript

    Learning JavaScript with MDN & 使用 MDN 学习 JavaScript Learn JavaScript with MDN 和 MDN 一起学习 JavaScr ...

  5. Learning JavaScript with MDN (call, apply, bind)

    Learning JavaScript with MDN (call, apply, bind) call, apply, bind Object.prototype.toString() 检测 js ...

  6. Developer Survey Results 2017

    概观 今年,超过64,000名开发人员告诉我们他们学习和升级的方式,他们使用的工具和他们想要的东西. 自2011年以来,Stack Overflow每年都会向开发者询问他们最喜爱的技术,编码习惯,工作 ...

  7. Learning JavaScript Design Patterns The Module Pattern

    The Module Pattern Modules Modules are an integral piece of any robust application's architecture an ...

  8. Learning JavaScript Design Patterns The Observer Pattern

    The Observer Pattern The Observer is a design pattern where an object (known as a subject) maintains ...

  9. Learning JavaScript Design Patterns The Singleton Pattern

    The Singleton Pattern The Singleton pattern is thus known because it restricts instantiation of a cl ...

随机推荐

  1. 二分查找---有序数组的 Single Element

    有序数组的 Single Element 540. Single Element in a Sorted Array (Medium) Input: [1, 1, 2, 3, 3, 4, 4, 8, ...

  2. 【JAVA】eclipse里代码整个前移或者后移的快捷键

    一整块后移是:选中按 tab 一整块前移是:选中按 shift+tab

  3. ORA-00911: invalid character 错误解决

    多数情况如下: 控制面板--系统和安全---系统--高级系统设置--高级--环境变量--系统变量中 变量名:NLS_LANG 变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK ...

  4. Sersync 上配置 Sersync 服务

    上面的工作做好之后呢,下面就开始正式配置我们的 Sersync 了! 我们在 Sersync 安装过程中所用到包均是从谷歌 Sersync 项目组取得的,地址: https://code.google ...

  5. C# 模拟页面登录

    using System; using System.Collections; using System.Collections.Generic; using System.IO; using Sys ...

  6. C# 列出并删除一个文件夹下的所有MD5值相同的文件

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. 本地主机访问远程linux系统服务器上的jupyter notebook

    1,机器情况:服务器 centos python环境已经配置好了,在虚拟环境下安装了anaconda 并且在里面安装了jupyter notebook 2,主机是 windows     ipytho ...

  8. uboot学习之五-----uboot如何启动Linux内核

    uboot和内核到底是什么?uboot实质就是一个复杂的裸机程序:uboot可以被配置也可以做移植: 操作系统内核本身就是一个裸机程序,和我们学的uboot和其他裸机程序没有本质的区别:区别就是我们操 ...

  9. 学习python os commands socket模块

    import os print(os.getcwd()) #获取当前路径, 导包也是从这个路径下面才能找到 # os.chdir('./..') #返回上一级路径,再获取路径看看 # print(os ...

  10. CentOS安装Git服务器 Centos 6.5 + Git 1.7.1.0 + gitosis

    1.安装扩展 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel 2.下载git ...