Category

Project Update

Node.js Certified Developer Spotlight: Juan Picado

By Blog, Certification, Node.js, Project Update

We recently interviewed Juan Picado, a Senior Front-End Engineer at Adevinta about his experience taking the OpenJS Foundation Node.js Application Developer certification (JSNAD). 

Here’s what we learned.

OpenJS: Why get certified through OpenJS?

Juan Picado: The OpenJS foundation is a reference that protects, provides, and facilitates a platform to the JavaScript community, supporting open source projects, and is a well-known organization. Hand to hand with the Linux Foundation is the best support for a Node.js Certification that gives high credibility and confidence.

OpenJS: How was the test-taking experience? Compared to vendor-specific certifications, how is a vendor-neutral test different?

JP: I like the approach that the test was not based on multiple-choice questions rather on real-life problems. This provides an extra boost of confidence even if you have already years coding JavaScript and Node.js. The vendor-neutral focus is more on the language and fundamentals and that is essential knowledge worth having as a baseline because it does not expire. JavaScript and Node.js always evolve.

OpenJS: How has the certification helped, added value for you?

JP: I always felt insecure in a few areas of Node.js. Streams and Process always were scary to me and those are part of the core of this certification. Even having years of experience, I have acquired valuable insights and a new vision on how to make things right. For me, it has been really valuable and has helped me dive more into the specifics of Node.js.  A certification always has professional benefits.  

OpenJS: What are your career goals and how do you think certification can help in reaching them?

JP: Definitely, it is one important step on my career roadmap.  I’m a believer that the fundamentals matter and this certification helps you to achieve that with Node.js and JavaScript.

OpenJS: Anything else to add?

JP: It is worth mentioning that the e-learning platform in combination with the one-year period gives you enough time to prepare yourself. That is really valuable.

Through August 24, Linux Foundation certification exams – including Node.js certifications – come with a FREE training course to help you both learn new skills and prepare for your exam. Learn more about this great offer at https://bit.ly/2WQxlo9

An update on how AMP is served at the OpenJS Foundation

By AMP, Blog, Project Update

When the AMP project moved to the OpenJS Foundation in 2019, our technical governance leaders shared a plan to separate the AMP runtime from the Google AMP Cache, and host the AMP runtime infrastructure at the vendor-neutral OpenJS Foundation. OpenJS is happy to report that this complex task of re-architecting the AMP infrastructure is making tremendous progress thanks to input and guidance from the AMP Technical Steering Committee (TSC) and AMP Advisory Committee, as well as thanks to the AMP Project and OpenJS teams for coming together despite the work and life challenges that were sometimes faced during the pandemic.

About AMP

AMP is a multi-stakeholder open source project used across a broad range of organizations to increase web performance. It’s a web component framework with a collection of complementary technologies that help publishers easily create websites that load quickly and predictably on different networks and devices.

Today AMP powers nearly 10 billion web pages worldwide, and is implemented by Google, Microsoft Bing, Pinterest and Pantheon, among others.

An AMP Cache is a cache of validated AMP documents published to the web, which allows the documents to be served more quickly than if they were generated by the original site each time they were displayed. Two of the largest AMP Caches are operated by Google and Microsoft, each of whom use the foundations developed by the AMP open source project to build their own commercial AMP Cache. This is a similar model to how most commercial products are built today with open source projects such as Linux and other JavaScript technologies such as Electron and Node.js.

Understanding how the AMP runtime will be served moving forward

The AMP runtime is a piece of JavaScript technology that a developer can add to their website to be able to use AMP components for building their website. By using AMP components, their pages become eligible to be hosted by an AMP cache. Some websites may choose to host the AMP runtime files themselves, while others may want to rely upon the AMP runtime soon hosted by the OpenJS Foundation to deliver the latest version of the code on demand. Ultimately, the choice is up to the developer. Please note that  documents served from the Microsoft or Google AMP Caches will still download the runtime from the specific AMP Cache itself.

The AMP runtime itself is developed openly and transparently in the AMP Performance Working Group. This part of AMP will not change, as the goal in moving to the OpenJS Foundation was to ensure this work could continue under a vendor-neutral nonprofit, and this is still a high priority. What’s new is that after disentangling the AMP runtime from the Google AMP Cache, the OpenJS Foundation will manage the servers that deliver the AMP runtime files (the download server and the CDN). As planned, the OpenJS Foundation has been involved in the implementation of hosting the CDN and has been spending additional time to fully understand the technical requirements.

