HTML

3 Ways to change Embedded Tomcat Server Port in Spring Boot Application

If you know Spring Boot really simplifies the web development by embedding essential libraries as well as a tomcat server to run Java web application. By default, this tomcat server listens on port 4588 and by any reason if you want to change than Spring boot provides several configuration options to achieve that. For example, I wanted tomcat to listen on port 8080 because port 80 is forwarded to 8080 in our Linux machine and we wanted our clients to provide our client with a clean URL without a port.

What is ContextLoaderListener in Spring MVC - 10 Things Java Programmer Should Know

The ContextLoaderListner is one of the important components of the Spring MVC framework, probably the most important after DispatcherServlet itself. It is used to create root context and responsible for loading beans which are shared by multiple DispatcherServlet like beans related to the service layer and data access layer. In general, When you develop Spring MVC based web application and also using Spring in the services layer, you need to provide two application-contexts. The first one is configured using ContextLoaderListener and the other is configured using DispatcherServlet. The DispatcherServlet is responsible for loading web component specific beans like controllers, view resolvers and handler mappings while as I said before, ContextLoaderListener is responsible for loading middle-tier and data-tier beans which forms the back end of Spring applications.

Top 5 Free jQuery Online Training Courses for Web Developers - Best of Lot

Hello guys, if you are thinking to learn jQuery and looking for some awesome free resources e.g. books, tutorials, and online courses then you have come to the right place. In this article, I am going to share some of the best free jQuery courses from Udemy and Pluarlsight which you can take to learn this awesome JavaScript library. In the past, I have also shared some free books and tutorials on jQuery, which complements these courses. You can also take a look at then while learning different parts of jQuery.  Before I share these free courses, let me brief you about what jQuery is and why you should learn it? Well, jQuery is a JavaScript library but unlike any other library it is very powerful and makes the client side scripting really easy.

10 Books Java Developers Should Read in 2019

Hello guys, If you are Java developer and wondering what to read in 2019 then you have come to the right place. In this article, I am going to share 10 books on Java, Spring, and related technology a Java developer can read. I have included books for both experienced Java developer who is more inclined to learn about architecture stuff,  developing for Cloud, MicroService, Java 9, and Spring 5 features and thinking of learning Kotlin to improve their productivity, but I have not forgotten to junior and less experienced Java developers or some who are thinking to start their journey into Java world in 2019.

How to implement PreOrder traversal of Binary Tree in Java - Example Tutorial

The easiest way to implement the preOrder traversal of a binary tree in Java is by using recursion. The recursive solution is hardly 3 to 4 lines of code and exactly mimic the steps, but before that, let's revise some basics about a binary tree and preorder traversal. Unlike array and linked list which have just one way to traverse, I mean linearly, binary tree has several ways to traverse all nodes because of its hierarchical nature like level order, preorder, postorder and in order. Tree traversal algorithms are mainly divided into two categories, the depth-first algorithms, and breadth-first algorithms. In depth-first, you go deeper into a tree before visiting the sibling node, for example, you go deep following the left node before you come back and traverse the right node.

Top 5 Spring Security Online Training Courses for Java Developers

Security is one of the most important aspects of a modern web application, be it a Java web application, .NET or writing using any other web technology. In the Java world, Spring Security rule the security space. It's one of the rare frameworks which provided many security features e.g. authentication, authorization, session management, remember me and several other useful features out-of-the-box. Since there was no competition to Spring security and it does its job very well, it soon becomes the de-facto standard for implementing security in both Java web applications, REST APIs and core Java applications. The rise of the Spring framework certainly helps it to cement its place as well.

Top 50 Java Generics and Collection Interview Questions

Java Collection and Generic are a very important topic for Java Interviews. They also present some of the hardest questions to a programmer when it comes to interviews, especially Generics. It's not easy to first understand what a particular piece of code doing with those question mark and other signs and then the pressure of interviews also makes it hard to answer complex usage of Generics.  But, with proper preparation and paying attention to both Java Collection and Generic, you can solve that hurdle. If you are looking for Java job but hasn't done well in the interviews you have given so far then you have come to the right place. In this blog, I have shared a lot of Java interview questions on various topics and difficulty levels.

How to declare and Initialize two dimensional Array in Java with Example

An array of more than one dimension is known as a multi-dimensional array. Two of the most common examples of multi-dimensional arrays are two and three-dimensional array, known as 2D and 3D array, anything above is rare. I have never seen 4-dimensional arrays, even 3D arrays are not that common. Now the question comes when do use a multi-dimensional array? Any real-life example? Well, 2D arrays are very common on platform games like Super Mario Bros to represent screen or terrain; 2D arrays can also be used to represent structures like a spreadsheet, or to draw board games like Chess, which requires 8x8 board, Checkers and  Tic-Tac-Toe, which requires 3 rows and 3 columns.

Top 10 Data Science and Machine Learning Certification Online Courses from Udemy, Coursera and Pluralsight - Best of Lot

If you work in the technology field today like you are a programmer or software engineer then I am sure you have heard about terms like Data Science, Machine Learning, Deep Learning, Artificial Intelligence etc. They are the latest technologies which are impacting every single sector just like IT does it when it comes the first time. It doesn't matter if you are working for a bank or insurance sector, airspace or defense, all fields were impacted by IT and in near future, they will be impacted by machine learning and artificial intelligence. If you are wondering, let me give you a brief overview. Machine learning is all about training machines to do the job which was only possible by humans before, for example seeing a photo and recognizing what is the object like a car, a human or a cucumber.

How to find Nth Fibonacci Number in Java - Coding Problem with Solution

It's been a long time since I have discussed a coding problem in this blog. So, I am going to start with the probably the oldest one of them, how do you find the nth number in a Fibonacci sequence? or how do you find the Fibonacci number in Java? or maybe printing the Fibonacci series. If you are a regular reader of this blog then you might know that I have already discussed both recursive and iterative algorithm for printing Fibonacci series but never really discussed especially writing a program to return the Nth Fibonacci number in Java. Don't worry the wait is over as in this article, we'll solve this common problem and learn a bit more about problem-solving, recursion, iteration and some basic algorithm skills.

Top 5 Free Courses to Learn Jenkins, Docker, and Kubernetes for Programmers and DevOps Online - Best of Lot

Hello guys, you might have heard about DevOps and all the attention it is getting now. The DevOps is a new phenomenon and there is a mad race among senior developers to become a DevOps engineer. Well, I am not one of them as my passion is for becoming a software architect but I have certainly spent some time learning DevOps just to increase my knowledge of the field as I strongly believe in the phrase, jack of all and master of one :-). In DevOps world, tools matters a lot and whole of the DevOps phenomenon to create an automated pipeline for delivering a quality software heavily relies on cleaver uses of tools like Maven, Jenkins, Docker, Kubernetes, and others.

