pinitto.me

what? why? how?

Who am I?





Lloyd Watkin
Software Engineer @ Surevine

@lloydwatkin
http://www.evilprofessor.co.uk






▼more down here if you want to read

More about me...

Originally wrote software in academia (FORTRAN 77/90/95 + MPI, IDL) - Atmospheric modelling and instrumentation

Started a business creating web-based applications in PHP

Worked for several startups

Now working for Surevine creating secure, social software
Programming/ed in PHP, Python, Java, JavaScript/Nodejs, Ruby, coffeescript, + others (I forget)

https:/gihub.com/lloydwatkin

Interested in: Open source, real time applications, XMPP


What?

pinitto.me is an open source, infinite, virtual corkboard style application

https://github.com/pinittome
http://pinitto.me
@pinittome
Free to use, but donations gratefully accepted



Here's a demo board...

http://bit.ly/Wc3ctx

Password: nodejs

About



Introduced to nodejs through the buddycloud project

XMPP and realtime is *really* exciting

Didn't really pay attention to nodejs but did some hacking in it

Attended realtime conference in Portland

Started to understand why nodejs is exciting stuff


Then one day...


  • Work in a distributed team
  • Planning day
  • Using an alternative system for sizing & prioritising of tasks
  • We care about our data security
  • No open source alternatives

...I took a free couple of days and built a pinitto.me prototype


nodejs enables you to get s*#! done really quickly and easily


...better than that...


nodejs allows you to get realtime s*#! done really quickly and easily



Why is this cool/important?


The future of the web is realtime

The best way people aren't always going to be a short distance...
...what if they are on the other side of the world?

When people are able to talk and share ideas amazing things happen

Realtime will enable people to collaborate remotely like never before

Realtime is now in the hands of the people






New technologies bring new possibilities

...but here's the best bit...

There's a huge number of simple ways people can collaborate using this new tech


The ideas are there in everyday life,
you just have to build it!

Lets make amazing things happen....




  1. Embrace the technology you are working with
  2. Lean on as many other projects as possible
  3. Don't do the things you aren't good at
  4. You do agile, right?
  5. "Perfect is the enemy of good"
  6. Be aware of the future, but don't let it control you


Pinitto.me: where are we

  • Just released 0.2.X
  • Second person has joined the team
  • Implemented grids - neat and tidy boards!
  • Speed improvements (requirejs optimisation, gzip in proxy)
  • Usage steadily growing without shouting about it
  • We've got a recent marketing graduate joining us
  • Used for planning meetings at Surevine and other companies

Next release

  • Completed full ACL
  • API for developers started
  • Building up a list of features on github
  • Build out documentation / tutorials / etc
  • Real time chat + statistics
  • Get involved!
▼more down here if you want to read

Lessons

Node Jitsu

  • Awesome PaaS setup
  • Original version of pinitto.me used their setup
  • Couldn't use it in the end...
  • ....sticky websocket sessions

  • Now running on small EC2 instance
  • Using free mongolab database
  • Using node jitsu open source projects to serve in production

There's not a huge amount out there about production nodejs, even less when it comes to production websockets + nodejs.

Summary



Realtime *is* the future


You as node developers have an amazing set of tools to use


Get out there and make the future!



Thanks to: nodejs, chrome v8, socket.io, jQuery, crypto, node-validator, twitter bootstrap, node jitsu, mongolab, npm, amazon EC2, express, connect, recaptcha, requirejs, ...others...

Excited by realtime &/or XMPP?


New meetup 13th March @ Mozilla London
http://lanyrd.com/2013/xmppuk/
@xmppuk for updates

Free beer and pizza!

  • Owen Barnes (SocketStream) - SocketStream
  • Paweł Ledwoń (Pusher) - when websockets aren't an option
  • Lloyd Watkin (Surevine) - XMPP using JSON over websockets
  • Jonny Heavey (Surevine) - Pinitto.me
  • Ash Ward (Surevine) - WebRTC

Looking for a new position?


Surevine are looking for talented developers:

  • work flexibly from home
  • work with a great team (I am biased)
  • work on open source projects
  • work on a range of exciting projects
  • self-managed teams trusted to do what they do best


If interested please visit http://www.surevine.com/join-us


....or better still come and chat over a beer about how #awesome it is at Surevine!