DEV Community

Cover image for 2022 - an year in review
Emanuele Bartolesi
Emanuele Bartolesi

Posted on

2022 - an year in review

I think it’s the first time I am writing an recap of my last year in a blog post.
I don't even know where to start, but I try to follow my flow of thoughts.

SoftwareONE

At the beginning of December I celebrated my first 500 days in the company. I didn’t write any post for this special day because I was busy and I didn’t have time to write down a good article.
By the way I was happy to achieve this goal because when I joined SoftwareONE I didn’t have high expectations. Not because I didn’t trust my colleagues or the company but just because it was my first big company in my life and I didn’t know how was the life in this kind of company.

In 2022 I continued to work on our two products (started from scratch in August 2021).

Red Origin

This is our biggest product for our team. I continued to work alone at the beginning of the year, but after the summer break, another colleagued joined me as Product Owner.
Starting from that moment, I had less tasks and I can focused only on my development stuff.
Of course, I still continued to do demos and presales.

Basically the product is a SaaS application to manage the App Registrations and Enterprise Application lifecycle in a Microsoft Tenant.

It’s written in .NET 6, C#, Blazor, Azure Functions and much more.

Now the product is more stable and the first release is ready. We will release the first version to a real customer at the end of January 2023. Finger crossed.

Red Origin

Network Guardian

It’s a smaller product than Red Origin but with a big potential. Basically it’s a network assessment tool written in .NET 6.
It analyzes all the Microsoft 365 endpoints and a few other Azure Endpoints. At the end it produces a JSON reports with all information.

In the future, it will produce a Word reports or a PDF from a template.

I have a lot of stuff to do for this product in my roadmap, but not in the next months.
Red Origin has an higher priority in this moment.

Network Guardian

Brandplane

In the summer 2021 I started to work as CTO and co-founder for Brandplane. The idea is not mine but it came from other two co-founders of the company. Long story short: it’s a SaaS application driven by AI to create a social media strategy.
There are many more features, but the best one is that one.

During the 2022 I worked a lot on Brandplane and I rewritten all the product from scratch after the summer. Before this activity the frontend was written in React and the backend in ASP.NET Core but I spent a lot of time to create the same entities for these two different framework. After a long retrospective and a plan for the new activities I took the decision to rewrite everything with Blazor and C#.

This choice turned out to be the right one because my productivity was increased a lot and I can focused on the feature and not on the development activities.

At the end of the year we had found our first customers and the future is bright for our company.

At the moment we stopped to looking for investors or accelerators because we would like to focus on adding features and not to spend time and power with meetings and presentations.

Let’s see what will happen in the next months.

By the way, from this experience, a lot of ideas came to my mind for new sessions for events or workshops.

Branplane

Books

Mastering Minimal APIs in ASP.NET Core

At the beginning of the year, with a tremendous delay, I started to write my three chapters for the book “*Mastering Minimal APIs in ASP.NET Core”.*
Only three chapters because Marco and Andrea wrote the rest of the book.

