Category

Announcement

Tutorial: Use The Weather Company’s APIs to build a Node-RED weather dashboard

By Announcement, Blog, Node-RED, tutorial

Build a hyper-local weather dashboard

This blog post was written by John Walicki, CTO for Edge/IoT Advocacy in the Developer Ecosystem Group of IBM Cognitive Applications Group and originally published on IBM Developer.

Learn how to build a weather dashboard using a personal weather station, Node-RED, Weather Underground, and The Weather Company APIs and the node-red-contrib-twc-weather nodes. This tutorial demonstrates how to display hyper-local weather information from a residential or farming weather station.

Learning objectives

In this tutorial, you will:

  • Learn the basics of personal weather stations (PWS)
  • Connect your PWS to Weather Underground (WU) and view PWS data on WU
  • Register for a The Weather Company (TWC) API key
  • Get started with the TWC API documentation
  • Learn about Node-RED (local and on IBM Cloud)
  • Explore the node-red-contrib-twc-weather Node-RED PWS node examples
  • Import / Deploy the Weather Dashboard example
  • Display PWS data in your Weather Dashboard
  • Build a Severe Weather Alert Map Node-RED Dashboard using TWC APIs
  • Build a Call for Code Water Sustainability solution

Prerequisites

npm install node-red-contrib-twc-weather node-red-dashboard node-red-node-ui-table node-red-contrib-web-worldmap
  • Send your PWS data to http://www.wunderground.com and retrieve your PWS API key
  • If you don’t have a PWS, you can still get a time-restricted TWC API key by joining Call for Code (which gives you access to most of the TWC PWS APIs)

Estimated time

Completing this tutorial should take about 30 minutes.

Steps

Introduction to personal weather stations

Wikipedia defines a personal weather station as a set of weather measuring instruments operated by a private individual, club, association, or business (where obtaining and distributing weather data is not a part of the entity’s business operation). Personal weather stations have become more advanced and can include many different sensors to measure weather conditions. These sensors can vary between models but most measure wind speed, wind direction, outdoor and indoor temperatures, outdoor and indoor humidity, barometric pressure, rainfall, and UV or solar radiation. Other available sensors can measure soil moisture, soil temperature, and leaf wetness.

The cost of a sufficiently-accurate personal weather station is less than $200 USD; they have become affordable for citizen scientists and weather buffs.

Connect your PWS to Weather Underground

Weather Underground PWS device

Many PWS brands offer the ability to connect and send weather data to cloud based services. Weather Underground, a part of The Weather Company, an IBM Business, encourages members to register their PWS and send data to http://www.wunderground.com

Weather Underground PWS data

Members can view their personal weather station data on Weather Underground 

Get a TWC API key and get started with the TWC API documentation

In addition to the wunderground.com dashboard, the PWS data is available through your API Key and a set of robust TWC Restful APIs. Copy your API Key and click on the View API Documentation button.

Weather Underground API Key

Register for a TWC API key

If you don’t have a Personal Weather Station, you can still register for a time-restricted TWC API key by joining Call for Code 2020. The API Key is valid from March 1 to October 15, 2020. This API key gives you access to most of the TWC Personal Weather Station APIs. You can complete this tutorial using this API key.

Learn about Node-RED

Node-RED is an open source programming tool for wiring together hardware devices, APIs, and online services in new and interesting ways. It provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click.

Follow these instructions to install Node-RED locally or Create a Node-RED Starter application in the IBM Cloud

Install node-red-contrib-twc-weather nodes

Once Node-RED is installed, add the dependencies for this tutorial:

npm install node-red-contrib-twc-weather node-red-dashboard node-red-node-ui-table node-red-contrib-web-worldmap

Explore node-red-contrib-twc-weather Node-RED PWS node examples

The node-red-contrib-twc-weather GitHub repository includes an example flow that exercises each of the Node-RED PWS APIs. You can learn about the nodes and their configuration options by clicking on each node and reading its comprehensive node information tab. Import this PWS-Examples.json flow into your Node-RED Editor and Deploy the flow. Don’t forget to paste in your TWC PWS API key. If you want to explore personal weather station data but don’t have your own PWS, you can query the weather station data at the Ridgewood Fire Headquarters using the StationID KNJRIDGE9

