473,698 Members | 2,521 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

A/B split testing on PHP built website

Hello guys,

I want to do kinda of an A/B split testing on a website I run. I just
created a new version but I need to keep both version running and see
which one will perform better. First, I'm not sure if I'm in the right
group.
How can I randomly let a user enter from the index.php page and keep
the same URL. So the splitting is being done in the backend, I don't
want the users to see for example in the url /new/index.php and /
index.php.

Thank you.
Sep 27 '08
21 2510
On Sep 28, 3:41*pm, Jerry Stuckle <jstuck...@attg lobal.netwrote:
Fad¥ wrote:
On Sep 28, 9:47 am, Jerry Stuckle <jstuck...@attg lobal.netwrote:
Fad¥ wrote:
On Sep 27, 11:12 pm, Jerry Stuckle <jstuck...@attg lobal.netwrote:
Geoff Berrow wrote:
Message-ID:
<7d4a2c89-d9ad-44c8-a168-9a9d71e44...@e3 9g2000hsf.googl egroups.com>fro m
Fad¥ contained the following:
>Use include() to randomly include either A or B
Aha I see what you mean. But let's say each of the versions are ina
folder (new and old folders). I created index.php that would randomly
give access the index.php in the new and old folders?
Yes. *You'll need to use the <basetag if you are using folders.
It doesn't help. * By the time the <basetag takes effect, the page is
already loaded.
--
============= =====
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@att global.net
============= =====
well sorry if i didn't make myself clear :S i appreciate the help :)
I'm going to explain the scenario. I have the new website in the /
wwwroot/ folder and the old one in a folder inside the new website
called v2 because the new site it's the v3. I want any user when he
typeswww.mydom ain.comforexamp le to go randomly either to wwwroot/
index.php or to wwwroot/v2/index.php. Each one of the sites would have
different analytics so that i can see the performance of both (A/B
split testing).
Please let me know if I need to clarify even more.
thanks a lot!!
As I said - you can get a load balancer and place them on two different
servers, then compare the statistics between them. *Or, you can do like
Geoff suggested and include one set of files or the other.
But you never told us WHY you need such a thing. *Is the current site
having performance problems?
--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attgl obal.net
=============== ===
Well the old website was not performing well, up to the client's
expectation so we made a new version of the site. But still we need to
have both online to measure the performance of the new site.
First, I thought it would be something easy. Like create an index.php
file that would randomly formard the user request to either /v2/
index.php (old) or /v3/index.php (old). But the issue here is that
even with this forward I still want to user to see /index.php instead
of /v2 or v3/index.php and the same for all the other files in both
folders. So I want it to be transparent for the users.

Why wasn't the old site performing well? *Did you do any analysis to see
what the problem was, or did you just write a new site, hoping it would
perform better?
What do you think? can it be done without a load balancer and the use
of 2 different servers?
As I understood Geoff mentioned the use of include. So if I understand
correctly i would have to create for each file in the folders v2/v3 a
file that would be the root folder and that would randomly include v2
or v3?
Thanks again!

Not unless you use the include() method Geoff indicated.

