accidental api developer - the 12 month pregnancy to create new api

25
Accelerating Your Success Accelerating Your Success ”ACCIDENTAL API DEVELOPER” Marjukka Niinioja Senior Consultant & Manager PlanMill Oy

Upload: marjukka-niinioja

Post on 20-Aug-2015

814 views

Category:

Technology


5 download

TRANSCRIPT

Accelerating Your SuccessAccelerating Your Success

”ACCIDENTAL API DEVELOPER”

Marjukka NiiniojaSenior Consultant & ManagerPlanMill Oy

Accelerating Your SuccessAccelerating Your Success

FROM LEGACY TO BRAVE NEW API WORLD

2.4.2014 2© 2014 PlanMill Ltd. I www.planmill.com

Accelerating Your SuccessAccelerating Your Success

In-house system”Nokia Planner”

Commercial project management

software

MS SQL Server based version

1988 1992

First Lotus Domino database connector in

the world with IBM

1998

TIME FLIES WHEN YOU DEVELOP ARCHITECTURE

1999

Java applet based user interfaces

First WAP-based time tracking system in the world co-developped

with Nokia

Java + XML & XSLT

20062004

From project management to

PSA

2010

Open API 1.0

Mobile touch interface

Expanding from On-premise to Cloud

2009

Atlassian Confluence plugin with Ambientia

using the API

2011 2014

Open API 2.0

ERP integraitng with lots of trad.

Web services

Accelerating Your SuccessAccelerating Your Success

25+COUNTRIES

100+CUSTOMERS

20 000+USERS

13YRS IN BUSINESS

25SKILLED EXPERTS

2 000+ NET SALES (T€)

PLANMILL TODAY

2.4.2014 4© 2014 PlanMill Ltd. I www.planmill.com

EXPENSES REQUESTS

SALES PROJECTS TIME

FINANCES

Our customers are the future makers and shakers. They are leading the way in their fields of expertise pushing the boundaries into new levels.

Connected to PlanMill

Accelerating Your SuccessAccelerating Your Success

BEFORE THE OPEN API

• Unique customer cases with propriatory XML formats (mainly invoices and accounting data)

• MS Excel Web Query• MS Project• Others• 40+ hours per new integration

Accelerating Your SuccessAccelerating Your Success

MOTHER OF A LOT OF APIS - FLICKR

Blog post from 2009: “But really, I just wanted to toy around with the Flickr API

since I’d seen so many web-applications making use of it and had heard good things

of the API in general.”

PlanMill Open API was inspired by some ideas and examples in the Flickr API

Accelerating Your SuccessAccelerating Your Success

http://techcrunch.com/2012/02/10/2011-api-trends-government-apis-quintuple-facebook-google-twitter-most-popular/

PlanMill API was born

PLANMILL API WAS BORN IN THE DAWN OF APIS

PlanMill API is called ”Open API” – it’s a

partner API but also for customers

Accelerating Your SuccessAccelerating Your Success

THE ACCIDENTAL API DEVELOPER REACHES TODDLER AGE AND LEARNS HOW TO WALK

First 12 months

Devs have an idea

Consultants start speaking about it

to customers

API is born

API?? What is that??

Very quiet launch

”Productization”: Test environment, API key request form, usable dev

documentation, some idea of pricing

First real use cases by customers

around projects and time reporting

Amount of employees ”on the know”

First big API using application project

sold, massive improvements to API as

result

First partnership case (Atlassian Confluence with Ambientia) made

possible by API

API as major selling point compared to competitors

”Learning by supporting” ”Learning by coding and co-coding”

Accelerating Your SuccessAccelerating Your Success

API DOCUMENTATION DYNAMICALLY SUPPORTING CUSTOM FIELDS

Accelerating Your SuccessAccelerating Your Success

FIRST ”EAT YOUR OWN DOGFOOD” –CASE USING API TO BUILD LEAD QUALIFICATION

Accelerating Your SuccessAccelerating Your Success

FIRST PARTNER CASE - SHARING PROJECT DATA WITH CONFLUENCE

Accelerating Your SuccessAccelerating Your Success

SOME API STATISTICS

2009 2010 2011 2012 2013 2014

New Companies starting to use PlanMill open API Users are either real

persons or systems using the API as user

Accelerating Your SuccessAccelerating Your Success

PLANMILL OPENAPI - EXAMPLES

Project is created in PlanMill

Application X

https://online.planmill.com/acme/services/rest?method=project.insert&format=rest&PMVProject.Name=”Example%20project” &PMVProject.Type = ”3”…

https://server/instance/services/rest?method=account.get&format=rest&userid=12345 &authkey=531adbb3022a96e537b4e2a5289e128e

Project type is updated in

PlanMill

https://online.planmill.com/acme/services/rest?method=project.update&format=rest&PMVProject.Id = 123&PMVProject.Type = ”2”…

