conductor 0.2.9 → 0.2.13

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc CHANGED
@@ -1,6 +1,18 @@
1
1
  = conductor
2
2
 
3
- Description goes here.
3
+ Conductor is the bastard child of a/b testing and personalization.
4
+ It throws everything you know about creating a web site our the window and lets you just "try stuff" without
5
+ ever having to worry about not maximing your site's "purpose." Have a new landing page? Just throw
6
+ it to the conductor.
7
+
8
+ Want to try different price points - conductor.
9
+
10
+ Different form designs? Conductor.
11
+
12
+ Conductor will rotate all alternatives through the mix and eventually settle on the top performing
13
+ of all, without you having to do anything other than just creating.
14
+
15
+ Think "intelligent A/B testing" on steriods.
4
16
 
5
17
  == Note on Patches/Pull Requests
6
18
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.9
1
+ 0.2.13
@@ -0,0 +1,7 @@
1
+ class CmigGenerator < Rails::Generator::Base
2
+ def manifest
3
+ record do |m|
4
+ m.migration_template 'conductor_migration.rb', 'db/migrate', :migration_file_name => "conductor_migration"
5
+ end
6
+ end
7
+ end
@@ -1,12 +1,11 @@
1
1
  #Creates the database tables, plus indexes, you'll need to use Conductor.
2
2
 
3
- class ConductorMigration<%= version -%>< ActiveRecord::Migration
3
+ class ConductorMigration < ActiveRecord::Migration
4
4
  def self.up
5
-
6
5
  create_table "conductor_daily_experiments", :force => true do |t|
7
6
  t.date "activity_date"
8
7
  t.string "group_name"
9
- t.string "option_name"
8
+ t.string "alternative"
10
9
  t.decimal "conversion_value", :precision => 8, :scale => 2
11
10
  t.integer "views"
12
11
  t.integer "conversions"
@@ -18,7 +17,7 @@ class ConductorMigration<%= version -%>< ActiveRecord::Migration
18
17
  create_table "conductor_raw_experiments", :force => true do |t|
19
18
  t.string "identity_id"
20
19
  t.string "group_name"
21
- t.string "option_name"
20
+ t.string "alternative"
22
21
  t.decimal "conversion_value", :precision => 8, :scale => 2
23
22
  t.datetime "created_at"
24
23
  t.datetime "updated_at"
@@ -27,7 +26,7 @@ class ConductorMigration<%= version -%>< ActiveRecord::Migration
27
26
 
28
27
  create_table "conductor_weight_histories", :force => true do |t|
29
28
  t.string "group_name"
30
- t.string "option_name"
29
+ t.string "alternative"
31
30
  t.decimal "weight", :precision => 8, :scale => 2
32
31
  t.datetime "computed_at"
33
32
  t.integer "launch_window"
@@ -37,14 +36,13 @@ class ConductorMigration<%= version -%>< ActiveRecord::Migration
37
36
 
38
37
  create_table "conductor_weighted_experiments", :force => true do |t|
39
38
  t.string "group_name"
40
- t.string "option_name"
39
+ t.string "alternative"
41
40
  t.decimal "weight", :precision => 8, :scale => 2
42
41
  t.datetime "created_at"
43
42
  t.datetime "updated_at"
44
43
  end
45
44
 
46
45
  add_index "conductor_weighted_experiments", ["group_name"], :name => "index_conductor_weighted_experiments_on_group_name"
47
-
48
46
  end
49
47
 
50
48
  def self.down
data/init.rb CHANGED
@@ -1,4 +1,2 @@
1
- require File.dirname(__FILE__) + '/lib/conductor/models'
1
+ require File.join(File.dirname(__FILE__), 'rails', 'init')
2
2
 
3
- # ActionController::Base.send :include, AbingoSugar
4
- # ActionView::Base.send :include, AbingoViewHelper
data/lib/conductor.rb CHANGED
@@ -1,6 +1,9 @@
1
1
  require 'conductor/experiment'
2
2
  require 'conductor/roll_up'
3
3
  require 'conductor/weights'
4
+ require 'conductor/experiment/raw'
5
+ require 'conductor/experiment/daily'
6
+ require 'conductor/experiment/weight'
4
7
 
5
8
  class Conductor
6
9
  MAX_WEIGHTING_FACTOR = 1.25
@@ -11,7 +11,7 @@
11
11
  # conversions :integer
12
12
  #
13
13
 
14
- class Conductor::DailyExperiment < ActiveRecord::Base
14
+ class Conductor::Experiment::Daily < ActiveRecord::Base
15
15
  set_table_name "conductor_daily_experiments"
16
16
  named_scope :since, lambda { |a_date| { :conditions => ['activity_date >= ?',a_date] }}
17
17
  end
@@ -9,6 +9,6 @@
9
9
  # computed_at :datetime
10
10
  #
11
11
 
12
- class Conductor::WeightHistory < ActiveRecord::Base
12
+ class Conductor::Experiment::History < ActiveRecord::Base
13
13
  set_table_name "conductor_weight_histories"
14
14
  end
@@ -11,7 +11,7 @@
11
11
  # updated_at :datetime
12
12
  #
13
13
 
14
- class Conductor::RawExperiment < ActiveRecord::Base
14
+ class Conductor::Experiment::Raw < ActiveRecord::Base
15
15
  set_table_name "conductor_raw_experiments"
16
16
 
17
17
  validates_presence_of :group_name, :option_name
@@ -10,6 +10,6 @@
10
10
  # updated_at :datetime
11
11
  #
12
12
 
13
- class Conductor::WeightedExperiment < ActiveRecord::Base
13
+ class Conductor::Experiment::Weight < ActiveRecord::Base
14
14
  set_table_name "conductor_weighted_experiments"
15
15
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 9
9
- version: 0.2.9
8
+ - 13
9
+ version: 0.2.13
10
10
  platform: ruby
11
11
  authors:
12
12
  - Noctivity
@@ -32,15 +32,15 @@ files:
32
32
  - README.rdoc
33
33
  - Rakefile
34
34
  - VERSION
35
- - generators/conductor_migration/conductor_migration_generator.rb
36
- - generators/conductor_migration/templates/conductor_migration.rb
35
+ - generators/cmig/cmig_generator.rb
36
+ - generators/cmig/templates/migration.rb
37
37
  - init.rb
38
38
  - lib/conductor.rb
39
39
  - lib/conductor/experiment.rb
40
- - lib/conductor/models/daily_experiment.rb
41
- - lib/conductor/models/raw_experiment.rb
42
- - lib/conductor/models/weight_history.rb
43
- - lib/conductor/models/weighted_experiment.rb
40
+ - lib/conductor/experiment/daily.rb
41
+ - lib/conductor/experiment/history.rb
42
+ - lib/conductor/experiment/raw.rb
43
+ - lib/conductor/experiment/weight.rb
44
44
  - lib/conductor/roll_up.rb
45
45
  - lib/conductor/weights.rb
46
46
  - test/helper.rb
@@ -1,10 +0,0 @@
1
- class ConductorMigrationGenerator < Rails::Generator::Base
2
- require 'conductor'
3
-
4
- def manifest
5
- record do |m|
6
- m.migration_template 'conductor_migration.rb', 'db/migrate',
7
- :assigns => {:version => Conductor.MAJOR_VERSION.gsub(".", "")}
8
- end
9
- end
10
- end