SlideShare uma empresa Scribd logo
1 de 77
Baixar para ler offline
this space left intentionally blank
why perl is awesome and
all other languages suck
         Mike Astle
    flamebait@lokku.com
from mash-up to business

    Mike Astle - Lokku Ltd.
    Google Developer Day
    31 May 2007 - London
i like questions
Milestones
•   Start dev April 2006
•   Launch London June 2006
•   Launch UK Sept 2006
•   Launch Spain May 2007
Numbers
• In the UK, have 850,000 listings
  refreshed continually
• Boils down to about 500,000 properties
• 100,000+ users per month
• 4 programmers
• No dedicated operations staff
Houses on a map…so what?
this is harder than it looks
The Plan
• Talk about some of the technical
  decisions we made at Nestoria
• Go over a few challenges that we have
  faced
• Hopefully there are lessons to learn
  from our experiences
first, you design
Things to worry about
•   Architecture
•   Services vs. APIs
•   How to scale?
•   i18n
•   Future products
then you choose a platform
MS vs. Everything Else
Java?
That Leaves LAMP
PHP?
Ruby?

LAMR?
Python?
Perl
Perl


Utility Belt == CPAN
Apache
MySQL
GNU/Linux
 (Debian)
now choose a
development environment
Source Control
• SVN…duh
• Does anybody use CVS anymore?
• Love the trac
Coders
• A few veterans
• As many interns / junior coders as fit in
  the room
Highly Collaborative
(but not XP or Agile)
Emphasis
• Collective decision-making
• Individual responsibility for deadlines
• Many small success rather than few
  large projects
Why write tests?
• Find bugs, of course
• Increase confidence to make changes
  to unfamiliar systems or libraries
• Promote good design / expose bad
  design
Design
• Informal process (no UML, minimal
  design patterns)
• Concentrate on the things that will really
  hurt - e.g. i18n
• Not everything has to be an object
Documentation
• POD for interfaces
• twiki for systems
• Schedule regular refreshers
Outsource
• If you can spec it faster than you can
  write it, consider farming it out
• Many, many site full of hungry coders
• Have had good results with
  scriptlance.com but there are lots of
  others out there
how to deploy?
Virtualization?
• Sounds like voodoo to me
• Extra layer to worry about
• Easy enough to do everything in user
  space
Wigwam


•   12 subdomains
•   Live data
•   22 services
•   Many playpens per box
•   Releases several times a week
big ISP vs. small ISP
•   Bigger - more consistent
•   Smaller - more personal
•   Bigger - discrete choices
•   Smaller - continuous advice

• We went small
Hardware
• Know your downtime limits
• Be reasonable!
• Load balancing - expensive and
  complex - we do it with DNS through a
  vendor
• Have a failure plan
The
Hawkeye
Principle
but is anybody using it?
Logging
• Need your own, and it needs to be
  flexible
• Use the free tools as a sanity check
Reporting
• An important area of expertise, not an
  annoying afterthought
• Glossary
• Every mean needs a variance
• A/B Testing (a.k.a Bucket Testing) is
  hard to do right
Also…
• Build tools for ad hoc queries, they
  >will< get used
• Keep an audit trail of changes
• Effective tools for drilling down on
  sessions allows non-techs to help
  debugging
problems we have solved
http://www.nestoria.co.uk/covent-
 garden/flat/buy/bedrooms-2/maxprice-
1000000/minprice-250000/bathrooms-2
•   Alderly Edge => Alderley Edge
•   Bayswater London => Bayswater
•   Berkhampsted => Berkhamsted
•   Birminham => Birmingham
•   Bletchingly => Bletchingley
•   Broxbourne Station => Broxbourne
•   Cambuslank => Cambuslang
•   Canary Warf => Canary Wharf
•   Claphamjuction => Clapham Junction
•   Covent Garden London => Covent
    Garden
Geocoding
• Transform address into lat/long
  coordinates
• 1,000+ calls a minute
• Very high data variance (few cache hits)
• Royal Mail data for UK
• Teleatlas data for Spain
•   Albert Villas, Gilbert Mews, LEIGHTON BUZZARD,
•   Bedfordshire, LU7 1NF
•   Lake Lock Drive, Wakefield West Yorkshire
•   Church Lane, London
•   C ELMINGTON ROAD, LONDON
•   Fountain Road (Flat 2), Edgbaston
•   London SE18, UK
•   Lee, London, UK
•   Free Trade Wharf, 340 The Highway,
    Wapping/Limehouse London
•   Stunning 3 Storey Contemporary Barn Conversion In
    The Popular Village Of Utkinton
