

Show HN: I just released Sleek, a Ruby gem for doing simple analytics - goshakkk
http://goshakkk.name/introducing-sleek/

======
alexatkeplar
Thanks for sharing goshakkk - and for your blog posts on event analytics,
there's some good stuff there:

<http://goshakkk.name/analytics-analyzing-tracked-events/> |
<http://goshakkk.name/tracking-events-in-analytics-systems/>

Have tweeted about this from the Snowplow account...

------
skram
Thanks goshakkk, this looks nifty! I assume it takes care of the indexing and
all that jazz for you? How well does it scale? It looks very similar to
something's I'm already using but we use Mongo's map/reduce functionality
because it allows us to store count and other stats and build charts/etc off
them. I'm interested in your thoughts about that.

~~~
goshakkk
it doesn't _currently_ , but this project is only a day old. Indexing,
caching, and other stuff are on my to-do.

(By the way, m/r is _times_ slower than Aggregation Framework, especially for
simple cases or cases that fit AF's common use patterns. See
<http://goshakkk.name/analytics-analyzing-tracked-events/> for more details.)

------
prakster
Re Shopstream, seems like a terrific idea. How are you planning to market it?
Suggest you integrate with the Shopify platform first, as they really care
about and market the apps in their app store: <http://apps.shopify.com>

~~~
goshakkk
Hey. ShopStream is not my own application. It's the app I did for one of my
clients. BTW, it's integrated has Shopify integration and is listed here.
<http://apps.shopify.com/shopstream>

------
purephase
This is excellent. Thanks for sharing. I may look into forking to add DynamoDB
support through dynamoid.

I'm saying this without having gone through the code base to see what is
involved. ;)

------
mhodgson
Looks interesting. How does is compare with Cube?
<http://square.github.io/cube/>

~~~
goshakkk
I don't think it would be perfectly right to compare Sleek and Cube.

Sleek is a library that you can add to any Ruby project and use it right off.
Cube is a separate service that you need to setup and monitor.

My goal is to make Sleek more of an analytics framework, that can be tightly
integrated in your Ruby application and easily extended in Ruby.

Right now Sleek is very simplistic but it already does something that Cube
doesn't (relative timeframes, namespacing). I'm also planning on adding other
functionality that's missing from Cube (relative timeframes with proper
support of timezones, funnel analysis, ability to group_by metric values,
probably a nice wrapper around MongoDB Aggregation Framework.)

(I used Cube while developing ShopStream initially. As it later turned, using
it as a separate service wasn't really convenient to use because of how
ShopStream works and because of Cube limits. It'd be much easier to have
everything embedded in the Rails app and wrap MongoDB Aggregation Framework
myself. That's how ShopStream's own analytics library was born. But alas, it
was very tied to the way _we_ do things. I wanted to make something more
universal so I made Sleek.)

~~~
mmaia
Nice. Seems like a very good start for that framework.

It reminds me of <https://keen.io/> and looks like you have a lot of the stuff
there.

Keep the good work!

------
33degrees
Sweet, I've been needing something like this, and had been considering rolling
my own. This looks like it'll save me the trouble!

------
Daduck
Minor: Intorducing Sleek --> Introducing Sleek

~~~
goshakkk
Thanks, fixed.

------
diegogomes
awesome, up the good work.

