Skip to content

Instantly share code, notes, and snippets.

View amcrawford's full-sized avatar

Amber (Crawford) Hershman amcrawford

  • Software Engineer at Stitch Fix
  • Denver, CO
View GitHub Profile
## Coding for a Cause
### Coding for a Cause - Outline
#### Non-Profits and the Web
* Depends on their size and area of focus (animal versus political versus education) but...
* Many small-medium non-profits do not necessarily hire in-house (or at least large in-house) teams
* Many cannot afford to have a big focus on web development
* But, web presence still essential: Who would you rather give your money to?
* [show two websites (small non-profit that is out of date and new wither retail or large non-profit]
* Good site helps donors trust the org.
@amcrawford
amcrawford / gist:e3e03be612fc27249d4a
Last active February 7, 2016 17:53
Exercism Comparisons

##Bob My code: here

  • Responder #1 (here) - This person refactored by pulling the conditional input types out into variables which makes his code look a lot cleaner. He also uses 'switch' and 'case' instead of 'if' statements.
  • Responder #2 (here) - This person did pull some of the logic out into variables, but specifically for regular experessions. She also used regular expressions to seach for a question mark instead of comparing the last character like I did.
  • Responder #3 (here) - This person followed the similar pattern of pulling the logic out into variables but also saved the core 'if-statement' into a variable and then returned that variable, which was interesting.
  • Responder #4 ([here](http://exercism.io/submissions/46f939d0412e489b

I Love Data: How IBM's Watson is Making your Community a Better Place

Background

  • IBM Watson is a technology platform that uses natural language processing and machine learning to reveal insights from large amounts of unstructured data.
  • Offers value-adds to businesses through really cool API's: "list several details here"

Work in Communities

Public Safety

  • Case Study showing Memphis police department's use of structured data it had but was never able to compile until now...
  • List additional Statistics

Array Prototype Methods

I understand that functions in JavaScript can take any number of arguments.

Yes

I can describe the similarity between blocks in Ruby and anonymous functions in JavaScript.

Yes

JavaScript Functions

I can explain the difference between function declarations and function expressions.

8/10

I can explain what the value of this is in a normal function.

7/10

@amcrawford
amcrawford / es6.markdown
Last active February 6, 2016 17:30 — forked from rrgayhart/es6.markdown
ES6 Homework

What is ES6?

  • ES6 is the newest update to the Javascript and is currently being incorporated into most major JavaScript engines.

What is Transpilation and how does it relate to ES6?

  • Transpilation is the process of converting code to an updated/ similar language. Because ES6 is not fully supported yet, it must be converted on the client-side.

Looking at the ES6 Features link below, discuss one update from ES5 and if it seems useful/superfluous.

  • String interpolation seems pretty exciting! While not necessarily a needed feature, coming form Ruby, it would be really great to have.
**Step One**: Watch [Sorting Algorithms in JavaScript](https://www.youtube.com/watch?v=uRyqlhjXYQI)
**Step Two**: Fork this gist.
**Step Three**: Respond to this question in your fork: "What are some of the balances and trade offs between different sorting algoritms?"
**Step Four**: _Totally Optional_: take a look at some of the other forks and comment if the spirit moves you.
  • "Modules are small chunks of your application that serve a specific purpose"... In the context of Node, a module is a set of objects with a given purpose in the program that are stored together and accessible within a one file. These act similarly to a module or class in Ruby in that they serve to group data and functions which are callable from other files through importing and exporting.

  • The code examples in the second article look different than the first because the second article is describing the use of RequireJS to organize code and create module dependencies which uses define() and only calls require() in the main file.

@amcrawford
amcrawford / require.markdown
Last active February 14, 2016 03:27 — forked from rrgayhart/require.markdown
The Concept of Require

Read Node.js, Require and Exports and Organize Your Code with RequireJS

Fork this gist and answer the following questions:

  • In the context of Node, what is a module?

"Modules are small chunks of your application that serve a specific purpose"... In the context of Node, a module is a set of objects with a given purpose in the program that are stored together and accessible within a one file. These act similarly to a module or class in Ruby in that they serve to group data and functions which are callable from other files through importing and exporting.

Consider the four responsibilities that Rebecca lists for client side code (hint: they're color coded).

According to this talk, client side code is responsible for: Presentation & Interaction; Data/ Server Communication; Application State and Setup

  • Did any of the responsibilities that she lists surprise you?

    Not necessarily; coming out of Rails, getting used to putting all of those responsibilities like setup, in particular, feels a bit strange but, working with and having seen some of the projects that we will do and that will force us to manage all of these things in our client-side code it makes sense.