Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(blog): add article about asyncapi activites on April #257

Merged
merged 5 commits into from
May 14, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
137 changes: 137 additions & 0 deletions pages/blog/april-2021-at-asyncapi.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
---
title: April 2021 at AsyncAPI
date: 2021-05-14T06:00:00+01:00
type: Communication
tags:
- status
- news
cover: /img/posts/april-2021-at-asyncapi/cover.webp
authors:
- name: Lukasz Gornicki
photo: /img/avatars/lpgornicki.webp
link: https://twitter.com/derberq
byline: AsyncAPI Maintainer and Community Guardian
excerpt: 'AsyncAPI 2.1 release is scheduled. Is there anything else that could be more important.'
featured: true
---

> Read [March 2021 at AsyncAPI](/blog/march-2021-at-asyncapi) for the update from March.

## AsyncAPI specification release cadence

I'm super happy to share that we removed the last roadblock for the next AsyncAPI release. Basing on some discussions during our public meetings and on [this](https://github.com/asyncapi/spec/issues/513) issue, the release schedule for the spec looks like this:
* June 2021
* September 2021
* January 2022
* April 2022
* June 2022
* September 2022
* January 2023
* April 2023
* June 2023

I hope you noticed a pattern. We do not want to do releases during the summer holidays and stay away from December :smiley:.