--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attgl obal.net
=============== ===
Well, I'm not the one in charge for analyzing the performance of the
site. My client wants to do the A/B split testing. Obviously, he
wasn't satisfied by the performance of the old web site in a marketing
perspective.
Anyway thanks a lot for your thoughts. I really appreciate it.
Cheers
Sep 29 '08 #11
Fad¥ wrote:
On Sep 28, 3:41 pm, Jerry Stuckle <jstuck...@attg lobal.netwrote:
>Fad¥ wrote:
>>On Sep 28, 9:47 am, Jerry Stuckle <jstuck...@attg lobal.netwrote:
Fad¥ wrote:
On Sep 27, 11:12 pm, Jerry Stuckle <jstuck...@attg lobal.netwrote:
>Geoff Berrow wrote:
>>Message-ID:
>><7d4a2c 89-d9ad-44c8-a168-9a9d71e44...@e3 9g2000hsf.googl egroups.comfrom
>>Fad¥ contained the following:
>>>>Use include() to randomly include either A or B
>>>Aha I see what you mean. But let's say each of the versions are in a
>>>folder (new and old folders). I created index.php that would randomly
>>>give access the index.php in the new and old folders?
>>Yes. You'll need to use the <basetag if you are using folders.
>It doesn't help. By the time the <basetag takes effect, the page is
>already loaded.
>--
>========== ========
>Remove the "x" from my email address
>Jerry Stuckle
>JDS Computer Training Corp.
>jstuck...@ attglobal.net
>========== ========
well sorry if i didn't make myself clear :S i appreciate the help :)
I'm going to explain the scenario. I have the new website in the /
wwwroot/ folder and the old one in a folder inside the new website
called v2 because the new site it's the v3. I want any user when he
typeswww.my domain.comforex ample to go randomly either to wwwroot/
index.php or to wwwroot/v2/index.php. Each one of the sites would have
different analytics so that i can see the performance of both (A/B
split testing).
Please let me know if I need to clarify even more.
thanks a lot!!
As I said - you can get a load balancer and place them on two different
servers, then compare the statistics between them. Or, you can do like
Geoff suggested and include one set of files or the other.
But you never told us WHY you need such a thing. Is the current site
having performance problems?
--
============ ======
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@at tglobal.net
============ ======
Well the old website was not performing well, up to the client's
expectation so we made a new version of the site. But still we need to
have both online to measure the performance of the new site.
First, I thought it would be something easy. Like create an index.php
file that would randomly formard the user request to either /v2/
index.php (old) or /v3/index.php (old). But the issue here is that
even with this forward I still want to user to see /index.php instead
of /v2 or v3/index.php and the same for all the other files in both
folders. So I want it to be transparent for the users.
Why wasn't the old site performing well? Did you do any analysis to see
what the problem was, or did you just write a new site, hoping it would
perform better?
>>What do you think? can it be done without a load balancer and the use
of 2 different servers?
As I understood Geoff mentioned the use of include. So if I understand
correctly i would have to create for each file in the folders v2/v3 a
file that would be the root folder and that would randomly include v2
or v3?
Thanks again!
Not unless you use the include() method Geoff indicated.

--
============== ====
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstuck...@attg lobal.net
============== ====

Well, I'm not the one in charge for analyzing the performance of the
site. My client wants to do the A/B split testing. Obviously, he
wasn't satisfied by the performance of the old web site in a marketing
perspective.
Anyway thanks a lot for your thoughts. I really appreciate it.
Cheers
Your job as a consultant is to fix his problem.

As I said - you can do the A/B split. It should only cost him a few
thousand dollars for six months forth of analysis (the least I would say
would be valid).

--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attgl obal.net
=============== ===

Sep 29 '08 #12
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>Well, I'm not the one in charge for analyzing the performance of the
site. My client wants to do the A/B split testing. Obviously, he
wasn't satisfied by the performance of the old web site in a marketing
perspective.
Anyway thanks a lot for your thoughts. I really appreciate it.
Cheers

Your job as a consultant is to fix his problem.

As I said - you can do the A/B split. It should only cost him a few
thousand dollars for six months forth of analysis (the least I would say
would be valid).
He's trying to analyse performance from a marketing perspective not a
technical perspective. A/B testing may well be the way to go but you
could also try other market research techniques such as focus groups.

Website optimiser from Google allows this kind of testing. I've not
tried it so I don't know how transparent it is to the user. Here is a
tutorial
http://www.google.com/support/conver...y?answer=77161
--
Geoff Berrow 011000100110110 0010000000110
001101101011011 001000110111101 100111001011
100110001101101 111001011100111 010101101011
http://slipperyhill.co.uk - http://4theweb.co.uk
Sep 29 '08 #13
Geoff Berrow wrote:
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>>Well, I'm not the one in charge for analyzing the performance of the
site. My client wants to do the A/B split testing. Obviously, he
wasn't satisfied by the performance of the old web site in a marketing
perspective .
Anyway thanks a lot for your thoughts. I really appreciate it.
Cheers
Your job as a consultant is to fix his problem.

As I said - you can do the A/B split. It should only cost him a few
thousand dollars for six months forth of analysis (the least I would say
would be valid).

He's trying to analyse performance from a marketing perspective not a
technical perspective. A/B testing may well be the way to go but you
could also try other market research techniques such as focus groups.

Website optimiser from Google allows this kind of testing. I've not
tried it so I don't know how transparent it is to the user. Here is a
tutorial
http://www.google.com/support/conver...y?answer=77161
Which could be - and is completely the wrong way to analyze a technical
issue.

I wonder how the customer got the idea to do such a thing. It isn't
normally what a non-technical person would consider.

--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attgl obal.net
=============== ===

Sep 29 '08 #14
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>Which could be - and is completely the wrong way to analyze a technical
issue.

What's technical about it? The A/B testing can show interesting results
as the tutorial points out. They have a case study where they have a
page displaying a picture of an adviser and one without. They found out
that people responded much better to the one without the picture,
contrary to what one might expect.

