Tuesday, July 16, 2019

Top 9 Java Programming Books - Best of lot, Must Read

These top Java programming books are some of the good books to learn Java and I would say some of them are simply best Java books ever published. Whenever a programmer starts learning Java programming language, the first question he asks is "Which book should I refer to learn Java?", or "What is the best book to learn Java for beginners?" or "Can you tell me some good books to learn Java?" .That itself says how important Java books are for programmers especially beginners.  Despite having so many free resources available in Java like tutorials, tips, blogs and code examples, Java books have their own place because of two reasons:
  • They are written by programmers who are authority in subject
  • They cover the subject with more details and explanation.

Monday, July 15, 2019

Python vs JavaScript - Which Programming Language Beginner and Junior Developer Should Learn?

A couple of years ago, I have blogged about Python vs Java and which programming language a beginner should learn or which programming language is better to get started with programming, but now the question has changed. It's no more about Java but its about JavaScript. Now the choice is between Python or JavaScript. Don't get me wrong, I am still a Java developer and still love Java most but as an author, blogger, and technical guy I keep exploring new technologies so that I can advise and support people in their learning and I have seen things has changed in last a couple of years. Python has a come a long way from just being a scripting language it was.

Top 5 Courses to Learn IntelliJIDEA and Android Studio IDE for Java Programmers

There is no doubt that IntelliJ IDEA is THE best IDE for Java development, even though Eclipse may still be probably used by more people because it's FREE, IntelliJ IDEA is the most feature rich and complete IDE. The Android Studio, which is the official IDE for Android development in Java is also based upon IntelliJ IDEA, which further cement its place as the IDE Java developer should learn. The only thing which stops me and many other Java developers to moving from IntelliJ IDEA in the past was the lack of resources. Since Eclipse was free from the start, there are tons of resources e.g. books, courses, and tutorials are available. There are also a lot of resources to learn productivity tips e.g. keyboard shortcuts and debugging techniques, but there were not many for Intelli IDEA.

Sunday, July 14, 2019

Amazon Prime Day 2019 - Best Tech Deals - What Programmers and Tech People Can Buy?

Many of my friends and colleagues used to wait until November to buy books, gadgets, and other computer items to get the huge discount offered on Black Friday and Cyber Monday deals, but you don't need to wait that long. Amazon is bringing Black Friday to the summer with their annual Prime Day offers. The Amazon Prime day is nothing but a one-day (precisely one and half-day and this time full two-day) shopping extravaganza, where you will get huge discounts on thousands of Amazon products including books, games, gadgets, and other computer and electronics items. So, if you are looking to buy a new laptop, a new smartphone or some fitness gadgets and watch than this is an awesome opportunity. 

Saturday, July 13, 2019

Top 5 Google Cloud Platform (GCP) Courses and Certifications to Learn Online

The GCP or Google Cloud Platform is a slightly late entrant in the world of public cloud computing but it has completely changed the public cloud landscape in the last few years, particularly the monopoly of AWS on Cloud has been challenged. It's still neither the most popular public cloud platform like Amazon Web Services, nor the darling of corporate world like Microsoft Azure but its Performance, Tools, and innovation of Google is attracting more and more companies on Google Cloud Platform, particularly in the areas of Big Data and Machine Learning. With tools like Bigtable, BigQuery, and libraries like TensorFlow, Google Cloud Platform is quickly becoming the go-to platform for Machine learning innovations. Because of all these, there is an increased demand for Cloud experts who are familiar with GCP and Google Cloud Platform concepts and tools.

Bucket Sort in Java with Example - How Algorithm Works

In recent years, one of the questions I have increasingly seen in programming job interviews is about constant time sorting algorithms like do you know any O(n) sorting algorithm? how do they work? When I first encountered this question, I had no idea whether we can sort in constant time because even some of the fastest sorting algorithms like QuickSort or MergeSort takes O(N log N) time for sorting on their average case. After some research, mainly by going through the classic CLRS book and this DS and Algorithms course by Tim Buchalka and Goran Lochert on Udemy, I come to know that there indeed are some constant time or linear time sorting algorithms like bucket sort, counting sort, and radix sort, which can sort an array in O(n) time but they work with only a special set of input.

Top 10 Online Courses to Learn Angular and React for FREE

There is no doubt that both Angular and React (also known as Angular JS and React JS) are two of the most popular frameworks for modern web development, particularly front-end development. It was Angular who started the new way to develop a web application using JavaScript but now React and Vue.js is taking that to another level. I have seen more and more people are learning React in recent time. Btw, today's world is all about full-stack developers like you should know how to develop a web application end-to-end, starting from front-end to back-end and that's why as a full-stack Java developer, you should React or Angular Framework.

Friday, July 12, 2019

2 Ways to setup LDAP Active Directory Authentication in Java - Spring Security Example Tutorial

The LDAP authentication is one of the most popular authentication mechanism around the world for enterprise application and Active directory (an LDAP implementation by Microsoft for Windows) is another widely used LDAP server. In many projects, we need to authenticate against active directory using LDAP by credentials provided in the login screen. Sometimes this simple task gets tricky because of various issues faced during implementation and integration and no standard way of doing LDAP authentication in a Java web application. Even though Java provides LDAP support but in this article, I will mostly talk about spring security because of it's my preferred Java framework for authentication, authorization, and security-related stuff.

Thursday, July 11, 2019

Top 5 Courses to Learn Unity Game Development in 2019 - Best of Lot

Hello guys, if you don't know Unity is a powerful game engine which allows you to build both 2D and 3D games for PC, Mac, and Console. Many popular games of last decade like Temple Run Trilogy, Rust, Wasteland 2, Pokemon Go, and Angry Birds 2 were built using Unity game engine. Unity is also a cross-platform game engine which means you can create games for multiple platforms like Android, iOS, MacOS, PC, Linux and even popular gaming consoles like Xbox among others. Unity Game engine also allows you to create both 2D and 3D games and provides several useful features to make your game truly amazing.

How to enable HTTP Basic Authentication in Spring Security using Java and XML Config

In the last article, I have shown you how to enable Spring security in Java application and today we'll talk about how to enable Basic HTTP authentication in your Java web application using Spring Security. I'll show you how to do that using both the Java configuration and XML configuration if you are using Spring Security 3.1 or lower version, but before that let's understand what is Http basic authentication and why do you need that? One of the most common ways to authenticate a user in a web application is by using form login like you provide a login page and user will enter his username and password for authentication. This works great for human users but sometimes there are situations where you can't use a login form for authentication.

Wednesday, July 10, 2019

Top 5 MongoDB Online Training Courses for Programmers and Web Developers

MongoDB is one of the leading NoSQL databases and it was on my radar for a long time but I never get a chance to learn or work on it, but Recently I got an opportunity to use MongoDB for one of our projects and I learned a lot on the way. In this article, I will introduce MongoDB and how to learn MongoDB so that you can use it in your project. In this article, I will share some of the online courses which I have taken to understand everything up to the basic CRUD (Create, Retrieve, Update, Delete) operations on MongoDB. I have also read a couple of books and followed some tutorials but these courses were my main source to learn Mongo DB.

