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. 关于AndroidStudio 配置的默认路径的修改

    AndroidStudio的配置默认路径在 C:\Users\用户名\.AndroidStudio3.0 下,在这里会有一个缺点是C盘会常常空间不够用,所以我就想改到其他盘的.看图: Android ...

  2. C# <T>泛型的使用

    在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制.如果客户端代码尝试使用某个约束所不允许的类型来实例化类,则会产生编译时错误.这些限制称为约束.约束是使用 where 上 ...

  3. NGUI的HUD Text的扩展插件学习--(HUDText)的使用

    一,我们先添加一个空的游戏对象,在菜单中找到这个添加空的游戏对象 二,然后我们给该对象添加HUDText,然后给这个添加字体 三,我们添加个脚本,代码如下: using UnityEngine; us ...

  4. PC端实现浏览器点击分享到QQ好友,空间,微信,微博等

    网上现在比较流行的是JIaThis,但是测试的时候,不能分享给QQ好友,一直卡在输入验证码,以下代码亲测有效,可直接使用 <%@ page language="java" c ...

  5. JDK 8 中Stream流中的去重的方法

    JDK 8 中Stream流中去重的方法 1.简单的去重,可以使用distinct()方法去重,该方法是通过比较equals和hashcode值去去重, 2.复杂的去重, 例如,在一个JavaBean ...

  6. 尖沙咀到底谁说的算?!--- CSS层叠

    前些天,我朋友发了这个段CSS我. //css *{ color:#fff ; } div{ color:#000 !important; } //html <div><span&g ...

  7. Postman初探

    缘起 今天要测试一个新接口,返回值应该是现有6个接口返回值中data.CountNum之和.麻烦处有: 1.用户角色不同,接口返回值也有不同.因此要用到的接口很多. 2.要对所有接口的返回值求和,再与 ...

  8. Power Designer将数据库表结构导出到Word

     一.   安装与运行PowerDesigner(本例中用的版本是15.1) 二.“File”→“New Model”→“Categories”→“Information”→“Physical Dat ...

  9. python在类中使用__slot__属性

    在类中定义__slot__属性来限制实例的属性字段,在创建大量对象的场合可以减少内存占用. 创建大量对象是内存占用对比: 类中不使用__slot__ class MySlot:def __init__ ...

  10. Linux性能优化从入门到实战:07 CPU篇:CPU性能优化方法

    性能优化方法论   动手优化性能之前,需要明确以下三个问题:   (1)如何评估性能优化的效果? 确定性能的量化指标.测试优化前的性能指标.测试优化后的性能指标.   量化指标的选择.至少要从应用程序 ...