#officestack
Explore tagged Tumblr posts
Text
Setting up Your "Office Stack"
Open Source Principles versus Getting Things Done
Imagine you are starting a new company: you have a team in-house and around others scattered around the world.
I set up the tools for another company 6 years ago. And was doing it again recently for Buddycloud. And how times have changed.
In light of recent spying events, code developed in a transparent manner (usually open source) is increasingly important. Being free both in dollar terms and in time spent talking to a sales team is also a huge win. But setting up and managing an open source office stack can quickly become a time-sink.
Here's a quick retrospective to how we used to (about 6 years ago) set up team collaboration. And how we've done it today at Buddycloud HQ.
Source Code and Issue Tracking
Then: Apache+SVN+LDAP+WebSVN+Trac
Details are sketchy, but I remember the pain level was high. "Back in the day" one rolled with subversion <shudder if you will>, fronted by Apache and some kind of LDAP authentication. That got you source control.
For bonus points and to view your code, you'd install WebSVN. Oh, dark days! Of course, you'd want to track bugs: Trac was the go-to tool for this. And came with a whole new set of dependencies. These were all cutting edge back then.
Now:
Let's be clear - we weren't going near SVN for source code wrangling. All of the Buddycloud repositories are based on GitHub. It's hard to remember the pre-GitHub existence. As one of the best platforms to share code, GitHub offers us the chance to share all of our projects online, forming a straightforward flow to collaborate together in solving issues, commenting proposals and improving the code of our projects. And there's no need to configure apache virtual hosts or buy SSL certificates for svn.example.com.
Currently, we have nearly 40 repositories. And almost zero admin overhead.
Team Organisation
Then: Hire a project manager
Just a few years ago one would hire full-time cat-herders^WW project managers to look after a product team. Their task was to help the team answer "what should I do next?", "what's the big picture?", "what are my colleague working on?"
To answer these questions would take lots of meetings. Some of the worldwide team would be waking up early to jump on team calls. And some would be staying up late to synchronise plans. Add in meetings digging into deep-hack-mode time and you quickly have a non-developer friendly environment.
Now:
Trello tasks are added to different topic boards, you tag your work colleagues to them, set up due dates so you get reminded when you have to get your tasks finished and get notifications according to your interests, amongst many other features.
There's 101 organisation tools out there: We use Trello because of its simple, but effective approach as an agile task tracking/planning tool [and it's free].
I also highly recommend using Trello on your phone to get into a GTD-type workflow and free up your mind: quickly capture thoughts and tasks for when you are back at your desk.
Email, Calendaring and Documents
Then: roll it yourself: Postfix, Cyrus, Amavisd, OpenOffice and trying new open-source calendaring apps every week.
There was a day when setting up an office involved: Order server from Dell, Install Linux, Setup Postfix, hope you weren't on a DNSBL, configure something else in /etc that you kinda understood but could never be totally sure about, tweak, configure some more.
And then you'd wonder when there was going to be a good calendering solution released as open source. And be sorely reminded that the solution was called Exchange. Then you'd hope you could get by without calendaring.
Now:
We like open source: the Buddycloud stack is all released as open source. But we're also keen to spend our time on adding value to Buddycloud. Not tweaking spam-rules. Or looking at Exchange CAL costs. So we switched over to Google Apps: Gmail for email. Calendar for planning our meetings and organizing our schedules. Drive for storing and sharing files amongst the team. Hangouts to communicate with far away team members or developers of our community.
We'd rather be using open source. But we'd rather-more be spending our time on shipping Buddycloud code.
(BTW: We started having a Hangout Buddycloud’s Developer Call every Tuesday at 2:30pm GMT+1. This is aimed at bringing other Buddycloud developers and integrators together to share and get help from the dev-team and each other.)
Mailing Lists
There are two uses for mailing lists:
discussions: we do a lot of consensus building on buddycloud-dev. A good mailing list helps us work through an issue knowing that the solution is well crafted.
announcements: [strangely] a bunch of people seem to still want to get news updates through email. And we are not going to judge them for that.
Then: Mailman + Postfix
Over the years, mailman was the way to power mailing lists. It's good software. But installing Mailman involved debugging messages like "Premature end of script headers" or "Mailman CGI error!!!" And things always felt fragile. I'd tip-toe around our email stack with the through "perhaps I'll hold off upgrading Postfix incase Mailman stops working".
I'd have paid for a branded-hosted solution. It would have been nice to have someone else looking after this for us.
Now:
To solve the discussion list problem - we used Google Groups. Our asynchronous communication means we can work without interruption. Developers can also sign-up on a modern web page. And others can just chip in their 2c through the website without needing to join a mailing list. Yes, I feel like a sell-out to the pure open source solution. Yes, I enjoy my free time. As I age I value the latter more.
And for announcements-only lists, MailChimp helps us manage lists of users, Buddycloud-integrators and fans. And shoots off emails to them with updates. List is here if you are interested in a more read-only relationship.
Social Media
Then: We'd go down to the pub or beer garden and tell our friends what we were building. They'd tell their friends and the physical "social graph" would relay the message. Or we'd make a post on Slashdot.
Now:
Everyone has their own flavour of social network. Buffer spools up announcements and pushes them out to each network. Right now, one Buffer post = a post on Twitter, Facebook, LinkedIn and Google+. And it gives us metrics on reach that keep Mizar in Marketing happy.
A lot has changed in just 5 years: complexity has increased and we're pushed towards solutions that wrap up the complexity in hosted offerings. Us developers and open source advocates like our principles. And tinkering with new software is a great procrastination technique.
But we also like hosted solutions that let get on with tasks further up the stack.
BTW, Buddycloud builds a hosted messaging stack. Build on open source. Released as open source. And you can install it yourself and tinker with settings. Or just use our hosted option and do something else with your free time.
What are you using for your "office stack"?
1 note
·
View note