Business Cards!

1 September 2010

We’ve been in business for 7 months so its about time we got some business cards printed, especially since we’ve finally settled on a logo!

The company is called EndGame, so for a bit of fun we thought we’d put a maze on the back of the card.  The point of a maze is to get to the end, ie that’s your EndGame.  Beautiful.  The logo is sort of half isometric, so we figured the maze needed to be isometric so that it could join up with the logo as the finish point.

Anyway, one thing led to another and soon I’m playing with a depth-first algorithm to create the maze, a winding number algorithm to keep the maze inside the right space and drawing lines at 30 degrees in SVG.

But that wasn’t enough, if we can draw one maze, then why not draw 1,000 mazes, so every card can have a unique solvable maze.  Everyone’s EndGame in life is different, so this seemed like a good idea.  To quote our printer, “that is out there and very different haha “awesome” and no -one has ever done this in my 20 + years of printing so your a first … ”.

That’s it.  If we’re the first, then there’s no going back.


Hive in BETA

26 August 2010

Its a relief to see Hive finally out there in BETA and to see the feedback starting to flow in.  Hive is a project we’ve been working on this year and has been a lot of fun.

Hive is a SaaS app for scheduling projects and people.  Its perfect for people with a team and a bunch of projects to manage.  Its based on the premise that most people hate project management and hate project management tools even more.  Hive lets you do in a visual, fun and collaborative way what people revert to spreadsheets for – to get visibility of what projects are on the go, who is working on them and to make sure you’re not over (or under!) capacity.

Hive is built as a one page web app and its always fun to run it in full screen mode and have people not believe its a web application.  We’ve had a lot of fun working with Darryl Gray who designed this stunning application.  Its been nice to have a project where we can make use of  the shiniest new CSS and javascript techniques with lots of drag-drop and animations, integrating SVG and wiring it all up to give a seamless user experience.  Seamless except for the bugs of course – but that’s what a BETA version is for!

As far as features go – the best of Hive is still to come.  Under the hood we’ve implemented live collaboration and its quite fun watching another user’s changes animate on your screen (this isn’t available in the current version).  We toyed with allowing viewstate changes to be sync’ed across users too – which is fun, but I’m not sure if its that useful.  Because Hive is based on an event model, we’ll be adding undo and redo support soon, but I’ll have to save details of that for another blog post.

We’ve also got some great reports, sharing, publishing and integrations planned, but the most important features to add going forward will be the ones asked for by users, so make sure you sign up at www.tryhive.com, have a play and send us your feedback.

p.s. The screenshot above features a slightly older version of the UI.  The latest version is even nicer.


Finishing – part 2

11 August 2010

“The end of a thing is better than its beginning, and patience is better than pride.”

Put another way, finishing is better than starting.

So true and yet so hard.


Charts: buy, build or borrow?

6 August 2010

Its the same old question everytime you need some software. Do I buy it, build it myself, or find someone who’s already got it and convince them to share it?

Like any software developer, my first instinct is to build it – but then the business side of my brain kicks in and I start thinking about stuff like opportunity cost and cost/benefit.

We had this choice to make recently with charts and the answer was obviously to use one of the many great solutions out there. But, in the end it didn’t stack up and I was surprised that the right choice was just to build our own.

We were looking for something that …

- Could render to HTML, PDF, iPhone, iPad (rules out the great looking flash and javascript options)
- Could get 20 charts in a PDF with high enough resolution to show each chart full screen and without blowing out the size of the PDF (rules out using images)
- Would give us complete control over styling including being able to change style mid-series (rules out half the options)
- Is configurable via an XML template (rules out the other half of the options)

Actually, configuring any chart from XML is pretty standard when it comes to presentation, but not when it comes to the data. Charting solutions are generally not aware of the context of the report – they are only aware of the data values being plotted. We wanted a solution that could be aware of the full report, so that we could quickly change the data being charted. Like in Excel – when you have the data in one sheet and you can pivot/sum/group/etc and chart whatever you like.

