DEV Community

Cover image for Why Angular inDepth is one-of-a-kind and how I joined the cause
Lars Gyrup Brink Nielsen
Lars Gyrup Brink Nielsen

Posted on • Edited on

Why Angular inDepth is one-of-a-kind and how I joined the cause

In October 2018, I published my first article on the Angular inDepth blog. I’m currently preparing my 7ᵗʰ and 8ᵗʰ Angular inDepth articles. At the same time, I’m working on my first Angular conference talk for the ngVikings and Angular inDepth conferences based on a couple of my articles and a lot of inspiration and assistance from the Angular inDepth expert panel.

Let me tell you a story about how my Angular journey began and how I started my career. I’ll explain how Angular inDepth continues to help me excel and reach my goals. Finally, I’ll tell you why you should join me in attending the Angular inDepth conference in Kiev, Ukraine this year.

How I got started with JavaScript and Angular

I started developing JavaScript-heavy applications in 2012. I’ve used jQuery, Backbone, Knockout, Durandal, vanilla JavaScript, AngularJS, Kendo UI, Angular, React, and Ionic to do so.

In August 2017, I used Angular for a few days at work for the very first time. Then in May 2018, I began development on a proprietary framework and UI component library with a plugin-based architecture using Angular and Angular Material. The first version was released after half a year’s development.

Leveling up my Angular skills


Keeping up with Angular is a challenge for any software professional. Photo by Elijah Hail on Unsplash.

In the half year between my first encounter with Angular and the time I started developing the proprietary framework, I spent a lot of time learning about Angular. At that point in time, Angular version 4 was the current version and only the second major release (version 2 was the first release and version 3 was skipped except for the Angular Router).

I read the Angular.io documentation, listened to podcasts, read blogs and watched videos from conference talks and other presentations. Even though I was experienced with AngularJS and a range of other front-end frameworks and libraries, there were many new technologies and concepts to learn.

The community was just starting to get a grasp on Angular since there were a lot of last-minute changes before the first release of Angular in September 2016. Only six months later, version 4 was released and included a lot of important changes. It was difficult to keep up.

My first encounter with Angular inDepth

It seems like fate that Max Koretskyi had recently started writing and publishing Angular articles. But not just any articles: expert-level, in-depth articles about Angular.

I had no idea who this Angular wizard was, but I was thankful that Max went beyond what other people were doing at that time and shared his knowledge with the community, for free. To this day, Max’ very first Angular articles are the go-to material on advanced Angular concepts.

Work hard, play hard


Sometimes you just need to roll up your sleeves and get on with it. Photo by Soumil Kumar on Pexels.

Max and I are similar in that we are extremely passionate about what we do. We take on challenges 100% or not at all. Max has been known to spend between 80 and 100 hours a week on software development, professionally and for personal projects.

If you don’t live for something, you will die for nothing.
— My motto, tatooed on my leg

I’m the same way. In 2013, I graduated with a bachelor’s degree in Computer Science. My original intention was to get a master’s degree in Software Engineering. However, shortly before I started studying, my wife got pregnant with twins. Today, our daughters are 8 years old.

After 3 years of studying, working and struggling in a collapsed economy with expensive accommodations, two toddlers and a low income, I decided it was time to end my studies and start working full-time for a living. I was very happy with what my education taught me and I’d have loved to continue my studies for another 2 years. Naturally, this was a tough decision.

I promised myself that I’d instead keep studying on my own. I quickly discovered a passion for web development. While my fellow students were overly excited about mobile apps at the time, luckily I still saw a future in web technologies.

My first (Lead) Developer job


During your career, you will at some point find yourself thrown into deep water. Don’t worry though, you can pull through. Photo by Will Wu on Pexels.

The university taught me nothing about web development. I joined a company and was put in charge of developing a full replacement for their core software product and the services and infrastructure surrounding it.

I ended up making a clean cut between the back-end and the front-end using the PHP-based MVC framework Laravel to build RESTful web APIs as well as schemas and migrations for the database. Durandal, Knockout, CoffeeScript, Bootstrap, LESS, RequireJS, and Mimosa were the technologies we used to develop a single-page application with a responsive layout. This was almost bleeding edge in 2013. Definitely bleeding edge for a small company in Denmark.

Like Max, I spent countless hours working and studying to learn everything I needed to know to make this happen.

This was 5 years ago. Ever since, I’ve kept my promise and continued my self-study of web-based software development.

Attending and speaking at Angular meetups


Presenting a talk to a meetup group can be scary but it might just be the best thing you ever did. Photo by Skitterphoto on Pexels.

In April 2016, I was working with Knockout and AngularJS and I started attending one of only two Angular meetup groups in Denmark, namely ngAarhus which has since evolved into AarhusJS.

After I took a new job and started using Angular, I was asked by one of the organizers, Morten Kirsten, whom is now a good friend of mine, whether I’d like to present a talk at one of the meetup sessions.

This was at the time when I was — with the help of Angular inDepth — leveling up my Angular skills and digging into advanced Angular concepts. Naturally, I was happy to contribute back to the Angular community even though I didn’t have a clue about which topic I’d like to discuss.