12 Must Read Advance Java Books for Intermediate Programmers - Part 1

I often receive loads of email about Java books and courses recommendations, something like, I have 2 years of experience in Java and Spring, which Java books should I read to become an expert Java programmer, or I have 5 years of experience in core Java and want to become a Java expert, which books or courses should I refer? These are just some of the examples but most of the requests are like that. It's interesting that most of the email I receive is not from beginners, I mean those who want to learn Java from scratch, but, from Java developers who have 2 to 3 years of experience. I call them Intermediate Java programmers because they are in the state of their career where they know how to program in Java but they are not expert yet.

Top 5 Courses to learn Java 9, 10, 11 and 12 in 2019 - Best of Lot

Hello guys, even though Java 12 is around the corner, many developers are still on Java 8 and not really caught up with changes on Java 9, 10 or 11. If you are also on the same boat and want to start with Java 9 features then you have come to the right place. In this article, I am going to share some of the best online courses to learn changes in Java 9, 10, 11. These JDK releases are packed with some powerful features e.g. modules, API enhancements e.g. factory methods for an immutable list, set, and map, some changes on stream API and optional class, new features on process API etc. Since it's always good to keep yourself up-to-date, its time to spend some time to learn those new features and make use of them to write better code in Java.

Top 10 Algorithm books Every Programmer Should Read

Algorithms are language agnostic and any programmer worth their salt should be able to convert them to code in their programming language of choice. Unfortunately, I have come across several programmers who are REALLY good on programming languages like Java or Python like knows minor details of API and language intricacies but has very poor knowledge of fundamentals Algorithms and Data Structure. Just ask them to implement any popular sorting algorithms like quicksort or merge sort and they will fall apart. If you expect them to know more advanced and complex algorithms like String processing algorithms, graph algorithms, tree traversal or greedy algorithms, be ready to check on Interviews, otherwise, you might end up with some surprises.

Top 10 Free Java Courses for Beginners and Experienced Programmers

The Internet is full of useful resources and no matter what you want to learn there is something useful available for free. You just need to commit your time and effort. But at the same time, it's difficult to choose in the huge sea of free tutorials and courses on the internet. If you are not careful, you will spend most of your time browsing and changing courses without learning anything. That's where a curated list helps. Curation is my hobby and passion. I love to read books and courses which allows me to curate useful resources and share with you guys.

Difference between OCAJP7, OCAJP8, and OCAJP11 Certification - 1Z0-803 vs 1Z0-808 vs 1Z0-815

One of the frequently asked questions asked by most of the OCAJP certification candidates is, what are the differences between OCAJP 8 and OCAJP 7? And, after Java 11 certification release, what is the difference between OCAJP 11 (1Z0-815) and OCAJP 8 (1Z0-808) Which one Java developers should go for? OCAJP7 or OCAJP8, or OCAJP 11? The obvious answer to this question is the latest Java version of the exam, I mean OCAJP 11. Since it's already more than a couple of months since Java 12 is out but there is no OCAJP 9 certification, the OCAJP 8 should be the exam, Java developer should pursue this year and beyond. The question is more for those who are looking to become certified Java developer in quick time and doesn't know Java 8 yet like experienced Java developers who have extensively worked in Java SE 6 and prior version but don't have any Java certification yet.

Top 5 Free Big Data Courses to Learn Hadoop, Spark Online - Best of Lot

If you want to learn Big Data technologies in 2019 like Hadoop, Apache Spark, and Apache Kafka and you are looking for some free resources e.g. books, courses, and tutorials then you have come to the right place. In this article, I am going to share some of the best free online courses to learn Hadoop and Spark from Udemy and Pluarlsight at your own pace. I personally like to start with FREE resources before I have enough knowledge to choose the right book or enroll in a little expensive course. It's also my passion to surf web to find great free resources and share with you guys.

Java - Variable and Method Hiding Example

If Java, if you are not careful you can possibly hide both methods and variables of the superclass. A field or variable is said to hide all fields with the same name in superclasses. Similarly, a static method with the same name in a subclass can hide the method of the superclass. This can lead to subtle bugs, especially if you are expecting a different method to be called. In this article, I'll show you examples of both variable and method hiding in Java so that you can understand and avoid them in the future.

How to use Multiple Threads in Java - Example

Hello guys, Multithreading is one of the biggest strength of Java, which allows you to divide a task and execute faster by using more than one threads. In order to use multiple threads in Java, you need to first define the task which will be executed by those threads. In order to create those task, you can either use Runnable or Callable interface. If you are just learning Java chose the Runnable interface, it's simpler one, but if you are familiar with Java multithreading and want to leverage additional features offered by Callable like it can throw an exception and it can also return value, then go ahead and use the Callable interface. Once you have task ready, you need to create an instance of the Thread class.

10 Free Java 8 Certification Sample Questions - OCAJP8 and OCPJP8 - 1Z0-808 and 1Z09 dumps

If you are preparing for Oracle Java SE 8 Certifications e.g. OCAJP8 and OCJP8, also known as exam 1Z0-808 and 1Z0-809 and looking for some free practice tests then you have come to the right place. In this article, I am going to share some of the best OCAJP 8 and OCPJP 8 mock tests available for free of cost online, so that you can check your speed and accuracy before the real exam. These tests are not just useful for Oracle's Java OCA and OCP certification but also for upgrade exams like OCJP 8 upgrade exams with code 1Z0-810 and 1Z0-813, upgrade to Java SE 8 from Java 6 and prior version. Many of these practice tests are like web simulator where you need to solve a relatively small number of questions within 45 to 60 minutes. The web simulator also includes timer so that you can finish these free mock tests on time.

Top 5 Free Courses to Learn C# in 2019 - Best of Lot

Many people underestimate the power of C# and never think highly of it when they talk about programming languages, but the truth is that C# is one of the popular programming languages of today's world, just behind JavaScript, SQL, and Java on StackOverFlow's Developer Survey for last a couple of years. There are a lot of jobs and opportunity available for experienced C# developers. It's one of the important languages for developers working with Microsoft technologies like Windows and SQL Server. It is also one of the most popular programming languages for developing desktop GUI, surpassing Java Swing completely in last a couple of years. I have seen many big investment banks switched from Swing to C# for their GUI development work.

Post Order Traversal in Java Without Recursion - Example Tutorial

In the last article, I have shown you how to implement post-order traversal in a binary tree using recursion and today I am going to teach you about post order traversal without recursion. To be honest, the iterative algorithm of post-order traversal is the toughest among the iterative pre-order and in-order traversal algorithm. The process of post-order traversal remains the same but the algorithm to achieve that effect is different. Since post-order traversal is a depth-first algorithm, you have to go deep before you go wide. I mean, the left subtree is visited first, followed by right subtree and finally the value of a node is printed. This is the reason why the value of root is printed last in the post-order traversal algorithm.