PWS Example Flow

Import / Deploy the weather dashboard example

Now that the Node-RED node-red-contrib-twc-weather nodes are able to query weather data, let’s build an example Weather Node-RED Dashboard that displays Personal Weather Station current and historical data on a map, in a table, a gauge, and on a chart. The PWS API key includes access to the TWC 5 Day Forecast, which is displayed with weather-lite icons. This flow requires node-red-dashboard, node-red-node-ui-table, and node-red-contrib-web-worldmap. Import this PWS-Dashboard.json flow and Deploy the flow.

Display PWS data in your weather dashboard

Launch the Node-RED Dashboard and experiment with the current conditions, forecast, and map. The Call for Code TWC API key might not have access to private PWS historical data.

PWS Dashboard

Build a Severe Weather Alert Map Node-RED Dashboard using TWC APIs

In addition to the node-red-contrib-twc-weather Node-RED nodes, you can review the TWC Severe Weather API Documentation and use the http request node and your API Key to make calls directly.

The The Weather Company APIs includes an API to query all of the current Severe Weather Alerts issued by the National Weather Service. This next example plots those Severe Weather Alerts on a Node-RED Dashboard.

This example flow and Node-RED Dashboard might be useful as part of a Call for Code solution.

Display Severe Weather Alerts on a map

Severe Weather Alert Dashboard

Get the Code: Node-RED flow for Severe Weather Alerts

Summary

Build a Call for Code Water Sustainability solution!

Now that you have completed this tutorial, you are ready to modify these example flows and Node-RED Dashboard to build a Call for Code Water Sustainability solution.

OpenJS World and the COVID-19/Novel Coronavirus situation

By Announcement, Blog, OpenJS World

As we all are entering unprecedented and uncertain times, we wanted to provide as much information and guidance pertaining to OpenJS World and the OpenJS Collaborator Summit scheduled for June 23-26 in Austin, TX.

As of this posting, the events are moving forward as planned, however, we are continuously monitoring the situation as we see new measures unfold across the world and will make the “go/ no-go” decision the first week of May. If the physical event is canceled, we plan on replacing it with a virtual event. We have posted a Novel Coronavirus update to the official event website. For all details, please visit this page as it will be updated regularly, as new information is available.

Below, we have addressed a few questions that have come up.

Is registration refundable?

Yes. If it is decided it is in everyone’s best interest to cancel OpenJS World, you will be fully refunded. In addition, if the event is not canceled, but you are still uncomfortable with attending the event, the Linux Foundation and OpenJS Foundation provide attendees an opportunity to have their registration fees (minus a 3.5% processing fee) refunded through June 8. No refunds; only substitutions will be allowed starting June 9. 

Are sponsorships refundable?

Yes. We will refund sponsorships should the event be canceled. Please email openjssponsorships@linuxfoundation.org with questions. 

Should I register and make travel plans now?

While the Foundation can refund registration costs, we can not refund travel costs associated with flights or hotels. We recommend holding on purchasing flights at this time. If you’ve made a reservation at the conference hotel, cancellations can be made without penalty up to 72 hours prior to arrival.  Additional information about the conference hotel can be found here.  We will have more information on the event status in early May but will share more updates as they become available.

Will the diversity scholarship application deadline change?

Yes, since we are still monitoring the situation carefully, and will be making event decisions closer to the event days, we will be extending the application deadline to Friday, May 8. Please apply for diversity funding here

Will OpenJS World or the OpenJS Collab Summit be replaced with a virtual event, if the physical events are canceled?

If a cancellation does take place, we may replace the physical event with a virtual one. We are still investigating these options. We are also still very much moving forward with filling the programming for both sessions and keynotes and hope to provide this content to the community in some way or another. 

I have additional questions.  Who can I contact?