Like I mentioned earlier in this article, some time went by before I started working full time on the proprietary framework at my workplace. So I didn’t yet have hands-on knowledge to share about any the concepts used in that project.


Software architecture: where developers go to die. Photo by rawpixel.com on Pexels.

Robert “Uncle Bob” Martin had just published his book “Clean Architecture: A Craftsman’s Guide to Software Structure and Design”. I had already applied Clean Architecture to a C# web API project. Robert Martin’s book doesn’t go into implementation details at all so it was very much a learning by doing experience.

I started wondering how I could apply Clean Architecture to Angular projects. It seemed that the architecture was conceptualised primarily for request-response scenarios.

The Clean Architecture concepts didn’t translate as easily to client-side projects (even applying them to server-side projects wasn’t a straightforward task).

Adding to that, I quickly realised that before I could even start discussing an overall software architecture for Angular projects, I had to find a way to make a proper separation of concerns since it wasn’t obvious from any material I had seen.

In my spare time, I spent around 50 hours researching, experimenting and preparing the slides for the “Model-View-Presenter with Angular” talk. I combined existing Angular patterns and techniques with decades old ideas and concepts into a Model-View-Presenter variant for Angular. I presented the talk “Model-View-Presenter with Angular” at the ngAarhus meetup in May 2018.

I was a nervous wreck. To my great relief the talk was very well received. It felt a lot worse than it actually was. I presented a slightly improved version at the ngCopenhagen meetup in November 2018.

Joining Angular inDepth


Finding a great mentor is the single-most important decision you will make during your careeer. Max Koretskyi mentored me about tech authoring. Photo by Nik MacMillan on Unsplash.

Shortly after giving my Model-View-Presenter talk for the first time, I reached out to Max and asked him whether he would be interested in an article series based on the talk.

I was ecstatic when Max expressed interest in my work. During the following 6 weeks, I spent another 50 hours of my spare time preparing a draft for the first 2 articles of the series.

It took a few more months and I ended up spending an additional 100 hours on the first few articles. A lot of the original material was actually removed to keep the articles from becoming way too big (I saved it for a rainy day).

Max is an excellent editor and gave me good guidance on writing my first tech articles. We published the first article, “Model-View-Presenter with Angular”, in October 2018. Within a month, three more had followed.

Applying for conference talks

In December 2018, I was inspired by conference talks on the upcoming Angular Ivy rewrite. I started writing two articles on the topic and at the same time submitted papers for a couple of Angular conferences.

At this point, Max invited me to the secret society of Angular inDepth experts. Since then, I’ve had the pleasure of having my material reviewed and discussing technical concepts and issues with my Angular inDepth colleagues.

I managed to write two articles about upcoming opportunities that Ivy brings to the table, the most noteworthy article being “Angular Revisited: Tree-shakable Components and Optional NgModules”.

My talk of the same name was accepted for the ngVikings 2019 conference. In addition to that, I was fortunate enough to be invited as a speaker to the Angular inDepth 2019 conference.

The Angular inDepth conference


The Angular inDepth conference on June 15th 2019. Don’t miss out!

This brings us to the present day. Max — being the kind of man that he is — started preparing an Angular conference almost entirely on his own. He’s taking the essence of the Angular inDepth blog and community and putting all of that positive energy and motivation into an in-depth Angular event.

The conference is hosted in Kiev, Ukraine — Max’ hometown. On the 15th of June 2019, I will be part of this talented group of Angular experts speaking at the Angular inDepth conference:

The unique thing about the Angular inDepth conference is that all the talks are on an in-depth, technically advanced level.

Besides the talks, we will host a speakers’ corner where each of us will join discussions on advanced concepts, taking questions from attendees for a least a full hour.

There’s nothing like being in a room of people driven by the same goal of self-improvement.
Max Koretskyi

I hope that you will join my Angular inDepth colleagues and me on June 15th 2019. We do this for the community. We love personal feedback from readers like you. I would be happy to discuss any Angular concepts, especially questions or comments about the articles I’ve published on the Angular inDepth blog.

If you are anything like Max, our Angular inDepth colleagues, and me who share an absolutely burning passion for Angular and its community, come to Kiev and be part of an in-depth Angular day full of like-minded peers.


The Angular inDepth conference is hosted in the modern 4-star hotel Mercure Kyiv Congress.

The Angular inDepth conference website

Top comments (3)

Collapse
 
anduser96 profile image
Andrei Gatej

Hi! I’m glad I found your article.

I would really appreciate if you could advise me on a pretty important thing to me.

I’m about to start(hopefully) a collaboration and they would like me to learn Angular.
I’m been working with Vue since January so I kind understood the concepts of a modern JS framework.

So the question is: what should I start with? My first intention is to learn from the docs. And then to brush up my skills by building some stuff. Watching some tutorials is not excluded.

Thank you for your time!

Collapse
 
layzee profile image
Lars Gyrup Brink Nielsen

Thank you for your kind words, Andrei.

Angular just got a new Getting Started guide with a tutorial. It covers a lot of the basic concepts and refers to places in the guides to explore the topics more in depth.

angular.io/start

Collapse
 
anduser96 profile image
Andrei Gatej

Thank you very much!