E20 apps built on platforms
  Lee Bryant, June 2010, E20 Boston
About Headshift




 •   Social business consultancy, Dachis Group
 •   40+ people, UK, USA, ASPAC
 •   Enterprise social ...
Compare and contrast
Enterprise apps
Social web tools
If your tools require training
then you are doing it wrong
The enterprise has
been an evolutionary
rock pool for too long
Competition   Co-evolution




                             See Darwin’s Finches by Sam Ramji
APIs are the sex organs of business evolution
APIs are the sex organs of business evolution




  Thousands of people, who are not on your payroll,
  who are intimately...
Data is the DNA




                  !"#"$!"#$%&#'&(#)*"!'&""#+,-&.

              /01%#'&(#*"&2#+03&"#$%&#"&24!1&#%&'&(
...
Data is the DNA




                  !"#"$!"#$%&#'&(#)*"!'&""#+,-&.

              /01%#'&(#*"&2#+03&"#$%&#"&24!1&#%&'&(
...
Moving from all-in-one to API-driven platforms
What social business
consultants really want...
Build situated apps based on specific needs


 We observe and analyse...

• ethnography (habits)
• behavioural psychology ...
Build situated apps based on specific needs


 We observe and analyse...

• ethnography (habits)
• behavioural psychology ...
So ... what sort of apps
should we be creating?
General social apps
Ecosystem apps

• better network
 navigation tools

• better navigation
 scanning tools
Our network navigation
tools are very primitive
Google lets me fly over continents...
... swoop down to a country...
... and zoom in to my front door
Data can take me deeper still
Why can’t I do the same
with my social networks?
Hivemind apps

• sense making and
 organising tools

• data analysis and
 visualisation tools
The power of open data to change behaviour
The power of open data to change behaviour
The power of open data to change behaviour
Signals apps

• Updates manager
 and search agent

• topic and project
 monitoring tools
Why is my signals app little more than a CLI ?
Some progress in UX, but still too manual
Some progress in UX, but still too manual
Proximity wormholes: people discovery at scale
Metafilter apps

• personal startpage
 and info organiser

• action items -
 applying verbs
Verbs, actions, productivity and measurement
Opportunity: coping tools for signal overload
Specific, situated apps
Use case driven rapid development



           e.g. Law firms:

           • Current Awareness tools
           • Conflic...
How do we achieve this?
Start by separating apps from platforms




         Traditional Enterprise systems
        CMS    DMS   RDBs   Mail   Etc...
Start by separating apps from platforms




               API / Data sharing
         Traditional Enterprise systems
    ...
Start by separating apps from platforms




           Social business platform(s)
         Wiki   Blogs   Groups   RSS   ...
Start by separating apps from platforms




               API / Data sharing
           Social business platform(s)
     ...
Start by separating apps from platforms




                 Social business apps
      Use Case    Use Case    Use Case  ...
Start by separating apps from platforms

                    Simple, light-weight situated apps built
                    ...
Some platforms already heading this way
                                                                                  ...
Some platforms already heading this way
                                                                                  ...
Scenario: joining together
various existing social
tools and platforms
Headshift’s box framework


       UX in Rails




 Framework
   in .NET




Data storage can be
MSSQL or MySQL




Base p...
Overall technical architecture

                    Frontend


                   REST API

                    Managers

...
Frontend to Business Logic

        Frontend        The frontend integrates with the
                        REST API, so ...
Remote API

              Managers                            MSSQL
                                                 Datab...
Example Provider API Methods
                      Retrieves latest activity from the app in the
   GetActivity()         ...
Conclusion
What I hope we are moving towards:
• Continued abstraction of specific business
    apps from underlying social platforms
...
Thanks for listening




        Lee@headshift.com
           twitter.com/
            leebryant




             http://w...
Thanks for listening!

I am lee@headshift.com
I live at http://www.headshift.com
Except where otherwise stated, photos cou...
Upcoming SlideShare
Loading in...5
×

Separating enterprise social apps from platforms

3,877

Published on

My talk from the E20 conference in Boston

Published in: Technology, Business
7 Comments
28 Likes
Statistics
Notes
  • Thanks :) You are spot on about the person being the primary key here - well put
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • It is a class A preso, BTW. I almost forgot to tell that.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Thats sounds data centric. The primary key for both transactional as social information is already there: The user. Anything that happens around him and his network is related. Bringing him relevant info will drive him to augment unsolicited information. Like we do here :-)
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Thanks for the comment Wilfried,

    I guess they don't have to go through the social systems, but one potential advantage from doing so would be that transactional signals can be surfaced to people in the firm who can make sense of them. It is the idea of community-reviewed data that I find exciting in this respect.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • I don't see why the transactional systems need to go thru the social systems.
    I would imagine that transactional systems and social systems create activity streams to the enterprise bus, hence parallel and not serial
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
3,877
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
118
Comments
7
Likes
28
Embeds 0
No embeds

