AtlasCamp 2011: Confluence 4 and Beyond

3,658 views
3,562 views

Published on

The Confluence Product Manager will share our plans for Confluence 4 and the releases beyond. And the Confluence Architect gives you a whirlwind tour of Confluence's internal APIs: which ones are safe to use, which aren't, and how to help make your plugin more resilient to change. And we'll share our plans for making this less painful in the future.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,658
On SlideShare
0
From Embeds
0
Number of Embeds
383
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • Hello Everyone,\nIt’s really exciting to be here at AtlasCamp this year. I see some familiar faces which is great to see people returning and also see quite a few new faces, so I’m looking forward to meeting some of you over the next couple of days.\n\nFor those of you who don’t know me, I’m Sherif Mansour, a Product Manager on Confluence...\n
  • ....and for the first half of this presentation, you’ll be hearing from me mostly about Confluence 4.0 and how we’ve created new and, I think awesome, experiences for your end users and for you as as plugin developers. \n\nFollowing that I’ll give you a sneak peak into what we have planned for beyond 4.0 and then I’ll had it over to Charles Miller, our product Architect, who will share with you what other plugin developer improvements we’ve made beyond the Confluence 4 editing experience. \n \n\n
  • So first things first, the exciting news! Confluence finally 4.0 shipped last week! The team is really excited about this as we’ve been working on the release for more than a year now, and couldn’t wait to get the release into your hands.\n\n\n\n
  • So first things first, the exciting news! Confluence finally 4.0 shipped last week! The team is really excited about this as we’ve been working on the release for more than a year now, and couldn’t wait to get the release into your hands.\n\n\n\n
  • But before diving into the detail of the release and what it means for you, I wanted to take a step back, pause for a moment and talk about experiences... \n\nin particular first class experiences...\n\nNow, I don’t know about you guys, but I certainly didn't really first class experience flight here. I few with United airlines... I don’t think you could call a cracky old lady serving you some over-cooked chicken first-class, but...\n\nBut when you think about amazing first class experiences....what do you think? (pause) \n\nI was reading my feeds the other day and an article came up about Singapore Airlines and some of the awards they’ve won for their first class experience. \n\nThey’ve created these first class “suites” on some of their A380’s. These are individual private cabins with leather seats, mood lighting, a 23-inch wide LCD, your choice of different pillow types as well as a full-sized single bed. Talk about the first class experience, I was pretty impressed about what they’ve done. \n\nA first class experience is often memorable, its a pleasure to be in its something everyone wants... Now for airlines, we judge the airline mostly through the value for money and the flight experience because that is where you spend most of your time... \n\n....but what about for Confluence. If we were to create a first-class experience, where would it begin? \n
  • But before diving into the detail of the release and what it means for you, I wanted to take a step back, pause for a moment and talk about experiences... \n\nin particular first class experiences...\n\nNow, I don’t know about you guys, but I certainly didn't really first class experience flight here. I few with United airlines... I don’t think you could call a cracky old lady serving you some over-cooked chicken first-class, but...\n\nBut when you think about amazing first class experiences....what do you think? (pause) \n\nI was reading my feeds the other day and an article came up about Singapore Airlines and some of the awards they’ve won for their first class experience. \n\nThey’ve created these first class “suites” on some of their A380’s. These are individual private cabins with leather seats, mood lighting, a 23-inch wide LCD, your choice of different pillow types as well as a full-sized single bed. Talk about the first class experience, I was pretty impressed about what they’ve done. \n\nA first class experience is often memorable, its a pleasure to be in its something everyone wants... Now for airlines, we judge the airline mostly through the value for money and the flight experience because that is where you spend most of your time... \n\n....but what about for Confluence. If we were to create a first-class experience, where would it begin? \n
  • But before diving into the detail of the release and what it means for you, I wanted to take a step back, pause for a moment and talk about experiences... \n\nin particular first class experiences...\n\nNow, I don’t know about you guys, but I certainly didn't really first class experience flight here. I few with United airlines... I don’t think you could call a cracky old lady serving you some over-cooked chicken first-class, but...\n\nBut when you think about amazing first class experiences....what do you think? (pause) \n\nI was reading my feeds the other day and an article came up about Singapore Airlines and some of the awards they’ve won for their first class experience. \n\nThey’ve created these first class “suites” on some of their A380’s. These are individual private cabins with leather seats, mood lighting, a 23-inch wide LCD, your choice of different pillow types as well as a full-sized single bed. Talk about the first class experience, I was pretty impressed about what they’ve done. \n\nA first class experience is often memorable, its a pleasure to be in its something everyone wants... Now for airlines, we judge the airline mostly through the value for money and the flight experience because that is where you spend most of your time... \n\n....but what about for Confluence. If we were to create a first-class experience, where would it begin? \n
  • But before diving into the detail of the release and what it means for you, I wanted to take a step back, pause for a moment and talk about experiences... \n\nin particular first class experiences...\n\nNow, I don’t know about you guys, but I certainly didn't really first class experience flight here. I few with United airlines... I don’t think you could call a cracky old lady serving you some over-cooked chicken first-class, but...\n\nBut when you think about amazing first class experiences....what do you think? (pause) \n\nI was reading my feeds the other day and an article came up about Singapore Airlines and some of the awards they’ve won for their first class experience. \n\nThey’ve created these first class “suites” on some of their A380’s. These are individual private cabins with leather seats, mood lighting, a 23-inch wide LCD, your choice of different pillow types as well as a full-sized single bed. Talk about the first class experience, I was pretty impressed about what they’ve done. \n\nA first class experience is often memorable, its a pleasure to be in its something everyone wants... Now for airlines, we judge the airline mostly through the value for money and the flight experience because that is where you spend most of your time... \n\n....but what about for Confluence. If we were to create a first-class experience, where would it begin? \n
  • But before diving into the detail of the release and what it means for you, I wanted to take a step back, pause for a moment and talk about experiences... \n\nin particular first class experiences...\n\nNow, I don’t know about you guys, but I certainly didn't really first class experience flight here. I few with United airlines... I don’t think you could call a cracky old lady serving you some over-cooked chicken first-class, but...\n\nBut when you think about amazing first class experiences....what do you think? (pause) \n\nI was reading my feeds the other day and an article came up about Singapore Airlines and some of the awards they’ve won for their first class experience. \n\nThey’ve created these first class “suites” on some of their A380’s. These are individual private cabins with leather seats, mood lighting, a 23-inch wide LCD, your choice of different pillow types as well as a full-sized single bed. Talk about the first class experience, I was pretty impressed about what they’ve done. \n\nA first class experience is often memorable, its a pleasure to be in its something everyone wants... Now for airlines, we judge the airline mostly through the value for money and the flight experience because that is where you spend most of your time... \n\n....but what about for Confluence. If we were to create a first-class experience, where would it begin? \n
  • We’ve been doing quite a bit of thinking with this and we strongly believe it has to start with the content creation process. \n\nYou see, when you when you take a step back and reflect on the single, most important asset in your wiki - it’s your content. Why? well, two reasons.\n\nThe first reason is fairly obvious: As more content is created in the wiki, the more valuable it is to you and the rest of your team or orgainsation. \n\nSecondly, the act of creating content in your wiki is really the instigator of what we call the “collaboration cycle”, it is what sparks other users who discover the content, then they jump in and contribute and the collaboration loop starts again.. The faster teams get through this loop the more productive they are.\n\nSo it’s very important to have a first-class content creation experience.\n\nSo how have we been doing to achieve this?\n
  • We’ve been doing quite a bit of thinking with this and we strongly believe it has to start with the content creation process. \n\nYou see, when you when you take a step back and reflect on the single, most important asset in your wiki - it’s your content. Why? well, two reasons.\n\nThe first reason is fairly obvious: As more content is created in the wiki, the more valuable it is to you and the rest of your team or orgainsation. \n\nSecondly, the act of creating content in your wiki is really the instigator of what we call the “collaboration cycle”, it is what sparks other users who discover the content, then they jump in and contribute and the collaboration loop starts again.. The faster teams get through this loop the more productive they are.\n\nSo it’s very important to have a first-class content creation experience.\n\nSo how have we been doing to achieve this?\n
  • We’ve been doing quite a bit of thinking with this and we strongly believe it has to start with the content creation process. \n\nYou see, when you when you take a step back and reflect on the single, most important asset in your wiki - it’s your content. Why? well, two reasons.\n\nThe first reason is fairly obvious: As more content is created in the wiki, the more valuable it is to you and the rest of your team or orgainsation. \n\nSecondly, the act of creating content in your wiki is really the instigator of what we call the “collaboration cycle”, it is what sparks other users who discover the content, then they jump in and contribute and the collaboration loop starts again.. The faster teams get through this loop the more productive they are.\n\nSo it’s very important to have a first-class content creation experience.\n\nSo how have we been doing to achieve this?\n
  • We’ve been doing quite a bit of thinking with this and we strongly believe it has to start with the content creation process. \n\nYou see, when you when you take a step back and reflect on the single, most important asset in your wiki - it’s your content. Why? well, two reasons.\n\nThe first reason is fairly obvious: As more content is created in the wiki, the more valuable it is to you and the rest of your team or orgainsation. \n\nSecondly, the act of creating content in your wiki is really the instigator of what we call the “collaboration cycle”, it is what sparks other users who discover the content, then they jump in and contribute and the collaboration loop starts again.. The faster teams get through this loop the more productive they are.\n\nSo it’s very important to have a first-class content creation experience.\n\nSo how have we been doing to achieve this?\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • A lot of what we’ve done in this area has started from YOUR FEEDBACK.\n\nCan I just get a show of hands for everyone in this room that is involved with Confluence? \n\nOkay, now keep your hand up if you are a wiki champion or administrator of some sort to internal users, your team or customers. \nNow how many of you also do plugin development for Confluence. \nSo, just what I thought, from just asking around in this room a lot of you play two roles.\n\nMany of you here are Confluence administrators and or wiki champions within your teams, organisations or for your customers. This involves more than just administering the system. Many of you are also the point of contact for your end users, everything from answering “how to questions” to helping people create content. \n \n A lot of the end-user feedback you’ve given us related to the user interface, the intuitiveness of the editor and macros. The more we can make your end users lives easier, the more we reduce the hand-holding you do today and the more productive you can they can be.\n\nThe second role a lot of you play in this room as that you build and extend confluence: for internal, external open source and commercial plugins. You take a look at our Atlassian Plugin exchange and a lot of the Confluence plugins out there are macros that interact or embed content into pages.\n\n A lot of the feedback you gave us in this area relates to providing a more natural experience in inserting and interacting with macros and about how we can make those macros more of a first-class citizen in the editor. \n\nSo over the next few minutes, I’m going to quickly cover what we’ve done in both these areas for you; How I think we’ve created a much better experience for your end users and a first class experience for your content macros. \n\n
  • Let’s start off with how we’ve made your life easier for your end-users.\n\nNow to go through this section, I’m going to quickly run through the four main focus areas we had when building Confluence 4. Because most of this is covered in our release material, I’ll move pretty quickly through this and at the end of the presentation Charles will flash a link with more detail. \n
  • Our first focus area has been simplicity. \n\nIn terms of simplicity, we’ve focused on helping you increase adoption with the teams that you work with and making your life easier as a wiki champion - less hand-holding. \n\n* We’ve simplified the editing experience to a single editor and new editor UI\n* Made a lot of the UI more intuitive, like inserting tables\n* We’ve made it easier to interact with content, moving some of the things you had to do with macros before (like aligning text) as part of the core editing experience. \n\n\n
  • Our first focus area has been simplicity. \n\nIn terms of simplicity, we’ve focused on helping you increase adoption with the teams that you work with and making your life easier as a wiki champion - less hand-holding. \n\n* We’ve simplified the editing experience to a single editor and new editor UI\n* Made a lot of the UI more intuitive, like inserting tables\n* We’ve made it easier to interact with content, moving some of the things you had to do with macros before (like aligning text) as part of the core editing experience. \n\n\n
  • The second focus area has been power. One of Confluence biggest differentiators is macros. And a lot of the feedback we get from you is that your end users find it difficult to interact with macros, change properties and visualise them on the page. We’ve made it easier for your average user to interact with macros and create dynamic pages with the introduction of visual macros: placeholder representations of macros on a page.\n\nWe’ve also enabled users to create advanced tables (merge/split table cells) as made it really easy for any user to turn an image into a link - something which really could only be done in the past by advanced users and required a lot of hand-holding for the average user.\n
  • The second focus area has been power. One of Confluence biggest differentiators is macros. And a lot of the feedback we get from you is that your end users find it difficult to interact with macros, change properties and visualise them on the page. We’ve made it easier for your average user to interact with macros and create dynamic pages with the introduction of visual macros: placeholder representations of macros on a page.\n\nWe’ve also enabled users to create advanced tables (merge/split table cells) as made it really easy for any user to turn an image into a link - something which really could only be done in the past by advanced users and required a lot of hand-holding for the average user.\n
  • Thirdly, we know many of you are power users and love wiki markup for the speed it lets you create content.\n\nWe wanted to make the content creation experience even faster:\n\n* We’ve introduced autoformatting for wiki markup\n* Autocomplete new content / linking to undefined pages, more keyboard shortcuts\n* Pasting images straight from your clipboard \n\nSo we’ve continued to make improvements in allowing you to have a super fast content creation experience. \n
  • Thirdly, we know many of you are power users and love wiki markup for the speed it lets you create content.\n\nWe wanted to make the content creation experience even faster:\n\n* We’ve introduced autoformatting for wiki markup\n* Autocomplete new content / linking to undefined pages, more keyboard shortcuts\n* Pasting images straight from your clipboard \n\nSo we’ve continued to make improvements in allowing you to have a super fast content creation experience. \n
  • Our last focus area has been allowing you to engage others whilst creating content. \n\nWe’ve introduce introduced @mentions into Confluence, providing a much more natural way to collaborate with your collogues. \n\n\n
  • Our last focus area has been allowing you to engage others whilst creating content. \n\nWe’ve introduce introduced @mentions into Confluence, providing a much more natural way to collaborate with your collogues. \n\n\n
  • So that’s Confluence 4 for your end users and how we’ve to create an awesome content creation experience that will make your life easier. \n\nHopefully a lot of that makes your life's easier as wiki champions and reduces the amount of hand-holding you have to do.\n
  • So that’s Confluence 4 for your end users and how we’ve to create an awesome content creation experience that will make your life easier. \n\nHopefully a lot of that makes your life's easier as wiki champions and reduces the amount of hand-holding you have to do.\n
  • So that’s Confluence 4 for your end users and how we’ve to create an awesome content creation experience that will make your life easier. \n\nHopefully a lot of that makes your life's easier as wiki champions and reduces the amount of hand-holding you have to do.\n
  • So that’s Confluence 4 for your end users and how we’ve to create an awesome content creation experience that will make your life easier. \n\nHopefully a lot of that makes your life's easier as wiki champions and reduces the amount of hand-holding you have to do.\n
  • So that’s trying to make the content creation experience first class for your end users. \n\nBut what have we done about creating a first class content creation experience for your macros? \n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Before we jump into that detail, I just wanted to look back at the experience you’ve had as a plugin developer for creating content macros over our last few major releases and see how it has progressed. \n\nIn Confluence 2.x, you only had a wiki markup-only way of inserting macros. We gave users this big notation guide, a big bible that you had to memorise or check every second minute to know what you could do to create the macro: something that was a big hinderance to adoption, and really didn’t allow you to provide a good experience for you macro.\n\nIn Confluence 3.x we introduced the macro browser - simplified away to insert macros, mostly removing the need for the notation guide. The browser came with smart fields - allowing you to autocomplete some content to help you guide your users to create macros.\n\nWe also introduced macro autocomplete for power users to quickly insert these macros \n\nA much nicer experience than Confluence 2.x\n\nWhat about 4.0. What have we done in this area? \n\n
  • Now, first off, you’ve still got the Macro browser in 4.0 - and it’s still very useful. It’s great for simple macros. The macro browser acts as a real really nice abstract way for you to quickly expose content macros to end-users and to guide them as to what parameters can be used.\n\nBut what if you want to build something more. What if you wanted to create a your own macro creation experience, not limited by the macro browser. What if we can enable you to create rich , intuitive interfaces so you can create higher value, first-class macros for your customers. \n\nThis is what we’ve tried to do in Confluence 4...\n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • To show you how we’ve done this, I’m going to show you one example of the JIRA plugin in Confluence. This plugin enables users to search, create and embed JIRA issues onto pages. \n\nLet’s talk a look at this experience in 4.0.\n\n1. It starts with the macro insertion process. The first thing you can do here is have your content macro appear in the insert menu. A much more intuitive way than through the macro browser.\n\n2. Once the user selects this, Confluence hands over control to you. From here you can do what you like. In this example, we load a custom AUI dialog. In this dialog we can implement all the business logic we want. \n\n* Notice here how we aren’t restricted by the macro browser UI. We can do many things like search for JIRA issues, view recent issues or even create a new issue. \n* Now in this step of the process you can do anything you like here. Gliffy, for example load their flash-based diagram editor.\n\n3. Once the user has performed the action, a visual macro is inserted into the page. In this case, the user does a JQL search for an issue and embeds that onto a page. These placeholders that appear... \n\nare visual representations of what is going to render on the page. Here, we have a pretty straight-forward placeholder. But once again, you can customize this placeholder to render an image enabling you to provide a more WYSIWYG experience if desired. Another example: , the Gliffy guys render the image on the page.\n\nThe second thing to note here is that each placeholder gets its own property panel. You can extend this panel to expose in-line functionality to your end users. \nIn this example, we allow the user to quickly view the issue in JIRA from the edit screen. \n\n4. Lastly, what about editing the macro once it’s on the page? you too can control this experience by loading the custom dialog you had. \n\nYou’ll notice here that the user can actually go through this whole process without:\n- knowing what they are inserting is a macro\n- and without the need to memorise all the params\n\nThis really enables you to create your content macro as a first-class citizen on the page. \n
  • \n
  • Who is this done? Well, we’ve introduced many new plugin points for plugin developers in Confluence 4. Using just a small combination of these plugin points, you can easily create a content macro that really feels like a first-class citizen of the editor.\n\nRyan Thomas, one of the Confluence 4 developers, will be diving into the detail of each of these plugin points tomorrow afternoon, so be sure to attend that talk for more detail.\n
  • \n
  • \n
  • \n
  • So beyond 4.0 - what can you expect? \n
  • I’ll now hand it over to Charles Miller to talk about plugin developer improvements beyond 4.0\n
  • I’ll now hand it over to Charles Miller to talk about plugin developer improvements beyond 4.0\n
  • - RTE is focus of discussion of 4.0 and rightly so\n- Spotlight two developer-focused features in 4.0 that have nothing to do with the RTE\n- Intro self\n
  • HTML generation in Javascript: string concatenation or dom manipulation\nOn server-side we’d not think of generating HTML in Java\nWe tried a few things - GWT too heavy - picked something more lightweight… also from Google.\n
  • Used in GMail and Google Docs\nI’m going to call them Soy by accident\n
  • \n
  • Could spend all day going through features and you wouldn’t remember them anyway, so here’s a sample, the rest are on the website:\n - loop\n - branch (if/then/else also supported)\n - calling another template\n - built in functions (getText)\n
  • \n
  • Transformers for: i18n, minification, batching...\n
  • \n
  • RPC access to Confluence since 1.0\n140 methods - content creation/editing to administration\nGreat for scripting or external tools to talk to Connie\n
  • Tendency: SOAP - used by rich clients, RPC - scripts.\n
  • Can’t just reuse existing RPC endpoints - starting again from scratch\nMeans we have to redo all those 140 methods of functionality\nProtocol that is easy to use from the web.\n
  • \n
  • marshalling/unmarshalling requests\nstill some cool stuff like request batching so we support it\n
  • - including those provided by plugins\n
  • \n
  • \n
  • \n
  • Very likely compatible pre-3.5 (back to 2.9?) but not tested\n
  • Example plugin showing how to use JSON-RPC and Closure Templates together.\n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • AtlasCamp 2011: Confluence 4 and Beyond

    1. 1. Confluence 4 and Beyond Sherif Mansour Confluence Product Manager, Atlassian Charles Miller Confluence Architect, Atlassian 2
    2. 2. Agenda• Confluence 4 for • Users • Plugin Developers• Beyond the 4.0 editing experience • Releases • Other 4.0 developer improvements 3
    3. 3. Confluence 4.0 4
    4. 4. Confluence 4.0 4
    5. 5. 5
    6. 6. Fir! class experiences 5
    7. 7. Fir! class experiences 5
    8. 8. First class for content 6
    9. 9. First class for content • Value increases with content 6
    10. 10. First class for content • Value increases with content • Start of collaboration cycle 6
    11. 11. 7
    12. 12. You 7
    13. 13. You 7
    14. 14. You 7
    15. 15. 8
    16. 16. 9
    17. 17. Brilliantly Simple 9
    18. 18. 10
    19. 19. Packed with Power visual macros advanced tables 10
    20. 20. 11
    21. 21. Intelligent and Fast h1. Hi -> Hi *bold * -> bold :) ->autoformat wiki markup autocomplete + paste images shortcut luv 11
    22. 22. 12
    23. 23. Familiarly Social 12
    24. 24. First Class Content CreationExperience 13
    25. 25. First Class Content CreationExperience Brilliantly Simple Packed with Power Intelligent and Fast Familiarly Social 13
    26. 26. 14
    27. 27. 14
    28. 28. 15
    29. 29. Confluence 2.x 15
    30. 30. Confluence 2.x Confluence 3.x 15
    31. 31. Confluence 2.x Confluence 3.x Confluence 4.x 15
    32. 32. Confluence 4.x 16
    33. 33. Confluence 4.x 16
    34. 34. Confluence 4.x 17
    35. 35. Confluence 4.x 17
    36. 36. Confluence 4.x 17
    37. 37. Confluence 4.x 17
    38. 38. Confluence 4.x You control this experience 17
    39. 39. Confluence 4.x 17
    40. 40. Confluence 4.x 17
    41. 41. Confluence 4.x 17
    42. 42. Confluence 4.x • No macro parameter knowledge required • No need for the user to know about the macro • Create a more WYSIWYG experience • You control the experience, seamless integration 18
    43. 43. Confluence 4.x1. Insert menu2. Formatting menu3. Custom property panel buttons4. Rendered images as macro placeholders5. Footer actions6. Default parameter in placeholder 19
    44. 44. Confluence 4.x1. Insert menu2. Formatting menu3. Custom property panel buttons4. Rendered images as macro placeholders 2:15 pm Thursday5. Footer actions6. Default parameter in Ryan Thomas placeholder 19
    45. 45. 20
    46. 46. Fir! class 20
    47. 47. Beyond 4.0• 4.1 - Page Layouts• 4.2 - Template Improvements 21
    48. 48. Confluence 4 and Beyond Sherif Mansour Confluence Product Manager, Atlassian Charles Miller Confluence Architect, Atlassian 22
    49. 49. Confluence 4 and Beyond Sherif Mansour Confluence Product Manager, Atlassian Charles Miller Confluence Architect, Atlassian 22
    50. 50. Two cool things for 4.0…that aren’t the rich text editor Charles Miller Confluence Architect, Atlassian 23
    51. 51. Closure Templates 24
    52. 52. Closure Templates• Language-neutral• Compiled to Javascript for the client• Component-based http://code.google.com/closure/templates/index.html 25
    53. 53. Defining a templateexample.soy {namespace Confluence.Templates.Example} /** * Renders a Hello message. * @param name the name of the user */ {template .helloWorld} <div>Hello {$name}!</div> {/template} https://developer.atlassian.com/display/CONFDEV/Templating+in+JavaScript+with+Soy 26
    54. 54. Looping and Branching{foreach $child in $children} {call .pageInfo data="$child"} {param oddRow: index($child) % 2 /} {/call}{ifEmpty} {getText(‘page.has.no.children’)}{/foreach} 27
    55. 55. Invoking a templateexample.js var data = {name: “John Smith”} Confluence.Templates.Example.helloWorld(data); https://developer.atlassian.com/display/CONFDEV/Templating+in+JavaScript+with+Soy 28
    56. 56. Compiling a template atlassian-plugin.xml <web-resource key="example-resources"> <transformation extension="soy"> <transformer key="soyTransformer"/> </transformation> <resource type="download" name="example-soy.js" location="/soy/example.soy"/> </web-resource>https://developer.atlassian.com/display/PLUGINFRAMEWORK/Web+Resource+Transformer+Plugin+Module 29
    57. 57. Closure (Soy) Templates• Bundled plugin in Confluence 4.0• Server-side templates supported in 4.1 30
    58. 58. JSON-RPC 31
    59. 59. RPC • SOAP • Complicated XML protocol • Made easy with tool support • XML-RPC • Simpler XML protocol • Widely available librarieshttps://developer.atlassian.com/display/CONFDEV/Confluence+XML-RPC+and+SOAP+APIs 32
    60. 60. REST• Data transport agnostic (usually XML/JSON)• Pure HTTP, no need for library support• Limited Confluence API 33
    61. 61. JSON-RPC• Simple JSON protocol• RPC, not REST• Easy to use from the browser 34
    62. 62. Standard JSON-RPC• Too much protocol overhead• Still requires a client-side library http://groups.google.com/group/json-rpc 35
    63. 63. JSON-RPC plugin• Exposes all XML-RPC/SOAP services as JSON-RPC• Authentication via web login session• Supports both standard JSON-RPC and a web-friendly “light” protocol https://plugins.atlassian.com/plugin/details/40277 36
    64. 64. JSON-RPC Light Request POST /rpc/json-rpc/confluenceservice-v2/getSpace [ "DOC" ] 37
    65. 65. JSON-RPC Light Response POST /rpc/json-rpc/confluenceservice-v2/getSpace { key : "DOC", name : "Documentation Space", url : "http://wiki.example.com/display/DOC", homePage : "Home", description : "Product Documentation" } 38
    66. 66. Calling from jQueryjQuery.ajax({ url: Confluence.getContextPath() + “/rpc/json-rpc/confluenceservice-v2/getSpace”, type: “POST”, dataType: “json”, contentType: "application/json", data: JSON.stringify([ AJS.Meta.get(“space-id”) ]), success: function(data) { show_space(data) }, error: function(data) { show_error(data) }}); 39
    67. 67. Confluence JSON-RPC Plugin• Available from plugins.atlassian.com• Compatible with Confluence 3.5 or later• Will be bundled with Confluence 4.1 40
    68. 68. Putting them together… 41
    69. 69. 42
    70. 70. 43
    71. 71. Retrieve with JSON-RPCjQuery.ajax({ url: Confluence.getContextPath() + "/rpc/json-rpc/confluenceservice-v2/getPageHistory", type: "POST", dataType: "json", contentType: "application/json", data: JSON.stringify([ AJS.Meta.get("page-id") ]), success: function(data) { show_history_popup(data) }, error: function(data) { show_error_popup(data) } }); 44
    72. 72. Display with Closure function show_history_popup(historyData) { popup = AJS.ConfluenceDialog({ width : 865, height: 530, id: "page-history-dialog", onCancel: cancel }); ... popup.addPanel( Confluence.Templates.Plugins.Pagehistory.popup( { histories: historyData }) popup.show();} 45
    73. 73. Display with Closurepagehistory-template.soy /** * Displays the page history popup * * @param histories array of the history objects to list */ {template .popup} <form name="diff" method="GET" action="{contextPath}/pages/diffpagesbyversion.action"> <input type="submit" value="{getText(compare.selected)}"> <input type="hidden" name="pageId" value="{$histories[0].id}"> <table id="page-history-container" width="100%" cellspacing="0" class="tableview"> <tr> <th>&nbsp;</th> <th>{getText(heading.version.number)}</th> <th>{getText(heading.version.date)}</th> <th>{getText(heading.comment)}</th> </tr> {foreach $history in $histories} {call .historyRow data="$history"} {param current: isFirst($history)/} {/call} {/foreach} </table> </form> {/template} 46
    74. 74. Cheat it into the menu…$("#action-view-history-link").click(function(e) { show_history(); e.preventDefault();}); 47
    75. 75. 48
    76. 76. Download the codehttps://bitbucket.org/cmiller_atlassian/atlascamp-pagehistory-demo 49
    77. 77. Thank you• Learn more about Confluence 4: 1.http://atlss.in/confluence4 2.Hands-on Developer Sessions 3.“Pimp my Confluence Plugin” - Thursday, 2:15pm• Questions? charles@atlassian.com, sherif@atlassian.com 50
    78. 78. Thank you!

    ×