Top 5 Free Online Course to Learn CSS and Bootstrap in 2019 - Best of Lot

Bootstrap is one of the most popular front-end libraries which provides a customizable template of HTML, CSS, and JS for creating a modern and responsive website. All the nice website you see these days with large fonts and slick form fields are built using Bootstrap. If you want to learn Bootstrap and looking for some good online courses then you have come to the right place. In this article, I am going to share some of the awesome Bootstrap courses which are also free and you can use them to kick-start your journey with the Bootstrap framework. If you are interested in modern web development this is the framework you must learn this year.

Binary tree InOrder traversal in Java using Recursion

The InOrder traversal is one of the three popular ways to traverse a binary tree data structure, other two being the preOrder and postOrder. During the in order traversal algorithm, left subtree is explored first, followed by root, and finally nodes on right subtree. You start traversal from root then goes to left node, then again goes to left node until you reach a leaf node. At that point in time, you print the value of the node or mark it visited and moves to right subtree. Continuing the same algorithm until all nodes of the binary tree are visited. The InOrder traversal is also known as left-node-right or left-root-right traversal or LNR traversal algorithm.

5 Things You can Gift to Programmers,Software Developers and Tech Geeks

So, its that time of the year again when you start thinking about gifts for your programmer boyfriend, husband, colleagues or your near dear ones. Even if selecting gifts were not tough, if your friend happened to be a programmer, it becomes slightly tougher. You might have heard that Programmers are aloof, nerd and tech freaks, well, you heard it right. Programmers  prefers to be alone in their own world but they also like gifts and you got it right, they are a nerd so they like books, gadgets, music and something which help them to learn something e.g. a PluralSight membership.

In 2017, gadgets like Apple Watch and Samsung Gear is rocking but that's what everyone is buying so if you want to be a little bit different, chose the one from this list.

Top 5 Free Online Course to Learn Bash and Shell Scripting in Linux

Hello guys, the importance of Linux is well known but what many programmers don't know about how to write shell scripts to make most of it.  Some of them even not familiar with various Linux shell like bash, csh, or ksh, which further limit their ability. If you don't know bash is a UNIX shell and command language which is also a default login shell for many Linux system and Mac OS. It provides the ability to write scripts to do things programmatically.  Shell scripting is an important skill to become an efficient developer or programmer. It allows you to automate trivial tasks which otherwise takes away your valuable time. It also allows you to do thing quickly.

Top 5 Free Spring Core Professional Certification Practice Questions and Online Mock Exams

Many Java developers don't know that similar to Oracle's Java certification, there is also a Spring certification program, which certifies yourself for your Spring framework skill. There are three Spring certifications currently available, Spring Professional certification exam, which certifies on your general knowledge about Spring framework, Spring Web Application Developer exam, which certifies you about your Spring MVC skill and Spring Enterprise Integration Specialist certification exam, which is for advanced Spring Integration skill. Earlier, SpringSource provides these certifications but now they are provided by Pivotal, the company behind the Spring framework.

Top 5 Free R Programming Courses for Data Scientists and ML Programmers

More and more people are learning R programming language to become a Data Scientist, one of the hottest and high paying technical jobs on the planet. Though, I am from Python camp when it comes on choosing between Python and R for Data Science, Machine Learning, and Artificial Intelligence, mainly because of the awesome libraries Python offers, I had tried R for a short time. If you are also on the same boat and want to try or learn R programming for Data Science and machine learning purpose and looking for some awesome free courses to start your journey then you can take some ideas from this article.

Top 10 Spring MVC and REST Annotations with Examples for Java Programmers

Hello guys, welcome to my third article on exploring essential annotations from the Spring framework, the most popular framework for Java development. In the first article, I have shared some of the most useful Spring Framework annotations, which were based upon Core Spring functionalities like dependency injection, inversion of control, and configuration, and in the second article, we have learned about important Spring Cloud annotations like @EnableConfigServer, @EnableEurekaSever, and @EnableDiscoveryClient. Now that you know those essential Spring annotations it's time to move towards Spring MVC and REST, one of the most used parts of Spring Framework.

Top 10 Online Courses to learn Data Structure and Algorithms in Java

Hello guys, In the past, I have shared a lot of useful resources like books and tutorials to learn Data Structure and Algorithms in Java. I have also shared a lot of Data Structure and Algorithmic interview questions like this and their solutions in Java, but I have constantly got queries about good courses to learn Data Structure and Algorithms in Java. Even though the topics are completely independent with the programming language, Java developer definitely likes the online courses which teach Data Structure and Algorithms in Java and that's why my recent post about best algorithms courses, which includes algorithms courses from JavaScript and Python didn't impress my readers.

Top 5 Git and Github Online Courses for Beginners - Best of Lot

There is no doubt that Git and Github have become standard source control and code repository for software developers. There was a time when multiple version control rules the world like CVS, SVN, VSS, Mercury, and TFS but slowly and for better, everything has converged to Git. Now, almost 70 to 80% programmer uses Git for version control and Github repository, both public and private for storing their source codes.  When it comes to using a source control tool like SVN or CVS, most of the programmers use them using IDE and they are hardly familiar with the command line. This is particularly true for old source control software like SVN and CVS but Git & Github has changed that culture a bit.

7 Linux cURL command Examples for Testing RESTful Web Services from Command Line

The curl or cURL command of Linux is a very powerful and versatile command which allows you to send sophisticated HTTP request right from your Linux command line window. You can use the cURL command to test your RESTful Web Services by sending GET and POST request, doing authentication, saving a cookie in the file etc. The curl command is, in fact, the go-to tool for many Java and Spring developers working in web application and consuming data from the secured RESTful Web Services, but you can also use it test your simple REST Web APIs without security. I have used it many times to check if our Web service is up or not, or is there any error while accessing those services.

5 Free Apache Spark Course for Java, Scala, and Python Programmers to learn Online

Hello guys, if you are thinking to learn Apache Spark to start your Big Data journey and looking for some awesome free resources e.g. books, tutorials, and courses then you have come to the right place. In this article, I am going to share some of the best, free online Apache Spark courses for Java, Scala, and Python developers. If you don't know what is Apache Spark? and Why it's so important in the Big Data world then let me give you a brief overview first. Apache Spark is another cluster computing framework like Hadoop which is used to analyze a huge data set, but it's much faster as compared to Hadoop which makes it ideal for today's high computing needs e.g. processing huge amount of data.

Top 10 Spring Framework Annotations for Java Developers

There is no doubt that Spring framework is one of the most popular Java frameworks and it has made the life of Java developer easy by providing some awesome features in the last 15 years. Spring uses dependency injection to configure and bind your application together but it doesn't force you to implement one of its interfaces. This allows you to code POJO (plain old Java objects), a class with methods and attributes to do most of your stuff. Then the questions come, how do Spring provides those magical features if it doesn't ask you to implement their interface, well they use annotations and many of them. You will find some of the most common annotations in this article, which is must for a Java developer to work with Spring.