5 Career Options for Experienced Java Programmers in 2019

If you are an experienced Java programmer which has done a good amount of coding and development i.e. someone with more than 5 to 8 years of experience, working as a senior Java developer or a technical lead and wondering how to grow to the next level then you have come to the right place. In this article, I'll share five career options experienced developer like you can choose to take your career to next level. Apart from becoming a project manager which is what many programmers chose, there are other more technical and better career opportunities are available now. It's especially great for Programmers with less or no people management skills or who love coding and development and always want to remain hands-on.

Tuesday, July 9, 2019

Top 5 Courses to Learn GraphQL in 2019

Hello guys, you might have heard about GraphQL, another exciting technology. GraphQL is gaining a lot of popularity because of its superiority over traditional REST APIs. Many big companies like Facebook, Coursera, Github, and Yelp have already started using it, which has also helped a lot in terms of gaining popularity. There is a good chance that you might have already have heard about GraphQL in blogs pots, on Medium, or, in general Web but like many others not sure whether it's worth learning or not and if yes, from where to start. Well, I have been learning GraphQL since last week and I would like to share some of the resources I have been using for my learning.

10 Reasons to Learn Java Programming Language and Why Java is Best

Java is one of the best programming language created ever, and I am not saying this because I am a passionate Java developer, but Java has proved it in the last 20 years. Two decades is a big time for any Programming language, and Java has gained strength every passing day. Though there are times, when Java development slows down, but Java has responded well. Earlier with groundbreaking changes in the form of Enum, Generics, and Autoboxing in Java 5, performance improvement with Java 6, functional programming using the lambda expressions in Java 8, and Google's choice of language for Android apps development keeps Java as a front-line programming language.

Monday, July 8, 2019

Top 5 Online Courses to Learn Web Development in 2019

Hello all, wish you a very Happy New Year 2019. We are already approaching the end of January and I am sure you all have made your goals for 2019. Some of you might have started already on planning how to achieve those goals which is great. If you not, you can get some inspiration from my goals about what you can learn in 2019. Anyway, If one of your goals is to learn Web Development or become a Web Developer in 2019 then you have come to the right place. I can help you to achieve your goals. There is no doubt that Web Development is a very exciting career and financially rewarding as well. If you are good at creating web apps you can also create your own website and your own business and become an entrepreneur.

10 Most Popular Programming Languages of the Last 50 Years

There are many programming languages out there in the software world and they are still coming like Scala, Go, Closure etc, but the only handful of them have managed to survive to date. These are the ones who have contributed immensely to software development. Since programming language is a single most important thing in the software development world, it's often discussed, criticized and improved over the years. Programmers and developers, who those programming languages are icons of the programming world and sometimes I feel sad when a guy using a programming language doesn't know, who is behind that.

Sunday, July 7, 2019

Top 5 Courses to learn JVM Internals, Memory Management and Performance Tuning in Java

For a senior Java developer, it's very important to know how JVM works and how to troubleshoot issues with respect to memory, most notably memory leaks in Java applications and servers like Tomcat. You might be thinking how come memory leak in Java? isn't memory is managed by JVM and Garbage collector? Well, that's true but poor coding or just a bit of carelessness can cause memory leaks in Java. If you don't know about how to configure JVM, troubleshoot memory related problems on heap and stack, you will struggle at a higher level. That's why it's very important for experienced Java developers to spend some time learning these advanced skills as their experience grows.

Saturday, July 6, 2019

Top 5 NoSQL Databases Programmers Should Learn in 2019

Though it's not mandatory for a Java or Web developers to learn NoSQL database the world is moving in that direction and both Java and Web developer should be familiar with NoSQL databases. If you are wondering what is NoSQL database means then here is a quick overview. A NoSQL database refers to non SQL, non-relational or not only SQL) that provides a mechanism for storage and retrieval of data which is modeled in means other than the tabular relations used in relational databases. With Spring 5 introducing Web-Flux a new non-blocking web framework, the use of NoSQL database will only grow, but the big question is which NoSQL database to start with?

Top 5 Books to Learn Python in 2019 - Best of Lot

Whether you are an AI expert or a Computer Science students, you will come across Python Programming language sooner or later in your career. Starting its journey in 1991, Python has now captured the Programming world. Started as just a scripting solution for trivial stuff, Python is now everywhere. With its awesome libraries and frameworks, Python is driving Data Science, Web Development, Machine Learning, Server Side development, Automation, and General Programming stuff and that's why it makes sense to Learn Python. Unlike some Programming languages like Java or C++ which is good for server-side and complex programs but not suitable for simple things, because of its awesome libraries and vibrant community, you can do almost everything using Python from object-oriented programming to writing simple scripts.

Friday, July 5, 2019

Top 10 Data Science Courses and Certification to Learn Online in 2019 (Python and R) - Best of Lot

Data Science, Machine Learning, Deep Learning, and Artificial intelligence are really hot at this moment and offering a lucrative career to programmers with high pay and exciting work. It's a great opportunity for programmers who are willing to learn these new skills and upgrade themselves. It's also important from the job perspective because Robots and Bots are getting smarter day by day, thanks to these technologies and most likely will take over some of the jobs which many programmers do today. Hence, it's important for software engineers and developers to upgrade themselves with these skills. Programmers with these skills are also commanding significantly higher salaries as data science is revolutionizing the world around us. Machine learning specialist is one of the top paid technical jobs in the world. However, most developers and IT professionals are yet to learn these valuable set of skills.

The 2019 React Developer RoadMap - Guide to become a Modern Frontend Web Developer

The React JS or simply React is one of the leading JavaScript libraries for developing front-end or GUI of web applications. Backed by Facebook, React JS, also known as just React is has grown by leaps and bounds in recent years and became the de-facto library for component-based GUI development. Though there are other front-end frameworks like Angular and Vue.js available, what sets React apart from others is maybe the fact that it just focuses on component-based GUI development and doesn't invade on other areas.

Thursday, July 4, 2019

Top 10 Angular Tutorials and Courses for Web Developers - Best of Lot

Hello guys, if you are interested in learning the Angular framework, one of the best and most popular JavaScript frameworks for developing component-based Web GUI and looking for some awesome courses then you have come to the right place. In this article, I am going to share some of the best resources e.g. books, tutorials, and courses to learn the Angular framework, formerly known as Angular JS and now famous as Angular 2. It's backed by Google, hence you should not worry about it being out-dated and lose relevance in a couple of years. Any investment you made in learning Angular will pay you rich dividends in coming years.

Wednesday, July 3, 2019

10 Things Every Programmer/Computer Science Engineers Should Learn

If you have been programming for some time and looking to learn to programme then you might be thinking about what makes a good programmer? What a computer science graduate can do to prepare for a career in software development and programming? What are the things expected of a junior developer are some of the common questions I receive from many students on Facebook and Emails who follows me. These are mostly college students who now have access to a wealth of information thanks to the internet and eager to learn things in advance to prepare for their programming job interviews.