So, our solution was to build a .NET SVG charting library that is report aware. SVG gives us full control over the style of each chart, series and data point.  Instead of just outputting SVG, every aspect of the chart can be styled using SVG.  It also allows us to render numerous scaleable charts to HTML and PDF without blowing out the file size.  Most importantly though, the charts are aware of the report context – so a chart no longer plots points – it plots a formula over the data. For example, to show a conversion rate, the formula “SALES / VISITS” could be used in the chart (where sales and visits are two predefined metrics). This gives us a few advantages:

1. The chart can be customised via XML or a UI to show any visualisation of the available data. A quick update and we’re now showing SALES and VISITS as separate series and comparing them to last year, or filtering by region.

2. Charts can be synchronised across a report, ensuring a consistent use of colour and allowing some smarts for visualising the data best.

3. Charts can be interactive on the web. A user can drill into the conversion rate to see how it was calculated, or highlight an area of interest, or filter the report by a particular region, or pivot the chart. We borrowed the dimension/metric/date model from Google Analytics to give data as many dimensions and metrics as we needed and introduced a hierarchal subject, allowing data to be easily rolled up and summerised.

It turns out that drawing the charts is the easy bit and managing the styles and data behind the charts is the high value bit that is sorely lacking. The false ecomony in our case would have been to buy the bit that draws the charts and then to have our options severly limited for managing the styles and data.

We’ve already deployed these charts over three projects with more to come, so the investment is paying back fast too.


Finishing

28 July 2010

We’re in the middle of the “finishing” phase of three v1 projects right now, and since my software lifecycle on this blog is sorely missing any comment on finishing, I thought I should share a few thoughts.

Firstly, what is finishing? Its what used to be called QA or testing, where the developers hand over to the test team and then retrospectively update the specification to match what’s been built.

I’m not that fond of the QA at the end of a project approach. If you look at risk based testing, then you identify risks up front and work throughout all stages of the project to mitigate the risks. When you get to the end of the project, there shouldn’t be that much QA left to do – just finishing. We all know that the last 5% of a project takes far longer than 5% of the time and this is a really important time where hundreds of small decisions are made.

The other thing I’m not fond of is this tension between QA being at the end of the cycle so there’s always time pressure, but also the idea that developers should hand over completed bug-free code. I tried that once and all it meant was that I had to go through the entire QA process myself (which I’m really bad at) – just to hand it over to be QA’ed again.

Finishing is about shipping working software. Its when the feature development is complete (or when you hit the 80/90% mark in your cycle or budget) and when developers, testers, BAs and everyone else involved start to focus on shipping instead of building. There will be bugs to fix, there will be missing functionality to build, there will be enhancements, there will be style changes, there will be a lot going on and its not all QA. The goal is to turn a feature-complete project into a quality shippable project and it doesn’t rest on the shoulders of the test team while the developers move onto the next project.

So, finishing is actually quite fun, I just wish we stopped setting up our projects to converge like this!


Search

22 July 2010

We needed a site search in a website we built recently, so we tried out Google Site Search and its great.  Using the $US100 per year plan, we’re able to have a fully integrated search with about 24 hour turnaround on indexing.