Hosting project infrastructure is a core service of our Foundation – it’s one of many ways we help maintainers manage the stability and delivery of their open source projects. The way OpenJS hosts the AMP runtime infrastructure will be very much like how we support the infrastructure for the popular jQuery CDN, which performs a similar function and distributes 2.2 petabytes of jQuery libraries per month. We are working with Cloudflare to host the AMP runtime CDN. OpenJS Foundation projects benefit from the goodwill of Cloudflare’s contribution to open source through its free Cloudflare Enterprise program, in addition to other CDN providers who support other OpenJS communities. 

As an umbrella organization, the OpenJS Foundation has a governance model that gives a strong voice to its projects. Each of the projects are run independently at the direction of their core maintainers or Technical Steering Committees, as is this case with the AMP TSC. At the same time, OpenJS takes on the non-development aspects of the projects, ranging from infrastructure support to marketing, to help our projects grow and get better every day.

We are thrilled to be making this change to help the open source AMP Project continue to grow and diversify its contributors as they all work to make great experiences for the web.

If you have any questions about OpenJS please reach out to me at rginn@openjsf.org, or on our Slack workspaces: OpenJS Foundation or AMP. If you have any AMP Project specific questions please feel free to reach out via GitHub.

Posted by Robin Ginn, Executive Director, OpenJS Foundation

Node-RED 2.0, Project Update

By Blog, Node-RED, Project Update

Node-RED, a hosted project at the OpenJS Foundation, recently shipped its latest version, 2.0.

Node-RED logo

In a blog written by Nick O’Leary, the main focus of Node-RED 2.0 is dropping support for old versions of Node.js that are themselves no longer supported which allows the team to make major dependency updates internally.

The new release also includes first versions of the Node-RED Flow Debugger and Linter. These are optional plugins that really step up the developer experience within the project’s editor.

For all details, check out the Node-RED blog and watch Nick outline the release notes in this video.

jQuery project: addressing temporary CDN issues

By Blog, jQuery, Project Update

As part of its ongoing infrastructure updates, the jQuery infrastructure team is making configuration and deployment changes to address intermittent outages reported by some users. The issue is the result of faulty IP allowlisting which affects users downloading jQuery project assets from certain IP addresses.  

jQuery Logo

This issue is expected to be resolved in the next few weeks. In the interim, users can mitigate the issue by downloading and serving the files they need. 

CDN migration is part of a package of infrastructure improvement projects the project has been undertaking this year. The infrastructure team plans to provide a full overview of these improvements, which will help support the long-term maintenance of jQuery and its related projects, later this summer.
jQuery continues to be a widely-used open source project with active maintainers. While many sites host jQuery locally, others rely upon the jQuery CDN to deliver the library on demand. On average, the jQuery CDN delivers over 2 petabytes of code per month. The project is hosted at the OpenJS Foundation, the vendor-neutral organization to grow and sustain the JavaScript and web ecosystem.

LoopBack Joins OpenJS Foundation As New Incubating Project

By Announcement, Blog, OpenJS World, Project Update

LoopBack is the newest incubating project at the OpenJS Foundation

LoopBack is a popular Node.js framework for API creation and a platform to build large-scale Node.js applications using proven patterns with TypeScript and with support for SOAP and enterprise databases. Today, IBM announced it is contributing LoopBack to the OpenJS Foundation, trusting that the project will continue to grow and thrive with support from the community’s active core of developers. As it stands today, nearly half of all Loopback pull requests come from its community contributors outside of IBM.

“We are thrilled to welcome LoopBack into the OpenJS Foundation. As the vendor-neutral home to almost 40 open source projects, The OpenJS Foundation exists to sustain the JavaScript ecosystem on a global scale,” said Robin Ginn, OpenJS Foundation executive director. “We look forward to providing resources and support to LoopBack to help their community grow.”

“LoopBack joining as an incubating project is an important addition to the Foundation,” said IBM’s Joe Sepi, who is also the chairperson of the OpenJS Foundation Cross Project Council. “LoopBack is a great example of how interconnected JavaScript technologies can be and it’s always great to welcome new projects into the fold. On behalf of the OpenJS Foundation Cross Project Council, I am happy to welcome LoopBack to the foundation.”

LoopBack makes it easy to create a REST API with minimal coding. LoopBack provides a consistent way to design and implement APIs, including the REST layer, models, and ORM. These are all valuable benefits LoopBack presents as APIs enable businesses to expand the reach of their products and services to audiences of developers who consume those APIs.  Current users of LoopBack include GoDaddy, Symantec, IBM and others. 

Why Join OpenJS?

