-
Notifications
You must be signed in to change notification settings - Fork 11
/
index.html
1136 lines (1107 loc) · 68.1 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<html>
<head>
<link rel="shortcut icon" href="favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title>CampJS — An event for the JavaScript Community</title>
<link rel="stylesheet" href="/-/style.css">
</head>
<body id="home">
<header id="mainHeader">
<section id="headerContent">
<h1>CampJS V!</h1>
<h2>May 22–25 2015</h2>
<h2>Melbourne, Australia</h2>
<p>
CampJS V is now over - thanks to everyone that attended!
</p>
</section>
</header>
<article class="content">
<nav>
<a href="/">Home</a>
<a href="#information">Information</a>
<a href="#mentors">Mentors</a>
<a href="#activities">Activities</a>
<a href="#videos">Videos</a>
<a href="#sponsors">Sponsors</a>
</nav>
<section id="sponsors">
<a name="sponsors"></a>
Diversity Tickets on Offer courtesy of the kind folk at <a href="https://buildkite.com/">Buildkite</a><br />
<p>
We are deeply grateful to the following companies for their support of
CampJS V, without them CampJS would not be possible:
</p>
</section>
<section class="logogroup large">
<div class="logo digitalocean"><a href="https://digitalocean.com"><img src="images/sponsors/digitalocean.png"></a></div>
<div class="logo braintree"><a href="https://developer.paypal.com/"><img src="images/sponsors/braintree_paypal.svg"></a></div>
</section>
<section class="logogroup medium">
<div class="logo"><a href="http://mozilla.org"><img src="images/sponsors/mozilla.svg"></a></div>
<div class="logo nicta"><a href="http://nicta.com.au"><img src="images/sponsors/nicta.png"></a></div>
<div class="logo zendesk"><a href="https://www.zendesk.com/"><img src="images/sponsors/zendesk.png"></a></div>
</section>
<section class="logogroup">
<div class="logo"><a href="http://thinkmill.com.au"><img src="images/sponsors/thinkmill.png"></a></div>
<div class="logo prismatik"><a href="http://prismatik.com.au"><img src="images/sponsors/prismatik.jpg"></a></div>
<div class="logo"><a href="https://tokbox.com"><img src="images/sponsors/tokbox.png"></a></div>
<div class="logo"><a href="https://compose.io"><img src="images/sponsors/compose-logo-app-black.svg"></a></div>
<div class="logo"><a href="http://marketplacer.com"><img src="images/sponsors/marketplacer.svg"></a></div>
<div class="logo"><a href="http://sitepoint.com"><img src="images/sponsors/sitepoint.svg"></a></div>
<div class="logo"><a href="http://small.mu"><img src="images/sponsors/small-multiples.png"></a></div>
<div class="logo"><a href="https://www.particle.io/"><img src="images/sponsors/particle.png"></a></div>
</section>
<section>
<p>
If you are interested in joining these companies in helping make
CampJS as amazing as it possibly can be, please take a look at the
<a href="https://docs.google.com/document/d/1y6iQmHl0Cx-RGQeNGwcbpgs6b3gZ4YbV3Kbqz60KHT0/preview?pli=1">sponsorship information doc</a>.
</p>
</section>
</article>
<article class="content">
<br />
<section id="promo">
<iframe width="100%" height="400" src="https://www.youtube.com/embed/xHy0wXHAeg8" frameborder="0" allowfullscreen></iframe>
<br />
</section>
<section id="information">
<h1><a name="information" href="#information">Information</a></h1>
<h4>CampJS is for everyone who is interested in web technology. Beginners & experts, all are welcome.</h4>
<p>
Networking with other developers is arguably the most valuable aspect of
a conference, yet it’s often a hurried and fleeting affair that happens
in-between the schedule of a regular conference — but CampJS isn’t a
regular conference. This weekend-long retreat allows everyone enough
time to learn new things, relax and most importantly: create real
friendships and connections.
</p>
<p>
CampJS creates a unique blend of expert-led, structured content
and self-directed, unstructured learning. Some content is
scheduled, but the main area is reserved for hacking. The final
night is reserved for demos for people to show off what they have
built or learned at the event.
</p>
<h3>When?</h3>
<p>
CampJS V will commence at 3pm Friday on the 22nd of May, and
run through to 9am Monday the 25th of May. The Camp will be held at <a
href="http://maps.google.com/maps?f=q&hl=en&geocode=&q=Lord+Somers+Camp+Parklands+Avenue+Somers&sll=-37.787844,145.025454&sspn=0.019637,0.046778&ie=UTF8&cid=-38391441,145152110,7610982389541332772&ll=-38.382642,145.160122&spn=0.023548,0.036478&z=14&iwloc=A&source=embed">Lord
Somers Camp, Victoria, Australia</a>.
</p>
<center><a href="http://www.panoramio.com/photo/40130986"><img src="https://cloud.githubusercontent.com/assets/43438/6496401/485d9d00-c30e-11e4-92fd-4559e1a7ff41.png" /></a></center>
<p>
The venue provides food, drink and comfortable accommodation for
the duration of the event. You may camp on the grounds if that is
your wish.
</p>
<h3>Transport</h3>
<p>
<strong>A bus will be provided to take attendees to and from the venue.</strong>
It will travel from Tullamarine airport and back via Melbourne CBD. Interstate travellers should fly into Tullamarine airport around midday, busses will leave between 1 and 2pm. The return bus will get people back to the airport before midday.
</p>
<h3>What’s Provided</h3>
<ul>
<li>Comfortable Dorm-style sleeping quarters.</li>
<li>Meals and Drinks</li>
<li>Coffee (via aldi pod machine) and Tea</li>
<li>Power & Limited Internet</li>
<li>Great People</li>
<li>Prizes</li>
</ul>
<h3>What to Bring</h3>
<ul>
<li>Earplugs</li>
<li>Warm Clothes</li>
<li>Sleeping Bag + Pillow</li>
<li>Bathroom Equipment</li>
<li>Snacks to Share</li>
<li>Computer, Phone & Associated Chargers</li>
<li>Board/Card Games</li>
<li>Headphones</li>
<li>Instruments</li>
<li>Medications</li>
<li>Warm Clothes & Earplugs</li>
<li>Good Attitude</li>
<li>Anything else you need to survive the weekend</li>
</ul>
<h3>Should you attend?</h3>
<p>
Yes you should.
</p>
<center>
<a href="https://twitter.com/hopefulcyborg/status/429331153611280384"><img src="https://cloud.githubusercontent.com/assets/43438/6493832/656db148-c2f8-11e4-8aeb-6f5c38c3df9a.png" /></a>
</center>
<p>To get a vibe for the event please check out the <a href="#videos">Videos</a>, <a href="https://plus.google.com/communities/106906604683614333625/photos/all">Photos</a> & <a href="https://storify.com/campjs">Tweets</a> from previous events.</p>
<iframe width="100%" height="400" src="https://www.youtube.com/embed/4n3UMWHQE-o" frameborder="0" allowfullscreen></iframe>
</section>
<section>
<h1><a name="code-of-conduct" href="#code-of-conduct">Code of Conduct</a></h1>
<p>CampJS takes pride in being accessible and welcoming for people
from all walks of life. Participants should to review our <a
href="code-of-conduct.html">code of conduct</a> prior to attending
as any violations will be taken seriously.
</p>
<p>
<strong><a href="code-of-conduct.html">View the CampJS Code of Conduct</a></strong>
</p>
</section>
</article>
<article class="content activities">
<section>
<h1><a name="activities" href="#activities">Activities</a></h1>
<ul>
<li><a href="#nodeboats">NodeBoats Builder with Spark.io</a></li>
<li><a href="#offline-first">Offline-First Hackathon with DigitalOcean</a></li>
<li><a href="#the-disconnected-ensemble">The Disconnected Ensemble</a></li>
<li><a href="#glslify">glslify</a></li>
<li><a href="#high-performance">High Performance in the Critical Rendering Path</a></li>
<li><a href="#esnext-generation">The ESNext Generation</a></li>
<li><a href="#go-javascript-together-at-last">Go & JavaScript</a></li>
<li><a href="#holistic-infosec-for-web-developers">Holistic InfoSec For Web Developers</a></li>
<li><a href="#scope-chains-closures">Scope Chains & Closures</a></li>
<li><a href="#cors">Cross Origin Resource Sharing for Fun & Profit</a></li>
<li><a href="#http-headers-simplest-security">HTTP Headers</a></li>
<li><a href="#ortc">ORTC</a></li>
<li><a href="#object-observe">A State of Change</a></li>
<li><a href="#web-crypto">Using WebCrypto to Protect User Data</a></li>
<li><a href="#iot-commerce">IoT Commerce with Node</a></li>
<li><a href="#beyond-simple-payments">Beyond Simple Payments</a></li>
<li><a href="#elements-of-mercury">Elements of Mercury</a></li>
<li><a href="#decentralizing-diversity">Decentralizing Diversity</a></li>
<li><a href="#future-of-node">The Future of Node</a></li>
<li><a href="#snapsvg">Snap.SVG inside out</a></li>
<li><a href="#particularly-particles">Particularly Particles</a></li>
<li><a href="#reactjs">React.js</a></li>
<li><a href="#webtask">Webtask: All you need is code</a></li>
<li><a href="#opsfordev">Ops for Dev: How to not get paged</a></li>
<li><a href="#nodeschool">International NodeSchool Day</a></li>
<li>Campfire</li>
<li>Kayaking</li>
<li><a title="wtf are s’mores?!" href="http://en.wikipedia.org/wiki/S%27more">S’mores</a> courtesy of <a href="https://www.digitalocean.com/">Digital Ocean</a></li>
</ul>
<h2><a name="nodeboats" href="#nodeboats">NodeBoats Builder with Spark.io</a></h2>
<h3><a href="#chinmay-pendharkar">Chinmay Pendharkar</a></h3>
<p>
We’re going to dive into the mysteries of hardware programming with
JavaScript. You’ll get all the parts and tools necessary to build your
own kick-ass boat with a Spark Core at its connected heart.
</p>
<p>
We’ll throw you in a team of two and your
creativity and craftsmanship is key to come up with, build and program the best
boat of the conference. This workshop will be delivered in multiple parts
over the weekend and on the Sunday afternoon you’ll get to test your boat
in a race against other competitors, with prizes for the winning team.
</p>
<p>We only have limited spots for this event, <a href="http://goo.gl/forms/yxQD3tbv5N">please register your interest here</a> if you plan on participating.</p>
<p>
A big thank you to spark.io for providing the Spark Core Maker Kits. Chinmay ran this same workshop at <a href="http://2014.jsconf.asia/">JSConf.asia 2014</a>.
</p>
<p>
<iframe width="100%" height="400" src="https://www.youtube.com/embed/uZNRue_L3l0" frameborder="0" allowfullscreen></iframe>
<caption>Chinmay’s NodeBoats workshop at JSConf.asia 2014</caption>
</p>
<h2><a name="the-disconnected-ensemble" href="#the-disconnected-ensemble">The Disconnected Ensemble: Scattered Clouds, Underground.</a></h2>
<h3><a href="#soledad-penades">Soledad Penadés</a></h3>
<p>
Leave the routers and repeaters, the cabling and the splitters, all
behind. Just bring those phones, and let’s go underground. Let’s sit on
a train and play music, left to our own devices, with our own devices.
</p>
<h2><a name="glslify" href="#glslify">glslify</a></h2>
<h3><a href="#hugh-kennedy">Hugh Kennedy</a></h3>
<p>
At the core of WebGL is GLSL, a domain-specific language that allows you
to write code leveraging the power of your graphics card for super speedy
rendering of countless triangles and/or pixels.
</p>
<p>
<a href="https://github.com/stackgl/glslify">glslify</a> adds a Node.js-like module system on top of the language, so you
can create and consume community packages on npm with GLSL as easily
as you can with JavaScript. <strong>This is an introduction to how glslify works, why you’d
want to use it, and what’s possible using the tool.</strong>
</p>
<h2><a name="high-performance" href="#high-performance">High Performance in the Critical Rendering Path</a></h2>
<h3><a href="#nicolas-bevacqua">Nicolas Bevacqua</a></h3>
<p>
This workshop covers the past, present and future of web application
performance when it comes to delivery optimization. We’ll start by glancing
over what you’re already doing — minifying your static assets, bundling them
together, and using progressive enhancement techniques. Then we’ll move on to
what you should be doing — optimizing TCP network delivery, inlining critical
CSS, deferring font loading and CSS so that you don’t block the rendering path,
and of course deferring JavaScript. Afterwards we’ll look at the future, and
what HTTP 2.0 has in store for us, going full circle and letting us forego
hacks of the past like bundling and minification.
</p>
<h2><a name="esnext-generation" href="#esnext-generation">The ESNext Generation</a></h2>
<h3><a href="#jess-telford">Jess Telford</a></h3>
<p>
In this journey, we will explore the strange new worlds of ESNext’s Iterators and Generators.<br />
We will seek out new ways to loop; new iterations. <br />
We will boldly code what no one has coded before! <br />
</p>
<p>
Follow along as we discover; How Iterators, and then Generators came to be; How they can be leveraged to solve practical problems, and; How they can be used in production today!
</p>
<h2><a name="go-javascript-together-at-last" href="#go-javascript-together-at-last">Go & JavaScript — Together at Last</a></h2>
<h3><a href="#conrad-pankoff">Conrad Pankoff</a></h3>
<p>
Go is in vogue right now and JavaScript is an unstoppable force. Learn about using the otto JavaScript interpreter to add JavaScript functionality to an existing Go application.
</p>
<h2><a name="holistic-infosec-for-web-developers" href="#holistic-infosec-for-web-developers">Holistic InfoSec For Web Developers</a></h2>
<h3><a href="#kim-carter">Kim Carter</a></h3>
<p>
Join Kim Carter in the exploration into an insightful set of steps he has learned, from an architectural perspective down to the zeros and ones. Also providing insights of how attackers of your systems think.
</p>
<p>
We will also look at other tried and tested practices and processes for reducing security defects early. That is every Sprint for each Product Backlog Item (PBI). As an architect, engineer and security specialist, Kim will uncover how to identify the lowest hanging fruit (for the attackers) by taking a <a href="https://github.com/binarymist/HolisticInfoSec-For-WebDevelopers/">holistic approach</a> (a 30,000′ view), then honing in on the areas with the highest security ratings, based on a tried and tested threat modelling process that allows you to discover and prioritise the defects most likely to be compromised by attackers of your systems.
</p>
<p>
We are going to look at automating (Security Test (Behaviour) Driven Development (STDD/SBDD)) some of the traditional manual based penetration testing methods often performed after go live and bringing them forward into parallel with your development cycles (Sprints).<br>
Thus empowering Developers to do what was once only performed by deeply specialised security consultancies at the end of the project. Dramatically increasing the confidence we as developers have in what we are delivering, thus reducing the cost of change due to defects being found as they are introduced rather than at go live.
<strong>Trainee Requirements:</strong>
</p>
<ul>
<li>Laptop or something able to run the following</li>
<li>Some virtualisation software able to run an ISO. I.E. VirtualBox or VMWare</li>
<li>Test tools required<ul>
<li><a href="http://blog.binarymist.net/2014/03/29/up-and-running-with-kali-linux-and-friends/">Kali Linux</a> (physical or <a href="http://docs.kali.org/downloading/kali-linux-live-usb-install">bootable USB stick</a> or <a href="https://www.offensive-security.com/kali-linux-vmware-arm-image-download/">VM</a>)</li>
</ul>
</li>
</ul>
<h2><a name="scope-chains-closures" href="#scope-chains-closures">Scope Chains & Closures</a></h2>
<h3><a href="#jess-telford">Jess Telford</a></h3>
<p>
Scope Chains, Closures, Hoisting, and Garbage Collection all have one thing in common: They’re often hand-waved away. How do closures actually work? When does Garbage Collection occur? What really IS the Scope Chain?
</p>
<p>
In this talk, we will discover it’s not black magic after all; No hand waving is required to explain these language features, in fact you’ve been using them all along without realising.
</p>
<h2><a name="cors" href="#cors">Cross Origin Resource Sharing for Fun & Profit: An idiot’s guide to CORs, APIs, & server relationships</a></h2>
<h3><a href="#ryan-pauley">Ryan Pauley</a></h3>
<p>
CORS enables web applications to share information from server to server.
Without CORS, APIs, and much of the internet are far more frustrating to
share with. Introduced to CORS in a Rails<>Node project, I had a
head-smashing time trying to get our servers to play nice and share data.
I wasn’t content with stack overflow’s cut & paste fix and this
presentation is the end result of my desire to come to a better idea of
how to manage CORS challenges.
</p>
<h2><a name="http-headers-simplest-security" href="#http-headers-simplest-security">HTTP Headers – The Simplest Security</a></h2>
<h3><a href="#wei-lu">Wei Lu</a></h3>
<p>
Not sure what Content-Security-Policy and Strict-Transport-Security are about?
<em>Your web apps are at risk!</em> Security is crucial but can be hard to get right.
Luckily for web developers, the HTTP protocol comes with well-thought-out
security specifications. Modern browsers implementing those security features
are capable of doing much of the heavy lifting for us. It is our responsibility
to put the browsers on guard. This talk explores which security headers are
especially useful along with when and how to use them.
</p>
<h2><a name="ortc" href="#ortc">ORTC — bringing WebRTC to mobile devices and servers with JavaScript</a></h2>
<h3><a href="#adam-ullman">Adam Ullman</a></h3>
<p>
ORTC is a free open-source project that enables mobile and server
endpoints to communicate with Real-Time Communications via native and
simple JavaScript APIs. It builds upon the existing WebRTC capabilities
of the browser and fills in some gaps to make interoperating with mobile
devices and servers possible. This talk will answer some questions about
what is missing in WebRTC, what does ORTC hope to achieve and why do you
care. It will also dive into some open source ORTC implementations and
give a demo.
</p>
<h2><a name="object-observe" href="#object-observe">A State of Change — On the future of Object.observe</a></h2>
<h3><a href="#mark-dalgleish">Mark Dalgleish</a></h3>
<p>
Tracking data changes and presenting them to the user is a fundamental
part of any web application. With Object.observe, JavaScript now offers
us a fast, native way to track changes to standard objects without the
need for custom model types or dirty state checking. As game-changing
as this new functionality may be, we might just be seeing the beginning
of the next great JavaScript rivalry: mutable versus immutable state.
</p>
<h2><a name="web-crypto" href="#web-crypto">Using WebCrypto to Protect User Data</a></h2>
<h3><a href="#paul-theriault">Paul Theriault</a></h3>
<p>
With “offline” all the rage, protecting your user’s data is more important than
ever. Come learn how to protect client-side data using the Web Crypto API.
We’ll demystify cryptography basics and cover practical considerations for the
protection of secrets in web applications.
</p>
<h2><a name="iot-commerce" href="#iot-commerce">IoT Commerce with Node</a></h2>
<h3><a href="#steven-cooper">Steven Cooper</a></h3>
<p>
In this session we will look at the IoT world and how it can be
integrated with Node to create new and awesome ways for users to
interface the digital world like never before and ways that developers
can monitise new IoT opportunities.
</p>
<h2><a name="beyond-simple-payments" href="#beyond-simple-payments">Beyond Simple Payments</a></h2>
<h3><a href="#daniel-cousens">Daniel Cousens</a></h3>
<p>
An introduction to advanced payment techniques with bitcoin using JavaScript.
A talk will cover a basic primer on bitcoin and the reasons for some of
the difficulties in this area; including limitations. A follow-up workshop will involve some basic tutorials as well as advanced.
</p>
<h2><a name="elements-of-mercury" href="#elements-of-mercury">Elements of Mercury</a></h2>
<h3><a href="#colin-gourlay">Colin Gourlay</a></h3>
<p>
I’m going to briefly cover the various modules that make up
<a href="https://github.com/Raynos/mercury">mercury</a>,
which will touch on virtual DOM, delegated events and
observable state. I’ll also show a few examples which will hopefully
illustrate why these concepts work so well together, and why not
prescribing specific implementation details is a good thing.
</p>
<h2><a name="decentralizing-diversity" href="#decentralizing-diversity">Decentralizing Diversity – Maintaining community is everyone’s responsibility</a></h2>
<h3><a href="#pomke-nohkan">Pomke Nohkan</a></h3>
<p>
Unlike others, for good or bad, the Javascript community is a headless
monster. It is exactly the decentralised nature of the JS community
which has allowed us to thrive far beyond other comparable
technologies.
</p>
</p>
So when it comes to steering the moral behaviour of the Javascript
swarm, it takes a hive-mind rather than a top-down approach. So we need
to be communicating about this on a regular basis.
</p>
</p>
It is everyone’s responsibility to make the Javascript community one
which welcomes people from all backgrounds, and that unless we take
this seriously and ALL contribute to what defines to collectively
acceptable behaviour, then (even from a purely selfish POV) we rapidly
diminish the quality of our environment (And of course do real harm to
others).
</p>
<h2><a name="future-of-node" href="#future-of-node">The Future of Node</a></h2>
<h3><a href="#rod-vagg">Rod Vagg</a></h3>
<p>
<a href="#rod-vagg">Rod</a> is passionate about Node.js and its future as a wide-spread,
general-purpose and enterprise programming platform. This passion has
lead to his involvement in <a href="https://iojs.org/en/index.html">io.js</a>
as a way to reinvigorate the core of Node.js and bring it in alignment
with the future of JavaScript.
</p>
<h2><a name="snapsvg" href="#snapsvg">Snap.SVG inside out</a></h2>
<h3><a href="#dmitry-baranovskiy">Dmitry Baranovskiy</a></h3>
<p>
Just another powerful tool in your toolbox. <a href="http://snapsvg.io/">Snap</a>
allows you to easily manipulate vector graphics on the web. Lets see
how easy and hard it is and go behind the scenes. I will reveal some
secrets of Snap that not many people know.
</p>
<h2><a name="particularly-particles" href="#particularly-particles">Particularly Particles — an affair brought to you by JS</a></h2>
<h3><a href="#joshua-koo">Joshua Koo</a></h3>
<p>
A guy who fell in love with particles and javascript gets torn
between fulfilling the expectations of society and following his heart.
After a period of time separated from his passions, he decides going
on a journey to remember and rekindle his affections. Meeting new people and friends,
he shows them about finding out more about his love at first sight.
</p>
<h2><a name="reactjs" href="#reactjs">React.js</a></h2>
<h3><a href="#jed-watson">Jed Watson</a></h3>
<p>
At Thinkmill, React has changed our client-side development experience. We’re
building more complex things with less code, and having more fun doing it. So
I want to share that with you.
</p>
<p>
In this session we’ll go through an intro to React, what it brings to the table,
and how it fits into a modern development workflow. We’ll also see how you can
start using it without a painful transition process, take advantage of reusable
components, and look at how that scales to a complex React.js application.
</p>
<h2><a name="webtask" href="#webtask">Webtask: All you need is code</a></h2>
<h3><a href="#benschwarz">Ben Schwarz</a></h3>
<p>
Just say you’re writing a single page application — you step back to admire your work… Now, just add two simple dynamic actions. Hmm. Architecure, deployment, hosting. Just like you always have. Ok. I got that.
Tying a couple of systems together using IFTTT… hmm, just need to transform it a bit, damn… I need to write a little server that receives a webhook. Deployment, hosting. Just like you always have.
</p>
<p>
What if you could just write some simple single use code, and forget about deployment altogether? Enter webtask.io. I’ll show you came to be, and take you through how you can build and launch powerful applications without worrying about another server somewhere.
</p>
<h2><a name="opsfordev" href="#opsfordev">Ops for Dev: How to not get paged</a></h2>
<h3><a href="#michael-pearson">Michael Pearson</a></h3>
<p>
Small, seemingly inconsequential decisions made over the lifetime of a project can have a massive effect on both the reliability of your application and your ability to manage & improve on it.
</p>
<p>
Michael Pearson draws on his background as a systems administrator and software developer to teach you how to understand and manage risk, avoid unintended complexity in your architecture, and recover from incidents when they occur. This session will be of special interest to any developers responsible for their application's hosting or people wishing to find common ground with their operations team.
</p>
<h2><a name="offline-first" href="#offline-first">Offline-first Hackathon with DigitalOcean</a></h2>
<h3><a href="#angelina-fabbro">Angelina Fabbro</a></h3>
<h4>Theme</h4>
<p>
Why ditch your phone when you go bush? There’s no internet connection
but a few well made applications can make or break those boring moments trapped
in a rainy tent when the weather gets bad. Help us innovate our way around a
lack of network connectivity in this offline-sync themed hackathon.
There will be prizes for the best entries.
</p>
<h4>Teams</h4>
<p>We recommend that you form teams of 2-3 people. Building an app from scratch in a few days is a lot of work. That being said, you can work on your own or in a larger size team: it’s up to you.</p>
<p>In designing the prize packs, we tried to provide enough cool stuff for roughly a team of three.</p>
<h4>Criteria</h4>
<p>All submissions must:</p>
<ol>
<li>…function nearly identical in both online/offline states, which is to say in the best case the user doesn’t ever notice a difference between the two</li>
<li>…sync data to a DigitalOcean droplet/virtual server</li>
</ol>
<p>Beyond these two criteria, you can be as creative as your heart desires. You’re encouraged to stay on theme with “camping” because arbitrary constraints as such can make magic happen. However, really we just want you to make something super cool and have a lot of fun.</p>
<p>To get started quickly, you might be interested in <a href="https://www.digitalocean.com/features/one-click-apps/mean/">DigitalOcean’s MEAN stack one-click deploy</a>.
<p><strong>Examples:</strong> Turn-based multiplayer game that syncs game state to the server, chat app that syncs communication, mapping app that updates the location of other campers in relation to one another when connectivity is available</p>
<h4>On-Theme Hacking Prompts</h4>
<p>Here’s a few “hacking prompts” in the style of essay or writing prompts. These ideas are here for you to bounce off of on your way toward your great idea:</p>
<ul>
<li>Disaster has stuck and its up to you to save the day</li>
<li>Everyone is stuck in their tents during bad weather: how can we all communicate?</li>
<li>Map your own adventure</li>
</ul>
<h4>Judging</h4>
<p>Before <strong>5pm on Sunday</strong>, email <a href="[email protected]">[email protected]</a> with the following information:</p>
<ul>
<li>The name of your app</li>
<li>What is the app supposed to do? (eg. “It’s a game”, “camping navigation helper”)</li>
<li>Some screenshots of your app’s UI, any wireframes that went into designing the app</li>
<li>Explain to us what information the app stores offline, and how and when it syncs to the remote server</li>
<li>Describe a bit about what technologies you chose for the project and why (e.g. “I chose Angular because I wub it”)</li>
<li>Tell us about any challenges you encountered</li>
<li>Tell us what else you would have built given more time</li>
</ul>
<p>You don’t need to write a novel here: make sure you app speaks for itself.</p>
<p>Angelina will follow-up and tell you when you will be able to demo your app to the judges during the window of 3-4:30pm. You will have a five minute demo slot to show the judges your app in action. <strong>HARD STOP</strong> at five minutes.</p>
<p> Winners will be announced late in the evening after demos</p>
<p>Projects will be judged by the CampJS mentors according to the following criteria:</p>
<ul>
<li>Online vs. Offline experience: Does the app continue to provide value to the user when offline as compared to online? Does the experience degrade gracefully for the user when connectivity is interrupted?</li>
<li>Stability: Does the app crash on us? Crashy hackathon apps usually mean you didn’t scope your features well, so be careful.</li>
<li>Usability: Is the app easy for us to use without you having to explain “press that button over there”?</li>
<li>Surprise & Delight: Does the app make us feel like sparkles</li>
</ul>
<h4>Judges</h4>
<p><strong>Guest Remote Judge: Joel Califa</strong></p>
<img src="images/hackathon/joel-headshot.jpg">
<p>A graduate of Parsons' Design & Technology program, Joel has been designing and building websites since 2001.<p>
<p><strong>Mentors Judging at CampJS</strong></p>
<ul>
<li><a href="http://v.campjs.com/#angelina-fabbro">Angelina Fabbro</a></li>
<li><a href="http://v.campjs.com/#nicolas-bevacqua">Nicolas Bevaqua</a></li>
<li>... and also Tim Oxley, our fearless CampJS leader</li>
</ul>
<p>He is currently a Product Designer at DigitalOcean, where he works on strategy, design, and front-end development. Prior to this, he designed innovative interfaces at Netcraft, Israel's leading interactive agency, and Amicus, a YC-backed startup that helps nonprofits turn their supporters into fundraisers and advocates.</p>
<h4>Resources for Getting Started</h4>
<ul>
<li><a href="https://www.digitalocean.com/features/one-click-apps/mean/">DigitalOcean One-Click MEAN stack One-Click install</a></li>
<li><a href="http://swarmjs.github.io/articles/todomvc/">Swarm.js + React</a></li>
<li><a href="http://www.tabforacause.org/blog/2015/01/29/using-reactjs-and-application-cache-fast-synced-app/">React + AppCache for Fast Synced Apps</a></li>
<li><a href="http://jakearchibald.com/2014/offline-cookbook/">The Offline Cookbook</a></li>
<li><a href="https://github.com/pazguille/offline-first">Offline-First Web Apps</a></li>
</ul>
<h4>WINNERS</h4>
<ol>
<li><a href="http://pixel.raffe.io/">Pixel Anarchy</a></li>
<li><a href="http://128.199.130.128/">Audio Splatter (try in Chrome)</a></li>
<li><a href="https://projects.invisionapp.com/share/HA32LT96X#/screens">CoNote</a></li>
</ol>
<h4>PRIZES</h4>
<p><strong>Bomb-Ass Mighty-Fine Prize for FIRST PLACE:</strong></p>
<ul>
<li>$500 in cloud hosting credit at DigitalOcean</li>
<li>$100 Pre-paid Credit Card to buy whatever you want~</li>
<li>1 <a href="http://littlebits.cc/kits/deluxe-kit">Deluxe littleBits Kit</a></li>
<li><a href="https://www.smallbatch.com.au/shop/espresso/sample-box/">Coffee Sample Box from Small Batch</a></li>
</ul>
<strong>Damn Fine SECOND PRIZE for Cool Devs Making Cool Apps:</strong>
<ul>
<li>$200 in in cloud hosting credit at DigitalOcean</li>
<li>$50 Pre-paid Credit Card to buy whatever you want~</li>
<li>1 <a href="http://littlebits.cc/kits/premium-kit">Premium littleBits Kit</a></li>
<li><a href="https://www.smallbatch.com.au/shop/espresso/sample-box/">Coffee Sample Box from Small Batch</a></li>
</ul>
</p>
<p><strong>Totally Rad THIRD PRIZE for Badass Devs:</strong></p>
<ul>
<li>$100 in cloud hosting credit at DigitalOcean</li>
<li>$25 Pre-paid Credit Card to buy whatever you want~</li>
<li>1 <a href="http://littlebits.cc/kits/base-kit">Base littleBits Kit</a></li>
<li><a href="https://www.smallbatch.com.au/shop/espresso/sample-box/">Coffee Sample Box from Small Batch</a></li>
</ul>
<h4>Internet?</h4>
<p>Yes.</p>
<p>
<strong>There will be network connectivity & some Internet at the venue, brought to you by CampJS & DigitalOcean.</strong>
</p>
<h4>um hi i have a question ok</h4>
<p>Email Angelina Fabbro at <a href="[email protected]">[email protected]</a>.</p>
<h2><a name="nodeschool" href="#nodeschool">International NodeSchool Day</a></h2>
<p>
Inspired by Substack’s <a href="https://github.com/substack/stream-adventure">stream-adventure</a>,
Rod Vagg unveiled <a href="https://github.com/rvagg/learnyounode">learnyounode</a>
and the <a href="https://github.com/rvagg/workshopper">workshopper framework</a> at CampJS II in August 2013.
This began a chain reaction resulting in the formation of <a href="http://nodeschool.io/">NodeSchool</a>,
an amazing global community spreading JavaScript skills worldwide.
NodeSchool has grown to 26 workshops and inspired many hundreds
of community events worldwide. You can read more about <a
href="https://medium.com/node-js-javascript/building-a-better-node-community-3f8f45b45cb5">the
creation of the NodeSchool community</a> in Mikael Roger’s excellent post on the
topic.
</p>
<p>
This year, on May 23rd the NodeSchool community is <a href="http://nodeschool.io/international-day/">organizing</a>
a day of educational web events around the globe.
This coincides with the second day of CampJS, so to celebrate we’ll be
mentoring NodeSchool sessions for <strong>the six workshops which were originally
created for a CampJS event</strong>:
</p>
<ul>
<li><a href="https://www.github.com/rvagg/learnyounode">LearnYouNode</a> by Rod Vagg</li>
<li><a href="https://github.com/alexmackey/IntroToWebGLWithThreeJS">Intro to WebGL</a> By Alex Mackey</li>
<li><a href="https://github.com/domenic/count-to-6">Count to 6</a> by Dominic Denicola</li>
<li><a href="https://github.com/sporto/planetproto">Planet Proto</a> by Sebastian Porto</li>
<li><a href="https://github.com/thlorenz/learnuv">learnuv</a> by Thorsten Lorenz</li>
<li><a href="https://github.com/stackgl/webgl-workshop">WebGL Workshop</a> by Mikola Lysenko & Hugh Kennedy</li>
</ul>
<p>
This is in addition to launching new TBA workshops.
</p>
<h3><blockquote>"Try and leave this world a little better than you found it"</blockquote></h3>
<p>
CampJS follows the <a href="http://programmer.97things.oreilly.com/wiki/index.php/The_Boy_Scout_Rule">scouts rule</a>.
With this in mind, we strongly encourage & support the creation of
NodeSchool-esque workshops so presenter’s efforts can benefit the
global JavaScript community, continuing to educate far beyond the scope
of a CampJS event. It would be great if this were a model more
conferences would adopt! Big props to NodeConf US which also inspired
the creation of a number of NodeSchool workshops last year.
</p>
</section>
</article>
<article class="content">
<section id="mentors">
<h1><a name="mentors" href="#mentors">Mentors</a></h1>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/5609?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#soledad-penades" name="soledad-penades">Soledad Penadés</a></h2>
<p>
Devevangineer at Mozilla. Building real time audio+graphics experiments with JavaScript; breaking half the browsers in the process. It’s fun!
</p>
<ul>
<li><a href="https://twitter.com/supersole">@supersole</a></li>
<li><a href="https://github.com/sole">github.com/sole</a></li>
<li><a href="https://soundcloud.com/supersole">soundcloud.com/supersole</a></li>
<li><a href="http://soledadpenades.com/">http://soledadpenades.com/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars0.githubusercontent.com/u/553140?v=3&s=160" alt=""/>
<figcaption>
<h2><a name="chinmay-pendharkar" name="chinmay-pendharkar">Chinmay Pendharkar</a></h2>
<p>
Chinmay is a geek who works with web based audio tech. His background is in embedded systems and engineering acoustics, and he spent 6 months helping to build an autonomous robotic submarine. He is the organizer of a bunch of cool local geek/developer/hacker meetups in Singapore.
</p>
<ul>
<li><a href="https://twitter.com/ntt">@ntt</a></li>
<li><a href="https://github.com/notthetup">github.com/notthetup</a></li>
<li><a href="http://chinpen.net/">http://chinpen.net/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/954624?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#angelina-fabbro" name="angelina-fabbro">Angelina Fabbro</a></h2>
<p>
Angelina Fabbro works for DigitalOcean, and before that, was on the
Developer Tools team at Mozilla. Polyglot but prefers JavaScript
and Python, Sublime Text on localhost and vim remotely, and earl
grey tea to most anything else. Interested in figuring out how as
developers, we can work smarter and spend time solving the problems
we truly find interesting. Come say hi!
</p>
<ul>
<li><a href="https://twitter.com/hopefulcyborg">@hopefulcyborg</a></li>
<li><a href="https://github.com/afabbro">github.com/afabbro</a></li>
<li><a href="http://angelina.codes">http://angelina.codes</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/934293?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#nicolas-bevacqua" name="nicolas-bevacqua">Nicolas Bevacqua</a></h2>
<p>
Nico is an enthusiastic JavaScript hacker, <a href="http://www.bevacqua.io/buildfirst">author</a>,
and public speaker based in Buenos Aires, Argentina. He works as a
freelancer and contributes to the open-source community on a daily
basis.
</p>
<ul>
<li><a href="https://twitter.com/nzgb">@nzgb</a></li>
<li><a href="https://github.com/bevacqua">github.com/bevacqua</a></li>
<li><a href="http://www.bevacqua.io/buildfirst">www.bevacqua.io/buildfirst</a></li>
<li><a href="http://ponyfoo.com/">http://ponyfoo.com/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/66834?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#matt-mckegg" name="matt-mckegg">Matt McKegg</a></h2>
<p>
A JavaScript hacker and backyard musician and from Wellington, NZ.
Lover of all things open and modular. I spend most of my time
pressing buttons of various shapes, sizes and colours. Sometimes
these buttons make sounds.
</p>
<ul>
<li><a href="https://twitter.com/MattMcKegg">@MattMcKegg</a></li>
<li><a href="https://github.com/mmckegg">github.com/mmckegg</a></li>
<li><a href="https://soundcloud.com/destroy-with-science">soundcloud.com/destroy-with-science</a></li>
<li><a href="http://wetsand.co.nz">http://wetsand.co.nz</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/612020?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#jess-telford" name="jess-telford">Jess Telford</a></h2>
<p>
A lover of JS, advocate of Bitcoin, hacker of ES6, and a constant learner, Jess
recently returned from an eye opening year in Silicon Valley, bringing back the
best of the tech scene to share what he’s learned. Now the official “Javascript
Guru” at <a href="http://domain.com.au">domain.com.au</a>, Jess has also been
privileged enough to work with Yahoo!, The Iconic, and Groupon.
</p>
<ul>
<li><a href="https://twitter.com/jesstelford">@jesstelford</a></li>
<li><a href="https://github.com/jesstelford">github.com/jesstelford</a></li>
<li><a href="http://jes.st">http://jes.st</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/569817?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#hugh-kennedy" name="hugh-kennedy">Hugh Kennedy</a></h2>
<p>
Hugh is an Australian frontend developer and computer graphics enthusiast.
He currently works with NodeSource, focusing his efforts on data visualisation
and WebGL. He has <a href="https://www.npmjs.com/~hughsk">published over 300 modules to npm</a> and is also one of the
maintainers of <a href="http://stack.gl/">stack.gl</a>, a Node.js-driven ecosystem of modular WebGL
components.
</p>
<ul>
<li><a href="https://twitter.com/hughskennedy">@hughskennedy</a></li>
<li><a href="https://github.com/hughsk">github.com/hughsk</a></li>
<li><a href="http://hughsk.io/">http://hughsk.io/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/733672?v=3&s=160" alt=""/>
<figcaption>
<h2><a name="adam-ullman" href="#adam-ullman">Adam Ullman</a></h2>
<p>
Adam is the Director of API Engineering at TokBox which
provides OpenTok, a cloud platform for video communications built on
top of WebRTC. Adam was one of the original TokBox employees and has
been loyal to the vision and the work since February 2007. Originally
working from TokBox’s home base in San Francisco, Adam moved back to
his homeland of Australia to launch Tokbox Australia in December
2011. Adam now directs the Sydney team, which is responsible for
building the OpenTok JavaScript API.
</p>
<ul>
<li><a href="https://twitter.com/aullman">@aullman</a></li>
<li><a href="https://github.com/aullman">github.com/aullman</a></li>
<li><a href="http://www.tokbox.com">http://www.tokbox.com</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/696693?v=3&s=160" alt=""/>
<figcaption>
<h2><a name="mark-dalgleish" href="#mark-dalgleish">Mark Dalgleish</a></h2>
<p>
Mark Dalgleish is the lead organiser of MelbJS and Decompress, and
a self-described full-stack JavaScript addict and interaction
craftsman at SEEK.
</p>
<ul>
<li><a href="https://twitter.com/markdalgleish">@markdalgleish</a></li>
<li><a href="https://github.com/markdalgleish">github.com/markdalgleish</a></li>
<li><a href="http://markdalgleish.com">http://markdalgleish.com</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars1.githubusercontent.com/u/479055?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#conrad-pankoff" name="conrad-pankoff">Conrad Pankoff</a></h2>
<p>
Conrad works at Macropod Software, hacking on Go and JavaScript. He
enjoys sunsets, long walks on the beach, and chilli dogs.
</p>
<ul>
<li><a href="https://twitter.com/deoxxa">@deoxxa</a></li>
<li><a href="https://github.com/deoxxa">github.com/deoxxa</a></li>
<li><a href="http://www.fknsrs.biz/">http://www.fknsrs.biz/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://cloud.githubusercontent.com/assets/43438/7104485/113e8768-e117-11e4-8ba5-e4a533f4f0a9.png" alt=""/>
<figcaption>
<h2><a href="#kim-carter" name="kim-carter">Kim Carter</a></h2>
<p>
Kim Carter is a Software Engineer, Architect, Entrepreneur with a strong focus on security. Kim is also the founder of BinaryMist Ltd. He is passionate about and enjoys many things. Some of which include:
</p>
<ul>
<li>Designing and creating robust software and networks.</li>
<li>Breaking his and others software and networks, then fixing it/them.</li>
<li>Teaching, training, mentoring, motivating, listening to and being around smart people.</li>
<li>Increasing quality awareness and helping people and organisations implement higher quality in a cost effective manner.</li>
<li>Helping organisations to increase productivity.</li>
</ul>
<ul>
<li><a href="https://twitter.com/binarymist">@binarymist</a></li>
<li><a href="https://github.com/binarymist">github.com/binarymist</a></li>
<li><a href="http://binarymist.net/">http://binarymist.net/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars3.githubusercontent.com/u/1458790?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#steven-cooper" name="steven-cooper">Steven Cooper</a></h2>
<p>
Steven Cooper is responsible for working with the strong developer
community within Asia-Pacific, to develop and nurture the healthy
start-up culture that continues to flourish across the region.
</p>
<p>
Over the last 20 years, Steven has worked as a senior developer for
a host of start-ups and as a developer analyst for more than 10
years with Sensis. Before joining PayPal, he configured and spec’d
mass production technology hardware for the likes of Virgin,
Coca-Cola, Pepsi, Visa, St. George and Westpac.
</p>
<p>
In his current role, Steven hopes to align businesses with the most
appropriate PayPal solutions — products that deliver efficiency,
flexibility and enable scalability.
</p>
<ul>
<li><a href="https://twitter.com/DeveloperSteve">@DeveloperSteve</a></li>
<li><a href="https://github.com/developersteve">github.com/developersteve</a></li>
<li><a href="http://developersteve.com/">http://developersteve.com/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars3.githubusercontent.com/u/1396160?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#paul-theriault" name="paul-theriault">Paul Theriault</a></h2>
<p>
Paul Theriault is the security lead for Mozilla’s Firefox OS
project — a project developing a mobile operating system based on
web technologies. He has an extensive background in web security
with experience ranging from application security testing and code
review to risk assessment and security management.
</p>
<ul>
<li><a href="https://twitter.com/creativemisuse">@creativemisuse</a></li>
<li><a href="https://github.com/pauljt">github.com/pauljt</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars3.githubusercontent.com/u/7043234?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#ryan-pauley" name="ryan-pauley">Ryan Pauley</a></h2>
<p>
Ryan is Ruby developer for a shipping startup called Sendle, but a Javascript
developer for fun. A late-blooming coder, he has only recently
started programming professionally after studying web development
with General Assembly, Sydney in November. Working remotely from
Canberra, Ryan organizes programming meetups for the two dozen
non-dot-net developers in town.
</p>
<ul>
<li><a href="https://twitter.com/ryapauley">@ryapauley</a></li>
<li><a href="https://github.com/mendokusai">github.com/mendokusai</a></li>
<li><a href="http://mendokusai.github.io/">http://mendokusai.github.io/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://pbs.twimg.com/profile_images/2673700917/7a01ed70e2c40544cb17319d9c5098e8.png" alt=""/>
<figcaption>
<h2><a href="#wei-lu" name="wei-lu">Wei Lu</a></h2>
<p>
Wei is a software engineer working for Quantcast and co-maintainer
of a number of popular open-source projects. Wei led the
development effort of a bitcoin web-wallet, <a href="https://hivewallet.com/">Hive Wallet</a> and started
her career working for Pivotal Labs.
</p>
<ul>
<li><a href="https://twitter.com/luweidewei">@luweidewei</a></li>
<li><a href="https://github.com/weilu">github.com/weilu</a></li>
<li><a href="http://weilu.github.io/">http://weilu.github.io/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/66612?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#colin-gourlay" name="colin-gourlay">Colin Gourlay</a></h2>
<p>
Colin Gourlay is an interactive story developer for ABC News. He works
alongside journalists and designers, building custom controls, data
visualisations, quizzes and multimedia features, trying to discover interesting
ways to tell stories on the web.
</p>
<p>
Editor’s note: Colin is the world-renowned genius behind <a href="http://namethatblue.com/">namethatblue.com</a>
</p>
<ul>
<li><a href="https://twitter.com/collypops">@collypops</a></li>
<li><a href="https://github.com/collypops">github.com/collypops</a></li>
<li><a href="http://colin-gourlay.com">http://colin-gourlay.com</a></li>
<li><a href="http://abc.net.au/news/colin-gourlay/5359172">http://abc.net.au/news/colin-gourlay/5359172</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://cloud.githubusercontent.com/assets/43438/7047478/5ed8bbcc-de3f-11e4-952a-67e26096eb0b.png?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#daniel-cousens" name="daniel-cousens">Daniel Cousens</a></h2>
<p>
</p>
<ul>
<li><a href="https://twitter.com/dcousens">@dcousens</a></li>
<li><a href="https://github.com/dcousens">github.com/dcousens</a></li>
<li><a href="http://dcousens.com/">http://dcousens.com/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars1.githubusercontent.com/u/872310?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#jed-watson" name="jed-watson">Jed Watson</a></h2>
<p>
Jed is the creator of <a href="http://keystonejs.com">KeystoneJS</a>,
<a href="touchstonejs.com">TouchstoneJS</a> and <a href="elemental-ui.com">Elemental UI</a>
as well as a partner / lead technical architect at <a href="www.thinkmill.com.au">Thinkmill</a>
in Sydney. He spends a lot of time working with node.js, react.js and open source.
</p>
<ul>
<li><a href="https://twitter.com/jedwatson">@jedwatson</a></li>
<li><a href="https://github.com/jedwatson">github.com/jedwatson</a></li>
<li><a href="http://www.thinkmill.com.au/">thinkmill.com.au</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://avatars2.githubusercontent.com/u/551374?v=3&s=160" alt=""/>
<figcaption>
<h2><a href="#pomke-nohkan" name="pomke-nohkan">Pomke Nohkan</a></h2>
<p>
Pomke is a Javascript & Python hacker, teapot collector and purveyor of purple.
</p>
<p>
Pom co-runs codekuma.io, a monthly newbie-friendly hack session for devs from
all walks of life. Interested in the empowering nature of software engineering
in the developing world and promoting diversity in Australia’s software
industry.
</p>
<p>
Pomke is Head Janitor at <a href="http://etaskr.com/">etaskr</a> doing all the Node things.
</p>
<ul>
<li><a href="https://twitter.com/pomke">@pomke</a></li>
<li><a href="https://github.com/pomke">github.com/pomke</a></li>
<li><a href="https://www.npmjs.com/~pomke">npmjs.com/~pomke</a></li>
<li><a href="https://codekuma.io">http://codekuma.io</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://cloud.githubusercontent.com/assets/43438/7312051/31da2b02-ea78-11e4-8e44-7b28b94c1ce8.png" alt=""/>
<figcaption>
<h2><a href="#rod-vagg" name="rod-vagg">Rod Vagg</a></h2>
<p>
Rod Vagg is Director of Engineering with <a href="https://nodesource.com/">NodeSource</a>.
Rod is known for his work across the Node.js ecosystem, including
in the Node.js databases community and for the creation of key
NodeSchool workshoppers.
</p>
<ul>
<li><a href="https://twitter.com/rvagg">@rvagg</a></li>
<li><a href="https://github.com/rvagg">github.com/rvagg</a></li>
<li><a href="https://www.npmjs.com/~rvagg">npmjs.com/~rvagg</a></li>
<li><a href="http://r.va.gg/">http://r.va.gg/</a></li>
</ul>
</figcaption>
</figure>
<figure class="mentor">
<img class="mentor-thumb" src="https://dl.dropboxusercontent.com/u/361027/me.jpg" alt="Dmitry Baranovskiy" />
<figcaption>
<h2><a href="#dmitry-baranovskiy" name="dmitry-baranovskiy">Dmitry Baranovskiy</a></h2>
<p>
Dmitry is opinionated JavaScript artist. Author of Raphaël and
Snap.SVG JavaScript libraries. Currently he is working as Senior
Computer Scientist at Adobe.
</p>
<ul>
<li><a href="https://twitter.com/DmitryBaranovsk">@DmitryBaranovsk</a></li>
<li><a href="https://github.com/DmitryBaranovskiy">github.com/DmitryBaranovskiy</a></li>
<li><a href="https://www.npmjs.com/~dmitrybaranovskiy">npmjs.com/~dmitrybaranovskiy</a></li>