Last active
December 14, 2015 03:29
-
-
Save sveinn/5021006 to your computer and use it in GitHub Desktop.
LA RubyConf 2013
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Refactoring Fat Models with Patterns: (http://www.larubyconf.com/proposals/43) | |
============================================================================== | |
@brynary | |
@codeclimate | |
codeclimate.com | |
http://blog.codeclimate.com/blog/2012/10/17/7-ways-to-decompose-fat-activerecord-models/ | |
github.com/codeclimate/refactoring-fat-models | |
https://github.com/solnic/virtus | |
1 value objects # data clumps, attribute logic. if lot of methods have the same prefix | |
2 service objects # short lifecycle, coordinating multiple models, external service interaction. | |
3 form objects # one form, multiple models. create and update flows. use the Virtus gem. | |
4 query objects # first class objects encourage refactoring | |
5 view objects # .. (read about the two-step view pattern) | |
6 policy objects # use if you have complex reads, ancillary reads. whatever that means. | |
7 decorators # yeah. | |
Impressive Ruby Productivity with Vim and Tmux: (http://www.larubyconf.com/proposals/24) | |
======================================================================================== | |
brew install tmux | |
https://github.com/spastorino/vinimum # vim plugins | |
http://goo.gl/98m56 | |
Dude where is my scalable API? (http://www.larubyconf.com/proposals/62) | |
======================================================================= | |
@eljuanchosf | |
http://kr.github.com/beanstalkd # Fast job queueing - Beanstalk | |
Varnish-link # request caching | |
Ilya Grigorik (www.igvita.com/) # Highly recommended blog | |
How to make the most of a conference (http://www.larubyconf.com/proposals/84) | |
============================================================================= | |
Corey Haines, Corey Haines. @coreyhaines | |
http://www.MercuryApp.com | |
http://cleancoders.com | |
http://hugboard.com | |
http://coderetreat.org | |
The Pragmatic Programmer by Dave Thomas | |
Smalltalk Dave Thomas | |
Jim Weirick | |
Python for Ruby (http://www.larubyconf.com/proposals/23) | |
============================================================================= | |
@panopticdev | |
@facebiff | |
panopticdev.com | |
leone.panopticdev.com | |
Arrays are Lists | |
Hashes are Dicts | |
map(function,list) | |
how python is different: | |
------------------------ | |
no blocks. but has function decorators which are similar to blocks. | |
first-class functions - functions as variables. | |
one-line lambdas by default. | |
[1,2,3] # a list | |
(1,2,3) # a tuple - immutable | |
from urllib2 import urlopen # select what you import from a lib, 'explicit is better than implicit' | |
false, None, [],(),{},'',0 all evaluate to false | |
doesn't have enumerables, has built-in functions # not as convenient as Enumerable | |
no case statements | |
no module mixins. | |
can't open a class and extend it. can't extend built-in types. | |
numpy, scipy # widely used scientific calculation libs, that ruby doesn't really have | |
python on windows is generally easier | |
community is bigger | |
"harder to write code that pisses of other developers in python" | |
Backbone.js, Jasmine and Rails: The Lust Story (http://www.larubyconf.com/proposals/8) | |
====================================================================================== | |
. | |
Why I like JRuby (http://www.larubyconf.com/proposals/80) | |
========================================================= | |
@msfionatay, pivotal | |
http://github.com/GreenplumChorus/chorus | |
around since 2002, traction in prods since 2005 | |
good: | |
java libraries: NLP | |
actionmailer doesn't provide fine grained control. JavaMail allegedly better | |
directly call java code from ruby | |
other languages built on jvm: scala, clojure | |
might be ruby gems that wrap the java libs if you are lucky | |
leverage existing java deployment infrastructure | |
bad: | |
gem availability. gems with c-extensions don't work with j-ruby | |
long app startup time. inhibits TDD. difficult to set up Spork with jruby | |
ugly: | |
concurrency. jruby has real threads. mri has threads with global interpreter lock. | |
- non-thread safe libraries results in bugs - rails, airbrake. | |
It's not your test framework, it's you (http://www.larubyconf.com/proposals/74) | |
=============================================================================== | |
jbehave # first BDD tool out there | |
rbehave # ruby | |
story runner /rspec | |
gherkin # state diagrams | |
given (start state) | |
when (event) | |
then (state transition) | |
summary | |
fight pain | |
reveal intent | |
Recommendation Systems Using Ruby (http://www.larubyconf.com/proposals/54) | |
========================================================================== | |
@rweald | |
@sharethrough | |
[email protected] | |
two main categories: | |
1. collaborative Filtering (nearest neighbor) | |
memory based | |
similarity functions | |
Pearson Correlation Coefficient | |
Cosine Similarity | |
model based | |
2. content based - classification | |
k-means clustering | |
3. hybrid of 1. and 2. | |
either combine them, or feed one into each other | |
evaluate recommendation quality | |
precision vs recall # textbook | |
clicks and click through rate # actual data | |
thumbs up thumbs down # user feedback | |
apache mahout | |
jruby mahout gem | |
sciruby | |
recommenderlab for R | |
recommender systes: an introduction | |
:amazon.com recommendation: item to item collaborative filtering" | |
grouplens an open architecture.. | |
Keynote, Ron Evans | |
================== | |
@hybrid_group | |
https://github.com/hybridgroup/artoo | |
http://www.gosphero.com/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment