Broad set of things to cover, so name was hard to think of!\n
From an operational point of view\n
Aside from a massive head ache!\n
A quick note about how we do things at the moment, etc.\n\nExplain why a framework is good to use...\n
Anyway, back on track...\n
Driver responsibility, leave him to steer the lorry as dad says:\n- Deliveries (helps eliminate paperwork)\n- Collection requests. Based on nearest driver (suggests a driver)\n (requested from transport office, even from your systems. We can also quantify if driver is ignoring them for too long and discipline accordingly)\n
In turn lets you provide real-time stuff to your customers. How you do this is over to you, but we can help you get the job done.\nThe beauty of APIs: flexibility.\nLeverage current and open standards\n
By HTTP spec I mean it&#x2019;s a standard. And by *STANDARD* I mean utilising response codes such as 200, 401, 403, 422, and request/response headers. Oh and HTTP methods - GET/PUT/DELETE/POST. No proprietary bullshit. \n
Speed Welshpool - Transport Technology, Realtime, PODs and APIs
Brief Introduction I’m George 23, Computer Games Development Student Freelance (mainly web) developer IT folk: Devops/devmin/sysadmin - I wear many hats! Responsible for all of Speed’s... Software (mostly web-based) Marketing and image Infrastructure and network architecture
Current (operational) state ofplay Let’s look at the operational aspects... Speed’s business model Multiple corporates Highly dynamic (contracts forming at a moments notice)
Technology wise, thismeans... We can’t use several corporate software/platforms in any great length (e.g. routing, invoicing) We simply cannot provide real-time data (mobile POD capture) for *all* corporate clients (Drivers can’t carry around two, three or even four different phones!)
Technology wise, thismeans... We must have our own software for routing, invoicing etc. We must keep coupling between our software and corporate’s low (to improve ‘dynamicity’) Therefore, we need interfaces. CSVs are OK at best, but extremely limited and very old hat They rely on a human element (even by “automated” e-mail) We’ve had plenty of problems already...! Solution: API - Application Programming Interface. (We should all have them!)
Transpire Driving all Speed’s operations. Routing to Invoicing It’s “where your CSV ﬁles go”, how things get routed, and what invoices you PHP/MySQL driven Uses all open source technologies (i.e. free) Uses an open source “framework” Proven, feature rich codebase (toolkit) Quicker development (not reinventing the wheel) Concept -> launch in about 2-3 months
APIs - brieﬂy Basically - a way of exchanging data and interfacing two systems with zero human involvement We take out humans - no human error or forgetting to send CSVs Inﬁnitely more versatile Allow a huge wealth of innovative opportunity
APIs - brieﬂy Does this all sound foreign to you? It’s actually not. It’s standard practice, and all around you! We should all be on board. Don’t believe me? A quick look...
APIs: GoogleMaps? Fonts? Charts? All done using Google’s hugeset of APIs.You may already use this in your own apps (e.g. Maps).
APIs: Twitter Arguably one of the most successful platforms/APIs Allowing developers to get/create Tweets, and much more
APIs: Salesforce Allowing people to interface with the popular CRM
APIs: eBayAllows buying in selling from user’s own softwarerather than the eBay interfaceAbsolutely vital for eCommerce companies
Wait! This is transport! It’s already being done in this industry Allowing low friction innovation and greater business opportunities
Wait! This is transport! Even in the pallet industry...
In a nutshell, so far... Your industry has/wants/likes a modern business model and dynamic way of working BUT: Doesn’t know about or have and/or won’t provide the technology to facilitate it, efﬁciently and effectively (APIs) As a web developer, peering from the outside in, distribution is a perilously out-of-date industry We need a catalyst for change...
An aside: I’m here to help! No one seems to take me up on this offer. Why is that? Share ideas, code, software, techniques, methods, knowledge...you name it No one person or company can be “the best”. We are stronger together If this means coming to you and working alongside your team on projects, so be it. I love this kind of thing! Yes, for free! It’s not always about money... If I could help change this industry for the better, I’d be a happy man!
Introducing real-time PODcaptureThe only logical way is to manage, manipulate andcapture data ourselves, to our own systemsDon’t directly couple to your systems (device does not linkdirectly to you)But, provide an interface (API) if you want it No disruption to either of our systems If you want it: great, if you don’t: never-mind Everyone is happy!
Key features we aim toimplementReal-time POD capture (obviously)GPS & Location Get rid of our expensive, awkward and inaccurate vehicle GPS devicesTake responsibility away from the driver Give him pre-routed drops Collection requests straight to device
Things we can offer youAn API to: Query for delivered/POD’d consignments, in real-time Send us collection requests, in real-time See which of your consignments are still on vehicles for delivery, how far the driver is from the drop, location on a mapLots of possibilitiesMost importantly: what do you want?
What we can offer youNo interest in programmatic integration or APIs?It’s a shame, but it doesn’t stop there: We will write a web-based portal for you to see our operations See recently PODded consignments, pending/to deliverIt works, but wouldn’t an API be better to have this allin your own system(s)?
Mobile device/app speciﬁcsIn design and mock-up stages at present We still want to hear your input!99.9% likely to be iOS 5 based Basically: an iPhone 4 app Gives us everything we need (rich APIs) including GPS Arguably the easiest device for drivers to use Cost-savings against in vehicle GPS
More speciﬁcsWe will expose a web-based (HTTP) API to youFor the IT folk: REST-ful, leveraging the full HTTP spec Req/resp codes, headers, methods (PUT/DELETE etc) JSON / XML Why? Easy to integrate in PHP, Ruby, Python, even .NET HTTP Standards based - well documented. Ofﬁcial. Not semi-proprietary like SOAP