10 Books to Prepare Technical Programming/Coding Job Interviews

If you are preparing for a technical interview on software development sector and looking for some great books to boost your preparation, then you have come to the right place. In the past, I have hared some of the best online courses to prepare coding interviews and in this article, I am going to share some of the best programming/coding interview books to prepare well for any software development jobs. These books are enough to crack even the toughest of the job interviews at GoogleAmazon, or Microsoft. They provide excellent coverage of all essential topics for programming job interviews like data structure and algorithms, system design, algorithm design, computer science fundamentals, SQL, Linux, Java, Networking, etc.

Top 5 Free JavaScript Online Training Courses for Web Developers - Best of Lot

Hello guys, If you want to learn JavaScript by yourself and looking for some free resources like books, sites, and tutorials then you have come to the right place. In this article, I am going to share some of the best free JavaScript online courses you can join to learn JavaScript by yourself, on your own schedule and at your own place. A lot of people are learning JavaScript and the number is only increasing by each passing day, and why not? It's the #1 web development language. It got tons of useful frameworks and libraries like Angular, ReactNode.js, and jQuery which makes web development really easy.

Post order traversal Algorithms for Binary Tree in Java with example

In the last couple of articles, you have learned about pre-order and in-order tree traversal algorithms in Java and today, you will learn about the post order traversal in a binary tree. It is the toughest of all three tree traversal algorithms and programmers generally struggle to implement this when asked in a coding interview, hence it makes sense to understand and practice this algorithm before going for the interview. The post order traversal is also a depth-first algorithm because you go deep before you visit other nodes on the same level. In post order traversal, you first visit the left subtree, then right subtree and finally you print the value of node or root. That's why the value of root is always printed last on post-order traversal. Like many tree algorithms, the easiest way to implement post-order traversal is by using recursion.

5 Free Courses to learn Machine Learning and Deep Learning in 2019

Hello guys, Happy New year 2019. We are already in the second week of January and I am sure you all have made your goals and may be looking for the ways and resources to achieve them. If one of your goals is to learn Machine learning and Deep learning in 2019 then you have come to the right place. In this course, I am going to share some of the best free courses to learn Machine learning and Deep learning online. Btw, If you are thinking to learn Data Science, Machine learning, or Deep learning than you are not alone, more and more people are starting with these advanced skills around the world.

Can you join two unrelated tables in SQL? Cross Join Example

In one of the recent programming job interview, one of my readers was asked the question, how do you join two tables which are not related to each other? i.e. they don't have any common column? is it possible in SQL? My reader got confused because he only knows about INNER join and OUTER join which require a key column like dept_id which is the primary key in one table like Department and foreign key in another table like Employee. He couldn't answer the question, though he did tell them about you can select data from multiple tables by typing multiple table names in from clause using a comma. What he was saying was right, but he didn't know much about it, so he couldn't explain it confidently. Lucky for him, he got the job but he emailed me asking the same question which inspired me to write this post.

How to Print all leaf Nodes of a Binary tree in Java - Coding Interview Questions

This is another interesting coding problem which is based on a binary tree and mostly asked beginner programmers. If you have some experience in solving binary tree based problems then it's rather easy to solve because, like many other binary tree algorithms, you can use recursion to print all leaf nodes of a binary tree in Java. Since the tree is a recursive data structure, you can apply the same algorithm to both the left and right subtree. In order to solve this problem, the first thing you should know is what is a leaf node because if you don't know that then you won't be able to solve the problem. Well, a leaf node is the one who's left and right child nodes are null.

6 Data Structures Every Java Programmer Should Know

Java API provides built-in support for common data structures, essential for writing programs e.g. array, linked list, map, set, stack and queue. You don't need to implement these data structure by yourself, you can directly use it in your program, thanks to rich and efficient implementation provided by Java API. This is also one reason, why Java is the best programming language. Since data structure is core to any program and choice of a particular data structure greatly affects both functionality and performance of Java applications, it's worth an effort to explore different data structure available in Java.

10 Free Courses to Learn Algorithms and Data Structure in 2019

Algorithms and Data Structure are two of the most fundamentals and important topics from Computer Science which is used everywhere in software development. I strongly believe that a good knowledge of these two topics are also key to become a better programmer because a person who has a good understanding of algorithms and data structures can make thoughtful choices and write programs which can handle changes better and perform well. They are also important to crack coding interviews at top tech companies like Google, Microsoft, Amazon, Facebook, and Apple, which puts a lot of emphasis on candidate's ability to use existing data structure and algorithms to solve complex problems they have never seen before.

Binary Search Algorithm using Recursion in Java

In the last article, we have seen the iterative implementation of binary search in Java and in this article, you will learn how to implement binary search using recursion. In order to implement a recursive solution, you need to break the problem into sub-problems until you reach a base case where you know how to solve the problem like sorting an array with one element. Without a base case, your program will never terminate and it will eventually die by throwing the StackOverFlowError. In the case of recursive binary search implementation, we calculate the middle position by taking the start and end position and check if the target element is equal to the middle element or not.

Can you Make a Class Static in Java? Interview Question

This is one of the tricky questions in Java because there is no straight forward Yes and No answer here. You cannot make a top level class static in Java but Yes, you can make a nested class static in Java. In fact, it is even advised (see Effective Java) to prefer a nested static class in Java than normal inner classes. Now, the question comes what is a top level class and what is a nested class in Java? Well, you can declare multiple classes in a single Java source file. A class is said to be top level if it is not inside any other class and a class which is inside another class is known as nested class. You can create nested class inside another top level or another nested class in Java. This is the class which can be static in Java.

Effective Java 3rd Edition by Joshua Bloch – A Must Read Book for Java Developers

Hello guys, you might have heard about it that Effective Java 3rd Edition is finally available. After 10 years of the long wait by Java programmers from all over the world, finally, an updated version of, probably the most popular Java book on the planet is released now. This new version covers the features and paradigm introduced in JDK 7, 8, and 9.  Joshua Bloch has done a great job in also updating most of the items to keep it relevant to the newer version. Apart from that, there is a whole new chapter added to explain best practices around Java 8 features. I know you don't need any reason to read this book, given its huge popularity and acceptance. Many startups which use Java,  particularly in India, are also distributing copies of this book as a New Year Gift.

5 Free Eclipse and JUnit Online Courses for Java Developers

Both Eclipse and JUnit are two of the essential tools for Java Developers. Eclipse is a Java IDE, Integrated Development environment which allows you to code, run and debug Java program from a single window, while JUnit is a unit testing library which allows you to test your Java code automatically. You can write JUnit tests and then you can run them automatically using Maven or Gradle plugin at build time. You can further automate your build using Jenkins which means your Unit test will run continuously and automatically, reporting any break at the earlier possible opportunity.