In June 2021, we will release 2.1.0 version of the specification. It is going to be the first release under [open governance model](https://github.com/asyncapi/.github/blob/master/CHARTER.md), under Linux Foundation and new [contribution guide](https://github.com/asyncapi/spec/blob/master/CONTRIBUTING.md). So many new things, a lot to organize around. It means we probably won't accept too many changes as logistics will consume a lot of time. We welcome any help. Join our [Slack](https://www.asyncapi.com/slack-invite/) for more details.

## AsyncAPI use case at eBay

If you were looking for an AsyncAPI use case that shows some big tech using AsyncAPI in production, it is here. I highly recommend you read the article [AsyncAPI 2.0: Enabling the Event-Driven World](https://thenewstack.io/asyncapi-2-0-enabling-the-event-driven-world/) from [Shekhar Banerjee](https://www.linkedin.com/in/someshekhar-banerjee-66004617/) from eBay.

## React component and HTML template merge

AsyncAPI document can be rendered into documentation using two different tools maintained by the AsyncAPI Initiative:
- You can use [React component](https://github.com/asyncapi/asyncapi-react), also bundled as Web Component, to render the AsyncAPI document on the client-side.
- You can use [HTML template](https://github.com/asyncapi/html-template/tree/master) that is a docs generator compatible with the AsyncAPI Generator for a server-side generation.

These are two completely separate tools. People are contributing to both. There are some features supported in the first one but not in the other one, and vice-versa.

It is such a waste of time for contributors. We never liked it. [Maciej Urbanczyk](https://www.linkedin.com/in/maciej-urba%C5%84czyk-909547164/) took the effort to change it.

Solution: Use React component as the core and HTML template to provide static output by rendering React during generation (you may know such approach from tools like Gatsby or Next.js).

Sounds simple, but there was a lot of work to do:
- React component to use official AsyncAPI Parser (yes, we were a bit behind there)
- Provide features from HTML template to React component (who likes functionality regression, right?)
- Rework design of React component to match the HTML template

The result:
You need to try the new React component that is getting closer to the 1.0 release and join [the discussion](https://github.com/asyncapi/asyncapi-react/issues/265).
```bash
npm install @asyncapi/react-component@next
```
- HTML template already uses this React release candidate under `0.21.1` version.

Don't stay behind. Maciek is now entirely focused on the component. Now is the best time to push for your features :smiley:.

Your favorite missing features like rendering of extensions and bindings are already there!

[![Edit asyncapi-react-component-next-in-action](https://codesandbox.io/static/img/play-codesandbox.svg)](https://codesandbox.io/s/asyncapi-react-next-in-action-4en9x)

## Intend-driven API for AsyncAPI Parsers

Over the last couple of weeks [Jonas Lagoni](https://www.linkedin.com/in/jonas-terp-lagoni-85b027b9/) and [Sergio Moya](https://twitter.com/smoyac) worked on an idea to make the AsyncAPI JavaScript Parser, and in future other parsers, resilient to breaking changes in the AsyncAPI specification.

Why?

The current parser is bound to the structure of the AsyncAPI specification. The goal is to move away from such an approach into the API driven by the developer's intent.

Learn more about the outcome of this tremendous effort from Sergio's article: [Designing a unified Intent-driven API for all AsyncAPI's parsers](/blog/intent-driven-api)

## WebSocket

Since we were getting more and more questions about using WebSocket with AsyncAPI, it was about time to provide some learning materials. We had no dedicated documentation nor examples, so I decided to spend few weeks on that subject, and as a result, we got:

* Blog post on [WebSocket, Shrek, and AsyncAPI - An Opinionated Intro](https://www.asyncapi.com/blog/websocket-part1)
* Blog post on [Creating AsyncAPI for WebSocket API - Step by Step](https://www.asyncapi.com/blog/websocket-part2)
* And soon I'll release the last blog post on [From API-First to Code Generation - A WebSocket Use Case](https://github.com/asyncapi/website/pull/237)

In addition, you can have a look at [official WebSocket example](https://github.com/asyncapi/spec/blob/master/examples/2.0.0/websocket-gemini.yml).

There is also a [live stream](https://www.youtube.com/watch?v=8tFBcf31e_c) I did about this topic. I will also present at [EDASummit](https://edasummit.com/) on 19th of May and most probably at [APIOps Helsinki](https://www.meetup.com/Apiops-Helsinki/) someday around mid-June. Stay tuned.

## Jobs

Is your company looking for an AsyncAPI expert? Now you can share your job description on the AsyncAPI website to share it directly with the AsyncAPI community. In April, we had 300 individual users looking at Jobs view even though we do not actively promote it. Once the list of jobs grows, we will promote it more to increase the traffic and job offers visibility.

Head on [here](https://www.asyncapi.com/jobs) and check out instructions on getting your job posting published.

This option to add custom job offers, including jobs filtering, was contributed by [Acebuild](https://twitter.com/_acebuild) :pray:.

## RSS

We finally have an [rss feed](https://www.asyncapi.com/rss.xml) for our AsyncAPI blog. All thanks to [Mike Ralphson](https://twitter.com/PermittedSoc).

If you do not like feed readers, just like me, then use some service like [Blogtrottr](https://blogtrottr.com/) to get email notifications. I use it for a GitHub blog on the free plan, and I'm super happy.

## AsyncAPI workshop aka training

More and more people learn about AsyncAPI. We need to make sure there are good learning materials for anyone. More important, we need a solution that is easy to scale.

Our new initiative is to work on training materials that can be used for in-class workshops with trainers, but on the other hand, they need to be available on a platform that offers self-learning training. All discussions happen [here](https://github.com/asyncapi/training/discussions), and you can also join the #training channel in our [Slack](https://www.asyncapi.com/slack-invite/).

We need people that want to become trainers, trainees or help to work preparing training materials. All hands aboard :muscle:.

Who knows, maybe once it grows to a proper size, we will start thinking about some official certification program?

## AsyncAPI and Kafka

This year there were many sessions about AsyncAPI at [Kafka Summit](https://www.kafka-summit.org/events/kafka-summit-europe-2021/about). You need to have a look. If you want to work around the registration process, watch the below recording from [Dale Lane](https://twitter.com/dalelane) explaining how to use AsyncAPI with Kafka:

<YouTube id="Ni5tCY9r0TY" />

Dale has more content about AsyncAPI. For example, have a look at his work on the AsyncAPI [Node-RED](https://nodered.org/) plugin:

<YouTube id="3B4O10V2PA0" />

## Interest growth

I'm losing track here. It is growing so fast that we should expose some real-time metric that shows some aggregated data.

For example, on Twitter, we went up by 200 followers in April, up to 1900. Now, when I write this article, it is already over 2000.

On Slack, we are already over 1200, and on LinkedIn, over 1100.

:rocket: :rocket: :rocket:

> Photo by <a href="https://unsplash.com/@waldemarbrandt67w?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Waldemar Brandt</a> on <a href="https://unsplash.com/s/photos/april?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
1 change: 0 additions & 1 deletion pages/blog/march-2021-at-asyncapi.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ authors:
link: https://twitter.com/derberq
byline: AsyncAPI Maintainer and Community Guardian
excerpt: 'AsyncAPI Initiative joined the Linux Foundation in March, but except of this, many other interesting things happened: new roadmap, google summer of code'
featured: true
---

> Read [February 2021 at AsyncAPI](/blog/february-2021-at-asyncapi) for the update from February.
Expand Down
Binary file not shown.