APC’s 7 Strategies for Implementing a Successful Corporate Wiki

Industry Week reports on the results of a study on wikis in business by the Society for Information Management's Advanced Practices Council (APC).

When considering use of wikis, CIOs should keep in mind that in reality, a large number of companies may already have employees using wikis for work purposes without the authority to do so. Perhaps a better question than whether unsanctioned use of wikis should be tolerated is: "How and what can be done to ensure employees use wikis productively and for the larger good?"
  • Comments Off

Developing JIRA Studio - Finding Common Ground

Plugins are arguably the killer feature for Atlassian products, as they allow you to tweak a theme or deploy full-blown applications within a familiar environment and infrastructure. The number of plugins available, especially for established products like Confluence and JIRA, is huge and the amount of extension points available to plugins basically give you full control of the host application. That much power comes with a price - your plugin is heavily tied to the product, and anyone who has done something similar, like tried to write an application on top of Microsoft Excel with a ton of VBScript, knows how sensitive your Frankenstein application is to host application changes and upgrades, let alone bugs and stability issues.

In JIRA Studio, we are working with the common platform of JIRA, Confluence, Fisheye/Crucible, Crowd, and Subversion, but the applications the user will visually interact with are JIRA, Confluence, and Fisheye/Crucible. If we want to add a new feature like, say, a top navigation bar, we have to add it to each product as a plugin. Since plugins are tightly coupled to each product's APIs, we have to basically write three different plugins. Here are a few of the differences in the latest version of Atlassian products we have encountered so far:

    Feature
    Confluence
    JIRA
    Fisheye
Components Setter injection via Spring 2.0.6 Constructor injection via PicoContainer Setter injection via Spring 2.5-m1, only used in a few places
Web actions Uses WebWork 2.1.5 Uses WebWork 1.4 (forked) Uses WebWork 2.1.7
Settings persistence Bandana allows you to store any serializable object globally or against a space PropertySets only support Strings globally or against a project XML (via XMLBeans) can be added to the main Fisheye config file globally or per repository.
Logging Log4J 1.2.8 Log4J 1.2.7 Log4J 1.2.11
HTTP calls Nice HttpRetrieverService that abstracts HttpClient, deals with authentication automatically (between Atlassian products) Nothing provided, includes HttpClient 3.0 Nothing provided, includes HttpClient 3.1

As you can see, when writing even a moderately complex plugin, you have to be very aware of the differences across the applications, even in fundamental areas like logging. Furthermore, the differences will force you to write three plugins instead of one: three times the code, unit tests, functional tests, and potential for bugs.

Creating the Studio Application Access Layer (SAAL)

For our own sanity, we've created the Studio Application Access Layer (SAAL), which is a set of service provider interfaces for infrastructure-level features that allow a plugin to rely on key services provided by a single API without having to deal with the multiple implementations. SAAL includes interfaces for the following features:

  • Service object lookup
  • Logging
  • Settings persistence
  • HTTP calls
  • Internationalised message passing
  • Plugin upgrade framework

Our thought is to grow this layer organically for our needs when writing plugins for JIRA Studio. This allows us to a) minimize the amount of code to maintain and b) minimize the conceptual surface area for plugin development. The end game is to have the code interfaces and classes put into Atlassian Plugins, with the individual products responsible for the product-specific service implementations.

This is a good example of how creating JIRA Studio is actually helping the core products as much as creating a new one. You'd think that every product at Atlassian would follow the same development practices, use the same libraries, or even implement individual features the same way if developed at the same time, but alas, that is not the case. Different teams have different leads with different developers, which all amounts to slightly different interpretations of Atlassian ideals, and of course it isn't always feasible or even advisable to, for example, spend months rewriting your web layer with no customer benefit because WebWork 2 was released. A secondary goal of JIRA Studio is to confront those technical differences and try to wrangle them into alignment for the benefit of the customers of both the Atlassian product and JIRA Studio.

  • Comments Off

