Giter Club home page Giter Club logo

ember-study's Introduction

General Assembly Logo

Ember Study

Ember is a client-side MVC framework. It provides a model layer, routing, and templates to ease the task of creating a SPA, while using best practices.

Prerequisites

  • None.

Objectives

By the end of this, developers should be able to:

  • Explain the value of routes on for a client application.
  • Diagram the parts of Ember and describe how they interact.
  • Recall which parts of Ember are responsible for which tasks when building a feature.

Instructions

  1. Fork and clone this repository.
  2. Change into the new directory.
  3. Create and checkout a new branch, named response.
  4. Follow the directions given in study.md.
  5. When finished, push to your fork and submit a pull request.

You may wish to refer to FAQs related to forking, cloning, and pull requests.

  1. All content is licensed under a CC­BY­NC­SA 4.0 license.
  2. All software code is licensed under GNU GPLv3. For commercial use or alternative licensing, please contact [email protected].

ember-study's People

Contributors

bengitscode avatar ga-meb avatar micfin avatar payne-chris-r avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

ember-study's Issues

Remove Ember 1 vs. 2 Question?

I feel like the more time goes on the less this is important. I also think with the move back to default or !pod structure, the less that point needs to be made. If that's the case, it needs to be de-emphasized in the ember talk as well.

Too Long?

015 reports that this study was 2-3+ hours long. Might need to trim, or split over multiple days. IMO anything over 2 hours (maybe even should be aiming for 90 mins) is too much for one night.

Ember.js Tutorial

So, I just ran through the emberjs tutorial, and I'm actually pretty impressed. Since we're switching to default over pods structure, I think we can have them drill through this at the start and it allows us to be much more succinct in the early ember talks.
Here is the tutorial I'm referring to: https://guides.emberjs.com/v2.11.0/tutorial/ember-cli/

As far as I can tell, only the bolded ones would be required (R), italics are helpful (H), plain text can be ignored or are Nice to Haves (NTH):

TUTORIAL:
Creating Your App (R) -> ember-study
Setting Up Tests <- We don't cover testing, maybe this is a (NTH)
Routes and Templates (R) -> ember-routing-study
The Model Hook (R) -> ember-routing-study
Installing Addons (NTH)
Building a Simple Component (NTH)
Creating a Handlebars Helper (NTH)
Using Ember Data (R) -> ember-routing-study || ember-resources-study
Building a Complex Component (NTH) <- f*ck this is cool.
Services and Utilities (NTH)
Adding Nested Routes (R) -> ember-routing-study
Deploying (NTH)

NOTE: In almost all the sections there are pieces on testing that we can tell them to ignore unless they're interested in implementing it themselves/would like an added challenge.

Codeschool Ember is no longer free on codeschool

Only the Getting Started section of Codeschool Ember is available for free. Update required reading to only require the free section.

https://github.com/ga-wdi-boston/ember-study/blob/master/study.md#required-viewing

Additionally, we highly recommend completing the entire Try Ember course from CodeSchool.

-Additionally, we highly recommend completing the *entire* [Try Ember](https://www.codeschool.com/courses/try-ember) course from CodeSchool.
+Additionally, we highly recommend completing the *Getting Started* section of [Try Ember](https://www.codeschool.com/courses/try-ember) course from CodeSchool.

Additionally, we highly recommend completing the Getting Started section of Try Ember course from CodeSchool.

Trim: The Object Model

Referencing #86
Objects in Ember (R) -> ember-object-study
Classes and Instances (H) most of it is a NTH, but the stuff about .create() is helpful when we're creating new instances of a Model in Ember. -> ember-object-study
Reopening Classes and Instances (NTH) -> ember-object-study
Computed Properties (R) -> ember-object-study
Computed Properties and Aggregate Data (R) -> ember-object-study
Observers (R) -> ember-object-study
Bindings (R) -> ember-object-study
Enumerables (NTH) -> ember-object-study

Trim: Ember.js - Guides and Tutorials (yes, read them all)?

I think this is the biggest time suck. I've already added options to trim the tutorial. I think having them actually DO the tutorial is a better use of their time than reading any of this, but having them read all of this in one study IMHO is far, far too much for one study.

Improvements for linux install

So, I had some issues installing watchman and running ember serve, but I was able to find some resources that helped me get everything working.

I followed these instructions to get watchman installed:

$ git clone https://github.com/facebook/watchman.git
$ cd watchman
$ git checkout v4.7.0
$ sudo apt-get install -y autoconf automake build-essential python-dev
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install

source: http://bravissimolabs.com/installing-watchman-on-ubuntu-14-04/
(It's similar to the official install instructions, but adds sudo apt-get instructions)
(Also I changed the versions to 4.7.0)

Next, when I tried to run ember serve I got an error about not having enough user watches:

The user limit on the total number of inotify watches was reached
increase the fs.inotify.max_user_watches sysctl

To increase the number of user watches I ran this code:

$ echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
$ sudo sysctl -p

source: https://github.com/guard/listen/wiki/Increasing-the-amount-of-inotify-watchers
(One thing the official instructions do not tell you is what the number of user watchers should be set to, or how much to increase it by. I have no idea if 524288 is way too much or what.)

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.