Google site search looks at the XML sitemap (http://www.tribedesign.co.nz/sitemap) to get a list of pages to index and the priority of each page.

One of the main pages on the site is the portfolio, which is a dynamic page using ajax to load products.  To make each product searchable we created a unique url for each product that includes the product details in the html then listed these with higher priority in the sitemap.  We also took the FAQs and ‘Making it easy’ pages, which are full of rich text and split them into one page per FAQ/section to make the search results even more relevant.

It works very nicely with the search results embedded in the site and you wouldn’t even know it was powered by google, except by noticing the quality of the search results.

About TRIBE Design

Great things formed in metal begin with great design.  And, making the best of design means being a trusted expert of the craft.  Tribe is a design-led maker of metal products that touch an amazingly diverse range of people and purposes.  From military metalwear to motoring memorabilia, fashion accessories to film props, competition medals to corporate gifts, it all starts and finishes in one place, right here in New Zealand.

http://www.tribedesign.co.nz


Invest well

1 July 2010

One of the things I love doing is investing into business and software – but equally as much into my kids and people around me. EndGame refers to starting with the end in mind so that we can invest well.

Earlier this year I came across KidsCan (www.kidscan.org.nz), a charity in New Zealand that provides some basics to NZ kids in need. This struck me as a great opportunity to invest well. A pair of shoes, a raincoat and breakfast is a small investment into a child that will flow through into their whole life –  learning well, playing well, feeling well, holding their head high.

Have a look at www.kidscan.org.nz. $30 buys a raincoat or a pair of shoes and socks. $120 provides a child with breakfast for a year. That’s a good investment.


Hope Room

29 June 2010

We’re stoked with the new furniture in our Hope Room.

Why a hope room? Its a constant reminder that every meeting should start with a positive outlook, anything is possible. We’re here to be creative, to dream big. The Hope Room is a place to know your end game, and then figure out the next steps for getting there. Its also a term used by our friend, Bob Hartley.


Brand

27 June 2010

Five months into the new business, it really is time to do some branding (or at least get a business card printed), so last week we sat a few designers down in a room and told them to go for it. Of course, brand is a whole lot more than a logo, font and some colour. Its a promise, a story and all that. Well, it took us three months just to come up with a name, thinking of all that brand stuff without sounding cheesy is hard.

Anyway, here are some ideas – feel free to comment and cast your vote for or against cheesy-ness.

EndGame

- Well planned, well designed, well built, well invested
- We know our end game – and what steps to take next
- We know what we’re good at – and what to say no to
- We like to win – but we enjoy the road there more
- We love quality – and we love it more when you can’t see it
- We do things well – and we will always do better next time

And here’s the EndGame arrow, which is in the process of being tidied up, fattened, coloured, drop-shadowed, 3D’ed, un-3D’ed – but hopefully very soon will be featured on a business card and which points up because that’s where we get our inspiration from.


BusinessSavvySoftware.com

22 June 2010

Is it just me, or are people generally getting tired of “experts” who’ve done it once, then become full time coach?

I am, which is why I switched off google reader at the start of the year and stopped blogging.

I really admire people who’ve succeeded, then back themselves to do it again instead of just advising others how to do it.  That’s how Xero started and there’s so much more to learn by watching people do it than talk about it.

This year, I started EndGame – a software house that is full of purpose and I love it.  Its much more fun to do the stuff than to read about it or just talk about it.

There is some stuff that I’m itching to share along the journey, so I’m reviving this blog under its proper URL BusinessSavvySoftware.com and maybe, one day, I’ll even get it designed since RSS readers are so last year.


Who to employ first?

22 February 2010

For a startup business, its one of the biggest questions, risks and costs – who do I employ?

In any small business everyone wears a few hats, so it would be great to find someone who can do a variety of things.  But does that mean they are going to be expensive?

The good old rich vs king argument says you should employ senior people if you want to be rich (but lose control because you don’t hire someone with experience and ignore them) and you employ less senior people if you want to be king.  I’d rather just have someone with a hunger to learn, a can-do attitude and a good fit for the culture I’m trying to build.

So, here’s the first three people I want to work with:

#1 has got to complement my skills and since we’re building web applications – that means I need interaction design, graphical design and a CSS/JQuery guru.  That might sound like three people – but like I said, you’ve got to wear a few hats so lucky I know just the person and between us we can cover the entire process end-to-end and build some stunning software.

#2 there are a lot of possibilities here, but the best is someone to focus on my weakness(es) – which is the operations side of things allowing me to focus on development and running the business.  I’ll never forget one of my best customers saying to me, “I love your product, but the only time you ever talk to me is to chase money – so I’m going to switch to this other product”.  Without good operations, its so easy for things to spin out of control – so having someone to take care of this side of things will be massive.

#3 is to replace me.  I want to run the business, so I need to replace myself as a developer.  I also want to have time to learn about the parts of business that I don’t have so much experience in, so I figure I’ve got to make myself redundant as a developer.  Not that with 2 developers I’ll exactly be redundant – but at least we can deliver software without me getting in the way.

I’m really pleased to have found great people for the first two roles – people who share my values and excitement for what lies ahead.  #3 will have to wait a little longer, but if its you then I’d love to hear from you.


Tweet4YourTee4Fun

16 February 2010

Tweet4YourTeeOur first micro-site is up and of all things – it sells tee-shirts!

Check it out: http://www.tweet4yourtee.com

Over a Roti Chenai a couple of months back, we were talking about having a play with the Twitter API and how we could have some fun.  The idea hatched that it would be cool to have a tee-shirt with our Twitter name on it – so Tom and Warren went to work designing a site, designing some tees and organising the production and distribution side of things and last week we built the site.

The site still needs a bit (well – a lot) of tweaking, but we’ve managed to make use of the Twitter API in a couple of ways.  The homepage shows the twitter name of the last person to mention @tweet4yourtee, the On Twitter page shows the most recent conversations with @tweet4yourtee and the order page will automatically apply a discount to your order if you’ve mentioned @tweet4yourtee in a tweet.

Thanks to the reach of Twitter, the first sale happened within an hour of the site going live and while I wouldn’t say its spreading virally, its fun seeing hundreds of people hit the site after seeing it tweeted.  The tee-shirts are quite nice too – I’m wearing mine now and there will be a few on display at WebStock this week.


The first 10 things

27 January 2010

Today is the first day of starting a new company (the name of which is yet to be decided) and this is by no means a top 10 things you should do when starting a company, but here are the first 10 things I’ve done – in no particular order.

1. Seed capital
First things first, cash is king so got to sort out some cash to get things going.

2. Xero
I’ve spent the last three years building the best accounting system ever, so I’m really looking forward to finally getting to use it for real!
http://www.xero.com

3. Life chair
After sitting in one of these for the last three years, I just had to get one.
http://www.formway.co.nz/Products/Life.html.

4. Server
I thought long and hard about what to do for a development server and in the end was really impressed with Erin from Unleash who offered me a perfect ex-lease server with very reasonable hosting.
http://www.unleash.co.nz

5. Accurev
I met these guys in Boston 18 months ago and was well impressed with their SCM system.  They are the smartest agile guys I’ve met and I’m really looking forward to using their system.
http://www.accurev.com

6. Employee
Its great finding someone who’s skills complement your own and it means that the projects are pushing forward even when I’m out schmoozing over coffee.

7. LiquidPlanner
Like it or not, my company will be doing timesheets.  Partly because we’ll be doing some chargeable work, but mainly because I want to know what I’m investing into every product & idea.  LiquidPlanner has very nice project planning and prioritisation and employees get a nice to-do list which they can estimate against and track their time and progress.
http://www.liquidplanner.com

8. Pray
Yep -  church doesn’t have a monopoly on God so I want to know how God & business mix and I want to experience stuff like this: “But the people who know their God shall be strong, and carry out great exploits”

9. Intranet
Managing and sharing information is key, so getting an intranet in place is a top priority.  In this case, I’ve started building my own … who knows – maybe one day I’ll productise it.

10. Office
Sitting in the sun in the garden at home, drinking Tuatara Pilsner is nice, but I’ve got to be in the CBD – so the great guys at Mindscape have agreed to let me crash on their couch (so to speak) for a while.  Thanks!  http://www.mindscape.co.nz

Now for the work to begin, I’ll share a bit about my first few projects soon(ish).


My ceiling is your floor

31 October 2009

My third son was a week ago, Benjamin Micah Butel.  Benjamin means ‘son of my right hand’ – and I have no idea what the person who made that up was thinking, but I know what it means to me.  It means my ceiling is your floor.  I don’t want my boys to repeat my footsteps, but to take what I’m capable of and go far beyond.  Its like a relay race where I pass the baton on (with my right hand) and they run the next leg.

As leaders, we establish innovative and creative ways of doing things, then formalise it so we can train other people to do them.  So often, this becomes a constraint when it should just be the starting point.  My ceiling is your floor.  We should be empowering people to start with what we’ve learned and go further than us with their own creative ideas.  Instead of expecting them to run the same race as you (ie do it this way because that worked really well 5 years ago), instead pass the baton so they can run the next leg of the race starting with your best and then creating their own.


Words are cheap

16 October 2009

0909nnn1-300x176

We all know that a picture speaks 1,000 words, but even more important than pictures are actions.  Actions speak louder than pictures and words.

You could write and talk all day about doing something, but its worth nothing until you do it.

That’s one of the reasons why I like the Agile Manifesto:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

peoplematter432-copy1-300x182


Documentation is expensive, but its necessary

12 October 2009

We need documentation to help us achieve optimal communications and control; however we also understand that documentation can be an overhead that doesn’t add value to our customers.

There are two types of documentation and you should always be aware of why you are writing documentation and for whom.

Project documentation is for communication
Project documents are used for communication within a project and are not maintained once the project is completed. These documents are necessary to:

  • Sell the concept
  • Remove ambiguity
  • Facilitate a multi-location team
  • Manage the details

Product documentation is for management and control
Product documents are used for managing and controlling the product and will be maintained until the product or feature is retired. These documents are necessary to:

  • Manage priorities and scheduling
  • Maintain quality standards
  • Maintain correctness
  • Educate people

When you’re using documentation to communicate, then you’re capturing the state of the requirements etc at a given point in time. If the requirements change, then you don’t update your original communication, you make a new documentation to communicate the changes clearly.

Communication isn’t a living document.

However, when you document for education, then it is a living document. If the requirements or scope changes, then anyone reading your old document for education purposes will be misled, therefore in order for your document to meet its purpose, it has to be maintained. This means every time you write a document for education purposes, you’ve just added an overhead to your project – a document that has to be updated as the project changes. If you are not going to maintain the document – then you aren’t writing it for educational purposes. To make the maintenance cheaper, the document can contain less detail and more principals that are less likely to change.


Thankful for the little things

10 September 2009

My boys (4.5 yrs and nearly 3) gave me some starwars lego for father’s day so that I can be the bad guys in the great battles that take place in our living room.

I built it and of course they play with it more than me, but yesterday Jacob (the 4.5 yr old) gave me this card:

IMG_0237

To Daddy

Thank you for sharing your star wars toys.

From Jacob

How cool is it to be thankful for the little things.


On the road to high performance

10 August 2009

The culture at NetFlix, explained in this slide deck, is nothing short of inspiring.  Its not their values that I admire, but the fact that they also run the company by the same values that they expect their employees to work by.  Having shared values is important because it defines what you celebrate, what you get angry about, what you flight for, what you look for when hiring and its what screams out at you when someone has to go.

I really like that a big part of NetFlix’ culture is to preserve the culture.  I also like their very frank policies of, “if you wouldn’t fight to keep someone if they resigned, then fire them now” and “if you would offer someone a payrise to keep them if they resigned, then offer them that payrise now”.   Culture and values definately come from the top, so the only way to spread these values is to run the company on them too.

A big focus at Netflix is on finding and keeping high performing, motivated people.  Naturally, we all wonder if we’d meet their standards and as a person who’s on the learning curve with my sights set on being a high performer – it seems to me that being high performing doesn’t start with a degree, or with the right experience, job or boss – but with the right attitute.  An attitude that is determined to learn and push the boundaries.

The lowest form of excellence is having the disclipline to push yourself and learn.  Only from this do you start to gather knowledge through experience and upon that knowledge can come a level of proficiency that is necessary to be high performing in some area of expertise.  At this point, you deploy yourself into something that you’re passionate about or into an opportunity that comes your way and this is where things come off the rail.  Opportunity (no matter how great) without passion will always lead to medioricity.  Passion (no matter how great) without opportunity will always lead to fustration (if not for you then for everyone around you). To reach the next level where you start to inspire others into excellence and high performance requires both opportunity and passion.

Like I said, these are the thoughts of someone on the learning curve – not someone who has arrived, so I might change my mind on all this in the future.  However – I still think its interesting to look at this simplistic model and ask yourself the question – which box is my career currently in?

PassionOpportunity


Booming in a down economy

3 July 2009

Thanks Andy for the link to David Greer’s article on 11 strategies that will make your company boom.

There are plenty of articles saying the same stuff about surviving a recession, but I really liked some of David’s practical advice.  If it takes a recession to kick-start us into doing these things, then we just have to remember to keep it up when times are better.  Some quotes from David:

On leadership
In crisis situations, leaders often feel the world on their shoulders, especially if you are the entrepreneur or business owner. All those employees. All those customers. You can’t support the whole world. Do you usually go to the gym three times a week? Go five times a week in the crisis. If you don’t have peak physical performance, you can’t have peak work performance. Do you go to yoga once a week?  Go more, both for the physical and mental aspects. Look after yourself, so that you can be there for your families, your friends, your employees, and your customers.

On strategy
The changes in the market have been so large and so fast that pretty much every plan needs to be thrown out the window. It’s time to start with a clean piece of paper and rethink the whole strategic plan for the business. It’s time to reevaluate your positioning, competitors, services, products, strengths, weaknesses, opportunities, and threats.
On customers
Provide outstanding customer service. Treasure and value your customers and let them know you value them. Ask for testimonials and referrals. Word of mouth from your existing customers can be one of the most effective ways to generate leads.
Talk to your customers and ask them where they see the most value in your
products and services.  Create a customer focus group of your key customers and run webinars with them to get feedback on your product positioning, your quality of service, and future product roadmap direction.
On innovation
Inspire creativity in both product development and in customer interactions. Would a customer be willing to pay for a developer or engineer to work on site as a consultant for a week or month? Being at a customer’s for a length of time is one of the best ways to increase understanding of customer needs.

On strategy
The changes in the market have been so large and so fast that pretty much every plan needs to be thrown out the window. It’s time to start with a clean piece of paper and rethink the whole strategic plan for the business. It’s time to reevaluate your positioning, competitors, services, products, strengths, weaknesses, opportunities, and threats.

On customers
Provide outstanding customer service. Treasure and value your customers and let them know you value them. Ask for testimonials and referrals. Word of mouth from your existing customers can be one of the most effective ways to generate leads. Talk to your customers and ask them where they see the most value in your products and services.  Create a customer focus group of your key customers and run webinars with them to get feedback on your product positioning, your quality of service, and future product roadmap direction.

On innovation
Inspire creativity in both product development and in customer interactions. Would a customer be willing to pay for a developer or engineer to work on site as a consultant for a week or month? Being at a customer’s for a length of time is one of the best ways to increase understanding of customer needs.


What are you passionate about?

30 June 2009

It must be the time of year when people start asking the question, what am I supposed to be doing? My answer is along the lines of – well, what are you passionate about? Often the answer is, I’m not sure. You can like your job, like your friends, like your city – but still have that nagging feeling that time is wasting away and you’re not doing what it is you’re supposed to be doing.

So – here’s a challenge. Pick a conference, any conference – and go to it.

The catch is, conferences are expensive. Usually thousands of dollars for the ticket, plus travel, plus accomodation. Find a conference anywhere in the world that you’d really love to go to. It might cost you $5k or $10k to get there and its your own money you’re spending. There are hundreds of conferences happening all the time, so anyone can find one that they’d pay their hard earned money to go to. Conferences aren’t just about learning some new skills, or hearing about the latest technology – they’re also about mixing with like-minded people and walking away with some new friends, some ideas and plenty of inspiration.

By answering the question, what conference would I take a week off work for and spend my own money to go to – you’re probably also answering the question, what am I passionate about.

Now go. Its your life so you can’t sit around waiting for other people to look out for you if you’re not prepared to look out for yourself. Its going to cost a lot – but why wouldn’t you invest that in yourself to discover or simply fuel your passion. Set a goal, maybe for this year or for three years away to get to that conference, then make it happen.

One parting comment, if you don’t ask  - you don’t get.  In 2002, I was working as a java developer in London and planning to move back to New Zealand to start a business.  I wanted to move into .NET to build smart client applications and there was a great conference in London that I wanted to go to.  It wasn’t relevant to my job, but I asked and my boss let me take a week off to go the the conference.  The cost was 2,500 pounds – but it was worth it.  On the spur of the moment, I emailed the conference organiser explaining why I wanted to go and asked for a free ticket.  They said yes.  If you don’t ask, you don’t get.  Last year, I decided I wanted to go to Business of Software in Boston.  This time I paid my own way completely and took annual leave.  Both conferences were fundamental in setting the direction my career is going and I’d do both again.