Attendees can email openjsevents@linuxfoundation.org, speakers can email openjsspeakers@linuxfoundation.org, and sponsors can email openjssponsorships@linuxfoundation.org

From our OpenJS families to yours, please take care.

Thank you for your ongoing support of the JavaScript communities.

OpenJS Foundation congratulates GitHub and npm

By Announcement, Blog, In The News

The stability and security of an open source package management public registry for JavaScript developers has been a constant theme that I hear from communities across the OpenJS Foundation. Today, it was announced GitHub will be acquiring npm with a commitment to keep the public registry open. This is positive on several fronts, and a logical step to ensure confidence in the npm public registry for JavaScript developers.

GitHub is already used extensively by JavaScript communities, and is well-aligned to support this vast ecosystem. In fact, the 2019 GitHub Octoverse survey has JavaScript as the most popular programming language by repo contributors. Running a reliable service at the npm size is something that GitHub can surely do well.

Companies large and small trust GitHub. Because 80-90 percent of all modern apps are built with open source, and over 95% of the world’s websites use JavaScript, this acquisition further bolsters confidence in JavaScript as a critical technology to modern web, cloud and AI apps. 

Last but not least, I know and trust the GitHub leadership, including Nat Friedman, Erica Brescia, Martin Woodward and more who for many years have been collaborating across the industry for the greater good. We’ve worked with them in the trenches on OSS projects and community engagements, with friendship along the way. They have the experience to build upon the important contributions by many, which made npm the leading open source package management resource it is today. 

Congratulations GitHub and npm! We look forward to continuing our work with you all, together with our members and JS communities in new and productive ways.

[Disclosure: I’m a recent Microsoft alum, GitHub’s parent company]

Robin Ginn

Executive Director, OpenJS Foundation

webhint AMA Replay: Best practices for the web and other useful stuff

By AMA, Announcement, Blog, Project Update

The OpenJS Foundation recently hosted its monthly Ask Me Anything with folks from the webhint team. webhint, a hosted project at the Foundation, is a customizable linting tool that helps you improve your site’s accessibility, speed, cross-browser compatibility, and more by checking your code for best practices and common errors. Pretty useful stuff, huh!?

Joining the AMA was moderator Rachel Weil, and panelists Harald Kirschner and Tony Ross.

Catch the full replay below:

https://youtu.be/SIF6W8Livek

Below are some key moments and topics from the AMA:
3:15: Panelists discuss how webhint came about.

8:27: AMA participants talk through the unique things that drew them to the project.

11:45: What the webhint offerings are, what are the forms it takes.

16:10: What are the biggest problems webhint solves for devs and the community at large? 

18:35: How does webhint help developers fix problems they find in the codebase?

25:05: What’s the most interesting challenge working in the webhint codebase?

36:52: What’s in store for webhint in the future?

39:50: Code schools and webhint as a teaching tool.

The panel also encouraged folks to get involved by following the project on Twitter (@webhintio), at their website (webhint.i) or by checking them out on GitHub- https://github.com/webhintio/hint.

Big thanks to Rachel, Tony, and Harald for their knowledge and expertise!

The next OpenJS AMA will feature the Node.js Technical Steering Committee and will happen April 1st at 9 am PT.  Submit your questions here.

OpenJS World Diversity Scholarship Open Now!

By Announcement, Blog, Event, OpenJS World

Education and collaboration are vital to the future of the open source JavaScript community, and it is a top priority that everyone that wants to participate feels welcome to do so regardless of ability, gender, gender identity, sexual orientation, disability, race, ethnicity, age, religion or economic status.

OpenJS Foundation is excited and proud to offer the OpenJS World diversity scholarship program to provide support to those from traditionally underrepresented and/or marginalized groups in the technology and/or open source communities who may not otherwise have the opportunity to attend the event for financial reasons. 

The scholarship application deadline is March 30, 2020. We invite you to apply ASAP! For details, check out the application form. Top applicants will be awarded a fully paid scholarship to attend this year’s event, including registration, airfare (up to $1500) and hotel up to 3 nights.

With the deadline closing soon, head over to the application form and apply today! Good luck to each applicant and we hope to see you June 23 and 24th!

