In this coding session, Amir spends 15 minutes rambling about VIM, then continues the HelloRpgWorld coding exercise, this is part 2.

Topics covered:
- VIM development environment
- Deep dive into jasmine
- Deep dive into TDD, naming and refactoring tests (culling)
- Pit falls of TDD when trying to think of new tests to write
- Brief explanations of a module based approach to writing javascript
- Brief introduction to Underscore.js

Play by Play:
0:00 - explains what was covered in the last screencast
1:40 - explains the learning curve associated with VIM and general editor use
3:00 - goes into detail about his VIM setup and the plugins he uses
12:30 - talks about how to get started with VIM (shows off a tutorial)
15:19 - continues the code kata and briefly explains the problem domain for the code kata
17:20 - discusses the challenges with naming tests and introduces the concept of culling
21:45 - explains the importance of feedback loops vs finding bugs in your codebase
23:30 - talks about communicating intent within a test
26:30 - talks about the next test we want to write (after culling is applied)
29:26 - has created a new failing test and is ready to make it pass and talks about module based javascript
30:30 - has the test passing and discusses the next test that should be written
33:41 - test failure is in place after getting a false positive
33:56 - explains the importance of not adding a new behavior when trying to flush out an existing naive implementation
35:20 - talks about what the solution to the current failing test should look like
36:56 - talks about writing code that isn't back by a test and the risks associated with that
38:15 - uses Underscore.js to complete the implementation
41:45 - has the test passing by using a method in the Underscore.js library

# Uploaded 174 Plays / / 0 Comments Watch in Couch Mode

Coding Out Loud

Amir Rajan

A series of screencasts about development.

Browse This Channel

Shout Box

Channels are a simple, beautiful way to showcase and watch videos. Browse more Channels. Channels