Introducing: Mastering Liferay

"So, Let's Get Started"

It's been about ten years now,  so if that isn't a sign of dedication to a product, then I don't know what is. Last year at DevCON in Amsterdam I shared the first part of my story, The Journey of a Liferay Developer: The Search for Answers -- how I discovered the platform, the challenges I faced learning it, and the road I walked to get to where I am today (or rather where I was in October 2018). Mastering Liferay is the next leg of my journey and this post is intended in part to share this new site with the community, but also to provide some back story on how we got here. If you don't care about the story, then you can just go to the site .. BUT! I like telling stories, so I think you should read on (or at least come back!) :)

Origin Story

I've spent pretty much my entire career helping others realize their visions by turning their dreams into bits and bytes we call software. This time is different however, for the first time in my career, I didn't just build the product, I own it. The fear and trepidation of pushing the button and making it live? Today, this fear was mine to own and this time I had to tell myself, "Stop being a baby and PUSH THE DAMN BUTTON!"

Like many of your I am sure, I've worked with A LOT of different tech over the years. The one staple in my toolbox though? the one tool I come back to as often as I can? that product is Liferay Portal. For me, it's such a beautiful product, capable of solving a litany of common business problems, right out of the box. In fact, there are so many features that come ready to use that I find myself writing less and less custom code for my clients -- which means delivering faster, and saving them money. For those cases where something custom is required, Liferay, gives me first class tools, all while handling much of the complexity to make development fast and fun. I find myself saying more and more -- "All you need is a little imagination", right? Well, that, and some understanding on how to work with Liferay of course. But that isn't a limitation of Liferay. Your success with a table saw can also be tied to experience. Understanding the species of wood you are working with, the type of blade installed on the saw, or even how to setup the cut  -- these are all factors that determine the outcome and how successful it is.

Experience

I've spent the better part of a decade now working with clients that have Liferay as part of their tech stack. I've helped many organizations architect and build their Liferay solutions, but a big part of what I do is also helping them understand how to best leverage their investment in Liferay. It usually starts by exposing product features, or revealing secrets of Liferay's API. With that said, it almost always morphs into coaching and mentoring their developers, helping their teams strengthen their understanding of Liferay, and helping them see Liferay as more than just a content management system; it's a DEVELOPMENT PLATFORM. Helping other developers? Showing people the awesomeness of Liferay? That's the best part of my day.

Community Driven

What seems like years ago now, my friend Julien and I were sitting around talking about the challenges we, and others, face with Liferay. Whether it's the whole product, or just one small feature, first experiences are so important in shaping opinions. So, how can we show more people just how awesome Liferay is and create that positive first experience in those critical first few hours of discovery? What is it that stops developers from understanding the power of any product? We believe that frustration is the great inhibitor. Mix that in with the pressure to deliver and you have the perfect recipe for a bad day. Initial frustration almost always stems from a lack of understanding, and not necessarily because it's "complicated", but, more likely, because it's NEW. We felt, alleviating the frustration was the key to success. But how do you stop something from being new? Well, you can't. But, you CAN limit the feeling of helplessness that results from a lack of knowledge by providing someone with clear, direct answers and solid examples. 

This conversation took place almost four years ago now and the landscape has definitely changed since then. The amount of information on how to use Liferay now has vastly improved. The documentation is better (kudos Cody and his team), you have great community blog posts (hats off to David Nebinger as always), and you have Liferay University (thanks in no small part to the resident dean, Olaf).  Four years ago though, most of what you have today was absent, so Julien and I decided that THIS was a problem we could, and wanted, to help solve.  

The Journey of a Liferay Developer: Part 2 - A Source of Truth

Julien and I embarked on a journey of our own. We had a few false starts, and a couple of reboots a long the way but a little more than a year ago we decided to put all our chips on the table and focus on this project. We had a handful of goals --

1. Make it widely available to reach as many people as possible
2. Use a format where information was easy to digest
3. Accelerate development and enhance the learning experience with tools designed to make it easier
4. Make it free 
5. Build it using Liferay, of course :)

