Ruby on Rails?

12 views
Skip to first unread message

Justin E

unread,
May 21, 2014, 3:51:52 PM5/21/14
to hack...@googlegroups.com
Anybody out there local doing RoR stuff? Maybe a lurker that needs to quit lurking and post???

I'm trying to bone up on it pretty hard lately. I've been using it for all my non-dayjob projects and would love to get together and talk/learn/share if anyone is interested.

I'm also about to start trying to learn a client side framework. I'm currently leaning towards ember, so if any angular fans out there want to make a new convert instead here's your chance!

-igrowbeards

Christopher Groskopf

unread,
May 21, 2014, 4:26:07 PM5/21/14
to hack...@googlegroups.com
At the risk of being a jerk, here is my hard-won opinion about
client-side frameworks: Just. Don't.

After using them on a dozen projects (including PANDA) I can
confidently say that unless you're building a TODO list, they will
almost certainly cause more harm than good. Here are some things I've
learned that I've found can take the place of various parts of a
framework without all the things that suck about them:

Ideas:

* class encapsulation and inheritance - Javascript: The Good Parts by
Crockford is the place to start
* the module pattern - google it, wrap your head around the
variations, its a double win because other libs will make more sense
and you can apply it yourself
* other design patterns - esp. Singleton, PubSub, and Facade. For
larger projects Mixin and Controller too.
* code conventions - Crockford's or somebody else's (here is my
team's: https://github.com/nprapps/bestpractices/blob/master/javascript.md)
* code organization - IMHO, the single most valuable thing frameworks
give you is a motivation to put JS in multiple files, but you can also
just do that
* jquery's "on" - click is dead to me.
* client-side templating - see below

Libraries:

* jquery.js - always more
* underscore.js - functional programming and templating
* hasher.js - routing
* signals.js - custom event binding
* moment.js - dates the right way

All of these are lightweight libraries that will give you tools, but
won't force pain-in-the-ass patterns on you.

One man's two cents,
C
> --
> You received this message because you are subscribed to the Google Groups
> "Hack Tyler" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to hacktyler+...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

Justin Reese

unread,
May 21, 2014, 4:32:15 PM5/21/14
to hack...@googlegroups.com
Agree entirely. But since Chris did the hard work of typing, my agreement is more like one cent than two.

– Justin

Justin

unread,
May 21, 2014, 4:35:17 PM5/21/14
to hack...@googlegroups.com
I appreciate the voice of experience guys. A lot to research & ponder here :)

-- 
igrowbeards

On May 21, 2014 at 3:32:18 PM, Justin Reese (jus...@justinreese.com) wrote:

Agree entirely. But since Chris did the hard work of typing, my agreement is more like one cent than two.

- Justin

Christopher Groskopf

unread,
May 21, 2014, 4:49:21 PM5/21/14
to hack...@googlegroups.com
FWIW, Crockford is sitting on my shelf if you would like to borrow it
when I get back.

C

Justin

unread,
May 21, 2014, 4:52:35 PM5/21/14
to hack...@googlegroups.com
That’s a very kind offer which I will take you up on Señor.

Have you got somebody taking care of his food and water while you’re in Oakland though?

(Ugh that’s an awful joke…sorry…)

(not really though)

-- 
igrowbeards

Christopher Groskopf

unread,
May 21, 2014, 4:58:39 PM5/21/14
to hack...@googlegroups.com
I think he's less annoyed about the food situation then my chaining to
that shelf, to be honest.

C

Kevin Western

unread,
May 22, 2014, 10:46:30 AM5/22/14
to hack...@googlegroups.com
First I'd come to learn and understand JS pretty well or you'll find yourself with a mess of a client side framework regardless of which one you choose.

I work in Angular all day and here's my two cents:

I'm biased towards angular because it features:
 - Dependency Injection
 - Unit Testing
 - End to End testing
 - Will play well with Polymer (web components)
 - Is planning on playing with well web components
 - Has a third party mobile solution (http://ionicframework.com/)
 - No getters or setters (e.g. setTItle('blah')) to kick off updates
 - Will soon use Object.observe (a huge performance increase, and it's decently fast now!)

Igrowbeards

unread,
May 22, 2014, 2:19:34 PM5/22/14
to hack...@googlegroups.com
Thanks for the feedback Kevin - I'm glad to be getting a bit from each side here.

You're at google correct? What do you do there?

Justin
Sent from my phone
--
Reply all
Reply to author
Forward
0 new messages