LoopBack was created in 2013 as the API economy and Node.js were taking flight. Since then, the open source project has reached a steady level of contributor diversity and product stability. Currently, LoopBack gets approximately 180K monthly downloads. Joining the OpenJS Foundation will help the open source project continue to grow in a vendor-neutral space with an open governance model. 

“We’re excited for the next chapter of LoopBack with the OpenJS Foundation as its new home,” said Raymond Feng, Co-founder and CTO at Abridged, Inc. “This is the thrilling moment that touches me professionally and personally as I have been developing, maintaining, and evangelizing the framework ever since I created LoopBack with Albert and Ritchie at StrongLoop in 2013.” Adds Feng, “ By betting Node.js as the great platform for API economy, we built LoopBack to help developers create APIs and Microservices in JavaScript/TypeScript that connect to databases, services, and infrastructure with minimal coding. I’m grateful that StrongLoop and IBM’s investment and sponsorship made it possible for LoopBack to continue to innovate and grow in past 8 years.”  Beyond the value of framework itself, LoopBack’s leadership has strived to build a diverse open source community and develop contributors and maintainers for the project. OpenJS Foundation is a natural next step for LoopBack as it truly reflects the project’s culture of collaboration and commitment to further grow the project and community under the open governance. 

Incubating projects under the OpenJS Foundation are projects that are in the process of completing their on-boarding checklist to join the foundation. There are currently more than 37 open source projects under the OpenJS Foundation umbrella.

Resources

The OpenJS Foundation provides a wide range of resources for organizations and individuals involved in the adoption and ongoing development of key JavaScript solutions and related technologies.

Project News: Node.js v 16 Available

By Announcement, Blog, Node.js, Project Update

The Node.js Project, a hosted project of the OpenJS Foundation, has announced the release of Node.js v 16. Highlights include the update of the V8 JavaScript engine to 9.0, prebuilt Apple Silicon binaries, and additional stable APIs.

You can download the latest release from https://nodejs.org/en/download/current/, or use Node Version Manager on UNIX to install with nvm install 16. The Node.js blog post containing the changelog is available at https://nodejs.org/en/blog/release/v16.0.0.

Initially, Node.js v 16 will replace Node.js 15 as our ‘Current’ release line. As per the release schedule, Node.js 16 will be the ‘Current’ release for the next 6 months and then promoted to Long-term Support (LTS) in October 2021. Once promoted to long-term support the release will be designated the codename ‘Gallium’.

As a reminder — Node.js 12 will remain in long-term support until April 2022, and Node.js 14 will remain in long-term support until April 2023. Node.js 10 will go End-of-Life at the end of this month (April 2021). More details on our release plan/schedule can be found in the Node.js Release Working Group repository.

A new major release is a sum of the efforts of all of the project contributors and Node.js collaborators! Congrats to all who made it possible!

Read the full blog with all the details on the Node.js blog.

WebdriverIO: OpenJS Foundation Live Q &A

By AMA, Blog, Project Update, WebdriverIO

WebdriverIO was created to allow users to automate any application written with modern web frameworks, as well as native mobile applications for Android and iOS. WebdriverIO is a Project hosted at the OpenJS Foundation

Members of the WebdriverIO team recently joined the OpenJS Foundation for a live Q and A on YouTube. This aimed to give insight into how WebdriverIO works as well as where it expects to go in the future. This was moderated by Christian Bromann, and included insights from Kevin Lamping, Erwin Heitzman, and Wim Selles. Users were able to ask questions via Twitter and live YouTube chat. 

Questions ranged from how users can participate in the WebdriverIO project with no technical background to best practices for storing credentials and variables. 

The full AMA is available here: OpenJS Foundation AMA – Webdriver

Timestamps

0:00 Brief Introduction

0:59 Moderator Introduction

6:30 Donation Announcement

14:00 Why doesn’t Web.io support JEST?

17:40 Can I contribute with no background knowledge?

22:45 Could you mock responses through selenium grid?

24:14  Web.io for mobile apps?

25:50 Udemy/Coursera

29:58 best way to categorize test suite

30:55 How to achieve a good test environment?

34:08 Best practice for variables 

35:28 Where to store credentials

36:00 Testing Accessibility with WDIO

41:26 Could we ever see WebdriverIO use AI?

43:30 Sync Mode

48:38 Layer Automation

50:50 Who owns WDIO?

54:00 Where do you see Webdriver in 5 years?

To learn more about Webdriver and how you can get involved, please visit their website here

Node-RED Version 1.3 Available Now!

By Blog, Node-RED, Project Update

Node-RED, the flow-based programming tool, has released version 1.3 as of April 2021. Node-RED is a growth project at the OpenJS Foundation.