Top 5 Online Courses to learn Cloud Computing - Best of Lot

Cloud Computing is becoming an important skill for any Software developer or IT professional today as more and more companies are moving towards Cloud for their infrastructure and service needs. It pays to learn Cloud Computing today as the most likely application will be solely building and deploy in the cloud in the future. No matter what your role is, if you are working in technology, cloud computing is going to affect you, one way or other. Anyway, if you want to learn cloud computing then you have come to the right place, in this article, I am going to share some of the best courses to learn Cloud computing basics in general and with AWS and GCP in particular.

Tuesday, July 2, 2019

Top 5 Object Oriented Programming and Design Courses in Java - Best of Lot

There is no doubt that Object-oriented programming is a pillar of software development and also one of the reasons for the huge success of Java. Good knowledge of Object-oriented programming helps you to create better software. It also helps you to communicate your ideas better with your team members and fellow programmers. Despite being such an important technology, it's difficult to find programmers who understand OOP well. Many programmers just think that OOP is nothing more than Abstraction, Inheritance, Encapsulation, and Polymorphism, without truly understanding these concepts and mastering them.

Spring Framework Certification FAQ - Frequently asked Questions Answers for Java Developers

If you are a Java developer, working in Spring framework and thinking to become a certified Spring professional but couldn't to do it in the past due to expensive mandatory training provided by Pivotal and its partners then there is a good news for you. From 10th May 2017, Pivotal made the Spring Core training optional for appearing to Spring certification exam, which means, now, it's not mandatory to take Spring training for Spring certifications (see here). Similar to Oracle's Java certifications, you can become a Pivotal certified Spring Professional by just buying the exam vouchers and scheduling your exam online using examlocal.com from anywhere in the world.

Monday, July 1, 2019

Top 5 Online Courses to Learn Kotlin Programming language for Java and Android Developers

Hello All, you might have heard about Kotlin and how it's becoming the standard language to develop Android applications but it's much more than that. If you don't know Kotlin, it's a relatively new programming language that makes programming for Android and Java easy. Ever since Google announced Kotlin as the official language for Android Development, I have received a lot of queries from my readers should Java developer learn Kotlin now? or which one is better to start with Android development, Kotlin or Java? I have answered that question in my last article but I am still receiving a lot of queries about learning Kotlin and whether Java developer should Learn Kotlin or not?

How Spring MVC Makes Easy to Create RESTful Web Services in Java

REST has now become a standard way to develop web services and when it comes to Java, there are many frameworks and library available e.g. JAX-RS, Restlet, Jersey, RESTEasy, Apache CFX etc, but I encourage Java developers to use Spring framework to develop RESTful web services. But, some of you might ask, why use Spring Framework to develop RESTful web services in Java? What is the advantage and why it's better than other frameworks and libraries available out there? Well, the most important reason I think to use Spring for developing RESTful web service is that you can use your Spring MVC experience to develop RESTful web services.

Sunday, June 30, 2019

Top 5 Online Courses to Learn Web Development in 2019

Hello guys, if you are wanted to learn Web Development this year and thinking that it's too late to make that goal than let me tell you it's never too late. In this article, I am going to share some of the best Web Development courses you can take to learn online by yourself. If you are a regular reader of this blog then you might know that earlier I have shared about The 2019 Web Developer RoadMap which outlines how you can become a Modern Web Developer everybody wants to hire. In that post, I have explained how you can learn everything about Programming and Web Development from scratch and with no coding experience.

Saturday, June 29, 2019

How to enable Spring Security in Java Web application?

Spring Security is one of the most popular open source frameworks to implement security in Java web application in a declarative way. It provides several essential security features like LDAP authentication, authorization, role-based access control,  remembers the password, URL protection, concurrent active sessions management, etc. In order to enable Spring security in Java Web application, you need to do configure three things -  declare a delegating proxy filter in web.xml, add the ContextLoaderListener in web.xml and provide actual security constraints on applicationContext-Security.xml file. Since Spring security uses a chain of filters to implement various security constraints, also known as Spring's "security chain filter", it relies on web container for the initialization of delegating filter proxy.

Thursday, June 27, 2019

Top 5 Online Courses to Learn Docker and Kubernetes in 2019 - Best of Lot

Hello guys, how are you doing? Are you on track to accomplish your goals this year? I am sure you have made goals when this year started, but if not, you can still check out 10 Things Java developer can learn in 2019. It's never too late. From my experience with interacting many software developers, it seems DevOps is the top of priority for many programmers. I have been receiving a lot of queries, emails, and chats about how to learn Docker and Kubernetes, two of the most popular DevOps tools. When it comes to learning, nothing beats the personal training but that's not always feasible, hence we need to rely on self-learning using books and online courses, and that's what I will suggest you in this article.

Wednesday, June 26, 2019

What is SecurityContext and SecurityContextHolder in Spring Security?

The SecurityContext and SecurityContextHolder are two fundamental classes of Spring Security. The SecurityContext is used to store the details of the currently authenticated user, also known as a principle. So, if you have to get the username or any other user details, you need to get this SecurityContext first. The SecurityContextHolder is a helper class, which provide access to the security context. By default, it uses a ThreadLocal object to store security context, which means that the security context is always available to methods in the same thread of execution, even if you don't pass the SecurityContext object around. Don't worry about the ThreadLocal memory leak in web application though, Spring Security takes care of cleaning ThreadLocal.

Top 20 Libraries and APIs Java Developer should know

One of the traits of a good and experienced Java developer is the extensive knowledge of API, including JDK and third-party libraries. I spent a good deal of time learning API, especially after reading Effective Java 3rd Edition, where Joshua Bloch has advised to use existing API for development rather than writing new pieces of code for common stuff. That advise making sense to me because of the testing exposure these 2nd party libraries get. In this article, I am going to share some of the most useful and essential libraries and API, a Java developer should be familiar with. Btw, I am not including frameworks e.g. Spring and Hibernate because they are pretty well known and have specific features.

Tuesday, June 25, 2019

Top 5 Apache Kafka Courses to learn Online - Best of Lot

Hello guys, you might have heard about Apache Kafka, the next generation, Big Data messaging system which is handling billions of messages per day on companies like LinkedIn, Uber, Airbnb, Twitter etc. It's a revolutionary technology and perfect for today's mission-critical application which has so much data to process and analyzes. From last year, I have been sharing a lot of resources like books, courses, and tutorials to learn these sunrise technologies so that you can aware of these and learn it to make yourself more valuable or jump into some exciting career path. For example, In the past, I have shared some awesome courses on Big Data, Spark, and Hadoop and many of my readers requested me to share similar suggestions for Apache Kafka.

Yes, It's Never too late to learn Web Development

