Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

First draft of BmoreJS version

  • Loading branch information...
commit 84825fd0ebac54a73bfbe3943d9adab01a298938 1 parent 3e4b773
@eee-c authored
View
6 done/outro.md
@@ -0,0 +1,6 @@
+!SLIDE
+# More Info
+
+## http://dart4hipsters.com
+## http://japhr.blogspot.com
+## @eee_c
View
3  local.css
@@ -0,0 +1,3 @@
+.content > pre {
+ font-size: 200%;
+}
View
31 one/01_slide.md
@@ -1,23 +1,30 @@
!SLIDE
-# Functional Dart #
+# An Intro to Dart #
## Chris Strom ##
### @eee_c ###
-### B'more on Rails // 2012-01-10 ###
+### BmoreJS // 2012-07-125 ###
!SLIDE bullets incremental
# Dart
-* Awersome
-* Fast
-* Flexible
-* Modern Web
-* Structured
+ * Awersome
+ * Fast
+ * Flexible
+ * Modern Web
+ * Structured
!SLIDE bullets incremental
# Dart Today
-## (Jan 10, 2012)
+## (Jul 25, 2012)
-* No native browser support
-* Can compile to Javascript (like CoffeeScript)
-* Downloadable executables
-* try.dartlang.org
+ * No native browser support
+ * Can compile to Javascript (like CoffeeScript)
+ * Downloadable executables
+ * try.dartlang.org
+
+!SLIDE bullets incremental
+
+# Dart
+
+ * Familiar syntax
+ * Can serve both JS and Dart depending on browser
View
19 one/02_dart_intro.md
@@ -83,7 +83,7 @@
list.forEach((i) {fib_printer(i)});
!SLIDE
-# Interpolating Strings
+# Interpolating Variables
@@@ javascript
fib_printer(i) {
@@ -183,9 +183,7 @@
!SLIDE bullets incremental
# Limitations
-* No Reflection
* No `arguments`
-* No `method_missing`
_under construction!!!_
@@ -193,18 +191,3 @@ _under construction!!!_
# Implications
* Must pass exact number of arguments
-
-!SLIDE bullets incremental
-# Future Topics
-
-* Classes
-* Types
-* Message Passing
-* DOM // Canvas
-
-!SLIDE
-# More Info
-
-## http://dart4hipsters.com
-## http://japhr.blogspot.com
-## @eee_c
View
BIN  pub/installing_with_pub.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  pub/installing_with_pub_highlighted.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  pub/local_dev.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
BIN  pub/packages_dir.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
View
159 pub/slides.md
@@ -0,0 +1,159 @@
+!SLIDE incremental
+
+# Dart Packaging: "Pub"
+
+ * Think npm or bundler
+ * But for _client-side_ applications
+
+!SLIDE
+
+# Dart Code
+
+ @@@ Javascript
+ #import('Collections.Comics.dart', prefix: 'Collections');
+ #import('Views.Comics.dart', prefix: 'Views');
+ #import('Views.AddComic.dart', prefix: 'Views');
+
+ #import('dart:html');
+ #import('dart:json');
+
+ #import('https://raw.github.com/eee-c/hipster-mvc/master/HipsterSync.dart');
+
+ main() {
+ // HipsterSync.sync = localSync;
+
+ var my_comics_collection = new Collections.Comics()
+ , comics_view = new Views.Comics(
+ el:'#comics-list',
+ collection: my_comics_collection
+ );
+
+ my_comics_collection.fetch();
+
+ new Views.AddComic(
+ el:'#add-comic',
+ collection: my_comics_collection
+ );
+ }
+
+
+!SLIDE
+
+# Dart: Just the Code
+
+ @@@ Javascript
+ main() {
+ // HipsterSync.sync = localSync;
+
+ var my_comics_collection = new Collections.Comics()
+ , comics_view = new Views.Comics(
+ el:'#comics-list',
+ collection: my_comics_collection
+ );
+
+ my_comics_collection.fetch();
+
+ new Views.AddComic(
+ el:'#add-comic',
+ collection: my_comics_collection
+ );
+ }
+
+!SLIDE
+
+# Dart Imports (built-in awesome)
+
+ @@@ Javascript
+ #import('Collections.Comics.dart', prefix: 'Collections');
+ #import('Views.Comics.dart', prefix: 'Views');
+ #import('Views.AddComic.dart', prefix: 'Views');
+
+ #import('dart:html');
+ #import('dart:json');
+
+ #import('https://raw.github.com/eee-c/hipster-mvc/master/HipsterSync.dart');
+
+!SLIDE
+
+# Dart with Packaging
+
+ @@@ Javascript
+ #import('Collections.Comics.dart', prefix: 'Collections');
+ #import('Views.Comics.dart', prefix: 'Views');
+ #import('Views.AddComic.dart', prefix: 'Views');
+
+ #import('dart:html');
+ #import('dart:json');
+
+ #import('package:hipster-mvc/HipsterSync.dart');
+
+ main() {
+ // HipsterSync.sync = localSync;
+
+ var my_comics_collection = new Collections.Comics()
+ , comics_view = new Views.Comics(
+ el:'#comics-list',
+ collection: my_comics_collection
+ );
+
+ my_comics_collection.fetch();
+
+ new Views.AddComic(
+ el:'#add-comic',
+ collection: my_comics_collection
+ );
+ }
+
+!SLIDE
+
+# The Pub Difference
+
+ @@@ Javascript
+ // Instead of:
+ // #import('https://raw.github.com/eee-c/hipster-mvc/master/HipsterSync.dart');
+
+ // Use
+ #import('package:hipster-mvc/HipsterSync.dart');
+
+
+!SLIDE
+
+# Where the Magic Happens: pubspec
+
+ @@@ YAML
+ dependencies:
+ hipster-mvc:
+ git: git://github.com/eee-c/hipster-mvc.git
+
+!SLIDE
+
+# Installing with pub
+
+![Installing](installing_with_pub.png)
+
+!SLIDE
+
+# Installing with pub
+
+![Installing](installing_with_pub_highlighted.png)
+
+!SLIDE
+
+# The "packages" Directory
+
+![Packages](packages_dir.png)
+
+!SLIDE
+
+# Local Development
+
+![Local development](local_dev.png)
+
+!SLIDE
+
+# But...
+
+ * It's still very early
+ * No central repository
+ * "Dumb" dependency resolution
+ * Only works with git
View
10 showoff.json
@@ -1 +1,9 @@
-{ "name": "My Preso", "sections": [ {"section":"one"} ]}
+//{ "name": "My Preso", "sections": [ {"section":"one"} ]}
+{ "name": "My Preso",
+ "sections": [
+ {"section":"one"},
+ {"section":"two"},
+ {"section":"pub"},
+ {"section":"done"}
+ ]
+}
View
19 two/03_dart_classes.md
@@ -1,18 +1,6 @@
!SLIDE
# Dart Classes
-## B'more on Rails
-## Chris Strom
-## @eee_c
-
-!SLIDE
-
-# Quick Review
-
- * Familiar syntax
- * Can be compiled to JS
- * Can serve both JS and Dart depending on browser
-
!SLIDE
@@@ Javascript
@@ -316,10 +304,3 @@ Use the `factory` keyword.
new PrettyName("Chris");
// => "Pretty Chris"
-
-!SLIDE
-# More Info
-
-## http://dart4hipsters.com
-## http://japhr.blogspot.com
-## @eee_c
Please sign in to comment.
Something went wrong with that request. Please try again.