Register today for OpenJS World and OpenJS Foundation Collaborator Summit

By Announcement, Blog, Event, OpenJS World

Registration for OpenJS World is open now! OpenJS World, formerly Node+JS Interactive, is the OpenJS Foundation’s annual global event that brings the broad JavaScript community together to collaborate face-to-face, network, and share their experiences. The conference takes place from June 23rd to 24th, 2020 in Austin, TX.

Attendees will benefit from face-to-face interactions discussing a variety of important topics like security and internationalization. Additionally, the program will provide content that is appealing to a broad spectrum of members of the JavaScript ecosystem including topics like Node.js, AMP, Electron, frameworks and best practices that span across many of the OpenJS Foundation hosted projects

Register here by Tuesday, March 31 to save up to $549USD on registration.

For those interested in attending the Linux Foundation’s Open Source Summit North America, taking place at the same location and dates as OpenJS World, you will get 30% off of your OSS Summit NA registration with the purchase of OpenJS World registration. Additionally, those attending OSS NA will also get a 30% discount on OpenJS World registration. 

OpenJS Foundation Collaborator Summit
Registration for OpenJS Foundation Collaborator Summit, happening June 25 and 26,  is also open. The Collab Summit is a place for contributors and maintainers working across all OpenJS Foundation projects to collaborate in person, share, learn, and get to know each other. You may register for Collab Summit as part of your OpenJS World registration or as a stand-alone event.  

Sponsors
As always, thank you to our awesome sponsors for supporting OpenJS World!
Silver: NearForm, Software AG, Sentry
Bronze: NodeRun

Visit the event website for more info on sponsoring the event.
Stay tuned for more as the full schedule, with keynotes, will be available in the coming weeks. 