These are not technical issues. It's to do with psychology, aesthetics,
useability, customer profiling etc etc. Admittedly, off topic for this
group.
--
Geoff Berrow 011000100110110 0010000000110
001101101011011 001000110111101 100111001011
100110001101101 111001011100111 010101101011
http://slipperyhill.co.uk - http://4theweb.co.uk
Sep 29 '08 #15
Geoff Berrow wrote:
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>Which could be - and is completely the wrong way to analyze a technical
issue.


What's technical about it? The A/B testing can show interesting results
as the tutorial points out. They have a case study where they have a
page displaying a picture of an adviser and one without. They found out
that people responded much better to the one without the picture,
contrary to what one might expect.

These are not technical issues. It's to do with psychology, aesthetics,
useability, customer profiling etc etc. Admittedly, off topic for this
group.
You really should READ the thread before responding.

Finding the reason for poor performance is 100% technical. It has
nothing to do with A/B testing - especially the human interaction study
you quoted.

Performance has EVERYTHING to do with technical issues!

--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attgl obal.net
=============== ===

Sep 29 '08 #16
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>You really should READ the thread before responding.
I have read it. Admittedly I fitted in a trip to Northern Ireland in
between so I may not have my eye completely on the ball but I think I
know what the OP is after.
>
Finding the reason for poor performance is 100% technical. It has
nothing to do with A/B testing - especially the human interaction study
you quoted.

Performance has EVERYTHING to do with technical issues!
I keep feeling we are talking at cross purposes here. The way I'm
reading it the OP is using the word 'performance' to mean the results he
gets from the site. We don't know how he is measuring this. It may be
number of hits, conversion of enquiries to sales, number of sign ups -
we don't know, but the OP has said he means performance in marketing
terms.

But very often the word 'performance' is used in other ways, the time
taken to fetch a set of results for instance.

Of course, it may be that people do not buy from the site because it
takes 30 seconds for the shopping cart to refresh. I'll agree that
doing an A/B test on the colour of the front page will be a complete
waste of time in this scenario.
--
Geoff Berrow 011000100110110 0010000000110
001101101011011 001000110111101 100111001011
100110001101101 111001011100111 010101101011
http://slipperyhill.co.uk - http://4theweb.co.uk
Sep 30 '08 #17
Geoff Berrow wrote:
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>You really should READ the thread before responding.

I have read it. Admittedly I fitted in a trip to Northern Ireland in
between so I may not have my eye completely on the ball but I think I
know what the OP is after.
>Finding the reason for poor performance is 100% technical. It has
nothing to do with A/B testing - especially the human interaction study
you quoted.

Performance has EVERYTHING to do with technical issues!

I keep feeling we are talking at cross purposes here. The way I'm
reading it the OP is using the word 'performance' to mean the results he
gets from the site. We don't know how he is measuring this. It may be
number of hits, conversion of enquiries to sales, number of sign ups -
we don't know, but the OP has said he means performance in marketing
terms.

But very often the word 'performance' is used in other ways, the time
taken to fetch a set of results for instance.
To virtually anyone else, "Performanc e" is how fast the site is
responding. That has been the definition of "Performanc e" when it comes
to code for the over 40 years I've been programming.
Of course, it may be that people do not buy from the site because it
takes 30 seconds for the shopping cart to refresh. I'll agree that
doing an A/B test on the colour of the front page will be a complete
waste of time in this scenario.
Of course, if the op wants to redefine the meaning of "Performanc e", he
is free to do so. But he shouldn't expect clear responses when he does.
--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attgl obal.net
=============== ===

Sep 30 '08 #18
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>To virtually anyone else, "Performanc e" is how fast the site is
responding. That has been the definition of "Performanc e" when it comes
to code for the over 40 years I've been programming.
Ah well,prior to programming, I had quite a lengthy spell in Marketing
and PR so my definition is not so fixed.
>
>Of course, it may be that people do not buy from the site because it
takes 30 seconds for the shopping cart to refresh. I'll agree that
doing an A/B test on the colour of the front page will be a complete
waste of time in this scenario.