•   A.4-1 GREAT NORTHERN TOWER,WATSON
    STREET,CITY CENTRE,
•    MANCHESTER GREATER MANCHESTER
•   15, ASTLEY HOUSE, LONDON
(((^[BEGLMNS][1-9]d?) | (^W[2-9] ) | ( ^( A[BL] | B[ABDHLNRST] |
C[ABFHMORTVW] | D[ADEGHLNTY] | E[HNX] | F[KY] | G[LUY] | H[ADGPRSUX] |
I[GMPV] | JE | K[ATWY] | L[ADELNSU] | M[EKL] | N[EGNPRW] | O[LX] |
P[AEHLOR] | R[GHM] | S[AEGKL-PRSTWY] | T[ADFNQRSW] | UB | W[ADFNRSV] |
YO | ZE ) dd?) | (^W1[A-HJKSTUW0-9]) | (( (^WC[1-2]) | (^EC[1-4]) |
(^SW1) ) [ABEHMNPRVWXY] ) ) (s*)? ([0-9][ABD-HJLNP-UW-Z]{2}))
what next?
Future Projects
• Expose more data via API (e.g.
  historical aggregate data)
• Implicit personalisation (the system
  learns from users)
• More international expansion
• Systemic testing to improve user
  experience
like what you see?
http://www.lokku.com/jobs
thanks!

            astle@lokku.com
          http://www.lokku.com
        http://www.nestoria.co.uk
         http://www.nestoria.es
http://www.lokku.com/lpw06_geocoding/
 http://www.lokku.com/lpw06_wigwam/

Mais conteúdo relacionado

Semelhante a Google Developer Day 2007 - Nestoria: From Mash-up To Business