Difference between VARCHAR and CHAR data type in SQL Server

Hello all, today, I am going to share an interesting SQL Server interview question which will not only help you in your interview but also in your day-to-day work. It explains one of the key concepts of SQL Server, the difference between VARCHAR and CHAR data type. I am sure, you all have used both of them numerous time but because it's so common many of us ignore the difference between them and when asked to choose between VARCHAR and CHAR on interviews, they fail to give a convincing reason. The difference is not just important from interview point of view but also from a robust database design because an incorrect choice of data type not only limit what kind of data you can put on but also waste precious space and makes your query slower, particularly when you have to deal with the massive amount of data.

How to convert Integer to String in Java - Example

This is the second part of String to Integer data type conversion tutorial in Java, in the first part you have learned how to convert String to Integer and in this article, you will learn the opposite i.e. convert from Integer to String. Actually, you can apply all the tricks, which I had told you before about converting long to String, and autoboxing will take care of converting int to Integer in Java. But, if you care for performance and believe in not using auto-boxing when not needed then there are still a couple of ways which directly converts an Integer object to String e.g. Integer.toString() method, which returns a String object and doesn't have any auto-boxing overhead. Let's see a couple of more ways to convert an Integer to String in Java.

Top 5 Free Android App Development Courses for Programmers

Hello guys, Happy New Year 2019. I am sure you all have made your goals and started planning on how to achieve them. If you are passionate about creating mobile games and applications and want to learn how to develop Android apps or want to become an Android application developer then you have come to the right place. In this course, I am going to share some of the best and free Android development courses for Java programmers and others. You might know that earlier Java was the only language which is used to create Android applications but since last year, Google has announced Kotlin as the official language for Android app development which means you can use either Kotlin or Java to create Android apps.

Right Way to Create, Start and Stop a New Thread in Java

One of the most important task for a Java developer is to learn multi-threading and learn it correctly. There are more Java developers who know multi-threading incorrectly than the programmer who doesn't know at all. In order to learn it correctly, you need to start it from scratch, I mean the most fundamental concepts of multithreading like how to create create, start, and stop a new thread in Java. I am sure you already know that as you have done that a lot of time but it's worth remembering few facts to not repeat the mistakes many programmers do when they write multithreading code in Java. In this article, we'll see a couple of those, mainly while creating, starting, and stop threads in Java. So fasten your seatbelt and let's go little deep into threads in Java.

5 Free Courses to Learn Swift Programming for iOS Developers

Hello guys, how are you doing this lazy Saturday? You might be thinking, as a Java developer why I am suggesting you learn Swift, but the truth is that I am not suggesting you abandon Java and join Swift, I am suggesting you join Swift if you want to develop iOS applications. We all use Apple's product and we love them, I have used iPod, iPhone, iPad, Apple Watch, and even MacBook and every time I use their product I just say wow and Swift are no different from that. It's a programming language from Apple so you will find all the features which makes Apple product great. It's simply because Apple has kept education in mind while creating it. If you have an iPad, you might have also seen the Swift Playground app, which is also a great app to learn Swift and iOS.

Java CountDownLatch Example - Multithreading and Concurrency Tutorial for Beginners

The CountDownLatch is an important concurrency utility class which was added in JDK 1.5 but unfortunately, many Java developers still struggle to understand and use this powerful tool. You can use CountDownLatch if you are spawning multiple threads to do different jobs and want to know when exactly all tasks are finished so that you can move to the next stage. In other words, you can block a thread until other threads complete their task. One of the good examples where you can use CountDownLatch is an application which downloads data from a database or another application. For example, we are creating a Java program to download all Udemy courses. Since Udemy has thousands of courses, you create different threads to download different categories e.g. technology, development, etc.

6 Free Maven and Jenkins Online Courses for Java Developers

Maven and Jenkins are two of the most popular tools in the Java world. Maven helps to organize your project and provide support to build and deploy Java projects while Jenkins can provide continuous integration and delivery by completely automating build and deploy projects. As a Java developer, it's very important that you know both Maven and Jenkins because every other company is using it and not knowing these technologies will only put you behind other candidates if you go for a job. If you have yet to learn Maven and Jenkins then you have come to the right place, In this article, I will tell you 6 free course you can take to learn Maven and Jenkins online, but before that, let's understand what is Maven and Jenkins and what are their purpose.

Eclipse - Unsupported major.minor version 53.0, 52.00, 51.0 Error in Java

The UnsupportedClassVersionError is a big nightmare for Java developers, probably the next biggest after NoClassDefFoundError and ClassNotFoundException but its slightly easier to solve. The root cause of this error is that your code is compiled using higher JDK version and you are trying to run it on the lower version. For example, the Unsupported major.minor version 53.0 means your code is compiled in JDK 9 (the class version 52 corresponds to JDK 9) and you are trying to run it on any JRE lower than Java 9, probably JDK 8, 7, or 6.

Top 5 Free React JS Courses for Web Developers to Learn Online

React JS or React is one of the most popular frameworks or Javascript library for building user interfaces. It's backed by Facebook and it's often viewed as an alternative to the great Angular framework by Google. React is also very flexible, fast, easy to learn and fun to work with. It is designed to make the process of building modular, reusable user interface components simple and intuitive and that's why most of the modern GUI and web applications are build using React framework. It is developed at Facebook and it focuses on the 'View' aspect of MVC in web applications. The component-based development is one of the biggest advantages of React library which is both rich and extensible.

How to Remote debug a Java Program in Eclipse IDE

The remote debugging of Java program is an ultimate tool in the arsenal of a Java developer, which is often become the last and only tool to investigate a bug on a Java application running on remote host e.g. on Linux server or Windows server. Almost all major Java IDE provides remote debugging like NetBeans, Eclipse, and IntelliJ IDEA, but I mostly use Eclipse for Java coding and so it's my preferred tool to remote debug a Java program. In order to set up remote debugging in Eclipse, you need to do a couple of tasks e.g. you need to start your JVM with debugging parameters or arguments and then you need to create a "remote debug configuration" in Eclipse IDE itself.

Top 5 Free JDBC Courses for Java Programmers - Best of Lot

If you are a Java programmer and looking for some free JDBC courses to start learning database access in Java then you have come to the right place. In this article, I am going to share some of the free online JDBC (Java Database Connectivity) courses from popular sites like Udemy and Pluarlsight to give you a head-start in your long journey of writing real-world Java application which interacts with the database. Since Data is the utmost important part of any Java application, it's imperative to have a good knowledge of how to interact with the database from Java application and JDBC is the first step in that direction.

10 Examples of Array Data Structure in Java - Tutorial