https://online.planmill.com/acme/services/rest?method=project.delete&format=rest&PMVProject.Id = 123

Project is deleted from

PlanMill

Accelerating Your SuccessAccelerating Your Success

APIFYING YOUR COMPANY - FROM CONSULTANT TO A.P.I. CONSULTANT

2.4.2014 14© 2014 PlanMill Ltd. I www.planmill.com

(A.P.I. “Actively Participating Integrator” )

Accelerating Your SuccessAccelerating Your Success

Building an API and API culture is like building Rome

– one brick, layer and person at the time

Accelerating Your SuccessAccelerating Your Success

API CHANGED THE WAY WE WORK

• TRAD: ”I’m selling an application – look how I demo by clicking the UI”

• API: ”I’m selling a application with API – look how quickly I can get some data out or develop this app”

• TRAD: ”Customer was asking for help using the system – I asked her for screen shots”

• API: ”I asked the customer to send info about the API requests and responses he was trying to use”

Accelerating Your SuccessAccelerating Your Success

OUTLEARNING FROM ”NEG-APIVE” THINKING

• API is something only ”techies” and only ”some API techies” should know about

• API is separate from the ”actual” system

• New features and changes can be implemented without ever thinking of API

• API is going to be used so little that we don’t need to think about traffic limits or pricing models

• Using API to automate testing of the system is difficult

• API doesn’t need user documentation

• It’s ok to expose our internal data model ”as is” to outside world

• All users of the same API in the same instance can see all data

• ”Open information” vs. ”Restricted information” in a business application – all data should be accessed by any API user

• API is only going to be used by ”outsiders”

Accelerating Your SuccessAccelerating Your Success

MY 5-YEAR API-MANTRA

”DON’T BE AFRAID OF THE API QUESTIONS”

”WIKI HAS SOME GREAT EXAMPLES OF USING THE API”

”HAVE YOU ADDED THAT TO API DOCUMENT”

”HAVE YOU TESTED THAT WITH API”

”YOU CAN DO THIS QUICKER AND CHEEPER USING API”

Accelerating Your SuccessAccelerating Your Success

If people don’t understand what API is about, they won’t

tell about it, sell it, use it, develop it or support it

SHARING IS CARING – ALSO WITH APIS

To employees To customers & partners

To students

Accelerating Your SuccessAccelerating Your Success

Towards the new API powered ecosystem

NEW IMPROVED PROCESS FOR THE API 2.0

Research project Customer & Partner needs and insights

Piloting technologies and preliminary services of

API by parallel developing client

software

Demos, knowlegde sharing and discussions

with whole company

Architecture vs. strategy – what services, how to

maintain, how to monetize

Internal beta Teach with the beta through real projects

Public beta + developer community

Feedback from developer community Publish 2.0

Eat our own dogfood with your own client

using API

Accelerating Your SuccessAccelerating Your Success

API & USER EXPERIENCE

2.4.2014 21© 2014 PlanMill Ltd. I www.planmill.com

Accelerating Your SuccessAccelerating Your Success

TO USE OR NOT TO USE API

USE

• Leads from websites, social media, external company registers

• Time reports, projects and tickets for invoicing to/from Jira, SAP etc.

• Commenting, email campaign members

• Change history

THINK TWICE

• Invoices to accounting systems – no support for APIs and existing XML based standards like Finvoice

• Situations where customers and their systems can handle files emerging to their server, but can’t handle API development

• Moving unstructured data which can easily be automated with f.eg. Emails

• Ad hoc data needs (unless the user knows how to code)

Accelerating Your SuccessAccelerating Your Success

API UX PROBLEMS

• UI usability problems we all know and love– This task takes too many clicks– System takes too long to save a new object– I can’t understand what this button does– I can’t find the documentation– I can’t make sense of this error message

• The API variety of usability problems we came to know– Why can’t I just do this thing with 1 API request instead of 5– Someone is sending 10 requests per ms – the system is stuck– I don’t understand how I get this location id which this request is wanting…– Yes this thing about filtering requests has been documented - didn’t you find it?– I don’t want to get stacktraces as error messages in the API response– I want to see the id in the response of the thing I just created

Accelerating Your SuccessAccelerating Your Success

HOW WE GOT FEEDBACK FROM DEVELOPERS

• Support requests• Uservoice• Twitter• Hands on co-located sessions (with donuts )• Thesis studies made by students employed by our customers

using our API• API seminar• In the future

– Formal usability testing– ”API usability days” for outside developers– Student projects

Accelerating Your SuccessAccelerating Your Success

MORE INFORMATION

Marjukka Niinioja, Senior Consultant & Manager

PlanMill Ltd.

Hämeentie 19, FI-00500 Helsinki

Tel: +358 40 558 5138

Email: [email protected]

Website: www.planmill.com

Twitter: @PlanMill