Atlassian Wants to Sponsor Your User Group!

663670843_ec38543813.jpg

Atlassian loves user groups and wants to help make yours a raging success.

Here's what we can offer:

  • Pizza and drinks
  • Book of the Month
  • Nifty Atlassian Swag (w00t!)
  • And oh so much more!
And why not invite us? If an Atlassian developer is in your area and you'd like for us to attend, we'll do our best to stop by.

scott.jpg

For more details, check out our User Group Sponsorship page or feel free to e-mail me and I'll hook you up!

For more information contact Laura at lkhalil [at] atlassian [dot] com

For a complete list of all the User Groups we sponsor, click here

This February, we're sponsoring:

Colorado Springs Open Source User Group
Date: Thursday, February 28, 2008 at 6:30 PM

Scott Ryan will present on the Open Source Richfaces project. Scott is an Open Source Evangelist and board member of the Denver Open Source User's Group.

  • Comments Off

The New Guy on Exposing Yourself at Work

As I mentioned last time, everything we do here at Atlassian is on our internal Confluence Wiki, available for everyone at Atlassian to see and comment on. I learned this the very first day, when my boss asked me to put a short bio up on my Profile.

"Sure, no problem. Once I'm done, how do I tell people it's there?" I asked.
"As soon as you save it, it'll show up in everyone's RSS feed, and also be on the Dashboard page."
"Ummm, everyone? Like, everyone in the whole company?"
"Yup."

comments 2.png "Oh, OK." I paused for a moment, thinking that through. "But when I write something like a Launch Plan, how do I publish that to just the Marketing team so I can get some feedback before I send it out?"
"You don't. Same thing, when you save it to the Wiki, everyone will see it. And have the chance to comment on it."

I had to let that sink in for a moment. The idea that everyone in the company: the founders, the engineers, the sales guys, that all of them would be looking over my shoulder as I did my job was sort of terrifying. I can be a fairly private person, and having to sit out in the open was bad enough, but now you want to make everything I do public?

Three weeks later, and I think it's awesome. Doing everything out in the open creates a sense of cooperation & teamwork greater than anywhere else I've worked. Everything I do harnesses the Wisdom of the Atlassian Crowd. When I get feedback, it's extremely valuable. And on the other side, the ability to give others feedback makes me feel more plugged in to what's going on.

So here I sit, exposed for all the world to see. And loving it.