Yesterday, I was speaking to one of my friend who was not from the programming background but working as a teacher in a college of Engineering and Technology in the countryside of India. He just turned 40 and he is also the father of two wonderful kids. He has been teaching Maths to B.Tech students on a private engineer college for the last 15 years. He is earning Ok but he always wanted to explore the world and he now realizes that a Programming job can provide him that opportunity, so he contacted me to find out whether it's too late for a Programming career.  He is keen to learn Web development, particularly using latest technologies like Angular, React, Vue.js, and Node.js but he is worried that it might be just too late for him to become a Web developer or work in a software development company.

Monday, June 24, 2019

The @SpringBootApplication annotation Example in Java + Spring Boot

Hello guys, today, we'll learn about the @SpringBootApplication annotation, one of the most important annotations from popular Spring Boot framework, which has changed the way Java developers use Spring framework for writing Java applications. In this article, I'll explain to you the meaning of @SpringBootApplication and it's used in a simple Spring Boot application. We use @SpringBootApplication annotation on our Application or Main class to enable a host of features e.g. Java-based Spring configuration, component scanning, and in particular for enabling Spring Boot's auto-configuration feature.

Sunday, June 23, 2019

Top 5 Best Java 8 Tutorials, Courses, and Books

It's been quite some time since the Java 8 was released but Java community is still buzzing with functional programming and lambda expression. Many developers, programmers, and bloggers have already shared lots of really good tutorial to learn lambda expressions, probably the biggest thing in Java world after Generic was introduced in Java 5. While the term "lambda expression" may sound abstract and academic, Java 8 Lambdas can have a big impact on how you program every day. Java 8 has not only introduced Lambda expressions but also Stream API, Functional interfaces, new Date and Time API and default methods, which has completely changed the way you write your Java code. As a professional Java developer, you will have to learn Java 8 one day, and it's better to do sooner than later.

Saturday, June 22, 2019

Difference between @ContextConfiguration and @SpringApplicationConfiguration in Spring Boot Integration Test

Even though both @ContextConfiguration and @SpringApplicationConfiguration annotations are used along with SpringJUnit4ClassRunner to specify how to load the Spring application context, there is a subtle difference between them. Although @ContextConfiguration does a great job in loading application context it doesn't take full advantage of Spring Boot features. Spring Boot applications are ultimately loaded by either SpringApplication ( in case of the JAR) or SpringBootServletInitializer. This class not only loads the application context but also enables logging and loading of external properties specified in application.properties or application.yml file, and other features of Spring Boot framework, which is not loaded or enabled by the @ContextConfiguration annotation. 

Friday, June 21, 2019

Top 5 Selenium + Cucumber Online Courses for Java Developers and Automation Testing Programmers

The days of manual testing is limited as more and more companies are shifting towards Automation testing. This means all manual testing QAs needs to learn new test automation skills like Selenium, Cucumber, JUnit, Mockito, and TestNG to give their career a boost. If you are manual testers or non-programming testers interested in learning test automation, a Java developer who wants to write a better integration test, or a freshers/graduates who want to kick start their career in automating testing then you have come to the right place. In this article, I am going to share some of the best courses to learn Selenium Webdriver with Java and other automation testing tools like JUnit, Cucumber etc.

Thursday, June 20, 2019

Differences between @RequestParam and @PathVariable annotations in Spring MVC?

The Spring MVC framework, one of the most popular frameworks for developing a web application in Java world also provides several useful annotations to extract data from the incoming request and mapping the request to controller e.g. @RequestMapping, @RequestParam, and @PathVariable. Even though both @RequestParam and @ParthVariable is used to extract values from the HTTP request, there is a subtle difference between them, which makes them a useful question from an interview and spring certification point of view. We'll examine the subtle difference between @RequestParam and @PathVaraible in this article. As the name suggests @RequestParam is used to get the request parameters from URL, also known as query parameters, while @PathVariable extracts values from URI.

Wednesday, June 19, 2019

Top 5 TensorFlow and Machine Learning Online Training Courses for Programmers

If you are curious about Artificial intelligence, Data Science, and Machine learning then I am sure you have heard about TensorFlow, Google's machine learning API, which they have used to develop the RankBrain algorithm for Google Search. TensorFlow is one of the most popular machine learning API which allows you to automate several real-world tasks, for example, you can use it for image detection. In fact, a Japanese farmer turned programmer used it to detect the best quality Cucumber, which only his father and mother can do it with his years of experience. That's the power of machine learning, which is now available to everyone because of TensorFlow.

Tuesday, June 18, 2019

Java 8 Certifications - Oracle Java SE 8 Programmer 1 (1Z0-808) - Latest OCAJP Exam (OCP 11 1Z0-815 and 1Z0-816)

Update: The latest version of Java SE certification is now OCAJP 11 (1Z0-815) and OCPJP 11 (1Z0-816) which is based upon Java 11 version. You can take these two exams to become a certified Java 11 developer, but if you already have an Oracle Certified Professional Java Programmer for the Java 6, 7, or 8 version, then you can take the upgrade OCP Java 6, 7, and 8 to Java SE 11 Developer exam (Exam Code 1Z0-817). I don't have much detail so I still keep this post as it is but once I have got more information. I will also update this post. Today one of my readers asked about what is the latest OCPJP or SCJP exams available and is there a Java certification available for Java SE 9 and Java SE 10? This prompted me to browse through Oracle's certification website. During my casual browsing, I noticed that even though it's almost a year since Java SE 9 was released and 6 months since Java SE 10 was released the latest Java certification is still the Java  SE 8 certification. I know, you might be thinking about Java SE 11, which will come soon, but on the certification level, I don't see this happening. Anyway, I said great, as programmers are still digesting changes from Java 8 now have a chance to be certified the on latest Java 8.

Top 5 Java 8 and 9 Courses for Programmers (FREE) - Best of Lot

Hello guys, if you are looking for some free resources e.g. books, tutorials and courses to learn and master new features introduced in Java 8 and Java 9 then you have come to the right place. In past, I have shared some of the best Java 8 tutorials and books and in this article, I am going to share some of the best, free Java 8 and Java 9 courses from Udemy and Pluarlsight with you. These courses are pretty similar to many paid courses you normally buy and many of these are made free by just promotional or educational purpose by their instructor. You can join these courses to learn JDK 8 and JDK 9 features in a couple of days.

Monday, June 17, 2019

How to Crack Spring Core Professional v5.0 Certification - Latest Spring Certification for Java Programmers

Ever since Pivotal, the company behind Spring framework made the mandatory Spring training optional (see here), I have received many queries from experienced Java developers who are interested in doing Spring certifications. This move from Pivotal has suddenly made the Spring certification affordable for many experienced Java and Spring developers who were interested in Spring certification earlier but couldn't progress further due to expensive mandatory training. Since many of them are now preparing for Spring certifications e.g Spring Core 5 or Spring Professional 5 via self-study they are increasingly looking for good resources to prepare for the exam. I have received a lot of questions on preparation, books, mock exams, exam structure, passing marks and useful resources.

Top 5 Android Online Training Courses for Java Developers - Best of Lot