Along with the String, the array is the most used data structure in Java. In fact, String is also backed by a character array in Java and other programming languages. It's very important for a Java programmer to have good knowledge of array and how to do common things with array e.g. initialization, searching, sorting, printing array in a meaningful way, comparing array, converting an array to String or ArrayList and doing some advanced slicing and dicing operation with an array in Java. Like my previous tutorials 10 examples of HashMap in Java, I'll show you some practical example of array in Java. If you think, any important operation is not included, you can suggest their examples and I'll add them to this list.

Top 5 Free Angular Courses for Beginners to Learn Online - Best of Lot

Google's Angular is one of the most popular JavaScript frameworks for creating web apps. It helps you in creating complex web applications in less time. It's maintained by Google so you can also rest assured that this powerhouse of a framework is built with speed and purpose and here for a long run. The Angular Framework is also the most popular framework in the world for building single page applications.  The framework was first launched as Angular JS which allowed building a web application using Model View Controller concept and it was hugely popular but it was later re-written completely, which is now known as simply Angular or Angular 2.

How to do InOrder traversal in Binary tree without Recursion in Java

This is the second part of implementing inorder traversal of a binary tree in Java, in the first part, I have shown you how to solve this problem using recursion and in this part, we'll implement inorder traversal algorithm without recursion. Now, some of you might argue, why use iteration if the recursive solution is so easy to implement? Well, that's true, but the iterative solution is often regarded better as they are not prone to StackOverFlowError. Another reason why we are discussing the iterative solution here is because of technical interviews. If you to go to a programmer job interview, you will find that Interviewer will often ask you to solve the same problem using iteration and recursions like Fibonacci series or String reversal algorithm. It's also good for your learning and developing algorithm skill, which is very important for becoming a better programmer.

Top 5 Free Courses to Learn PHP and MySQL in 2019

If you want to build web applications in quick time then PHP and MySQL is a good choice. PHP and MySQL are incredibly powerful open source technologies that allow programmers and web developers to create functional websites and apps that go way beyond basic HTML. PHP is specially created to generate interactive and dynamic websites and also known as server-side scripting language while MySQL is one of the leading relational databases along with Oracle and Microsoft SQL server. While it may seem intimidating to create a website using PHP and MySQL, especially for someone who has no experience in coding, it's not that difficult. With the right guidance and resources e.g. books and courses you can put together a PHP MySQL website in a week or so.

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

Hello guys, this is one of the common error in a client-server application. The big problem in solving this error is not the error but the knowledge of how client-server SSL handshake works. I have blogged about that before and if you have read that you know that in order to connect to any website or server (like LDAP Server) using SSL, you need to have certificates (public keys) to validate the certificates sends by the website you are connecting. If you don't have the root certificate or public key, which is required to validate the certificate presented by the server in your JRE truststore then Java will throw this error.

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

In order to solve this error, just add the root certificate required to connect to the server in question into truststore of your application's JRE.

10 Things Java Developer Should Know about Lambda Expression of Java 8

The Lambda expression is one of the most important features of Java 8 which has opened a whole new dimension of programming paradigm in Java. It is the feature which made the Functional Programming possible in Java because now you can pass the code to a function to execute as opposed to an object. You might be a bit surprised but if you look from a developer's point of view, it is nothing but a way to pass code to a method in Java. Technically, it's an expression where you can define parameters and then the code which uses those parameters, similar to a method in Java, but you don't need to write boilerplate code e.g. method name, return type, argument type etc. Most of those details are inferred by compiler and JVM from the context in which lambda expression is used.

Top 5 Amazon Web Services or AWS Courses to Learn Online - FREE and Best of Lot

Hello guys, if you are thinking about cloud, cloud-computing and looking at the various cloud providers like AWS, GCP, or Azure then you are going in the right direction. Future lies with Cloud and it's very important for every developer to learn about cloud computing solutions. When we talk about Cloud the first thing comes in mind is AWS, the biggest Cloud Computing platform and that's why I suggest a lot of developers learn it. If you want to learn Amazon Web Services, popularly known as AWS and looking for some awesome resources like books, courses, and tutorials then you have come to the right place. In this article, I am going to share some of the best Amazon Web Services or AWS online courses which will help you to learn this revolutionary and valuable technology free of cost.

Difference between WHERE and HAVING clause in SQL?

The main difference between WHERE and HAVING clause comes when used together with GROUP BY clause, In that case WHERE is used to filter rows before grouping and HAVING is used to exclude records after grouping. This is the most important difference and if you remember this, it will help you write better SQL queries. This is also one of the important SQL concepts to understand, not just from an interview perspective but also from a day-to-day use perspective. I am sure you have used WHERE clause because its one of the most common clause in SQL along with SELECT and used to specify filtering criterion or condition. You can even use WHERE clause without HAVING or GROUP BY, as you have seen it many times. 

Top 5 Spring Cloud Annotations for Java Developers

If you are developing Java application for Cloud then you should learn Spring Cloud, a great framework and extension of popular Spring framework which can help you to develop a cloud-native Java application. Spring Cloud provides several necessary services required for a cloud-based Java application like configuration management, service discovery, circuit breakers, intelligent routing, micro-proxy, a control bus, one-time tokens, global locks, leadership election, distributed sessions, cluster state etc. On top of that, it builds on the Spring framework so it automatically provides the essential features like dependency injection and inversion of control, which results in loosely coupled and easy to test Java application.

5 Best Courses to Learn Spring Boot in Depth

Hello guys, if you remember, one of my goals was to learn Spring Boot in 2019 and I have started working towards it. As I have talked about my 3 point action plan to learn a new technology, the first step is to attend some online courses and start building from that. If you are not sure what is Spring Boot and why should you learn Spring Boot then let me tell you that it should be the first Java framework you should learn in 2019. The Spring Boot makes it really easy to work with Spring framework by removing all the starting hurdles with respect to setup and configuration. In one word, it makes it possible to write Spring-based Java application and run them like core Java application e.g. from the main method.

10 JavaScript (Frontend + Backend) Frameworks and Libraries Web Developer Should Learn in 2019

There is no doubt that JavaScript is now the #1 programming language in the world and also the king of web development. If you want to become a web developer who can quickly create websites like you see on the internet then a good knowledge of JavaScript and various, popular JavaScript web development framework is very important for you. These framework has completely changed the way people develop web application a decade ago. After node.js, its even possible to create a complete web application from front-to-back using just one programming language, JavaScript. That's why it has become the favorite programming language of all Full-stack Web Developers.

21 Websites to Learn How to Code for Free Online

Hello there, if you are someone who is learning programming and coding by yourself and looking for some awesome resources then you have come to the right place. In this article, I am going to share 21 websites you can use to learn the code for free from the comfort of your office and home.

1. plurasight.com
One of the best website to learn any technology or IT courses e.g. programming language like Java, web development framework e.g. Spring Framework, Hibernate, etc. It's also now acquired CodeSchool which earlier allows you to learn web technologies by doing it. I use this website to learn a lot of cool stuff in no time.