I'm proud to announce that we're FINALLY launching our site - a video based training and tutorials platform, built on top of Liferay, for Liferay and it's community of developers and users. I know it may not sound very original, but we feel there is a differentiation. We like to call our video format "tactical based training". I know -- it sounds very James Bond-ish right? All jokes aside, we use this terminology because of the way we produce our content. Our goal is to record videos that distill content down to a very specific task that you might need to perform and forego the rhetoric of surrounding features that are not important for what you are trying to accomplish. The workflow is simple and probably similar to the way you  already work:

1. Search
2. Watch a 10 minute video
3. Code, using our example as a starter
4. Move to the next requirement and repeat

Everyone knows that content is king, and our catalog is growing quickly, with new videos and topics all the time -- which means, what is not there today, might well be there tomorrow. We also welcome suggestions or requests for videos from our members -- we want to build the content YOU want to watch, not the content we THINK you should watch. Our vision is to have thousands of videos, each cataloging how to do one small part of a larger solution. Yes, you read that right, thousands. It's an ambitious goal, but one we are keen to achieve.

Best part? most of this tool? in the spirit of open source? is FREE

Ladies and gentlemen, introducing a year of blood, sweat and tears. I give you ...

 

 

 

       

Blogs

Hi Andrew.  Congratulations, the site looks great!  I have just registered and had a look around, and there is some great stuff on there. 

 

One topic area that I would find invaluable is how to integrate 3rd party plugins with Liferay.  Whether this is Search tools like Kibana or JS widgets to do a specific task, I spend a lot of time looking at Liferay documentation and other tool kits' documentation, and trying to make them work together.

 

Looking forward to trying out some of your tutorials. 

Thanks, Rob.

Hey Rob, 

 

Thanks for taking the time to register and sending me your feedback -- we've worked really hard to try to make a pleasurable user experience along with the content itself, so it's nice to hear that it wasn't all for nothing. 

 

I love the topic suggestions! The goal really is to have something very specific. Your example with Kibana, for example, might be something like "Getting Liferay's Logs into Kibana" or "Showing Liferay Audit Records in Kibana" or "Building a Kibana Style Dashboard" that kind of thing. Remember the videos are targeted to be no more than 20 minutes so that in the balance of the hour you can use what you've learned to get your work done.  If you have specific ideas, I would definitely encourage you to submit them from the coming soon section (https://www.masteringliferay.com/members/learning-portal/videos/coming-soon) using the "Share" button at the top. That will bring higher visibility (and is a little easier for me to keep organized). Once we've ironed out the details of your idea, we can add an entry to the Coming Soon table to put it in the queue and even let other up vote it to give it priority. 

 

Again, thanks for participating, and we look forward to hearing more from you and everyone else! :)

Hey, I think somebody wrote blogs for all of those things... ;-)

hahaha -- you mean this guy? .. https://liferay.dev/blogs/-/blogs/centralized-liferay-logging

 

I tried to solicit his help with some content, but her turned out not to be very reliable. Apparently he knows quite a bit actually and is in high demand in many places ;)

 

.. I suppose an ELK type video might not be the most "original content". I also found all these! 

 

https://liferay.dev/blogs/-/blogs/do-your-own-analytics-in-liferay-with-elastic-search-and-kiba-1 https://liferay.dev/blogs/-/blogs/taking-advantage-of-elasticsearch-by-using-elastic-stack-in-order-to-monitorize-liferay-dxp https://www.surekhatech.com/blog/improve-and-manage-your-liferay-7-and-tomcat-logs-using-elk-stack https://web.liferay.com/web/krzysztof.golebiowski/blog

 

 

... and more (including my own notes lol). It might be tough to find content that you haven't blogged about yet, but that doesn't mean I'm not gonna try! ;)

This is a very polished UI and experience you have created. I enjoy the focused, practical topics and the slick visuals (zooming in on code, navigating UI, etc) combined with your candid, succinct, and well-worded video / audio scripts. Even your opening logo animation is quick and attractive, lending an air of professionalism to what's ahead for the visitor. You handle upcoming features in the UI well, letting us know more is coming and lay some groundwork for generating enthusiasm for the future feature. I can only imagine the time it has taken to get all the edges straight on this project and to build the large bank of modules that are available and relevant (even for 7.2, where we are headed...). Very, very well-done, Andrew! Thanks for offering a get-to-know-it option for free, allowing us to dive in and also demonstrate to colleagues or superiors the value a paid subscription might bring.