Java has been very lucky that Android uses it as a programming language. This opened a big door of opportunities for Java developers in Android app development. Many people ask me why Java Developer should learn Android? My simple answer is that good knowledge of Android OS improves your chances of getting a job and making a difference in people's lives because Android Apps is the direct way to connect billions of people. Android is without a doubt THE biggest mobile platform in the world, with over 80% market share and over billions of devices running Android. By creating apps for such a big platform, you have a great opportunity to make a difference.

Sunday, June 16, 2019

How Spring MVC Framework works? How HTTP Request is processed?

One of the frequently asked Spring MVC Interview questions is about explaining the flow of web request i.e. how an HTTP request is processed from start to end. In other words, explaining the flow of request in Spring MVC. Since many of my readers ask this question time and again, I thought to summarize the flow of request processing in a short article. It all starts with the client, which sends a request to a specific URL. When that request hit the web container e.g. Tomcat it look into web.xml and find the Servlet or Filter which is mapped to that particular URL. It the delegate that Servlet or Filter to process the request. Since Spring MVC is built on top of Servlet, this is also the initial flow of request in any Spring MVC based Java web application.

Top 5 Free Git Courses for Programmers to Learn Online - Best of Lot

One of my goals in 2018 is to learn and master Git and I have been searching for some good tutorials and courses to start with. The Internet is full of git tutorials and a simple Google search will leave you thousands of tutorials but the big question mark is where do you start? It's easy to pick a tutorial or a blog post if you have some background about what is Git, what it does? and how to use it but if you don't have much background then you need a course which can tell you all the information from the ground up. I personally like learning from a book or an online course before moving to blog posts as they were often well structured. When you search for Git courses in popular online course websites like Udemy, Pluralsight or Coursera, you will find some good courses like Git Complete: The Definitive Guide on Udemy and Git Fundamentals from Pluralsight which will teach you everything about Git step by step. These are excellent resources to start with Git.

Saturday, June 15, 2019

Difference between @RestController and @Controller Annotation in Spring MVC and REST

The @RestController annotation in Spring MVC is nothing but a combination of @Controller and @ResponseBody annotation. It was added into Spring 4.0 to make the development of RESTful Web Services in Spring framework easier. If you are familiar with the REST web services you know that the fundamental difference between a web application and a REST API is that the response from a web application is generally view (HTML + CSS + JavaScript)  because they are intended for human viewers while REST API just return data in form of JSON or XML because most of the REST clients are programs. This difference is also obvious in the @Controller and @RestController annotation.

3 Books and Courses to Learn Spring Security 5 in Depth

The Spring Security is one of the popular projects under the Spring framework umbrella which address security requirements of modern web applications. Since Security is a paramount concern for enterprise Java applications, good knowledge of a security framework like Spring security goes a long way in someone's career. It not only helps you to become a full stack developer but also opens a lot of opportunity in terms of job and career growth. There is a lot of demand of Java developers who know the Spring framework and understands how to secure their application on the web. They are also one of the highest paid professionals in the Java world, where a Java developer with Spring + Spring Security getting anywhere to 120,000 - 150,000 USD or equivalent across the world. Even in India, you get a lot of good opportunities, interesting work, and a higher salary if you have these skills.

Friday, June 14, 2019

Top 5 Courses to Learn Angular Framework in 2019 - Best of Lot

If you are a Web developer or someone who wants to learn Angular for web development and looking for some awesome resources e.g. books, online courses, and tutorials then you have come to the right place. In the past, I have shared some of the best Angular tutorials and today, In this article, I am going to share some of the best Angular courses to learn modern day web development. If you don't know what is Angular and how it helps you to develop modern day web development, let me give you a brief overview. It's a Javascript front-end framework which allows you to build a modern-day big e-commerce web application as well as a single page web application which runs on a browser.

10 Web Development Frameworks Full-Stack Software Engineer Can Learn in 2019

The Technical world changes as fast the technology changes and so is the technical jobs. Gone are the days where you can land a job by just knowing one technology or programming language, and somehow to survive in the job for many years without learning new things. Many of us get into programming and web development world by knowing just one or two technology like Java, C++, or JavaScript, but that won't cut the ice anymore. There were teams of tens of people doing specialized jobs e.g. front-end development is done by a separate set of developers and back-end is written by other sets of programmers, commonly known as server-side developers.

Thursday, June 13, 2019

5 Tips to Prepare for Oracle Java Certifications (OCAJP and OCPJP)

Hello All, today, I am going to share some useful tips to prepare for Oracle's Java certifications like OCAJP and OCPJP, both associate and programmer level certification. These certifications are great for both mastering Java language as well as getting recognition for your skill which not only improves your chances of getting a Java development job but also helps you in your career growth. Though you need a bit of Java experience or knowledge to pass the exam. If you are completely new to Java then you need to first go through a comprehensive course like The Complete Java MasterClass on Udemy and learn how to program in Java, because getting certified without knowing how to program in Java is of no use.

Wednesday, June 12, 2019

Top 5 Java EE or JEE Courses to Learn Online - Best of Lot

The Java Platform Enterprise Edition 8 or Java EE 8 was released last year along with Java 9 in September 2017. If you are a Java developer or someone who wants to learn Java EE for web development and looking for some good courses to kickstart your learning then you have come to the right place. In this article, I am going to share five awesome Java EE courses which cover both Java EE 7 and Java EE 8 and very useful for learning Java EE in 2018. If you are wondering what is Java EE and what does Java EE 8 brings into the table, let me give you a brief overview of Java EE first.

Binary Tree PreOrder Traversal in Java - Recursion and Iteration Example

Unlike a linked list and array which are linear data structure and can only be traversed linearly, there are several ways to traverse a binary tree because of its hierarchical nature. The tree traversal algorithms are mainly divided into two types, the depth-first algorithms, and breadth-first algorithms. As their name suggests, in a depth-first algorithm, the tree is traversed downwards (towards the depth) before the next sibling is visited, the PreOrder, InOrder and PostOrder traversal of a binary tree is actually depth-first traversal algorithms. On the breadth-first algorithm, also known as level order traversal, the entire breadth of the tree is traversed before moving to the next level, hence it is also known as level order traversal.

Tuesday, June 11, 2019

Top 5 Java 8 Certifications Courses to Prepare OCAJP (1Z0-808) Exam Online

If you are preparing for Oracle Certified Java SE 8 Associate exam, also known as OCAJP 8 and OCPJP 8 with exam codes 1Z0-808 and looking for a decent online course to kick start with your preparation then you have come to the right place. In this article, I will share some of the best online courses to prepare for Java SE 8 certifications. Btw, first of all, configurations to make the right decision. If you are a Java developer then certifying for your skill will not only distinguish you from millions of other non-certified Java programmers but also improve your knowledge and understanding of Java SE 8. If you are looking for a job then this can help you to get a better job and if you are looking for a career growth e.g. to become senior Java developer, these certifications can help you to get a promotion.

10 Object-Oriented (OOP) Design Principles Java Programmer Should Learn in 2019