Core Spring Professional 5.0 Certification - 10 Topics Java Developer Should Prepare

Hello guys, if you have been self-preparing for Spring Professional 5.0 exam then you might have struggled with which topics to prepare and which topics to leave out. I often receive questions like does Spring Boot is part of Core Spring certification? Will there be any questions from Spring Security and Spring Data? Does Spring Cloud also part of this exam or not? Unfortunately, there is no detailed, semester like a syllabus for Pivotal's Core Spring certification. The only information which is available is on their exam brief pdf which lists the purpose of the exam and essential topics and their percentage breakdown in terms of their weight in the actual exam. Since the Spring framework is vast and it's very difficult to prepare, a good understanding of what is required and what is not is very important.

5 Free Docker Courses for Java and DevOps Engineers

If you are an application developer working in Java or C# or any other language and wants to become a DevOps engineer or someone who wants to learn Docker then you have come to the right place. In this article, I am going to share some of the free Docker courses you can use take online to learn Docker by yourself. These courses are great for both beginners and intermediate developers who have basic ideas about Docker. If you don't know what is a Docker and how it works then let me give you a brief introduction. Before starting just look at the Docker's logo which is a whale carrying containers, does that strike something? Well, if you add this image with the name Docker you might think about shipping companies, which carry containers from one part of the world to another.

Why beginners Should Learn Java in 2019

I often receive questions like which is a good programming language to learn first, Is Java a good programming language to start with,  how good Java is as a first programming language, which is the best programming language for beginners, or shall I start with Java or Python. Well, the answer to all these questions is, Java is one of the most popular programming languages and there are a lot of reasons to learn Java, starting with Job opportunity to leverage community support. In the context of starting programming or choosing Java as the first language, my biggest reason is that it's simpler to learn. The last generation of programmers started learning to programme using languages like BASIC and then grew up learning C and C++ with Java as their second or third programming language.

5 Free BlockChain Online Courses for Programmers to Learn

Hello guys, how are you doing? hope you all are having a great time and working towards your goal this year. I have been sharing a lot of courses and tutorials in this blog about what to learn in 2019, starting from tools to frameworks, from libraries to programming languages, but one of the most important technology, you can learn in 2019 is the Blockchain technology. It's one of most talked about technology at the moment and considered to be the next big thing after the invention of the internet as they provide a way to attain digital trust on the Internet.

Top 25 Exception Interview Questions for Java Programmers

1) The difference between checked and unchecked Exception in Java?
For checked exceptions, the compiler ensures that they are either handled using try-catch, try-finally or try-catch-finally block or thrown away. If a method, which throws a checked exception e.g IOException and doesn't handle them or doesn't declare them in throws class of method, a compile-time error will occur. On the other hand, the compiler doesn't do similar checks for an unchecked exception, that's why it is known as un-checked. These are also called runtime exception because they extend java.lang.RuntimeException.

Top 10 Open Source Frameworks and Libraries Java Web Developers Can Learn in 2019

Java programming language and Platform has been very lucky in terms of frameworks, standards, and libraries, I guess which is one of the important reason for its huge success. Apart from standard frameworks like Swing for desktop GUI application, JavaFX, Servlets and JSP, EJB, and JSF, there are a lot more open source framework and libraries available for Java programmers. These Open source framework, not only helps and speed up development but also enforce to use best practices required to build enterprise Java application and desktop application. Frameworks like Spring, which in my opinion gives a much-needed boost to the Java platform, enforces dependency Injection design principle at the core, which is key to build a loosely coupled system.

5 Examples of Enhanced for loop in Java

Enhanced for loop was added way back in 2004 in Java and it provides an easy and cleaner way to iterate over array and Collection in Java. The introduction of forEach() in Java 8 has further improved iteration but that doesn't mean that you need to forget the for each loop. In this article, you'll see some cool examples of enhanced for loop in Java which will help you to write better and more readable code in Java. It's also less error-prone because you don't have to deal with an index like you need to with the classic "for" loop. This means no chance of one-off error, means no risk of starting with index zero when you want to start with one or vice-versa.

Top 10 Programming Languages to Learn in 2019 - (Java, Python, and JavaScript)

Hello guys, 2018 is coming to end and 2019 is approaching fast. This is the time, most of us start making our goals e.g. physical goals, educational goals, and financial goals. As a programmer, one of our goals is to learn new technologies and programming languages, but which languages should you learn? Since learning a programming language requires both time and patience, you should learn a language which is worth the effort i.e. it can reward you a better job and career growth. In this article, I am going to share with you the top 10 programming languages you can learn for 2019.

10 ways to learn a New Technology, Programming language, Frameworks, or Libraries in 2019

One of the main challenges of being a programmer or software engineer is constant learning. Yes, that's true. As a programmer or developer, we always need to learn new things, sometimes every year. Thanks to C, Java, Linux, and SQL, we still have some ground but the way these technologies are used changes every year. For example, we have a new JDK 12 release this year, even though many Java developers are still learning Java 8. We also have a Spring Framework 5.0 release last year, combined with Spring Security 5.0 and Spring Boot 2.0 release, which many of us need to learn in 2019.

Top 5 Sorting Examples of Comparator and Comparable in Java 8

The JDK 8 release has completely changed the way you compare objects and sort them in Java. The new features of Java 8 language e.g. lambda expression and method reference has made it easier to implement both Comparator and Comparable interface, as you don't need Anonymous class for inline implementation. Now, you can create Comparators in just one line by using lambdas and method reference as we'll see in this article. Other features like providing default and static methods on interfaces have also made a huge difference when it comes to Comparator. They helped Java API designer to redesign and evolve existing interfaces, which wasn't possible earlier without breaking existing clients of those interfaces.

Difference between OCAJP and OCPJP Certification Exams for Java Programmers

Earlier when Sun Microsystems was in charge of Java, the popular Java certifications were called "Sun Certified Java Programmer" or "SCJP" and that time there was just one exam, you need to pass to become a certified Java Developer, but when Oracle took over Sun Microsystems on 2010, the SCJP goes away and OCAJP and OCPJP born. Since Oracle already has his certifications for database administrations e.g. OCA which stands for Oracle certified associates and OCP, which stands for Oracle Certified Professional, it introduces new Java certifications to match their existing hierarchy and they are known as OCAJP and OCPJP in the Java world.

Top 100 Data Structure and Algorithm Interview Questions for Java Programmers

