How to teach an old dognew tricksAndreas KnechtJIRA Developer                          2
JIRA Team August 2012               3
6 front-end developers   JIRA Team    August 2012                         3
Need client-side features                            4
Need client-side features• Better UX                             4
Need client-side features• Better UX• Performance                             4
Need client-side features• Better UX• Performance• Better REST API                             4
BUT...         5
6
JavaScriptdevelopment is hard!                       6
Teaching an old dog new tricks                                 7
3 Step Process                 8
Read a book1                  9
Spike it!2                10
Pick a framework3                       11
Pick a framework3                       11
Benefits          12
Documented Approach                      13
Documented Approach Model                       Templating (View)   View (Controller)                       13
Engineer JavaScript             vs                      14
NAPI       15
NAPI       15
napi.js (691)   16
NoteDetailsView.js (56)                                         EditNoteView.js (68)                 NoteModel.js (91)    ...
NoteDetailsView.js (56)                                         EditNoteView.js (68)                 NoteModel.js (91)    ...
Refactoring              17
Refactoring              17
Refactoring              17
Refactoring              17
Templating             18
Templating             18
Testing          19
Testing          19
Testing     917 tests                 19
Testing      917 tests  29 parallel agents!   19
Testing                        vs      917 tests  29 parallel agents!        19
Testing                        vs      917 tests              785 tests  29 parallel agents!                    19
Testing                        vs      917 tests              785 tests  29 parallel agents!         1 agent    19
Testing          19
More than unit tests                       20
More than unit tests                       20
More than unit tests                       20
More than unit tests                       20
More than unit tests                       20
Devspeed           21
Devspeed• 10+ second saving• ~1.5 hours per week• Inline Edit: 10 hours/week!                                22
Devspeed• 10+ second saving• ~1.5 hours per week• Inline Edit: 10 hours/week!                                22
Devspeed• 10+ second saving• ~1.5 hours per week• Inline Edit: 10 hours/week!                                22
Make the switch!                   23
Thank you!
How to Teach an Old Dog New Tricks, AtlasCamp US 2012
Upcoming SlideShare
Loading in …5
×

How to Teach an Old Dog New Tricks, AtlasCamp US 2012

1,104
-1

Published on

Andreas Knecht, Senior Developer

Learn how the JIRA developers - a team with mostly backend expertise - figured out how to write full client-side applications through the use of backbone, brace, qunit and REST! This talk will not only show you some techniques for writing client-side apps in Atlassian plugins, but how the increase in devspeed will make all your developers fall in love with developing complex Javascript applications.

Published in: Technology, Lifestyle
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,104
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
8
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • How to Teach an Old Dog New Tricks, AtlasCamp US 2012

    1. 1. How to teach an old dognew tricksAndreas KnechtJIRA Developer 2
    2. 2. JIRA Team August 2012 3
    3. 3. 6 front-end developers JIRA Team August 2012 3
    4. 4. Need client-side features 4
    5. 5. Need client-side features• Better UX 4
    6. 6. Need client-side features• Better UX• Performance 4
    7. 7. Need client-side features• Better UX• Performance• Better REST API 4
    8. 8. BUT... 5
    9. 9. 6
    10. 10. JavaScriptdevelopment is hard! 6
    11. 11. Teaching an old dog new tricks 7
    12. 12. 3 Step Process 8
    13. 13. Read a book1 9
    14. 14. Spike it!2 10
    15. 15. Pick a framework3 11
    16. 16. Pick a framework3 11
    17. 17. Benefits 12
    18. 18. Documented Approach 13
    19. 19. Documented Approach Model Templating (View) View (Controller) 13
    20. 20. Engineer JavaScript vs 14
    21. 21. NAPI 15
    22. 22. NAPI 15
    23. 23. napi.js (691) 16
    24. 24. NoteDetailsView.js (56) EditNoteView.js (68) NoteModel.js (91) vs NoteCollection.js (43) NoteListView.js (58) NoteRowView.js (41) templates.soy (87) NoteToolsView.js (81) AddNoteView.js (94)napi.js (691) 16
    25. 25. NoteDetailsView.js (56) EditNoteView.js (68) NoteModel.js (91) vs NoteCollection.js (43) NoteListView.js (58) NoteRowView.js (41) templates.soy (87) NoteToolsView.js (81) AddNoteView.js (94)napi.js (691) (619) 16
    26. 26. Refactoring 17
    27. 27. Refactoring 17
    28. 28. Refactoring 17
    29. 29. Refactoring 17
    30. 30. Templating 18
    31. 31. Templating 18
    32. 32. Testing 19
    33. 33. Testing 19
    34. 34. Testing 917 tests 19
    35. 35. Testing 917 tests 29 parallel agents! 19
    36. 36. Testing vs 917 tests 29 parallel agents! 19
    37. 37. Testing vs 917 tests 785 tests 29 parallel agents! 19
    38. 38. Testing vs 917 tests 785 tests 29 parallel agents! 1 agent 19
    39. 39. Testing 19
    40. 40. More than unit tests 20
    41. 41. More than unit tests 20
    42. 42. More than unit tests 20
    43. 43. More than unit tests 20
    44. 44. More than unit tests 20
    45. 45. Devspeed 21
    46. 46. Devspeed• 10+ second saving• ~1.5 hours per week• Inline Edit: 10 hours/week! 22
    47. 47. Devspeed• 10+ second saving• ~1.5 hours per week• Inline Edit: 10 hours/week! 22
    48. 48. Devspeed• 10+ second saving• ~1.5 hours per week• Inline Edit: 10 hours/week! 22
    49. 49. Make the switch! 23
    50. 50. Thank you!
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×