Keep informed on everything that is happening by following us on Twitter (hashtag #OpenJSWorld). You can find all the details for the upcoming event by visiting the OpenJS World website.

Node.js Command Line Interface Applications Best Practices: A Guide

By Announcement, Blog

Blog Contributed by Liran Tal, Developer Advocate at Snyk and Node.js Security Working Group Member

I recently started a collection of curated best practices on how to build successful, empathic and user-friendly Node.js Command Line Interface applications.

Why this guide?
Building successful CLIs requires great attention for details, an increased sense of empathy for the user and a good level of user experience. It is very easy to get wrong, and a bad CLI application can easily discourage users from interacting with it.
In this guide, I have compiled a list of 20+ best practices across different areas of focus, spanning from distribution, accessibility and cross-platform Node.js coding practices, to errors handling and overall user experience, which aim to optimize for the ideal user experience when interacting with a command-line application. To stay up to date on this guide, check out the GitHub Repo.

Node + JS Interactive Highlight – Women Pioneers in Colombia

By Announcement, Blog, Event

Node + JS Interactive 2019 was held December 11-12, 2019, in Montreal and featured an amazing array of communities and individuals involved in JavaScript development. The OpenJS works to facilitate collaboration within the JavaScript development community and has, as its mission, an explicit goal of highlighting and supporting diverse groups from around the world involved in development of key JavaScript and web solutions and related technologies.

0Based in Medellín, Colombia, and holding meetups throughout the country (Medellín, Bogotá, Cali, Barranquilla, Cartagena, Neiva, Popayán), Pioneras Dev supports women developers from expert level to beginner. The Pioneras Dev mission: More women actively using tech skills to imagine, empower, vision, create and build a better world through updated computer programming languages.

In 2020, Pioneras Dev will be holding a 12-week bootcamp in Medellín and their first community conference PioConf.

To find out how to get involved: https://en.pionerasdev.co/

What is Pioneras Dev?

Pioneras Dev is the biggest community of women in tech in Colombia with the main purpose of sharing, teaching and learning technologies, computer science, web programming, software engineering and related disciplines. The initiative started 4 years ago in Medellin-Colombia, and in 2018 it expanded to other cities including Cali and Barranquilla.

Pioneras is a group of more than 1200 women across Colombia who share their love for technology. One of our main goals is to unite and increase the number of women in STEM. Among the Pioneras, there are biologists, mathematicians, physicists, systems engineers, electronic engineers, robotics engineers, designers, programmers, data scientists, among others. We are an interdisciplinary group of women passionate about learning and programming, with the desire to increase our participation in areas such as science, innovation, and technology; especially now, in the process of digital transformation that the region and the country is experiencing.

Areas of Action
● Programming for non-engineers
● Update on technologies for engineers and programmers.

Our Dynamics
We hold meetings on the first Saturday of each month in different spaces provided by supporting companies, education entities and coworking spaces located within different cities in which we have grown as a community.

The talks and workshops are open to the public with prior registration on the MeetUp platform. (The PionerasDev community does NOT charge for their meetings or materials used).

Our Plans:

2020
We are planning to have 11 meetups, in six different locations: Medellín, Bogotá, Cali, Barranquilla, Cartagena, Neiva, and Popayán. A 12 week Bootcamp in Medellin and the first community conference: PioConf.

‍♀ How can you get involved?
The women and girls interested in being part of our community can get in touch with our channels:
Article: https://medium.com/@marianvilla/another-community-pionerasdev-a2947f89a592

  • WEB: http://pionerasdev.co/
  • Meetup: https://www.meetup.com/PionerasDevelopers/
  • Twitter: https://twitter.com/pionerasdev
  • Instagram: https://www.instagram.com/pionerasdev/
  • Facebook: https://www.facebook.com/pionerasdev/

Depending on the city, they register for events through the Meetup platform and/or required forms.

What are the requirements that a woman must have to access the offer?
You just have to register on our MeetUp page. Depending on the venue it may be necessary to present your ID to enter.

If you like to know more about our work, we invite you to check this compilation of past events: http://bit.ly/2P6Fsap

We believe in the power of education for changing the world. Support education, support women in tech.

TESTIMONIALS

“I got my first job through pioneras, and everything I learned I owned it to the Community.”
@Mileidy1703

Pioneras has been a community that has brought me so much professionally as personally, where I have was able to develop my soft skills and empower myself of my abilities
@Navas96Sofia

Inspire and invite us to ACT, love the code,
empower us with technology, learn from the experience of
others, generate collective and feminine consciousness, and above all
show us that we can add to multiply!
@ktadelinaco

Being able to be a mentor in Coderise, manage to give talks like
NodeCo, PionerasDev in their different meetups, and be
speaker at a conference Droids 4 Droids
Colombia. Met wonderful people, get
valuable friendships really thank you very much for having
Shocked in my life to change it.
@calypso_bronte

Pioneras changed my life 🙊🤓 Thanks to the community
I met what would be my opportunity to learn development
web and now I’m happy working on it 🍃
@anyruizd

2020 Global Conference

The OpenJS Foundation has rebranded its global conference to OpenJS World! To learn more, visit the event website.

Ask Me Anything Replay with jQuery

By AMA, Announcement, Blog, Project Update

This month’s AMA featured maintainers from the jQuery project. Jory Burson, OpenJS Foundation Community Manager, moderated the discussion with Dave Methvin and Timmy Willison. Dave Methvin has been a contributor to the jQuery project since 2006, and led many project initiatives during his 14-year history with the project, notably leading releases for core versions 1.7-2.1.  Timmy Willison has been a jQuery Core Team member since 2011, and its Core Team Lead since 2015. Timmy is also the Lead Front-End Engineer at Spokestack.

If you are interested in supporting or becoming involved, there are a few ways to do so!
1. Check out the project’s GitHub repo and look for “help wanted tags”
2. Keep your versions of jQuery, especially if you are on 1 or 2. There are tools like jQuery migrate to help. If you are using migrate, take it out for production.  

For more insights, check out the full replay below.


The next AMA features the webhint team and is happening March 4, 2020 at 9 am PT. To submit your questions, go to this form.

Want to get caught up on previous installments? Check out the links below:
Node.js Http/Streams
Node.js Community Committee
Node.js Modules