Coder Social home page Coder Social logo

bulletproof-js's Introduction

#Bulletproof JavaScript#

Starting with the Angular example from TodoMVC, we'll walk through a set of tools that make developing JavaScript applications almost enjoyable.

##Conference Blurb## Take a look at your codebase. Go ahead, this abstract will wait. Notice anything? Perhaps a few more lines of JavaScript than years past? JavaScript is no longer an outlier, a language for the interns, something we can just mash together. Today, JavaScript is a first class citizen. As such, we need to treat it will all the care and feeding we extend our server side languages. This talk will introduce you to a set of tools that will help you write bulletproof JavaScript.

Step one, make sure we aren't making any basic mistakes like using == when we really mean ===. To remedy these types of bugs, we'll leverage JSHint to statically analyze our code. In addition to walking through the setup, we'll discuss how to ratchet up the rules as you improve your codebase. Just like Java or C#, we also need to test our JavaScript code. We'll introduce Jasmine, a BDD style testing tool as well as other tools that make help in the testing process. Last but not least, we'll take a tour of Plato, a JavaScript source code visualizer. Taken together, these tools can go a long way to improve your JavaScript code.

##What We'll Cover## The Goal is simple: show you what we can do to make our JavaScript code better. To this end, we'll focus on:

  • Jasmine
  • Karma
  • Phantom
  • Istanbul
  • JSHint
  • Plato

##What We Won't Delve Into## This sessions is not intended as a deep dive on any of these tools. You won't walk out an expert on Jasmine or Karma, but you will know how to install them! Other things we won't delve into:

  • Building applications on Node
  • How to test JavaScript
  • Mocking/stubbing etc JavaScript
  • Testing ajax calls
  • Integration testing of JavaScript MVwhatever apps
  • Evaluate specific JavaScript MVwhatever frameworks

#Your Guide# For those that are curious about me, here's my bio:

Nathaniel T. Schutta is a software architect focussed on mobile and making usable applications. A proponent of polyglot programming, Nate has written two books on Ajax and speaks regularly at various worldwide conferences, No Fluff Just Stuff symposia, universities, and Java user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace dynamic languages. Nate is also doing everything he can to rid the world of bad presentations, he helped write a book on Presentations Patterns.

You can follow me on Twitter: @ntschutta

You can read my mostly dead blog: or check out my eventual reboot:

bulletproof-js's People

Contributors

ntschutta avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.