The beautiful City of Vancouver (in British Columbia) played host to the North American Node.js Interactive 2017 conference earlier this month. That close to my backyard, it was simply inexcusable not to attend! I wasted no time in getting the support of my employer and am glad I did. Here's a little summary of my experience and what I learned at the two-day conference to share.
The conference began with a series of short (10 to 20 minutes) keynote sessions on a wide spectrum of topics. Mark Hinkle, Executive Director of the Node.js Foundation, kicked things off with a "State of the Union" address on how well the technology is progressing. Also announced was the launch of the Node.js certification exam beta. Look out for that if you are keen to demonstrate your Node.js skills. I signed up a while to be notified, but haven't heard anything since. Hopefully in the coming weeks.
Mark made a special mention of Node School, a self-organized effort to develop curriculum and resources for running Node.js training workshops. Very similar to the work that Software Carpentry and Data Carpentry are doing to teach programming, Unix and data management to the research community. Given the resources that Oracle has provided, it won't be difficult for the Oracle APEX community to emulate these initiatives.
First Class Citizen
Franzi Hinkelmann flew across an ocean and continent to let everyone know that supporting Node.js is now a priority for Google's V8 team. In fact, the recent delay in releasing Node.js version 8 was in part, due to major changes in V8 (Crankshaft → TurboFan + Ignition) in the V8 engine, and the team wanted the community to receive a version of Node.js that would be more future-proof. Great news!
On Open Source
Maggie opened the panel discussion with her take on monetary rewards for working on OS projects. Funding to pay developers is nice, but having companies granting employees time towards working on OS projects is even better. Large companies like IBM and Microsoft can quite easily manage and provide such support, but it is a challenge for smaller companies with limited resources to do the same. For that reason, I am very grateful to Insum Solutions for the chance to participate and contribute to open source.
A third takeaway that stuck with me was that YOU don't have to be an expert coder to be able to contribute to open source. Most projects have other needs like writing technical writing, project management and community engagement. If you have these or other valuable skillsets, consider lending your expertise. The community will appreciate it!
Most, if not all sessions were about 20-30 minutes long. A little different from what ODTUGers are familiar with. This format provides attendees a lot of breath, but unfortunately, at the expense of depth.
As an APEX developer, who sometimes dable with Node.js, these were my picks:
- Everything You Wanted to Know About Logging by Charlie Robbins
- VS Code: Optimize Your Node.js Development "Inner Loop" by Chris Dias
- Data Science Survival Kit (workshop) by Philipp Burckhardt and Athan Reines
- GraphQL in the Wild by Steve Faulkner
- Build Interactive Workshops with Electron (workshop) by Seth Vincent
- High Performance JS in V8 - Peter Marshall
- Love VS Code! Chris presented a comprehensive walkthrough on writing, debugging and deploying Node.js applications. An impressive demonstration of intellisense, Docker-based deployments and working with Azure cloud, all within a FREE tool!
- GraphQL, cool tech but as an APEX developer, I have yet to be convinced with a good use case. Something worth exploring for data integration perhaps?
- Break-Up with Your Server, But Don't Commit to a Cloud Platform by Linda Nichols
- Using minikube (Kubernetes) for Local Node.js Development by Troy Connor
- Serverless Bots with Node.js (workshop) by Alan Ho and Amir Shevat
- Grokking Asynchronous Work in Node.js by Thorsten Lorenz
Sessions and workshops that I enjoyed on day two mostly fell into two buckets: Serverless and TypeScript.
Serverless is one of the newer buzzwords made popular by cloud vendors like Amazon (AWS Lamda) and Google (Cloud Functions). My interest stems from a presentation I did at Kscope17 that examined the role of Microservices in APEX applications. Since we run most of our code/logic on the database, the challenge is to find a fit for such technologies, especially in the cloud era. I expect to spend more time looking at this in the near future.
The other interesting topics were on Minikube and Chrome's DevTools. Minikube allows you to run a local single-node Kubernetes cluster. This helps with simulation and testing of Docker container deployments. Though currently you would use
kubectl to deploy, it sounds like in upcoming releases (see report), paid versions of Docker will support pushing containers to Kubernetes clusters.
Node.js Interactive is a great event to attend whether or not you are a hard-core Node.js programmer by trade. Would have been nice if lunch was provided so that attendees didn't need to compete with downtown office workers for food, but I suppose it had to do with the more affordable conference fee? And like all developer conferences, besides good content, the other benefit of attending is the opportunity to network with peers, speakers and vendors. I met some of the core people involved with Loopback project before Strongloop was acquired by IBM, and had the chance to allay my fears that Loopback was not going away in favour of some IBM-branded product. I was also pleasantly surprised to have met two friends at the event, and even learned a few things about GraphQL and Serverless from them!
The conference returns to Vancouver in October 2018, so for the folks heading to Oracle OpenWorld next year, consider planning a trip north to our beautiful city. There's much knowledge and scenery to soak up!