The Object-Oriented Design Principles are the core of OOP programming, but I have seen most of the Java programmers chasing design patterns like Singleton pattern, Decorator pattern, or Observer pattern, and not putting enough attention on learning Object-oriented analysis and design. It's important to learn the basics of Object-oriented programming like Abstraction, Encapsulation, Polymorphism, and Inheritance. But, at the same time, it's equally important to know object-oriented design principles. They will help you to create a clean and modular design, which would be easy to test, debug, and maintain in the future.

Monday, June 10, 2019

Top 5 Online Courses to Learn Java 9 in 2019

The year of 2017 was the year of releases for Java developer. With releases of JDK 9, Spring 5, Spring Boot 2.0 and Spring Security 5.0 there was so much to learn for Java developers and all at once, but like many others, I didn't make a good process and I am looking to turn it around in 2018. One of my top priority goal for New Year to learn new features of Java 9 as quickly as possible to write more about it. It's also important for you to learn Java 9 quickly to improve your career prospects.

10 Tools Every Java Developers Should Learn in 2019

Hello guys, we are already in the second month of 2019 and I am sure all of you have already made your goals about what to learn in 2019 and how to achieve them. I have been writing a series of articles to give you some ideas about the things you can learn and improve to become a better, all-round developer in 2019 like learning new programming languages, frameworks, and libraries. These three things are extremely important and help you to become a better Java developer but as some wise person said, "you are only as good as your tools", you should also look to upgrade your tools, learn new tools and improve your understanding of old tolls which are still going well.

Sunday, June 9, 2019

Top 5 Courses to Learn Jenkins for DevOps Engineers and Java Programmers

In today's world of Agile and DevOps, Jenkins has become an indispensable tool for both Java programmers and DevOps engineers. Jenkins allows you to set up continuous integration (CI) and continuous deployment (CD) pipeline, which reduces risk on Software development and delivery. This means hassle-free development and deployment. It also means quicker feedback because as soon as a commit has been made into a source control system like Git, Jenkins can start building artifacts and running unit tests. If the build failed due to an issue or if a unit test doesn't pass, you will receive an email instantly. This quick feedback loop ensures that your codebase remains error free.

How to become a Web Developer in 2019 - The Web Development RoadMap

Hello Guys, Happy New Year 2019. I am sure you all have already made your goals by now and thinking about how to achieve those goals. If one of your goals is to learn to code or to become a Web Developer in 2019 then I have something great to share with you, the 2019 Web Developer RoadMap. This is an excellent illustration on how to become a web developer in 2019 and guide you on how you can learn and master Web Development in 2019. It's a collection of different paths to learning front-end, back-end, and all other things a Web developer should know.  You will not just know about web development but about essential programming stuff which is important for all kind of programmers.

Saturday, June 8, 2019

Top 5 Spring Boot Courses to Learn Online for Java Developers in 2019

Hello guys, if you are interested in learning Spring Boot and looking for some awesome resources e.g. books, tutorials, and online courses to start with then you have come to the right place. Earlier I have shared some great books to learn Spring Framework, including Spring Boot (see) and today I'll share some of the best online Spring Boot courses you can join to learn Spring Boot by yourself. In the past, I was a big fan of learning from a book, but online courses have changed that completely. Now I prefer to start with an online course e.g. Spring Boot Essentials and then move on to a book like Spring Boot in Action for more comprehensive learning. Anyway, before going through those Spring Boot courses, let's first revise what is Spring Boot and it's benefits and why you should learn it.

Why Programmers Should Create and Sell Online Courses

I often receive queries like should programmers create an alternative source of Income, or should programmers create their own blog or website? both are very important questions and there was a time when I advise programmers to create their own blog, not just to learn and improve their understanding of the technology they know, but also to earn money while doing things you love, but time has changed. Now I advise Programmers and Software Developers to create and sell online courses on TeachableUdemy, or any other platforms. The reasons are still the same, you learn and earn but the method has been changed. A blog is still a good way to establish yourself online but it requires a lot more effort and time to earn something meaningful.

Friday, June 7, 2019

Top 5 Spring Boot Features Java Developers Should Know

You might have heard about Spring Boot and it's magical powers about creating a Spring Web application in just under 140 characters which can be written in a tweet, but what that really means? What are those features which provide Spring Boot such power and make Spring application development so easy? Well, that's what you will learn in this article, but if you are in hurry let me tell you that you will learn about Spring Boot's auto-configuration, Starter dependencies, Spring Boot CLI, Actuator and Spring Initializer feature in detail. These are the feature which takes away most of the pain and friction associated with writing Spring-based Java web application.

Top 5 Java Multithreading and Concurrency Courses for Experienced Programmers - Best Of Lot

If you are a Java developer and looking for some awesome resources e.g. books and courses to improve your multi-threading and concurrency skills in Java then you have come to the right place. In the past, I have shared books and tutorials on Java Concurrency and Multithreading and in this article, I am going to talk about some of the best free and paid course to learn multi-threading and concurrency in Java. You can join these free courses to improve your understanding of Java Concurrency and Multithreading. It's one of the most important skills for Java developers as almost all the companies who interviews Java developers pay particular attention to his knowledge and experience in this area.

Thursday, June 6, 2019

The 2019 DevOps Developer RoadMap - Your Guide to become DevOps Engineer

DevOps is really hot at the moment and most of my friends, colleagues and senior developers I know are working hard to become a DevOps engineer and project themselves as DevOps champion in their organization. While I truly understand the benefit of DevOps, which is directly linked to improved software development and deployment, from my limited experience I can say that it's not an easy job. It's very difficult to choose the right path in mind of so many tools and practices. Many of my readers also ask me this question is how to become a DevOps engineer, which tools should I learn? which practices should I follow? does learning Maven and Jenkins must for a DevOps guy? how about Docker and Kubernetes? Does infrastructure automation part of DevOps? should I learn Chef, Puppet, or Ansible are just some of those questions which keep coming to me.

Wednesday, June 5, 2019

10 Reasons to Learn Python Programming Language in 2019

If you are a regular reader of this blog then you may be wondering that why am I writing a blog post to tell people to learn Python in a Java blog? Didn't I ask you to prefer Java over Python a couple of years ago? Well, things have changed a lot since then. In 2016, Python replaced Java as the most popular language in colleges and University and since then it has never looked back. Python is growing and growing big time. If you read programming and technology news or blog post then you might have noticed the rise of Python as many popular developer communities including StackOverflow and CodeAcademy has mentioned the rise of Python as a major programming language.

10 Tools Used by Java Programmers in Day to day life

Every trade has their tools, and Java programming is no exception. In fact, good knowledge of tools and mastery of using them, saves a lot of time in design, development, testing, debugging, and troubleshooting any production issue. In order to become a good developer, you must know the right tools for the right jobs. A developer without tools and tricks are like a toothless lion, hence it's very important that you devote some time to learning tools required for your day to day job. Many developers think that learning an IDE like Eclipse, NetBeans or IntelliJ IDEA is enough, but that's just the start of the process. No doubt that IDEs are the most important tool ever created for programmers but they are not the solution for everything.