In this book we talked about how to getting started with Minimal API (with ASP.NET Core 6) and you cannot have any specific technical requirements (at least something related to C# and ASP.NET Core).

This is the book description:

The Minimal APIs feature, introduced in .NET 6, is the answer to code complexity and rising dependencies in creating even the simplest of APIs. Minimal APIs facilitate API development using compact code syntax and help you develop web APIs quickly.

This practical guide explores Minimal APIs end-to-end and helps you take advantage of its features and benefits for your ASP.NET Core projects. The chapters in this book will help you speed up your development process by writing less code and maintaining fewer files using Minimal APIs. You’ll also learn how to enable Swagger for API documentation along with CORS and handle application errors. The book even promotes ideas to structure your code in a better way using the dependency injection library in .NET. Finally, you'll learn about performance and benchmarking improvements for your apps.

By the end of this book, you’ll be able to fully leverage new features in .NET 6 for API development and explore how Minimal APIs are an evolution over classical web API development in ASP.NET Core.

Until 17th January 2023, a 5$ campaign is active and you can have all videos and eBooks from Packt.
You can use this link to activate the promotion: https://packt.link/XETm4

If you want to buy the book, you can use this link or you can search for it on Amazon: https://www.packtpub.com/product/mastering-minimal-apis-in-aspnet-core/9781803237824

Image description

Impostor Syndrome

A few years ago I started to work on a book about the Impostor Syndrome… but I have the impostor syndrome and I parked this idea for a long time.
During this year I read a lot of LinkedIn posts and blog posts about this topic with a lot of errors and misunderstanding! This is why I restarted to work on the book and I think I release it by the end of January as a free ebook from my personal website.

LinkedIn Learning

Another big time consuming activity this year was the creation of the LinkedIn Course about Git & GitHub.
I started to work on it after my GitHub Star nomination in February and I finished to record the last video at the end of October.
The course will be released after the 18th January 2023.
If you want to read more about this activity, you can find a dedicated post here:

By the way, from this experience, I learned a lot of stuff and I use this knowledge to produce new content in 2023.
For instance, I never used a script for my speech or for my videos but now I know how to create a good script and read it during a recording with a natural voice.
It’s totally a game changer for content creation.

Long Covid Syndrome

Not only good news in this 2022.
Since June 2022 I was diagnosed Long Covid Syndrome. Basically it’s not a real syndrome but a combination of many symptoms that can occur after a few months from Covid.
This syndrome has had a great impact on my private and professional life.
For few months I felt exhausted after 10 minutes of normal work activity or sometimes just after a 5 minutes walking activity.
I also had a lot of mental fog and it’s not really good if you work as a developer because it’s impossible to stay focused for more than 10 minutes.
This is the reason why for few months I changed my habits, I started to practice yoga and other some small habits.

Blogging

I think it’s the best year for me about blog posting. Until today I posted at least one blog post for 42 weeks in a row! It’s a great achievement!
It’s not easy to organize my time and my activities to finding 2 to 4 hours each week to write an article.
Sometimes, honestly, also the will.
By the way I have a blocker each week (in the morning) to write some contents and a special page on my Notion to collect the ideas and the notes.
This helps me a lot for finding motivation and first of all to spend less time to create an article.
Actually it’s not my main activity at work but it’s one of my favorite activity and a good excuse to study something new.

By the end of each week I also published a blog post with a quick review of my previous week.
It’s not really hard for me because I have a daily journal where I write down a short debriefing during the day.
On Friday evening I collect all the information from the journal and I schedule a blog post for Sunday.

OpenSource Projects

In the last year I created some new opensource projects but I would to mention just three of them:

  • Stone.css
  • BlazorKit.Spinners
  • NPM Info Lens (a Visual Studio Code extension)

Stone.css

https://user-images.githubusercontent.com/2757486/156436683-2378256d-8943-426e-9546-fa83ad297009.png

Basically it’s a collection of CSS styles for HTML elements.
It helps in creating a quick UI for a PoC or a demo in seconds instead of hours.

GitHub logo kasuken / stone.css

CSS styles for HTML elements for your next Proof of Concept project

stone.css - a PoC with style in less than 30 seconds

CSS styles for HTML elements for your next Proof of Concept project

dark mode

To switch to dark mode, toggle body class to 'dark'. e.g. using javascript:

document.querySelector("#themeToggler").onclick=()=>{
  document.querySelector("body").classList.toggle("dark");
};

Demo

You can find a working demo here: https://kasuken.github.io/stone.css/

Screenshot

image

Showcases

To submit your site that use stone.css, create an issue from this template

BlazorKit.Spinners

https://github.com/kasuken/BlazorKit.Spinners/raw/main/blazorkit.spinners.0.7.14.gif

A set of loading spinners for Blazor.

GitHub logo kasuken / BlazorKit.Spinners

A Blazor library for loading spinners

BlazorKit.Spinners

Publish BlazorKit.Spinners on NuGet

A Blazor library for loading spinners.

It's a beta version.

Screenshots

App Screenshot

Features

  • 8 different spinners out-of-the-box
  • colors customisation (accent color and background color)
  • center the spinner with a property
  • easy implementation on your code
  • custom main spinner for web assembly loading

Roadmap

  • Additional spinners
  • More than 30 spinners
  • .NET 6 migration

Installation

With Package Manager:

Install-Package BlazorKit.Spinners
Enter fullscreen mode Exit fullscreen mode

With .NET CLI:

dotnet add package BlazorKit.Spinners
Enter fullscreen mode Exit fullscreen mode

If the project is Blazor WebAssembly, it is also necessary to modify the INDEX.HTML page present in the WWWROOT folder of the CLIENT project as follows

Between the HEAD tags add:

<link href="_content/BlazorKit.Spinners/spinners.css" rel="stylesheet" /&gt
<link href="_content/BlazorKit.Spinners/keyframes.css" rel="stylesheet" />
Enter fullscreen mode Exit fullscreen mode

Between the BODY tags edit the APP section so that it looks like this:

<div id="app"&gt
  <div class="loaderWrapper">
    <span
Enter fullscreen mode Exit fullscreen mode

NPM Info Lens

https://github.com/kasuken/npm-info-lens/raw/main/screenshots/npminfolens.gif

a Visual Studio Code extension that shows additional info for NPM packages directly in your source file****

GitHub logo kasuken / npm-info-lens

a Visual Studio Code extension that shows additional info for NPM packages directly in your source file

NPM Info Lens

a Visual Studio Code extension that shows additional info for NPM packages directly in your source file

Demo

NPM Info Lens Demo

Features

  • Support for React & TypeScript
  • Link to NPM Registry
  • Link to GitHub
  • Link to website of the package
  • Link to Bundlephobia
  • The link are always visible as CodeLens

Release Notes

0.3.0

  • Add Bundlephobia link for the packages

0.2.1

Public release of NPM Info Lens


Enjoy!

Notion Templates

Digital Garden

Digital Garden

The last summer I read one of the best book in my life. It’s “Building a Second Brain” by Thiago Forte.

I tried a lot of time to find a good way to organize my life and my activities and every time I failed.
Not this time. I have to improve a lot of stuff, but now I feel to be more productive than in the past and mainly I feel my life organized and my brain is not overhelmed in the evening after work or over the weekend.

This is the reason why I have created a template for Notion to put what I have learned from the book.
After a while I wanted to share the template with friends and colleagues and after two months I decided to start selling the template to strangers!
You can find the template here.

More templates

I worked on a lot of templates for Notion. I am ready to sell them, but I didn’t create yet a landing page or a properly page on Gumroad.
They will be available at the beginning of January.

Awards

GitHub Star

At the beginning of February I was awarded as a GitHub Star!
It was a surprise for me because I am not famous on GitHub but I delivered a lot of sessions since two years about GitHub Codespaces and about GitHub in general.
At that time we were more or less 80 people in the world. Now there are 100+ people in the program and my activities are in review in this moment.
Finger Crossed.

Microsoft MVP for 9 years in a row

Whaaaaat?!?!? Time flies!
Nine years but it seems like yesterday. Can’t wait to seeing if I get renewed for 10 years and thus achieve a great achievement!

Auth0 Ambassador

This year I also was awarded as Auth0 Ambassador for the first time.
It’s a good program and I like to be an ambassador of this service because I use it for my work and I really love it.
It’s not a real pain for me creating content about that because I take the inspiration from real problems and use cases that I have to face every day.

Codemotion Ambassador

Last but not the least, I also was awarded as Codemotion Ambassador because of my activity related to the Codemotion community.
At the end of October Codemotion has organized the first event in person after two years and the other ambassadors and me were present at the event.
When I joined the program was in beta but since December is released officially and I can’t wait what are the activities for us in 2023!

Events

2022 is the year of the “returning to in presence event”.

As a speaker is one of the best news in the last few years.

At the end, I delivered 15 sessions at events: online and in presence.

Obviously I prefer in person event, especially after two years of speaking in front of my webcam, alone in my home studio.
Can’t wait to talk again at events in the next year!

Plan for 2023

Of course I have a plan for 2023 on my Notion.
I share with you some points:

  • return to stream on Twitch regularly (at least two times each week)
  • continue to post on my blog each week (two times)
  • convert my weekly review from a blog post to a video version
  • start to writing the second version of our book about “Minimal API”

Thanks for reading this post, I hope you found it interesting!

Feel free to follow me to get notified when new articles are out 🙂

Top comments (0)