(By the way, Confluence has, in fact, a very powerful set of security features. It wouldn't be hard to setup the wiki differently and isolate different groups or projects. But that's not how we've choosen to do things here.)

  • Comments Off

When I started out…

Mandala.png

We had a recent visit from the National Computer Science School (http://www.ncss.edu.au/) where students experienced the software development environment first-hand. We made them some funky t-shirts and I was to believe that was the end of my responsibilities for the event. Our very own Chris Owen (Senior Confluence Developer) had other ideas! Chris asked if I would write a post on: my experiences as a user interface designer; and ways to get started in the industry. This post is for all the future user interface designers out there!

When I started out, the position of user interface designer didn't really exist in Australia – there certainly wasn’t any tertiary education available. Trained in traditional graphic design at TAFE, our year were the first to have computers - of which, no-one knew how to use (especially the teaching staff!) My computer class was spent helping classmates as I was already comfortable with using computers to design and illustrate - this was a time when Letraset was all the rage and our use of computers would predominately involve typesetting. We would create an illustration by hand, create typography on the computer, print it out, and then trace it on to the illustration to be inked or painted. We really had to work things out ourselves!

Fortunately, I answered an advertisement for a graphic design position within a software company developing trading applications for Reuters. I attended the interview and got the job - causing much consternation among my peers and teachers who, at that time, didn't comprehend what I would be doing (neither did I really). They wondered why I didn't want to work in advertising as a graphic designer.

While at the software company, I was lucky to have a Manager who understood human factors and really helped to develop my skills in that area. I began attending all the courses on user interface design that I could find, leading me down the path of user-centred design. User-centred design is a method that involves end-users and client stakeholders in the design process. It's an important discipline to understand for any flavour of designer.

Becoming involved in user-centred design, with a background in graphic design, enabled a multi-disciplinary approach and opened a few more doors then otherwise possible. Generally speaking, the roles involved in user-centred design include: user researchers; information designers; interaction designers; and visual designers. The people working in user-centred design arrive from many and varied disciplines that include: psychology; anthropology; business analyst; technical writer; industrial design; and of course graphic design.

Over the years my experience has grown with the industry and includes: an innumerable amount of research sessions with users; working with some of the smartest people in the business; attending and presenting at conferences; teaching user-centred design; and developing online visual styles for many large corporations. Arriving at my present location involved: a fair portion of luck; some time spent unemployed; and a lot of trial and error. For those of you just starting out there’s no shortage of user interface design work, however, there is a shortage of talented user interface designers!

My experience as a user interface designer has included consultant roles on projects that differ from client to client. Consulting provided a huge level of variety and helped to build an excellent understanding of the end-user and their experience with my designs. My preference these days is to work in-house where, over time; I can gain an in-depth and detailed understanding of how our products are used and hopefully, provide a satisfying experience for our customers.

Consultant or in-house designer aren’t the only divisions in user interface design, there’s a wealth of disciplines to encounter whether you prefer: academic pursuits and research; talking to and understanding people; making pretty pictures; or just making the world a better place to live in. It’s really down to what you want to do!

About Jason
I work in the Design team - a small group of three that includes: a Designer (that’s me); a Junior Interface Designer; and a Design Engineer. While we don’t employ strict user-centred design techniques, we do draw from a wealth of knowledge gained through my experience as a user researcher. We also eat our own dog food - meaning we use our own products and all design work is implemented on our company Extranet to be critiqued by one and all. You can find me on Linked In: http://www.linkedin.com/in/gooey

To get you started in user interface design here’s a small list of useful resources:

Australian companies:
The Hiser Group (www.hiser.com.au)
Different (www.different.com.au)

Professional associations:
OzChi (www.ozchi.org)
Usability Professionals Association (www.usabilityprofessionals.org)

Very useful reading:
The Design of Everyday Things by Donald Norman (http://www.jnd.org/books.html)

  • Comments Off

Don’t panic, we are from Poland

Hi,

I'm Janusz Gorycki, Manager for Atlassian's newest office. We just started working for Atlassian on January 7th. We are from Gdansk, Poland and we are the staff of Atlassian's European office, located here.

2179214744_3fa2dd2fd8.jpgThere are currently eight of us - seven software developers and their manager--me. We joined Atlassian as a team, having moved from a giant, multinational corporation, where we had been working in the IT department. We're all experienced developers - for example I started my professional career in 1994 - some of the readers of this entry were probably in the kindergarden at that time ;).

So, how come we ended up here? That is quite an interesting story, proving that sometimes having weird ideas and courage to try them pays off. What happened was, we became increasingly frustrated with soul-sucking environment of the aforementioned corporation. With rumors of layoffs to come, which seemed to have become the standard operating procedure with our former employer, we weighed our options. Preferring to remain in command of our lives, we started looking hard for alternatives.

One of us had been a fan of Atlassian, its products and its culture for quite some time, and he suggested that we send the nice folks from Sydney an email, proposing that we work for them. The chance of success seemed minimal, but we decided that there was nothing to lose - the worst that could happen would be no answer, or a "no" answer - something that somebody looking for a job experiences quite a lot :).

To our astonishment, Mike Cannon-Brookes answered our email. Moreover, he was actually quite interested in the idea of employing somebody in Europe! Next thing we knew, three Atlassians were in Gdansk, interviewing us for a job. Moreover, all of us passed the interviews with flying colors (yes, we are that good :)) and were offered a job!

So, at the moment we are working hard to start a full-blown European-based support organization, so that all of you folks from the "Old World" will not have to wake up early or stay late to get help with JIRA, Confluence and other Atlassian products you have purchased.

Moreover, we have also started development of some really cool software, which you will really like. I guess we will announce it in due time.

Meanwhile, take a look at our office.

  • Comments Off

The New Guy on Climbing the Learning Curve

The bottom of the learning curve is a pretty awful place to be. It feels like everything you know is wrong, like everyone else knows some secret that you haven't figured out yet. It made the start of my second week at Atlassian a lot less fun than the end of the first one. I was grumpy all the time, arriving home at the end of the day feeling like I'd just gone a few rounds with Jens Pulver.

But as the week progressed, I noticed my mood improving. I didn't feel quite as stupid on Friday as I did on Monday. Part of this, of course, is just time. Every day I was moving higher up that damn curve. But I seemed to be moving along that curve a lot more quickly than I had in the past.

Why? What made this learning exercise different than every other time I'd started a job? Two things: a Wiki, and Atlassian's openness.

Climbing the learning curve at work isn't really about learning new skills, it's learning how to apply your existing skills in a new environment. It's all about learning how "it" gets done at the New Place, whatever "it" might be. There are new procedures to be learned, new acronyms to figure out, and new people to get to know.

Everywhere I've worked for the past 10 years lived on email. Email makes climbing the learning curve hard. It's pretty tough for the New Guy to learn how things work, because all the conversations are closed, at least until you get your name on the To: line. And once you do get added to those threads, you've got no history or context, since all that was on some other thread from 2 weeks ago that you didn't get to see!

reducingemail.png

But with a Wiki (like Confluence), everything is available, whenever I want it. I can browse around, looking for information that's relevant to me. Once I find a topic I want to learn, I can read the history. I can dive as deep into the details as I want. I don't need to wait for others to invite me into the conversation, I can take the initiative and learn what I want, when I want it.

Of course, the written word, no matter how easy to find, is no substitute for sitting down with a colleague and finding out which end is up. That part of the curve is pretty much the same here as anywhere — although these are some of the friendliest people I've ever worked with. Every time I've asked someone for help, everyone been incredibly open and generous with their time and energy. There's no question that's been a huge advantage in climbing the curve.

And the Wiki does have downsides, the most obvious being information overload. There is so much on the Wiki, it can be overwhelming. Confluence's ability to create RSS feeds of stuff makes it pretty easy to keep track of the areas that I care about, but it was a lot of work figuring out my "mental filters," and learning which parts of the Wiki I don't really need to monitor.

Finally, just having a Wiki doesn't do a whole lot. It's just a tool, after all. How Atlassian uses our Wiki has had the largest impact on climbing this curve. Everything we do is done on the Wiki, not hidden in a Word Doc somewhere I can't find, or tucked away in some guys inbox that I can't see. Whatever I want to know I can find on the Wiki.

Need to know when the next version of JIRA launches? Find it on the Wiki. Don't remember who writes JIRA's user documentation? Search the Wiki! Need to know our FedEx account number? Its on the Wiki! It's a product of Atlassian's openness — everyone's work product is out in the open, for anyone to see, comment on, and search for.

And if you think that last part is also kind of scary, well, me, too. More on that next time!

  • Comments Off

Confluence connects with Lotus Connections

lotusphere.gifAt Lotusphere today, IBM announced an integration they developed to connect Atlassian Confluence with Lotus Connections. Lotus Connections is a platform for social computing that includes blogs, workflow, and now the world's most popular enterprise wiki.

We were told that the solution would first be rolled out internally before being made available to customers. IBM has been using Confluence for a few years now.

From our point of view, it's more great news for Confluence's sex appeal in the enterprise. While wikis allow for unstructured and free-form collaboration and sharing, many companies are seeking an all-in-one collaboration and workflow platform. Lotus Connections with Confluence gives them the best of both worlds.

And of course there's also the SharePoint Connector for Confluence that we jointly announced in October with Microsoft. Isn't it comforting to know that no matter where you start, you can always connect with Confluence.

  • Comments Off

Cutting-Edge Plugin Released for Confluence Hosted

We're pleased to announce that EditGrid has created a plugin of their online spreadsheet that is now available to Confluence Hosted and Confluence Enterprise Hosting customers.

EditGrid's online spreadsheet lives entirely in the web browser--no browser plugin or Flash required. It allows for real-time collaboration on spreadsheets in Confluence, ensuring that co-editors are always working on the latest version.

The second most popular online spreadsheet on the market, EditGrid has some of the most advanced functionality available.

Feature-600.jpg

Features include:

Real-time updates: allows multiple users to see dynamic changes to a spreadsheet.

Industry leading features: more than 500 functions, the greatest of any online spreadsheet.

Remote data update: retrieves live financial data on the Web and stores it in a spreadsheet

Import and export: accepts common file formats such as Microsoft Excel, CSV, HTML, Gnumeric, Lotus, OpenOffice and assigns fine-grained access control.

Live Chat: enables multiple users to discuss changes from within EditGrid, no need to switch to another chat application.

What could be better than that? Well how about that the plugin is completely free to all Confluence Hosted and Confluence Enterprise Hosting customers.

Confluence Hosted and Confluence Enterprise Hosting customers include The Wall Street Journal, Nintendo of America, Accenture and Illinois Wesleyan University. To learn more about Atlassian's hosted software and for a free thirty day evaluation, click here.

And for the full documentation on EditGrid for Confluence Hosted, click here.

To read the entire press release, please see below.

  • Comments Off

The New Guy on Landing the Job

Hello, world!

My name is Jeff Leyser, I'm the freshly minted Product Marketing Manager for JIRA, and I'm just wrapping up my first week here at Atlassian. Over the next few weeks and months, I'm going to be blogging about what it's like to be the New Guy.

The first step to being the new guy is getting hired. Lately, Jonathan Jeffrey, Charles, and Mike have been blogging about resumes, but it seems to me that that's only half the picture.

A good resume is marketing — it differentiates you from the pack, and motivates people to want to talk to you. But you close the deal in interviews. Like so much around here, interviewing at Atlassian was similar to everywhere else, but different.

The process started with a phone screen. But I didn't have to waste my time with an HR "gatekeeper" — this phone screen was with Jon Silvers, our Director of Marketing, and now my boss. A few days later I came to our San Francisco office, and met with a whole bunch of folks, including Jon, a couple of people who would become my peers, and Jeffrey, Atlassian's President. Several hours later, I left exhausted, talked out, and burning with desire to work here. Most striking to me was what happened during those interviews. Sure, we reviewed my background, and I told them about what I've done. But there was a lot of back and forth — a real conversation.

Talking about the industry, how I saw Atlassian, and what I could expect once I got here. The interviews were about making sure I was a fit or Atlassian, and that Atlassian was a fit for me.

A week later, I came back to talk to one more potential peer, and then a week after that, I had a new job! From initial contact to a job offer in less than a month. That's amazingly fast -- something else that's a bit different around here.

So, a few thoughts on my first week:

  • This is the most fun I've had on the job in quite some time. Everyone I've met is smart, passionate & dedicated, and they've gone out of their way to make me feel welcome.
  • I had some worries about working in the open floor plan, but it's been great. I feel more like I'm on a team than ever before.
  • Everything, and I mean everything, goes on our internal Confluence wiki. At past jobs, it's taken a long time to figure out who does what, and which end is up. Having spent this week reading hundreds of Wiki pages, I already feel like I know what's going on, and what the priorities are. On the other hand, my head is swimming with all the new information I've absorbed!

Finally, if all of this sounds appealing to you, consider joining us. We're hiring in both Sydney and San Francisco.

  • Comments Off
Next Page »