No notes for slide

Separating enterprise social apps from platforms

  1. 1. E20 apps built on platforms Lee Bryant, June 2010, E20 Boston
  2. 2. About Headshift • Social business consultancy, Dachis Group • 40+ people, UK, USA, ASPAC • Enterprise social tools pioneers since 2002 • Blend of tech, comms, business and social sciences skills in our consulting team • Strong portfolio in law, prof.services, corporate, government and third sector [welcome]
  3. 3. Compare and contrast
  4. 4. Enterprise apps
  5. 5. Social web tools
  6. 6. If your tools require training then you are doing it wrong
  7. 7. The enterprise has been an evolutionary rock pool for too long
  8. 8. Competition Co-evolution See Darwin’s Finches by Sam Ramji
  9. 9. APIs are the sex organs of business evolution
  10. 10. APIs are the sex organs of business evolution Thousands of people, who are not on your payroll, who are intimately part of each of these changing interest groups and niches, must be convinced to carry your product there for you in a way that adapts to the dynamic environment See Darwin’s Finches by Sam Ramji
  11. 11. Data is the DNA !"#"$!"#$%&#'&(#)*"!'&""#+,-&. /01%#'&(#*"&2#+03&"#$%&#"&24!1&#%&'&( 5"&#$%&##")*$$,#6&&-#$%&#+&", See Darwin’s Finches by Sam Ramji
  12. 12. Data is the DNA !"#"$!"#$%&#'&(#)*"!'&""#+,-&. /01%#'&(#*"&2#+03&"#$%&#"&24!1&#%&'&( 5"&#$%&##")*$$,#6&&-#$%&#+&", See Darwin’s Finches by Sam Ramji
  13. 13. Moving from all-in-one to API-driven platforms
  14. 14. What social business consultants really want...
  15. 15. Build situated apps based on specific needs We observe and analyse... • ethnography (habits) • behavioural psychology (motivation) • organisational design (context) • business analysis (goals, productivity)
  16. 16. Build situated apps based on specific needs We observe and analyse... • ethnography (habits) • behavioural psychology (motivation) • organisational design (context) • business analysis (goals, productivity) ...to create connective apps • situated software • context-aware • linked to key systems • address specific use cases
  17. 17. So ... what sort of apps should we be creating?
  18. 18. General social apps
  19. 19. Ecosystem apps • better network navigation tools • better navigation scanning tools
  20. 20. Our network navigation tools are very primitive
  21. 21. Google lets me fly over continents...
  22. 22. ... swoop down to a country...
  23. 23. ... and zoom in to my front door
  24. 24. Data can take me deeper still
  25. 25. Why can’t I do the same with my social networks?
  26. 26. Hivemind apps • sense making and organising tools • data analysis and visualisation tools
  27. 27. The power of open data to change behaviour
  28. 28. The power of open data to change behaviour
  29. 29. The power of open data to change behaviour
  30. 30. Signals apps • Updates manager and search agent • topic and project monitoring tools
  31. 31. Why is my signals app little more than a CLI ?
  32. 32. Some progress in UX, but still too manual
  33. 33. Some progress in UX, but still too manual
  34. 34. Proximity wormholes: people discovery at scale
  35. 35. Metafilter apps • personal startpage and info organiser • action items - applying verbs
  36. 36. Verbs, actions, productivity and measurement
  37. 37. Opportunity: coping tools for signal overload
  38. 38. Specific, situated apps
  39. 39. Use case driven rapid development e.g. Law firms: • Current Awareness tools • Conflict checking • Bid development • Matter management • People finder • Clause manager • Document builder
  40. 40. How do we achieve this?
  41. 41. Start by separating apps from platforms Traditional Enterprise systems CMS DMS RDBs Mail Etc...
  42. 42. Start by separating apps from platforms API / Data sharing Traditional Enterprise systems CMS DMS RDBs Mail Etc...
  43. 43. Start by separating apps from platforms Social business platform(s) Wiki Blogs Groups RSS SNS API / Data sharing Traditional Enterprise systems CMS DMS RDBs Mail Etc...
  44. 44. Start by separating apps from platforms API / Data sharing Social business platform(s) Wiki Blogs Groups RSS SNS API / Data sharing Traditional Enterprise systems CMS DMS RDBs Mail Etc...
  45. 45. Start by separating apps from platforms Social business apps Use Case Use Case Use Case Use Case API / Data sharing Social business platform(s) Wiki Blogs Groups RSS SNS API / Data sharing Traditional Enterprise systems CMS DMS RDBs Mail Etc...
  46. 46. Start by separating apps from platforms Simple, light-weight situated apps built on capabilities of both social platforms and existing enterprise systems Social business apps Use Case Use Case Use Case Use Case INCREASING VELOCITY INCREASING WEIGHT API / Data sharing Social business platform(s) Wiki Blogs Groups RSS SNS API / Data sharing Traditional Enterprise systems CMS DMS RDBs Mail Etc...
  47. 47. Some platforms already heading this way A<E L;E ( :*%$;<*+'='!%>%?9)9$9*+ !"#$%&'"()*+#),%(- ."/0,1"- 2$3)4%/' 231536"-*7*2/,1,(6 8"-%9/1"- @#$*8<%$9"# :*%$;<*+'OM*<M9*D .%1,3$)":)*;%(("1)*$")-*&%9*-9/431"*1/,),13$*"0"()-*4/%'*"()"/#/,-"*3##$,13),%(- ("&9%)'C*$D"<P9#8 3(<*,(="1)*)>"'*,()%*)>"*.%1,3$)":)*1%$$3?%/3),%(*#$3)4%/'@*A>"/"*"'#$%&""- Q9&<"?)"889#8 4/%'*31/%--*&%9/*%/63(,B3),%(*1%$$3?%/3)"*3(<*)35"*31),%(C*2"%#$"*13(*-"" R<";>+ )>%-"*"0"()-*,(*)>"*.%1,3$)":)*3##$,13),%(*-)/"3'-*)>"&*'%(,)%/*3(<@*A>"/"*39)>%/,B"<@*-"(< S9+$<9?;$*F'(><*%F+B**$+ 9#<3)"-*)%*)>"*"()"/#/,-"*-&-)"'-*4/%'*.%1,3$)":)C S%+B?"%<F AB*'C*D'("&9%)'7%E*< T9P9'T"<P+>%&*+ D(),$*(%A@*1/,),13$*,(4%/'3),%(@*"0"()-*3(<*#/%1"--"-*>30"*?""(*$%15"<*,(*"()"/#/,-"*3##$,13),%(-*3(<*%($&*311"--,?$"*)%*)>" #"%#$"*A>%*9-"*)>"*#3/),19$3/*3##$,13),%(C*E&*,()"6/3),(6*"()"/#/,-"*3##$,13),%(-*A,)>*%9/*-%1,3$*-%4)A3/"@*)>"*.%1,3$)":) !"))%?"<%$9M*'L)"8+ 1%$$3?%/3),%(*#$3)4%/'*(%A*1/"3)"-*3(*,'#%/)3()*("A*)"1>(%$%6&*$3&"/*,(*)>"*"()"/#/,-"*3/1>,)"1)9/"*F*)>"*-%1,3$*$3&"/*F*A>,1> -#3(-*<"#3/)'"()-@*6"%6/3#>,"-*3(<*-&-)"'-C S*+P$">'K>>)9&%$9"# .%1,3$)":)*;%(("1)*A%/5-*A,)>*?%)>*%(G#/"',-"*3(<*1$%9<G?3-"<*"()"/#/,-"*3##$,13),%(-*-91>*3-*;8H@*I82*3(<*<%19'"() Q"?9)* '3(36"'"()*-&-)"'-C @#$*8<%$9"# ($%#F%<F+4?%+*F J)*3$-%*,()"6/3)"-*A,)>*3(<*$"0"/36"-*)>"*43-)*,((%03),%(*)35,(6*#$31"*,(*A"?G?3-"<*1%(-9'"/*3##$,13),%(-*-91>*3-*KA,))"/@ L31"?%%5@*3(<*M%%6$"*E9BBC*.%1,3$)":)*;%(("1)*3<>"/"-*)%*"-)3?$,->"<*3(<*"'"/6,(6*A"?*-)3(<3/<-@*,(1$9<,(6*KA,))"/ N((%)3),%(-*3(<*M%%6$"*+#"(.%1,3$C*.%1,3$)":)*3$-%*#$3(-*)%*-9##%/)*)>"*31),0,)&-)/"3C'-*-)3(<3/<C AB<**'&"<*'&"G>"#*#$+'"H'("&9%)$*I$'!"##*&$ !"##*&$"<+J*N*;%(("1)%/*-"/0"-*3-*3*?/,<6"*?")A""(*3(*"()"/#/,-"*3##$,13),%(*3(<*.%1,3$)":)C*;%(("1)%/-*9-" .%1,3$)":)O-*8".K*N2J@*3(<*13(*?"*?9,$)*)%*1%(("1)*3(&*3##$,13),%(*)%*.%1,3$)":)C*;%(("1)%/-*13(*?"*?9,$)*?&*JK <"0"$%#"/-@*-&-)"'*,()"6/3)%/-@*3(<*)>,/<G#3/)&*<"0"$%#"/-C*.%1,3$)":)*>3-*><*4?;9)$'!"##*&$"<+*)%*H,1/%-%4) .>3/"2%,()*3(<*P%)9-*;%(("1),%(-C J()"6/3),(6*I()"/#/,-" N*;%(("1)%/*13(*?"*>%-)"<*,(*)>"*1$%9<@*3-*3*#$96G,(*)%*.%1,3$)":)O-*>%-)"<*-"/0,1"*%/*3##$,3(1"@*%/*%(*)>"*"()"/#/,-" N##$,13),%(-*A,)> 3##$,13),%(*,)-"$4C .%1,3$)":)
  48. 48. Some platforms already heading this way A<E L;E ( :*%$;<*+'='!%>%?9)9$9*+ !"#$%&'"()*+#),%(- ."/0,1"- 2$3)4%/' 231536"-*7*2/,1,(6 8"-%9/1"- @#$*8<%$9"# :*%$;<*+'OM*<M9*D .%1,3$)":)*;%(("1)*$")-*&%9*-9/431"*1/,),13$*"0"()-*4/%'*"()"/#/,-"*3##$,13),%(- ("&9%)'C*$D"<P9#8 3(<*,(="1)*)>"'*,()%*)>"*.%1,3$)":)*1%$$3?%/3),%(*#$3)4%/'@*A>"/"*"'#$%&""- Q9&<"?)"889#8 4/%'*31/%--*&%9/*%/63(,B3),%(*1%$$3?%/3)"*3(<*)35"*31),%(C*2"%#$"*13(*-"" R<";>+ )>%-"*"0"()-*,(*)>"*.%1,3$)":)*3##$,13),%(*-)/"3'-*)>"&*'%(,)%/*3(<@*A>"/"*39)>%/,B"<@*-"(< S9+$<9?;$*F'(><*%F+B**$+ 9#<3)"-*)%*)>"*"()"/#/,-"*-&-)"'-*4/%'*.%1,3$)":)C S%+B?"%<F AB*'C*D'("&9%)'7%E*< T9P9'T"<P+>%&*+ D(),$*(%A@*1/,),13$*,(4%/'3),%(@*"0"()-*3(<*#/%1"--"-*>30"*?""(*$%15"<*,(*"()"/#/,-"*3##$,13),%(-*3(<*%($&*311"--,?$"*)%*)>" #"%#$"*A>%*9-"*)>"*#3/),19$3/*3##$,13),%(C*E&*,()"6/3),(6*"()"/#/,-"*3##$,13),%(-*A,)>*%9/*-%1,3$*-%4)A3/"@*)>"*.%1,3$)":) !"))%?"<%$9M*'L)"8+ 1%$$3?%/3),%(*#$3)4%/'*(%A*1/"3)"-*3(*,'#%/)3()*("A*)"1>(%$%6&*$3&"/*,(*)>"*"()"/#/,-"*3/1>,)"1)9/"*F*)>"*-%1,3$*$3&"/*F*A>,1> -#3(-*<"#3/)'"()-@*6"%6/3#>,"-*3(<*-&-)"'-C S*+P$">'K>>)9&%$9"# .%1,3$)":)*;%(("1)*A%/5-*A,)>*?%)>*%(G#/"',-"*3(<*1$%9<G?3-"<*"()"/#/,-"*3##$,13),%(-*-91>*3-*;8H@*I82*3(<*<%19'"() Q"?9)* '3(36"'"()*-&-)"'-C @#$*8<%$9"# ($%#F%<F+4?%+*F J)*3$-%*,()"6/3)"-*A,)>*3(<*$"0"/36"-*)>"*43-)*,((%03),%(*)35,(6*#$31"*,(*A"?G?3-"<*1%(-9'"/*3##$,13),%(-*-91>*3-*KA,))"/@ L31"?%%5@*3(<*M%%6$"*E9BBC*.%1,3$)":)*;%(("1)*3<>"/"-*)%*"-)3?$,->"<*3(<*"'"/6,(6*A"?*-)3(<3/<-@*,(1$9<,(6*KA,))"/ N((%)3),%(-*3(<*M%%6$"*+#"(.%1,3$C*.%1,3$)":)*3$-%*#$3(-*)%*-9##%/)*)>"*31),0,)&-)/"3C'-*-)3(<3/<C AB<**'&"<*'&"G>"#*#$+'"H'("&9%)$*I$'!"##*&$ !"##*&$"<+J*N*;%(("1)%/*-"/0"-*3-*3*?/,<6"*?")A""(*3(*"()"/#/,-"*3##$,13),%(*3(<*.%1,3$)":)C*;%(("1)%/-*9-" .%1,3$)":)O-*8".K*N2J@*3(<*13(*?"*?9,$)*)%*1%(("1)*3(&*3##$,13),%(*)%*.%1,3$)":)C*;%(("1)%/-*13(*?"*?9,$)*?&*JK <"0"$%#"/-@*-&-)"'*,()"6/3)%/-@*3(<*)>,/<G#3/)&*<"0"$%#"/-C*.%1,3$)":)*>3-*><*4?;9)$'!"##*&$"<+*)%*H,1/%-%4) .>3/"2%,()*3(<*P%)9-*;%(("1),%(-C J()"6/3),(6*I()"/#/,-" N*;%(("1)%/*13(*?"*>%-)"<*,(*)>"*1$%9<@*3-*3*#$96G,(*)%*.%1,3$)":)O-*>%-)"<*-"/0,1"*%/*3##$,3(1"@*%/*%(*)>"*"()"/#/,-" N##$,13),%(-*A,)> 3##$,13),%(*,)-"$4C .%1,3$)":)
  49. 49. Scenario: joining together various existing social tools and platforms
  50. 50. Headshift’s box framework UX in Rails Framework in .NET Data storage can be MSSQL or MySQL Base platforms: .NET, Java
  51. 51. Overall technical architecture Frontend REST API Managers Consumer Consumer Provider Provider Social Social Application + Application + Remote API Remote API
  52. 52. Frontend to Business Logic Frontend The frontend integrates with the REST API, so it can be developed using any framework, e.g. RoR The REST API provides external REST API apps access to the Box Framework Managers provide business logic, based on abstract objects that represent generic functionality. Managers They also connect to both internal applications like bookmarking, and external services such as search and the database. External Apps and services
  53. 53. Remote API Managers MSSQL Database Bookmarks Search Engine Feeds & Clusters Search (e.g. Solr) Microblogs Navigation Navigation Templates Permissions Domains Activity Activity Service Modules Managers: generic implementations that can be linked to Module Consumers Module Consumers Module external applications Consumers
  54. 54. Example Provider API Methods Retrieves latest activity from the app in the GetActivity() form of content items. The framework automatically removes duplicates and adds them to the database Returns the tags on a given content item from GetTags() the underlying application Adds a content item to the underlying AddContentItem() application. This allows the framework to push info into and between applications CreateGroup() Instructs the app to create new user group. Instructs the application to create add a AddUserToGroup() specific user to the given user group The framework uses roles to manage AddPermissionsTo permissions in the modules it creates. This method receives a set of permissions related Module() to a role, and sets them in the underlying app for the given group on the given module
  55. 55. Conclusion
  56. 56. What I hope we are moving towards: • Continued abstraction of specific business apps from underlying social platforms • More ways for people to organise and make sense of their enterprise social world • Opportunities for new forms of measurement • IT running platforms and data, with business units owning the apps • Social platforms becoming key experience integration points in the enterprise
  57. 57. Thanks for listening Lee@headshift.com twitter.com/ leebryant http://www.headshift.com
  58. 58. Thanks for listening! I am lee@headshift.com I live at http://www.headshift.com Except where otherwise stated, photos courtesy of Flickr using Creative Commons license. Thanks to the following photographers: http://www.flickr.com/photos/peasap/655111542/ http://www.flickr.com/photos/ulybug/154722108/ Other references: http://mashable.com/2010/06/15/gatorade-social-media-mission-control/ http://usersguidetotheuniverse.com/?p=96 http://stackoverflow.com/questions/238177?tab=votes&page=4#tab-top http://www.gameaddictionblog.com/images/smb.jpg http://schooloscope.com/primary/100832 http://www.socialtext.com/news/pressrelease_2010.06.16.php http://www.slideshare.net/gialyons/zingale-e20-slideshare http://www.slideshare.net/samramji/darwins-finches-20th-century-business-and-apis http://www.csuchico.edu/~curban/DarwinSP2002Phil108.htm
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×