Of course, if the op wants to redefine the meaning of "Performanc e", he
is free to do so. But he shouldn't expect clear responses when he does.
Agreed, not in a technical group like this one. But it does show that I
did indeed read the thread. ;-)
--
Geoff Berrow 011000100110110 0010000000110
001101101011011 001000110111101 100111001011
100110001101101 111001011100111 010101101011
http://slipperyhill.co.uk - http://4theweb.co.uk
Sep 30 '08 #19
Geoff Berrow wrote:
Message-ID: <gb**********@r egistered.motza rella.orgfrom Jerry Stuckle
contained the following:
>To virtually anyone else, "Performanc e" is how fast the site is
responding. That has been the definition of "Performanc e" when it comes
to code for the over 40 years I've been programming.

Ah well,prior to programming, I had quite a lengthy spell in Marketing
and PR so my definition is not so fixed.
>>Of course, it may be that people do not buy from the site because it
takes 30 seconds for the shopping cart to refresh. I'll agree that
doing an A/B test on the colour of the front page will be a complete
waste of time in this scenario.
Of course, if the op wants to redefine the meaning of "Performanc e", he
is free to do so. But he shouldn't expect clear responses when he does.

Agreed, not in a technical group like this one. But it does show that I
did indeed read the thread. ;-)
Ah, then I understand your position, and I apologize for the remark
about not reading the thread.

However, if he wants to do something like that, a random A/B split is
not a good way to go, either. Rather, he should have two sites and have
them linked together so people can switch back and forth between the
two. Solicit opinions from people as to which they like better, and
monitor sales from both sites.

It would provide much more information than trying to pull statistics
from and A/B split.

--
=============== ===
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
js*******@attgl obal.net
=============== ===

Sep 30 '08 #20

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
31176
by: Stu Cazzo | last post by:
I have the following: String myStringArray; String myString = "98 99 100"; I want to split up myString and put it into myStringArray. If I use this: myStringArray = myString.split(" "); it will split myString up using the delimiter of 1 space so that
2
12835
by: SL_McManus | last post by:
Hi All; I am fairly new to Perl. I have a file with close to 3000 lines that I would like to split out in a certain way. I would like to put the record type starting in column 1 for 2 spaces, the employer code in column 23 for 29 spaces and employer description in column 53 for 30 spaces. I have tried modifying an existing file with no real success. I haven't found anything that specifically answers my question. Any guidance would be...
2
2217
by: middletree | last post by:
Not really sure what the problem is, perhaps I am using split wrong. Page should get form fields form previous page and some of them will go into a tabel called Personal. Other items, to resolve a many-to-many relationship, will go into a table called PersonalPeople, which consists of 2 fields: the PK's from the People table and the Perosnal table. I decided to have the 30 or so checkboxes on the first page all have the same name, as...
2
1391
by: Jay | last post by:
Well this is my function to split the data into its own lines Sub preSift(ByVal input As String) Dim spl() As String spl = New String() {} spl = Split(input, ControlChars.NewLine) ', , CompareMethod.Text)
2
2655
by: Ruud Ortmans | last post by:
Hi, I developed an "Contact Us" - page with VS 2005 and ASP.NET 2.0. By clicking the send button the following code is executed: Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); MailMessage mailBericht = new MailMessage(txtbxEmailadres.Text.Trim(),
9
2313
by: martinskou | last post by:
Hi, I'm looking for something like: multi_split( 'a:=b+c' , ) returning: whats the python way to achieve this, preferably without regexp? Thanks.
8
1434
by: Eric | last post by:
I've spent some time this morning looking into unit testing frameworks for ASP.NET 2.0, but none seem satisfactory. I don't have Visual Studio Team Edition, so apparently I can't use Microsoft's solution, and TestDriven.net has no support for web applications. The best I have found is to use NUnit on the .dll that is created when the site is published. However, I have found that this .dll is not updated with each publish, instead new...
2
2847
by: dmeglio | last post by:
Hello, I've just ported an ASP.NET project from VS 2003 to 2008. In 2003, I was using NUnit to test. Under 2008, I don't get a single DLL for my website, so I can't use NUnit anymore. Additionally, I'd prefer to use the built in VS2008 Pro tools. I don't want to actually test ASPX functionality, rather I have several classes that are in my App_Code folder. I can't build a "test project" because there is no DLL for me to reference so...
0
1241
by: Alexnb | last post by:
Timothy Grant wrote: well I can tel you it didn't work for me. In fact I didn't see the code you posted on there, I ended up figuring it out on my own with a little help from the missing manual for urllib2. Also, being rude is kinda stupid because you don't have to help in the first place... -- View this message in context: http://www.nabble.com/Testing-for-connection-to-a-website-tp18473382p18478103.html Sent from the Python -...
1
8904
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
7741
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
6531
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5867
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4372
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
4624
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3052
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
2341
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2007
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.