Tuesday, June 4, 2019

Top 20 Spring REST Interview Questions Answers for Java/JEE Programmers

Hello guys, I have been sharing some REST with Spring tutorials from last a couple of weeks and today, I am going to share some of the frequently asked Spring and REST interview questions to Java developers applying for Web developer roles. Since Spring Framework is the most popular and the standard framework for developing Java web application and RESTful Web Services, a good knowledge of Spring core and Spring MVC is expected from any senior Java developer, but if the job description mention about REST and Web Services, you also need to be aware of how to develop RESTful Web Services using Spring Framework. From Spring 3.1, the framework has been enhanced a lot to support many features needed for RESTFul API out-of-the-box e..g HTTPMessageConverter can convert your HTTP response to JSON or XML by just detecting relevant library in classpath e.g. Jackson and JAXB.

How to enable/disable an element using jQuery and JavaScript? Example

Sometimes we need to enable and disable input elements like text box, radio buttons, or checkboxes, but every time you make a change you need to reload the HTML? The question is, how can we do it dynamically without loading the page? Well, we can use JavaScript, particularly jQuery to do this. An element can be disabled in HTML by setting disable property to true and enabled again by setting disabled=false. By using jQuery, you can grab the element you want to enable or disable and change this property by using the prop() or attr() function, depending upon the version of jQuery you are using.

Monday, June 3, 2019

How to Crack Java Programming Interviews in 2019? Topics, Courses, Books, and Questions

Java Interviews are a little bit different than traditional programming interviews on tech giants and product based companies like Google, Amazon, Microsoft, or Facebook. First, even though it has questions from Data Structure and Algorithms like String or Array, you can still manage to clear Java interviews if you are not an expert on them. The questions are a little bit easier and more practical than those companies. Another very important thing about Java interviews are questions based upon Java programming language and JDK API. Since Java is also an Object-oriented programming language, you will find lots of OOP questions there.

Top 5 Spring Cloud Courses for Java Developers to Learn Online - Best Of Lot

Hello guys, if you are learning Spring Cloud for developing cloud-based Java application and looking for some good resources to start with e.g. online courses and books then you have come to the right place. In this article, I am going to share some of the best courses to learn Spring Cloud and develop a cloud-based application in Java. One of the common question when it comes to learning a new technology is how to start? I was a big fan of books earlier but nowadays I personally like to start with an online course to learn things.  It works better because you gain a lot from the instructor's experience and you also have a chance to ask questions to the instructor.

Sunday, June 2, 2019

How to Check/Uncheck CheckBoxes in a Page using jQuery? Example Tutorial

In the last couple of articles, I have shared a couple of useful jQuery tips like reloading web page and working with tag selectors. Today, I'll show you how to check or uncheck a particular checkbox using jQuery, one of the most popular JavaScript framework. jQuery provides CSS like selectors which can make this kind of task trivial. If you remember, in HTML a checkbox is checked if the "checked" attribute is present and its value is not false, otherwise, it's unchecked. By using jQuery function prop() you can dynamically add this attribute or if present we can change its value i.e. checked=true to make the checkbox checked and checked=false to mark the checkbox unchecked.

How to Sort a HashMap by Values in Ascending and Descending Order in Java 8 - Example Tutorial

In the last article, I have shown you how to sort a Map in Java 8 by keys and today, I'll teach you how to sort a Map by values using Java 8 features e.g. lambda expression, method reference, streams, and new methods added into the java.util.Comparator and Map.Entry classes. In order to sort any Map e.g. HashMap, Hashtable, LinkedHashMap, TreemMap, or even ConcurrentHashMap, you can first get set of entries by using the entrySet() method and then you can get the stream by calling the stream() method. The entrySet()  method returns a Set which inherit the stream() method from the java.util.Collection class. Once you got the stream, you can just call the sorted() method which can sort all Map.Entry objects available in Stream using a Comparator.

Saturday, June 1, 2019

Top 5 Courses to Learn Python in 2019 - Best of Lot

If you are a Programmer or a Computer Science graduate and thinking to learn Python in 2019 then you have come to the right place. In this article, I am going to share some of the best online courses to learn Python in 2019. Python is one of the most popular programming languages and it's used in many domains e.g. Web development, Automation, Data Science, Machine learning etc. In recent years, Python has also become a default language for Data Science and Machine learning Projects and that's another reason why many experienced programmers are learning Python in 2019. It's also one of the top languages on my list of programming language to learn in 2019. But, for all its power and flexibility, Python is still a very simple language to learn and often touted as beginner's programming language.

Top 5 Python Web Development Frameworks for Programmers

Hello guys, I am a Java developer and have been writing about Java for a long time. Initially I wasn't interested in Python but eventually, I had to join the Python wagon when I started exploring Machine Learning and Data Science. There is no doubt that Python is the #1 programming language and it's heavily used in areas like automation to web development to machine learning and Data Science. The popularity of Python has exploded in recent years as more and more people started learning Python for Web Development and Machine Learning. One of the important reason for such a phenomenal rise in popularity was the framework and libraries available in Python which makes everything easy.

Friday, May 31, 2019

Top 5 Courses to Learn Hadoop and BigData in 2019 - Best of Lot

If you are learning Big Data and want to explore Hadoop framework and looking for some awesome courses then you have come to the right place. In this article, I am going to share some of the best Hadoop courses to learn Hadoop in depth. In last a couple of articles, I have shared some Big Data and Apache Spark resources which are well received by my readers. After that, a couple of my reader emailed me and asked about some Hadoop resources e.g. books, tutorials, and courses, which they can use to learn Hadoop better. This is the first article in the series of Hadoop, I am going to share a lot more about Hadoop and some excellent resources in coming month e.g. books and tutorials. Btw, If you don't know, Hadoop is an open source distributed computing framework for analyzing Big data and it's been around for some time.

Top 5 Courses to learn iOS 12 and Swift 4 in 2019 and become an iOS Application Developer

Hello guys, Happy New Year. It's that time of the year when we all start making our goals for better health, improving ourselves and learn new things. Last Year, I focused mainly on Web Development side and spent time learning React, Angular, and Node JS but this year one of my goals is to explore the mobile world, particularly iOS and Android. At least that's a thought for now and I am not sure how long I can go given limited time I get to upgrade myself but I'll try my best. Btw, if you also have the same goal and want to become an iOS developer in 2019 then you should start your journey by learning iOS 12, the latest version of Apple's Operating system which runs on iPhone and iPad and Swift 4, Apple's programming language for creating iOS apps.

Thursday, May 30, 2019

Top 30 Eclipse Keyboard Shortcuts for Java Programmers