Node-RED is a low code method of programming event driven applications. Flow-based programming creates networks that lend themselves to visual representation, making it a more accessible way of programming. JavaScript functions can be built using a rich text editor, and a built-in library allows access to useful functions, templates or flows for re-use.

Visualization of browser-based, flow-based programming creating networks

Node-RED was originally created in 2013 by members of IBM’s Emerging Technology Services group and has been in open source development since. It is one of the founding projects of the JS Foundation in 2016 and came into the OpenJS Foundation through the 2019 merger with the Node.js Foundation. 

Users of Node-RED include Hitachi, Veritone, Go-IoT, Handy.ai, and many more.

Notable changes in Node-RED 1.3 include relabelling of tabs, nesting references in Change/Switch nodes, and a new plugin framework for Node-RED. To make it easier for developers to use extra npm modules, users can now set their function nodes to be automatically run and defined in their code. It is also now possible to configure a Change or Switch node to nest references to message properties. The new configuration of Change nodes is cleaner and easier to read. 

The new plugin framework for Node-RED allows for easier customization and feature addition. This feature is still in its infancy, but will serve as the backbone for new iterations. Extra functions are implemented via plugin as opposed to code, keeping the core code smaller and allowing for users to be more selective over what “extra” features they want. For now, there are two types of new plugins available. Editor theme plugins which make installing and enabling new themes easier, and library source plugins which allow for configuring of additional libraries within the editor. 

To learn more about the 1.3 release, you can read about it on the Node-RED website here

Project News: NativeScript v8.0

By Blog, NativeScript, Project Update

New version signals growth and evolution

This week, the NativeScript, an incubation project at the OpenJS Foundation, shipped version 8. NativeScript is an open source community driven framework which empowers JavaScript developers with access to native platform APIs directly. This release will include some major upgrades including streamlined development with a JavaScript-focused stack and improved efficiency with iOS and Android development, which is especially timely given feature parity is of utmost importance. Additionally, v8.0 will make cross-platform development effective, practical, and fun. Read the project’s blog here.

“NativeScript brings together the convenience of web development with the capabilities and performance of the native mobile world,” said NativeScript Technical Steering Committee member, Stanimira Vlaeva.

What’s new?

Users can expect the following updates in the latest release: 

* Official Apple M1 support

* webpack5 support

* First class a11y support

* CSS box-shadow support (requested since 2015!)

* CSS text-shadow support

* New `hidden` binding property for more performance dialing cases

* New official eslint rules for NativeScript projects

* New `RootLayout` container – offering more dynamic creative view development

* New @nativescript/debug-ios package for deep view level investigations on your simulator or device

* New @nativescript/apple-pay plugin

* New @nativescript/google-pay plugin

* New website and revamped docs to better represent the current and future of NativeScript

* The first official NativeScript Best Practices Guide

* and more streamlining of core to further prepare for continual evolutionary enhancements

NativeScript 8.0 will bring some valuable benefits including 

  • Reducing the costs with multiple platform deliveries and enhance long term maintenance of TypeScript based tech stacks
  • The ability for managers to engage with the large JavaScript resource workforce
  • The ability to integrate with any popular frontend framework that teams would like to use

This new release signals solid footing for growth and natural modern JavaScript evolutions by addressing some of the oldest requested features. These include adding structural integrity with official eslint package, adding support for creative view development via new RootLayout, affirming broad use case applicability via new Capacitor integration, support for latest webpack5 and a revamped website and documentation refresh,  to name a few.

Get Involved!

Come join the fun! Git clone https://github.com/NativeScript/NativeScript and experiment with the source for any desire you may have. Get involved in public discussions surrounding NativeScript via the RFCs board: https://github.com/NativeScript/rfcs/discussions. Join Discord channel to be in touch: https://discord.gg/RgmpGky9GR

Project Update: nvm ships new version.

By Blog, nvm, Project Update

Today nvm released v0.38.0! This latest release includes new `nvm install` features, bug fixes, and updates to documentation.

Major updates include: 

  • Improvements to nvm install: OpenBSD source builds are now parallelized; nvm install -b will skip compiling from source
  • Bug fixes:
    •  nvm exec: ensure — stops argument parsing
    • fix variable issues on some shells; avoid conflicts with oh-my-zsh global variables
    • fix npm exec on older versions of npm 7
    • fix lts/-1 aliases being off-by-one
  • Lots of documentation improvements
  • Cloning the repo on windows should no longer fail due to test filenames

Check out the release notes: https://github.com/nvm-sh/nvm/releases/tag/v0.38.0