Data structure and algorithms are a core part of any Programming job interview. It doesn't matter whether you are a C++ developer, a Java developer or a Web developer working in JavaScript, Angular, React, or Query. As a computer science graduate, it's expected from a program to have strong knowledge of both basic data structures e.g. array, linked list, binary tree, hash table, stack, queue and advanced data structures like the binary heap, trie, self-balanced tree, circular buffer, etc. I have taken a lot of Java interviews for both junior and senior positions in the past, and I have been also involved in interviewing C++ developer. One difference which I have clearly noticed between a C++ and a Java developer is their understanding and command of Data structure and algorithms.

Top 5 Amazing Gifts for Programmers, Coders, and Software Developers

If you are planning for a surprise gift to your programmer boyfriend and husband on this holiday season e.g. Black Friday, on Christmas, or New Year or maybe on his next birthday, but not sure what to gift, then you have come to the right place. In this article, I am going to share some of the best gifts every programmer wish for. To be honest with you, buying a gift is easy but finding the right gift is very tough. I have spent countless hours on the internet to find a perfect gift for one of my colleague's husband and this article is a result of that research. The general perception of programmers is that they are a nerd, they love books, gadgets, cool stuff, music, but the perfect gift is something which not only provides the enjoyment but also the value.

5 Free Database and SQL Query Courses for Programmers to Learn Online

Hello guys, I have been sharing some free programming resources e.g. books and courses in this blog for quite some time. Earlier I have shared free courses on Java, Maven, Spring, and Data Structure and Algorithms and today I'll share some of the free online training courses to learn SQL and Database. Why you should learn SQL? Well, it's one of the must-have skill for programmers, application developer, and IT professionals. Like Linux, this is one skill which is going to serve you longer than any other programming language, framework, or library. The SQL is used to interact with Database Systems like Oracle, MySQL, and Microsoft SQL Server. As per ANSI (American National Standards Institute), SQL stands for the Standard Query language for Relational Database Management Systems.

8 Websites to Learn JavaScript Online - Best of Lot

We live in the world of internet which is full of resource. You can learn whatever you want and that too without spending too much money. If you want to learn JavaScript there are plenty of websites where you can learn JavaScript online for FREE. You don't need to pay any fees, but you must have a good internet connection to take full advantage of these online resources. Out of so many websites which offer free tutorials, articles, blog post, videos, and podcasts, I have chosen these six websites to recommend to anybody who wants to learn JavaScript.

How to Reverse a String in place in Java - Example

One of the common Java coding interview questions is to write a program to reverse a String in place in Java, without using additional memory. You cannot use any library classes or methods like e.g. StringBuilder to solve this problem. This restriction is placed because StringBuilder and StringBuffer class define a reverse() method which can easily reverse the given String. Since the main objective of this question is to test the programming skill and coding logic of candidate, there is no point giving him the option to use the library method which can make this question trivial. Now, how do you solve this problem? If you are familiar with array data structure then it would be easy for you. Since String is backed by a character array, you can use the same in place algorithm we have used to reverse an array in place.

5 Free HTML and CSS Courses to Learn Front End Web Development Online

HTML and CSS are two pillars of web development, they are used to create web pages you see every day. HTML provides the structure to your web page and CSS provides them the style to look better. If you want to become a front-end web developer or web designer then a good knowledge of HTML and CSS is a must. Even though modern day web development is all about framework and library e.g. Angular and React, you still need to know HTML and CSS to understand what's going on and troubleshoot any issue you face while developing a web application. Btw, JavaScript is another pillar of web development but we'll not discuss this article. I have already shared some good books and courses to learn JavaScript before

Top 20 System and Software Design Interview Questions for Java Programmers

System design questions are an important part of programming job interviews and if you want to do well, you must prepare this topic. In the past, when I shared my list of programming interview questions, I have shared a couple of System design questions but my readers kept asking me for more questions, as it is a hard topic to master and more and more practice is needed. I had my own list of questions which I have collected from various interviews with friends and colleagues but I needed more questions for this article and my own preparation then I stumbled upon the Grokking System Design Interview course. It's an excellent resource because it not only gives you a lot of System design question but also provide all the knowledge and tools you need to solve those questions.

Difference between table scan, index scan, and index seek in SQL Server Database

Good understanding of Indexes is very important while working in a database and SQL and that's why you will find many questions based upon indexes on Programming Job interviews. One of such frequently asked SQL question is the real difference between table scan, index scan, an index seek? which one is faster and why? How does the database chooses which scan or seek to use? and How you can optimize the performance of your SQL SELECT queries by using this knowledge. In general, there are only two ways in which your query engine retrieves the data, using a table scan or by using an index. Which method is used for your particular query depends upon what indexes are available in that table, what columns you are requesting in your query, the kind of joins you are doing, and the size of your tables.

7 Free Selenium Courses to Learn Automation Testing in Java

Testing is an integral part of software development and we have long been relied on manual testing by testers and QA professional to ship quality software and find bugs, but that's not sustainable anymore. There is an increased focus on automation testing nowadays and Selenium is leading the way with its web drivers. If you don't know what is selenium, it's a free automation testing tool for web applications. It can work with different web browsers like Chrome, Firefox, Internet Explorer, Opera and simulate human-like behavior. By using Selenium you can programmatically interact with all the different elements in a webpage. You can click on them, input text, extract text and so much more.

How to Format Date to String in Java 8 and Before - Example Tutorial

One of the common programming task in Java is to change the date format of a given Date or String. For example, you have something like "2017-01-18 20:10:00" and you want to convert it that date into "2017-01-18", or you want to convert from dd-MM-YY to MM-dd-YY or to any other format of your choice and need, but a valid date format as per Java specification. How will you do that? Well, it's not that difficult. It's just a two-step process. In the first step, you need to parse String to create an equivalent date using current format and then once you got the date, you need to again convert it back to String using the new format. The same process is repeated in both Java 8 and before, only corresponding API and classes changes.

Top 5 Free TypeScript Courses for Angular Developers to Learn Online - Best of Lot

If you are interested in learning TypeScript or Angular, one of the popular JavaScript framework for developing front-end, which uses TypeScript and looking for some resources e.g. books, tutorials and courses then you have come to the right place. In this article, I am going to share some of the best, free TypeScript online courses you can use to learn this powerful programming language. For those who don't know TypeScript, it's a new dynamically typed programming language from Microsoft which augments JavaScript's programming syntax by adding some new features which help in object-oriented application development, particularly introduction of Types.

Why Programmers Should NOT use SELECT * in SQL Query

I have read many articles on the internet where people suggest that using SELECT * in SQL query is a bad practice and you should always avoid that, but they never care to explain why? Some of them will say you should always use an explicit list of columns in your SQL query, which is a good suggestion and one of the SQL best practices I teach to junior programmers, but many of them don't explain the reason behind it.  Unless you explain some reasons why one should not use SELECT * in queries, it's difficult to convince many SQL developers,  many of whom have started learning SQL by doing SELECT * from EMP in Oracle database. In this article, I will try to bridge that gap by giving some practical reasons why using SELECT * in SQL query is not a good idea.