Spectacle is one of the larger projects in development at NEC Smart Cities, currently backed by two dev teams. The tool, which is built using a combination of web technolgies and functional programming languages, is designed to consolidate, visualise and better understand councils' geographic data. By using Spectacle, councils can explore their data like they've never been able to before, helping them to make better decisions for the wellbeing and growth of their cities.
In its current state, Spectacle began in the first half of 2017 around the time our small department of ten (and my team of one) started to grow. The team working on Spectacle grew from just me to around eight people in just under four months. We started a new, fresh codebase using a combination of Elm, Haskell, Ruby on Rails and a bit of TypeScript for good measure. While part of the team put together a solid foundation for the API which would power our tool, my team and I got stuck into fleshing out a web app in Elm. I working mainly on the UI and UX, using the designs and product knowledge I'd gathered over the year of working on Living Lab. Development progressed quickly, and by April 2018 we had not only a solid foundation for future work on Spectacle, but already a tool that was being deployed throughout Wellington and Auckland Councils. The tool remains simple to use and understand, is secure and reliable, and can easily handle hundreds of thousands of data points at once.
Web technology sits in a very weird position at the moment. We use Leaflet to render our maps in Spectacle, but vector maps are quickly taking over, and WebGL is hot on its heels as well. My guess is that, in the next five years, we'll see tools like Spectacle slowly trend towards tools like Digital City Model, as web tech incorporates more powerful rendering technology and mixed reality capabilities. Having a solid foundation (both the API and design work surrounding Spectacle) will serve as a huge advantage when picking up these technologies.