[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
Scott Abel
 
Variables & Expressions
Variables & ExpressionsVariables & Expressions
Variables & Expressions
Rich Price
 
O365Engage17 - How to avoid the 5 stages of grief when moving to office 365
O365Engage17 - How to avoid the 5 stages of grief when moving to office 365O365Engage17 - How to avoid the 5 stages of grief when moving to office 365
O365Engage17 - How to avoid the 5 stages of grief when moving to office 365
NCCOMMS
 

Semelhante a Google Developer Day 2007 - Nestoria: From Mash-up To Business (20)

ILUG 2008 Templates, Templates Everywhere
ILUG 2008 Templates, Templates EverywhereILUG 2008 Templates, Templates Everywhere
ILUG 2008 Templates, Templates Everywhere
 
Retooling the world wide web for its original purpose
Retooling the world wide web for its original purposeRetooling the world wide web for its original purpose
Retooling the world wide web for its original purpose
 
The 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEPThe 7 Sins of Software Engineers in HEP
The 7 Sins of Software Engineers in HEP
 
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
[Workshop] Analyzing Your Deliverables: Developing the Optimal Documentation ...
 
Analyzing Your Deliverables: Developing the Optimal Documentation Library
Analyzing Your Deliverables: Developing the Optimal Documentation LibraryAnalyzing Your Deliverables: Developing the Optimal Documentation Library
Analyzing Your Deliverables: Developing the Optimal Documentation Library
 
Even More Agile
Even More AgileEven More Agile
Even More Agile
 
Variables & Expressions
Variables & ExpressionsVariables & Expressions
Variables & Expressions
 
Front-end Web Dev (HK) Info Session
Front-end Web Dev (HK) Info SessionFront-end Web Dev (HK) Info Session
Front-end Web Dev (HK) Info Session
 
re7olabini
re7olabinire7olabini
re7olabini
 
PostgreSQL Conference: West 08
PostgreSQL Conference: West 08PostgreSQL Conference: West 08
PostgreSQL Conference: West 08
 
Ignite Orlando - Act 2
Ignite Orlando - Act 2Ignite Orlando - Act 2
Ignite Orlando - Act 2
 
Smoothing the Continuous Delivery Path - A Tale of Two Teams
Smoothing the Continuous Delivery Path - A Tale of Two TeamsSmoothing the Continuous Delivery Path - A Tale of Two Teams
Smoothing the Continuous Delivery Path - A Tale of Two Teams
 
FOSDEM 2009 Thunderbird 3 talk
FOSDEM 2009 Thunderbird 3 talkFOSDEM 2009 Thunderbird 3 talk
FOSDEM 2009 Thunderbird 3 talk
 
Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.
Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.
Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.
 
Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.
Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.
Coolblue Behind the Scenes | Niels Abels - Continuous Delivery.
 
DjangoCon09: No! Bad Pony!
DjangoCon09: No! Bad Pony!DjangoCon09: No! Bad Pony!
DjangoCon09: No! Bad Pony!
 
Kill Your Darlings: Solving Design by Throwing Away Your Prototypes
Kill Your Darlings: Solving Design by Throwing Away Your PrototypesKill Your Darlings: Solving Design by Throwing Away Your Prototypes
Kill Your Darlings: Solving Design by Throwing Away Your Prototypes
 
O365Engage17 - How to avoid the 5 stages of grief when moving to office 365
O365Engage17 - How to avoid the 5 stages of grief when moving to office 365O365Engage17 - How to avoid the 5 stages of grief when moving to office 365
O365Engage17 - How to avoid the 5 stages of grief when moving to office 365
 
Working With People Adl Uni
Working With People Adl UniWorking With People Adl Uni
Working With People Adl Uni
 
Jonathon Rochelle @ FOWA Feb 07
Jonathon Rochelle @ FOWA Feb 07Jonathon Rochelle @ FOWA Feb 07
Jonathon Rochelle @ FOWA Feb 07
 

Mais de lokku

Css sprite_maker-1
Css  sprite_maker-1Css  sprite_maker-1
Css sprite_maker-1
lokku
 
The Nestoria GeoChallenge
The Nestoria GeoChallengeThe Nestoria GeoChallenge
The Nestoria GeoChallenge
lokku
 

Mais de lokku (20)

Geocoding Overview
Geocoding OverviewGeocoding Overview
Geocoding Overview
 
OpenCage Data and sustainable business models for open data
OpenCage Data and sustainable business models for open data OpenCage Data and sustainable business models for open data
OpenCage Data and sustainable business models for open data
 
Presenting the OpenCage Geocoder at #londonapi 17 Sept 2014
Presenting the OpenCage Geocoder at #londonapi 17 Sept 2014Presenting the OpenCage Geocoder at #londonapi 17 Sept 2014
Presenting the OpenCage Geocoder at #londonapi 17 Sept 2014
 
A living hell - lessons learned in eight years of parsing real estate data
A living hell - lessons learned in eight years of parsing real estate data  A living hell - lessons learned in eight years of parsing real estate data
A living hell - lessons learned in eight years of parsing real estate data
 
Geo-search-location-based-results-for-site-search
Geo-search-location-based-results-for-site-searchGeo-search-location-based-results-for-site-search
Geo-search-location-based-results-for-site-search
 
Geocoding India - talk delivered on 31 Jan 2014 at the Bangalore goeBLR event
Geocoding India - talk delivered on 31 Jan 2014 at the Bangalore goeBLR eventGeocoding India - talk delivered on 31 Jan 2014 at the Bangalore goeBLR event
Geocoding India - talk delivered on 31 Jan 2014 at the Bangalore goeBLR event
 
Nestoria new design
Nestoria new designNestoria new design
Nestoria new design
 
CSS::SpriteMaker in action!
CSS::SpriteMaker in action!CSS::SpriteMaker in action!
CSS::SpriteMaker in action!
 
Reducing the technical hurdle - why we started OpenCage Data
Reducing the technical hurdle - why we started OpenCage DataReducing the technical hurdle - why we started OpenCage Data
Reducing the technical hurdle - why we started OpenCage Data
 
Css sprite_maker-1
Css  sprite_maker-1Css  sprite_maker-1
Css sprite_maker-1
 
Nestoria case study - The effective use of geo-data for search marketing
Nestoria case study - The effective use of geo-data for search marketingNestoria case study - The effective use of geo-data for search marketing
Nestoria case study - The effective use of geo-data for search marketing
 
The Nestoria GeoChallenge
The Nestoria GeoChallengeThe Nestoria GeoChallenge
The Nestoria GeoChallenge
 
Geo-Data for Search Marketing SEM & SEO
Geo-Data for Search Marketing SEM & SEOGeo-Data for Search Marketing SEM & SEO
Geo-Data for Search Marketing SEM & SEO
 
Making using OSM data simpler - OpenCage Data
Making using OSM data simpler - OpenCage Data Making using OSM data simpler - OpenCage Data
Making using OSM data simpler - OpenCage Data
 
What’s next in mapping for portals? ppw2012
What’s next in mapping for portals? ppw2012What’s next in mapping for portals? ppw2012
What’s next in mapping for portals? ppw2012
 
How Nestoria switched to OpenStreetMap maps
How Nestoria switched to OpenStreetMap mapsHow Nestoria switched to OpenStreetMap maps
How Nestoria switched to OpenStreetMap maps
 
Remote Geocoding
Remote GeocodingRemote Geocoding
Remote Geocoding
 
Lessons learned in doing lots with few people
Lessons learned in  doing lots with few peopleLessons learned in  doing lots with few people
Lessons learned in doing lots with few people
 
Mapstraction
MapstractionMapstraction
Mapstraction
 
Bar Camp London 7
Bar Camp London 7Bar Camp London 7
Bar Camp London 7
 

Último

Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan CytotecJual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
ZurliaSoop
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
Abortion pills in Kuwait Cytotec pills in Kuwait
 
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
daisycvs
 
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pillsMifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
Abortion pills in Kuwait Cytotec pills in Kuwait
 
Mckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for ViewingMckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for Viewing
Nauman Safdar
 

Último (20)

New 2024 Cannabis Edibles Investor Pitch Deck Template
New 2024 Cannabis Edibles Investor Pitch Deck TemplateNew 2024 Cannabis Edibles Investor Pitch Deck Template
New 2024 Cannabis Edibles Investor Pitch Deck Template
 
Phases of Negotiation .pptx
 Phases of Negotiation .pptx Phases of Negotiation .pptx
Phases of Negotiation .pptx
 
Getting Real with AI - Columbus DAW - May 2024 - Nick Woo from AlignAI
Getting Real with AI - Columbus DAW - May 2024 - Nick Woo from AlignAIGetting Real with AI - Columbus DAW - May 2024 - Nick Woo from AlignAI
Getting Real with AI - Columbus DAW - May 2024 - Nick Woo from AlignAI
 
Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024
 
Falcon Invoice Discounting: Empowering Your Business Growth
Falcon Invoice Discounting: Empowering Your Business GrowthFalcon Invoice Discounting: Empowering Your Business Growth
Falcon Invoice Discounting: Empowering Your Business Growth
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan CytotecJual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
Jual Obat Aborsi ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan Cytotec
 
Buy gmail accounts.pdf buy Old Gmail Accounts
Buy gmail accounts.pdf buy Old Gmail AccountsBuy gmail accounts.pdf buy Old Gmail Accounts
Buy gmail accounts.pdf buy Old Gmail Accounts
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League City
 
Buy Verified TransferWise Accounts From Seosmmearth
Buy Verified TransferWise Accounts From SeosmmearthBuy Verified TransferWise Accounts From Seosmmearth
Buy Verified TransferWise Accounts From Seosmmearth
 
Falcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investorsFalcon Invoice Discounting: The best investment platform in india for investors
Falcon Invoice Discounting: The best investment platform in india for investors
 
CROSS CULTURAL NEGOTIATION BY PANMISEM NS
CROSS CULTURAL NEGOTIATION BY PANMISEM NSCROSS CULTURAL NEGOTIATION BY PANMISEM NS
CROSS CULTURAL NEGOTIATION BY PANMISEM NS
 
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pillsMifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
Mifty kit IN Salmiya (+918133066128) Abortion pills IN Salmiyah Cytotec pills
 
Falcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business PotentialFalcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business Potential
 
Lucknow Housewife Escorts by Sexy Bhabhi Service 8250092165
Lucknow Housewife Escorts  by Sexy Bhabhi Service 8250092165Lucknow Housewife Escorts  by Sexy Bhabhi Service 8250092165
Lucknow Housewife Escorts by Sexy Bhabhi Service 8250092165
 
Mckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for ViewingMckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for Viewing
 
PHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation FinalPHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation Final
 
Over the Top (OTT) Market Size & Growth Outlook 2024-2030
Over the Top (OTT) Market Size & Growth Outlook 2024-2030Over the Top (OTT) Market Size & Growth Outlook 2024-2030
Over the Top (OTT) Market Size & Growth Outlook 2024-2030
 

Google Developer Day 2007 - Nestoria: From Mash-up To Business

  • 1. this space left intentionally blank
  • 2. why perl is awesome and all other languages suck Mike Astle flamebait@lokku.com
  • 3. from mash-up to business Mike Astle - Lokku Ltd. Google Developer Day 31 May 2007 - London
  • 5.
  • 6. Milestones • Start dev April 2006 • Launch London June 2006 • Launch UK Sept 2006 • Launch Spain May 2007
  • 7.
  • 8.
  • 9. Numbers • In the UK, have 850,000 listings refreshed continually • Boils down to about 500,000 properties • 100,000+ users per month • 4 programmers • No dedicated operations staff
  • 10. Houses on a map…so what?
  • 11. this is harder than it looks
  • 12. The Plan • Talk about some of the technical decisions we made at Nestoria • Go over a few challenges that we have faced • Hopefully there are lessons to learn from our experiences
  • 14. Things to worry about • Architecture • Services vs. APIs • How to scale? • i18n • Future products
  • 15. then you choose a platform
  • 16.
  • 18. Java?
  • 20. PHP?
  • 23. Perl
  • 26. MySQL
  • 29. Source Control • SVN…duh • Does anybody use CVS anymore? • Love the trac
  • 30.
  • 31. Coders • A few veterans • As many interns / junior coders as fit in the room
  • 33. Emphasis • Collective decision-making • Individual responsibility for deadlines • Many small success rather than few large projects
  • 34.
  • 35.
  • 36. Why write tests? • Find bugs, of course • Increase confidence to make changes to unfamiliar systems or libraries • Promote good design / expose bad design
  • 37. Design • Informal process (no UML, minimal design patterns) • Concentrate on the things that will really hurt - e.g. i18n • Not everything has to be an object
  • 38. Documentation • POD for interfaces • twiki for systems • Schedule regular refreshers
  • 39. Outsource • If you can spec it faster than you can write it, consider farming it out • Many, many site full of hungry coders • Have had good results with scriptlance.com but there are lots of others out there
  • 41.
  • 42.
  • 43. Virtualization? • Sounds like voodoo to me • Extra layer to worry about • Easy enough to do everything in user space
  • 44. Wigwam • 12 subdomains • Live data • 22 services • Many playpens per box • Releases several times a week
  • 45. big ISP vs. small ISP • Bigger - more consistent • Smaller - more personal • Bigger - discrete choices • Smaller - continuous advice • We went small
  • 46. Hardware • Know your downtime limits • Be reasonable! • Load balancing - expensive and complex - we do it with DNS through a vendor • Have a failure plan
  • 48. but is anybody using it?
  • 49. Logging • Need your own, and it needs to be flexible • Use the free tools as a sanity check
  • 50. Reporting • An important area of expertise, not an annoying afterthought • Glossary • Every mean needs a variance • A/B Testing (a.k.a Bucket Testing) is hard to do right
  • 51. Also… • Build tools for ad hoc queries, they >will< get used • Keep an audit trail of changes • Effective tools for drilling down on sessions allows non-techs to help debugging
  • 53.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64. Alderly Edge => Alderley Edge • Bayswater London => Bayswater • Berkhampsted => Berkhamsted • Birminham => Birmingham • Bletchingly => Bletchingley • Broxbourne Station => Broxbourne • Cambuslank => Cambuslang • Canary Warf => Canary Wharf • Claphamjuction => Clapham Junction • Covent Garden London => Covent Garden
  • 65. Geocoding • Transform address into lat/long coordinates • 1,000+ calls a minute • Very high data variance (few cache hits) • Royal Mail data for UK • Teleatlas data for Spain
  • 66. Albert Villas, Gilbert Mews, LEIGHTON BUZZARD, • Bedfordshire, LU7 1NF • Lake Lock Drive, Wakefield West Yorkshire • Church Lane, London • C ELMINGTON ROAD, LONDON • Fountain Road (Flat 2), Edgbaston • London SE18, UK • Lee, London, UK • Free Trade Wharf, 340 The Highway, Wapping/Limehouse London • Stunning 3 Storey Contemporary Barn Conversion In The Popular Village Of Utkinton • A.4-1 GREAT NORTHERN TOWER,WATSON STREET,CITY CENTRE, • MANCHESTER GREATER MANCHESTER • 15, ASTLEY HOUSE, LONDON
  • 67. (((^[BEGLMNS][1-9]d?) | (^W[2-9] ) | ( ^( A[BL] | B[ABDHLNRST] | C[ABFHMORTVW] | D[ADEGHLNTY] | E[HNX] | F[KY] | G[LUY] | H[ADGPRSUX] | I[GMPV] | JE | K[ATWY] | L[ADELNSU] | M[EKL] | N[EGNPRW] | O[LX] | P[AEHLOR] | R[GHM] | S[AEGKL-PRSTWY] | T[ADFNQRSW] | UB | W[ADFNRSV] | YO | ZE ) dd?) | (^W1[A-HJKSTUW0-9]) | (( (^WC[1-2]) | (^EC[1-4]) | (^SW1) ) [ABEHMNPRVWXY] ) ) (s*)? ([0-9][ABD-HJLNP-UW-Z]{2}))
  • 68.
  • 70. Future Projects • Expose more data via API (e.g. historical aggregate data) • Implicit personalisation (the system learns from users) • More international expansion • Systemic testing to improve user experience
  • 72.
  • 73.
  • 74.
  • 75.
  • 77. thanks! astle@lokku.com http://www.lokku.com http://www.nestoria.co.uk http://www.nestoria.es http://www.lokku.com/lpw06_geocoding/ http://www.lokku.com/lpw06_wigwam/