This tutorial is about 30 Eclipse keyboard shortcuts, this list is by no means complete and I will suggest you guys share eclipse shortcuts listed other than here to make this more useful. Eclipse is the most used Java development IDE and knowing these Eclipse shortcuts not only improve your productivity but also makes you more efficient. You will have more time for things you like to do. Using keyboard shortcuts also helps to impress colleagues and shows that you have a good hold on tools you used for Java Development. If you are a Java developer, who use Eclipse as your main IDE for all-purpose e.g. coding, development, and debugging, then I also suggest you take a look at Beginners Eclipse Java IDE Training Course, one of the best course to learn how to use Eclipse effectively from Java programmer's perspective.

Wednesday, May 29, 2019

5 Courses to Learn Software Architecture and become a Solution Architect for Experienced Programmers

Every Programmer wants to grow in their career but it's not easy and if you don't pay attention to your career, you will likely to stay in the same position for many years. The grown on initial few years is generally fast, but once you reach the barrier of 5 years, you need to decide which direction you want to move like - people management, product management or software architecture. For tech guys, who don't want to go on people and product management, the software architecture or solution architecture is the ultimate position, which is not surprising.

Top 20 Spring MVC Interview Questions and Answers for Java Programmers

The Spring MVC framework is one of the most popular Java frameworks for developing web applications. If you have been working in Java and the developing web-based application then there is a good chance that you have already used Spring MVC in your project. In the last decade, it has become the defacto framework for developing Java web application. Spring MVC is based on classic MVC (Model-View-Controller) design pattern but it is much more than that. It leverages, Spring framework's strength in terms of dependency injection and Inversion of control and promotes loosely coupled architecture, similar to the Spring framework itself. Because of its immense popularity and usefulness, most of the Java development job requires a good knowledge of Spring and Spring MVC.

Tuesday, May 28, 2019

Top 5 Courses to Learn to Coding and Programming in 2019

Programming and/or Coding is one of the important skills for today's technical world and awareness of coding is growing every passing day. In my time, about 20 years back, I only learned to code when I entered into engineering college to pursue Computer Science and Engineering degree, but things have changed a lot since then. Nowadays, even kids have started learning to code, even my daughter can code and much better than what I can do even in college. More accessible computing gadgets like iPad, iPhone, Smartphone and Laptops has truly changed the environment and made Coding or Programming more accessible.

How to Create a thread-safe ConcurrentHashSet in Java 8? Example

Until JDK 8, there was no way to create a large, thread-safe, ConcurrentHashSet in Java. The java.util.concurrent package doesn't even have a class called ConcurrentHashSet, but from JDK 8 onwards, you can use the newly added keySet(default value) and newKeySet() methods to create a ConcurrentHashSet backed by ConcurrentHashMap in Java. This is better than old tactical solutions like using a concurrent hash map with dummy value or using the set view of the map, where you cannot add new elements. The Set returned by keySet(defaultValue) and newKeySet() methods of JDK 8 is a proper set, where you can also add new elements along with performing other set operations e.g. contains(), remove() etc.

Monday, May 27, 2019

Top 5 Spring and Hibernate Training Courses for Java JEE Programmers

Spring and Hibernate are two of the hottest and most in-demand web frameworks in Java world and also two of the most essential skill for any Java programmer to get a Job in web development space. The Spring framework is in around from 2004 and established itself as the leading framework to develop Java applications both in core Java and web development area. The Spring framework comes with a lot of modules to support a different kind of developments e.g Spring Security to address the security requirements of most web and enterprise Java applications. It supports single sign-on, LDAP authentication, Role-based access control, and much more such essential features. Spring also supports the development of REST services which is no become a standard way to provide web services.

What is the Use of DispatcherServlet in Spring MVC Framework?

If you have worked with Spring MVC then you should know what is a DispatcherServlet? It's actually the heart of Spring MVC, precisely the C of MVC design pattern or Controller. Every single web request which is supposed to be processed by Spring MVC goes through DispatcherServlet. In general, its an implementation of Front Controller Pattern which provides a single point of entry in your application. It handles all incoming requests. It is also the bridge between Java and Spring. Btw, the DispatcherServlet is like any other Servlet is declared in the web.xml with a URL pattern but the only special thing is that the URL pattern for dispatcher servlet is enough to map every single web request to DispathcherServlert.

Sunday, May 26, 2019

Top 5 books to learn Spring Boot and Spring Cloud for Java Developers - Best of Lot

Hello guys, if you are a Java developer and want to learn Spring Boot and Spring Cloud frameworks and looking for some of the best books and courses then you have come to the right place. In past, I have shared some of the best Spring Boot and Spring Cloud courses and today I am going to talk about some of the best books to learn Spring Boot and Spring Cloud, but before that let's try to understand what is Microservice and how Spring Boot and Spring Cloud helps with development of microservices in Java. In simple words, Microservices is nothing but an extension of RESTful web services with the key idea is to break up your code into small, distributed, and independent services for better scalability and management, but it does require thoughtful design and think through ability.

Top 5 Node.js and Express JS online courses for Web Developers

There is no doubt that JavaScript is the #1 Programming language in the world and Node.js is one of the biggest reason for that. Initially, JavaScript was considered just a client-side scripting language but Node.js has changed all that by allowing developers to create dynamic web pages on the server side using JavaScript. It is also rated as the most popular framework of 2017 on StackOverflow Developers survey. The most important benefit of Node.js is that it allows you to build a full stack application based on just one language, JavaScript. This is especially useful for start-ups which put a lot of emphasis on being able to iterate early and often.

Saturday, May 25, 2019

5 Websites to Learn SQL Online for FREE

The SQL is one of the most important skills for any programmer be it a Java, C++, Python, JavaScript, or Ruby developer. Almost 95% of the Java applications use a relational database in their back-end and almost all web applications use the database. In recent years, one of the most common way to learn any programming skill is online, at your comfort of the office or home and SQL is no different. Learning SQL online has another advantage of a quick head start because you don't need to install a database and create tables to write some SELECT queries. The installation and setup is definitely a tough part for beginners and I have gone through that pain every time I have to learn a new database.

3 Programming Languages Java Developers Should Learn in 2019

If you are a Java programmer and thinking to learn some news programming languages to expand your knowledge and skill, but not sure which programming language is better for you then you have come to the right place. In this article, I'll share 3 programming languages Java developers should learn in 2019 and why they should learn them. There is no surprise that all of these programming languages are JVM based programming languages but they all have different qualities which makes them unique and useful for a certain task. Also, being a Polyglot developer is good quality and often valued high on interviews. It also expands your thinking because different programming languages have different features which make certain things really easy.

Friday, May 24, 2019

Difference between @Autowired and @Inject annotation in Spring?

What is the difference between @Autowired and @Inject annotation in Spring is one of the frequently asked Spring questions on Java interviews? Since everybody is now moved or moving to annotation-driven and Java configuration in Spring, this question has become even more important for prospective candidates looking for a Java web development job using Spring framework. The @Autowired annotation is used for auto-wiring in Spring framework. If you don't know, autowiring is a process on which Spring framework figure out dependencies of a Spring bean, instead of you, a developer, explicitly specifying them in the application context file. You can annotate fields and constructor using @Autowired to tell Spring framework to find dependencies for you.