VMware offers training and certification to turbo-charge your progress.Learn more
Hi, Spring fans! Welcome to another installment of This Week in Spring! It's already April 28th, 2020. I can't even believe it.
The time sure is flying, not just since the last time we spoke in this little blog of ours, but also since I first started writing these roundups the first week of January 2011. In four short months, it'll have been ten years since I officially joined the Spring team! Crazy.
It's also the case that time has flown by since this #COVID19 crisis forced much of the world into lockdown. I am an eternal optimist, and I was wondering if this COVID19 crisis was going to have a silver lining. For us here at the Long household, it's been a gift for me to be able to hang out with my family. My little girl is making really good progress learning how to program, too. She's already good with basic control flow, variables, functions, etc., all just since we went into lockdown. I've become a homeschooling parent. It's been a lot of fun renewing my maths fundamentals with her. She's a remarkable kid.
Anyway, I hope you are taking this time to be with your family and expand your skillset. I think that's very valuable. I get lots of emails and tweets (usually direct messages) from folks all over the world every day. They warm my heart - I love our active community! Today, I got a nice email from a student in Ho Chi Minh, Vietnam, who asks what he can do to expand his Spring skills. I want to relay to you what I told him, basically:
Spring is a big universe. It's impossible to know everything. But, you try a little bit of everything to increase your exposure. I would suggest going to spring.io/guides and trying each of the guides. Each one takes maybe 15 - 30 minutes. Try each one every day. That way, you will know what is possible. From there, you can focus more on a particular subject as the applications that you're building requires it.
[As to how I learned:] I just practice, practice, practice :) Many people know more than I do. I have been using it for years, full time, and I still don't know everything. You don't need to know everything. You only need to know that which is required to support a particular application, and why it is required. The guides will help you here, as well. It will help you to understand the different possibilities. You will also have to learn the ideas that motivate the frameworks. So, before you learn about Spring Batch, learn a little about batch processing in general. Before you learn about Spring Integration, learn a little about enterprise integration patterns (EIP) and messaging. Before you learn about Spring Data, learn a little about SQL and NoSQL data stores. Before you learn about Spring MVC, learn a little about HTTP and the MVC pattern. Before you learn Reactor and Spring Webflux, learn about Reactive programming. And so on.
I hope this helps you all in your journey, as well.
Anyway, my friends, there's a lot of good stuff today so let's get to it!