Thursday, March 21, 2019

10 Tips to Become a Better Java Developer in 2019

I often receive emails from my readers about how they can become a better Java developer, what things they should learn, and which area they can work on to become a Rockstar Java developer. After answering them individually over the last few years, I thought to jot down a couple of points which I think will make you a better Java Programmer and Application developer. But, before going into that, I would like to stress that a better programmer is always a better Java developer and that's why all the tips I have shared before to improve your programming skill and become a better programmer still holds true.

Friday, March 15, 2019

Top 5 Online Courses to Learn to Code With No Programming Experience- Best of Lot

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.

Thursday, March 14, 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.

How to become a better Java Programmer?

First of all, wish you very happy new year guys. It's that time of year when we start afresh, make plans, set goals and make resolutions for the new year. Being a Java developer and author of a Java blog, I frequently receive a  lot of request from Java programmers from all over the world about how they can improve themselves? How they can become a better Java developer and do well in their job and career. In the past, I have shared my 10 tips to become a better programmer and every tip on that article still holds true but given it's a new year. I have decided to jot down some new resolutions for Java programmers to improve themselves, enhance their knowledge on Java Programming and increase their value for future career growth.

Wednesday, March 13, 2019

Top 20 String Algorithm Questions from Coding Interviews

In this article, we are going to see top 20 String based coding interview question and their solution to help programmers better prepare for interviews. The string is one of the most important data structure and available in almost every programming language like Java, C, C++, Python, Perl, and Ruby. Though there implement differ the essence remains same like String is NULL terminated character array in C but String is an object in Java, again backed by character array. The string is also available on weekly typed languages like Python and Perl.  This is why you will always find some String based coding question on programming interview.

Top 5 Data Science and Machine Learning Courses to Learn Online - Best of Lot

Many programmers and Computer Science graduates are moving towards Data Science and Machine learning hoping for better pay and career opportunity and there is a reason for it. Data Scientist and Machine Learning Specialist have been ranked the number one job on Glassdoor for last a couple of years and the average salary of a data scientist is over $120,000 in the United States according to Indeed. Data Science is not only a rewarding career in terms of money but also it provides the opportunity to solve some of the world's most interesting problems.  IMHO, that's the main motivation many good programmers are moving towards Data Science, Machine Learning, and Artificial Intelligence.

Tuesday, March 12, 2019

How to Reverse a linked list in Java Using Recursion and Iteration (Loop) - Example

This is one of the class coding problems from Programming job interviews. It may seem easy to reverse a linked list but when you go around doing the actual task, it's not that easy, especially for first-timers. There are a couple of algorithms exists to reverse a singly linked list in Java like you can use the three-pointers approach or solve this problem using a Stack, or simply using Recursion without the external stack. As I had pointed out on the earlier post about linked list, that reversing a linked list is one of the most popular linked list based data structure interview question. This means, you just can't afford to prepare this one, before going for any programming interview. Despite being so common, It's not easy to solve this problem on the fly.

Top 5 Hibernate and JPA Courses for Java Developers to Learn Online

Hibernate is one of the essential frameworks for Java and Java EE or JEE programmers, especially if you are working on the server side of a Java Web development project. It's an ORM tool or a framework which allows you to deal with only objects while Hibernate takes care of your data on your behalf. For example, instead of writing classes with SQL to load, save, and update data using the DAO design pattern, you can simply use the Hibernate framework in your project. It will allow you to deal with just objects while it will load, save, and update data in the background. It's also one of the top Java frameworks in my list of top 10 Java frameworks Programmers can learn.

Monday, March 11, 2019

5 Free Data Structure and Algorithms Books in Java Programming

In the last article, I have shared some of the best data structure and algorithms books for programmers, but those were not free. After that article, I received some feedback about how about sharing free data structure and algorithm books? Fair enough, everybody loves free eBooks, courses and PDFs, don't you? In the past, I have shared a list of free Java programming books, so I had some idea. I did some more research on the internet and checked my collection as well. Fortunately, there are a couple of good Data Structure and Algorithm books which are available for free as a PDF download or for online reading, which is what I am going to share with you all today.

Top 5 Programming Languages Programmer Should Learn in 2019

I have read somewhere that programmer should learn a new programming language every year ( I think it's code complete, not sure, though), but if you cannot do so, I suggest to at least learn following five programming languages to do well in your career. Everybody loves polyglot programmer and an all-rounder who is versatile enough to write a quick script and can also write complex Java programs. In fact, it's almost mandatory for a senior developer to learn more than one language. Interviewers are giving more attention to an engineer who has good experience with multiple languages e.g. C++ and Java goes quite well, so is Python and Java. I personally like Software Engineers who have strong experience in either C++ or Java and can write scripts in groovy, Perl or Python.

Sunday, March 10, 2019

5 Best books for OCAJP8 Exam 1Z0-808 - Java 8 Certification

It's been more than a couple of years since Java SE 8 was launched on 17th March 2014 and OCAJP 8 exam went live. You might know that in order to become a Java SE 8 certified developer you need to pass two examples, the OCAJP8 (Exam 1Z0-808) and OCPJP8 (Exam 1Z0-809). The first one is called associate level certification and the second one is called professional level certification. When OCAJP8 first comes, there were not enough good books to prepare this exam and many candidates rely heavily on Java 8 books, online courses, and professional exam simulators like Whizlabs and Enthuware, but if you are going to appear for the OCAJP8 exam now, there are no such problems. In this article, you will find some of the best books to prepare for OCAJP8 exams.

Top 5 NoSQL Database 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?

Saturday, March 9, 2019

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.

Friday, March 8, 2019

Top 5 Course to learn Apache Maven for Java Developers

The Apache Maven or commonly known as just "Maven" is an important tool for Java Programmers. It allows you to build your project, manage dependencies, generate documentation and lot more. I can vouch for Maven's usefulness because I have come from the pre-Maven world of Software development, where you need to manage all the JAR files required by your project. It may seem easy to you that just download the JAR file but it's not so easy in practice.  For example, you added a new library in your project say Spring framework which also needs log4j but you thought log4j is already there so you didn't do anything, only to realize that your application is not starting anymore and throwing long and convoluted errors. This can happen because of version mismatch like Spring needed a higher version of log4j than available in your project.

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.

10 Technology Jobs for Programmers and Computer Science Engineers to Earn Better Salary

If you are a Computer Science Graduate or someone who is thinking to make a career in the Software development world, or an experienced programmer who is thinking about his next career move but not so sure which field you should go then you have come to the right place. In this article, I will tell you the top 10 highest paying technical jobs you can aim for. All you need is some Programming and Coding experience and a passion for learning. Particularly the Machine learning and Data science field looking very promising for fresh Computer Science graduages, beginners and experienced programmers.

Thursday, March 7, 2019

6 Books to Learn and Master Programming and Coding - Must Read

Coding is an integral part of Programming and we all somehow learned to code by following examples here and there. Yes, I am talking about both self-taught programmer and Computer Science Graduates. You can learn Coding easily if you are dedicated, but what is more difficult is to write good code. You can easily find programmers in Java, C++, Ruby or Python, but finding programmers, who are also a good coder is very difficult. Some universities have a good curriculum and practical classes to teach coding better than others, but most of these great coders are self-taught Programmers, who learned by reading books, joining online courses and doing things by their own.

10 Things Every Programmer or Computer Science Engineer 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.

Wednesday, March 6, 2019

Spring Hello World Example in Java using Dependency Injection and XML Configuration

Hello All, In this Spring framework tutorial, you will learn how to write the hello world example in the Spring framework. This should be your first tutorial to start learning Spring framework, as it gets the ball rolling. While coding and running this example, you learn a lot about Spring framework, Spring XSD files, necessary JAR files, and more importantly how Spring framework works. This HelloWorld program in Spring framework is an extension of the classical Java hello world program, which you might have seen earlier. This program is written using the Dependency Injection design pattern by using the Spring Framework's IOC container.  Even though now you can configure Spring dependency using annotations and Java configuration, this example uses a traditional XML way to configure dependencies.

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.

Tuesday, March 5, 2019

How to deal with java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet in Spring Application

The java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet error comes when you deploy a Spring MVC application into Tomcat or Jetty and Servlet container not able to found this class, which usually found in the spring-webmvc.jar file. The DispatcherServlet is the core of Spring MVC framework, it implements the FrontController pattern and intercept all HTTP requests sent to your Web application and subsequently route it to correct controller based upon URL mapping.

A Better way to write SQL queries for Programmers

There is no doubt that writing code is more art than science, every coder cannot write beautiful code which is both readable and maintainable, even with experience. In general, coding improves with experience when you learn the art of coding e.g. favoring composition over inheritance or coding for interface than implementation, but only a few developers able to master these techniques.  Same applies to SQL queries. The way you structure your query, the way you write it goes a long way to communicate your intent to the fellow developer. When I see SQL queries on emails from multiple developers, I can see the stark difference in their writing style.

Monday, March 4, 2019

Top 5 React Native Online Courses for Programmers and Mobile Developers - Best of Lot

If you are a web developer who wants to go into the massive world of mobile app development but don't want to spend time learning Java or Kotlin for Android development, or Objective C or Swift for iOS development then React Native could be a great tool for you. React Native is an extension of React, a popular JavaScript framework to develop web applications, which allows you to build native Android and iOS applications in JavaScript. Unlike Ionic and Cordova which promotes write once run everywhere but doesn't offer you to create a native app, React Native does convert your code into native code, especially for GUI.

3 Coding Tips Java Developers can Learn From Spring Framework

There is no doubt that Spring Framework is one of the most popular Java frameworks and makes it really easy to create real-world, enterprise-grade Java applications easy by providing features like dependency injection and inversion of control. But, to be honest, Spring is much more than just another DI and IOC framework. It goes one more level to simplify many of Java APIs e.g. JDBC, JMS, Java Mail etc by providing a useful layer of abstraction. It's much more easy to work with JDBC with Spring's JdbcTempalte and other utility class. They remove most of the friction Java developer faces with respect to executing SQL statement and processing ResultSet to get the Java object they want.

Sunday, March 3, 2019

5 Free Game Development Courses (Unity, Corona, and LibGDX) for Programmers

If you are a programmer with a passion for game development or computer science graduate who wants to become a Game developer for console, Android or iOS device and looking for some good courses to start with then you have come to the right place. In this article, I am going to share some of the best Game Development courses which are completely free using Unity, Corona, and LibGDX, three of the most popular game engines for Programmers and Game Developers. While LibGDX is Java-based and Unity is C# based but probably the most popular game engine at this moment. Unity Game engine is both powerful and free, which makes it ideal to use it for game development. If you don't know Unity is the same software used to create Pokemon Go and many other best selling mobile games!

Saturday, March 2, 2019

Top 10 Courses to Learn JavaScript in 2019 - Best of Lot

There is no doubt that JavaScript is the most popular programming language at this moment and it's also confirmed by StackOverFlow's 2018 Survey. You can build static websites, web applications, native mobile applications (yes you can do that too), desktop applications and even server-side application in JavaScript. It also makes you a hundred time more employer as there are tons of web development jobs out there. Because of that ore and more developers are learning JavaScript to become a web developer.

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.

Friday, March 1, 2019

Top 10 Java and Web Development Online Courses for Programmers

Hello guys, I am sure you all have made your goals and resolutions for this year e.g. what to learn in 2019. If you haven't then check out my post 10 Things Java programmer should learn in 2019 for some ideas. If you have already made your goal then it is time to think about how you are going to achieve it. For example, my top 3 goals in 2019 are to learn Java 11, Spring 5, and Spring Security 5 but how am I going to learn them? Well, I like books and online courses and that's why I have been searching for some good courses on Java 11 and Spring 5. Luckily there are some available in Udemy and the best part is that they are currently running a New Year Sale event where every single course is priced just $10, Yes you heard it right, just $10.99, even for a course whose original price is $200.

Thursday, February 28, 2019

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.

Difference between @Component, @Service, @Controller, and @Repository in Spring

Before you learn the difference between @Component, @Service, @Controller, and @Repository annotations in Spring framework, it's important to understand the role of @Component annotation in Spring. During initial release of Spring, all beans are used to be declared in an XML file. For a large project, this quickly becomes a massive task and Spring guys recognize the problem rather quickly. In later versions, they provide annotation-based dependency injection and Java-based configuration. From Spring 2.5 annotation-based dependency injection was introduced, which automatically scans and register classes as Spring bean which is annotated using @Component annotation.

Wednesday, February 27, 2019

5 Courses to Learn Spring Framework in Depth in 2019

Spring Framework is a very important skill for Java developers, not only to get a Job as a Java developer but also for your career advancement. Since Spring is now used in almost every Java project, it becomes virtually mandatory to learn Spring framework. Now, the question comes, what is the best way to learn Spring framework? Is there any online courses out there which are focused on Spring? What are some good books and resources for learning Spring? These questions are very common among Java developers and I often see them on forums, online chat channel and even many of my readers also ask this to me on Facebook chats and email. Well, the best way to learn any technology is by coaching, online courses, and books.

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, February 26, 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.

How to Find Middle Element of Linked List in Java in Single Pass

ow do you find the middle element of LinkedList in one pass is a programming question often asked Java and non-Java programmers in telephonic Interview. This question is similar to checking palindrome or calculating the factorial, where Interviewer sometimes also ask to write code. In order to answer this question candidate must be familiar with LinkedList data structure i.e. In the case of singly LinkedList, each node of Linked List contains data and pointer, which is the address of next Linked List and the last element of Singly Linked List points towards the null. Since in order to find middle element of Linked List you need to find the length of linked list, which is counting elements till end i.e. until you find the last element of Linked List.

Monday, February 25, 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.

Prime Number Generator Algorithm in Java - Sieve of Eratosthenes Example

Hello guys, I have said many times that a good knowledge of Data Structure and Algorithms is the first step towards becoming a better programmer and that's why I share a lot of Data structure and Algorithm stuff in this blog. To continue the tradition, I am going to share an interesting algorithm today, The Sieve of Eratosthenes algorithm, which can be used to generate prime number up to a given number. There are many occasions when you need to generate all prime numbers up to a specified integer and one algorithm which is most often used to generate prime numbers is the Sieve of Eratosthenes Algorithm. Surprisingly, not many developers know about this algorithm, particularly Java programmers, which is mainly because not doing enough competitive programming.

Sunday, February 24, 2019

5 Courses to Improve Email Writing for Programmers, IT Professionals, and Software Engineers

One of my readers emailed me a couple of days ago and asked If I could suggest something to improve his email writing skills? He says that he is very good at work and programming but sucks on writing emails and because of that he never gets the visibility he deserved, resulting in no promotion or career growth. This sounds me a very common problem, especially among programmers whose native language is not English, and who have never attended any business or email writing course. In fact, it was a problem with me as well but I slowly picked it up though I am still far behind with many people I know who have excellent email communication skills.

Linux Command to Find how Long a process is Running in UNIX

Hello guys, today, I am going to share one of the useful tips to find out how long a particular process is running in Linux. This is very useful while you are troubleshooting an issue and want to know whether your process or service is restarted fine on a daily or weekly basis. So you checked your process is running in Linux operating system and it's running fine, by using ps command. But now you want to know, from how long process is running, what is the start date of that process etc. Unfortunately, PS command in Linux or any UNIX based operating system doesn't provide that information.

Saturday, February 23, 2019

Top 5 TypeScript Courses to Learn for Web Developers in 2019 - Best of Lot

Hello guys, if you are thinking to learn TypeScript this year and looking for some awesome resources like books, courses, and tutorials then you have come to the right place. In my last few articles, I have shared some of the best Angular framework tutorials and courses and today, I am going to share some of the best TypeScript online course you can join to learn it by yourself. Many programmers and web developers are learning TypeScript because of its powerful syntax and advanced OOP features and more importantly to developer Angular based application. Since the Angular team has chosen TypeScript as the official language for Angular development, it's important to know TypeScript if you want to make full use of Angular but that's not the only reason you should learn TypeScript.

Friday, February 22, 2019

Top 5 Frameworks Java Programmers Can Learn in 2019

Hello guys, if you are a Java developer and wondering which web development frameworks you should learn in 2019 then you have come to the right place. In this article, I am going to share the top 5 frameworks Java developers can learn to keep pace with modern day development. This article includes backend frameworks like Spring and Spring Boot as well as front-end frameworks like Angular 2+ and React JS. You might be wondering, why Java developer needs to learn Angular or JavaScript framework but the truth is that you need those to work in the real world. For example, you work in an application where backend is written in Java but front-end is written using Angular or React JS

Top 5 MySQL Courses for Programmers and DBAs to Learn Online - Best Of Lost

Hello guys, if you are interested in learning SQL with MySQL database and looking for some awesome resources e.g. books, tutorials, and online courses then you have come to the right place. In past, I have shared some useful books and tutorials and in this article, I am going to talk about some of the best MySQL online courses from Udemy and Pluarlsight which you can join to learn SQL and MySQL from the comfort of your office or home. In last a couple of years, you might have heard the statement that everybody should learn to code, which is great. Coding is now like reading, writing and speaking skill and in today's Information technology-centric world it is must have and there is no better way to start coding than learning SQL, the most popular programming language.

Thursday, February 21, 2019

Top 5 Career Opportunities Senior Java Developers Can Pursue 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.

10 Courses to Learn Machine Learning, Deep Learning, and Data Science in 2019 (Python and R)

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.

Wednesday, February 20, 2019

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.

10 Example of lsof commands in UNIX and Linux

It's been a long time since I have written anything on UNIX or Linux commands, but today I'll talk about the lsof command, a utility command every system admin and developers love. The lsof command stands for list open file descriptors and as the name suggests, it is used to find open files by process. Since almost everything in UNIX are file, you can use lsof command to find an open regular file, a directory, a symbolic link, a block special file, an NFS mounted file, a socket stream, a shared library, a character special file, a regular pipe, a named pipe, an internet socket, a UNIX domain socket, and many others. I have mostly used it to find all the files opened by a particular process, which I will show you in the coming section.

Tuesday, February 19, 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.

Linux find + du + sort + head command Example - How to Search large Files and Directories in Linux to Free some Disk Space Quickly

Hello guys, 100% full disk space is a common problem and as a programmer or Linux user, you often need to free disk space by deleting biggest files and directories. In order to do that, you need to know some Linux find command examples to list and delete some biggest files and directories and that's what you will learn in this tutorial. As a Java developer, you also need to also support your application, most of which mostly run on Linux machines. Though production is monitored by the dedicated support teams and they receive regular alerts on the status of file system space, they often come running to you or the developer responsible about what to do when disk space is almost full or reaching 100%.

Monday, February 18, 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.

How to implement Binary Search in Java without Recursion - Iterative algorithm

This week’s task is to implement a binary search in Java, you need to write both iterative and recursive binary search algorithm. In computer science, a binary search or half-interval search is a divide and conquer algorithm which locates the position of an item in a sorted array. Binary search works by comparing an input value to the middle element of the array. The comparison determines whether the element equals the input, less than the input or greater. When the element being compared to equals the input the search stops and typically returns the position of the element. If the element is not equal to the input then a comparison is made to determine whether the input is less than or greater than the element.

Sunday, February 17, 2019

Top 5 IntelliJ IDEA and AndroidStudio Online Courses for Java and Android Programming - Best of Lot

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.

2 Ways to Check if a String is Rotation of Other in Java - Algorithms

Write a program to check if one String is a rotation of another String is a common coding problem you will find on programming job interviews.  A String is said to be a rotation of another String, if it has the same length, contains the same characters, and they were rotated around one of the characters. For example,  String"bcda" is a rotation of "abcd" but "bdca" is not a rotation of String "abcd". One of the simplest solutions to this interesting problem is first to check if two String has the same length, if not then one String cannot be the rotation of another. If they are of the same length then just create another String by concatenating first String with itself, now check if second String is a substring of this concatenated String or not, if yes, the second String is a rotation of first.

Saturday, February 16, 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.

10 Essential Tools Every Java Developers Should Know

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.

Friday, February 15, 2019

Grokking Algorithms Book Review - Best Data Structure and Algorithm Book for Beginner Programmer and Computer Science Students

Hello guys, I have read many books on data structures and algorithms like Introduction to Algorithms by Thomas H. Corman and Algorithm design manual by Steve S. Skiena, so when I come to know about this book, I thought, just another book on algorithms, but I was wrong. This is not just another book on algorithms but one of the most interesting books you will ever read on Algorithms and Data structure. It doesn't cover all the data structure and algorithms you see in Computer Science but whatever it covers, it does really well and that's what matters most for beginner programmer or Computer Science students.

Top 5 Java 9 Courses to Learn Online - Best of Lot

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.

Thursday, February 14, 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.

Wednesday, February 13, 2019

Top 5 Courses to Learn Data Structures and Algorithm for Programmers and Computer Engineers

Both Data Structures and Algorithms are one of the most important topics for programmers. The best thing about them is that they never get out-of-date and any investment you made in terms of time and money will pay rich dividends for a long time. I have also found that people good at algorithms and data structures are often a better programmer than others. They tend to improve your programming skill and coding sense and that's the main reason I suggest all kinds of programmers, from junior to senior to spend some time revising, refreshing and honing your data structure and algorithm skills. Most of us first heard about them in school and colleges but didn't understand at that time. At least I can say that for me. I first heard about array and linked list on my engineering college.

The 2019 Web Developer 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.

Tuesday, February 12, 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.

10 Object Oriented 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 future.

Monday, February 11, 2019

Top 6 Free Online Database and SQL Courses for Programmers

Hello guys, we are already in the first week of New year and everyone is talking about their goals to improve them as a better person, a better programmer, or get better health. If you have also made your goal and one of them is to improve your SQL skill then you have come to the right place because I am going to share some of the free courses to learn and master SQL this year. As you already know, SQL is one of the essential skill and much more important than any fancy library or framework you are thinking to learn.  If you ask me which two skill every programmer should have, I would say SQL and UNIX, these two have survived for a long time and will survive for many coming decades. SQL is also very interesting, once you get a hang of it, you would love to write queries and analyzing the performance of your queries.

Is "Java Concurrency in Practice" Still Valid in the Era of Java 8 and 11?

One of my reader Shobhit asked this question on my blog post about 12 must-reads advanced Java books for intermediate programmers - part1. I really like the question and thought that many Java programmers might have the same doubt whenever someone recommends them to read Java Concurrency in Practice. When this book came first in 2006, Java world was still not sure of about new concurrency changes made in Java 1.5, I think the first big attempt to improve Java's built-in support for multi-threading and concurrency. Many Java programmers were even not aware of new tools introduced in the API e.g. CountDownLatch, CyclicBarrier, ConcurrentHashMap and much more. The book offered them the seamless introduction of those tools and how they can use them to write high-performance concurrent Java applications.

Sunday, February 10, 2019

10 Free Courses to Learn Python in Depth

There is no doubt that Python is currently the world's #1 programming language and the biggest advantage of that is it's bringing more and more people into the programming world. In recent years, I have seen more people learning Python than any other languages, yes, not even JavaScript. Many of them learning Python to explore some awesome Data Science and Machine learning libraries provided by Python. Some people are also learning Python for web development and there are still many developers who are learning Python for scripting and automating trivial tasks. It doesn't matter why you are learning Python at this moment, it's a great thing in itself that you have decided to learn Python.

Thread, Code and Data - How a Multithreading Java Program Actually Run

There are certain things, which you don't learn on academics or training class, you develop those understanding after few years of work experience, and then you realize, it was very basic, how come I had missed that all those years. Understanding of how a multi-threaded Java program executes is one of such things. You definitely have heard about threads, how to start a thread, how to stop a thread, definitions like its independent path of execution, all funky libraries to deal with inter-thread communication, yet when it comes to debugging a multithreaded Java program, you struggle.

Saturday, February 9, 2019

Top 5 Free Kubernetes courses for DevOps Engineers and Programmers

Hello guys, DevOps is becoming an essential skill in today's Programming and Software Development world and Kubernetes is an important concept and tool for DevOps Engineer. It takes container based deployment to another level and allows you to manage it on the scale. You can use Kubernetest to scale your container environment or let Kubernetes do all the work for you by leveraging its auto-scaling feature. Many DevOps beginners think that Docker and Kubernetes are the same but they are not. Docker provides a container to deploy your application and commands to interact with those but container but Kubernetes is actually a container management technology, which decides how many containers are needed and deal with other management aspects.

Friday, February 8, 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. 

Top 5 MongoDB Online Training Courses for 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.

Thursday, January 31, 2019

How to Find Multiple Missing Integers in Given Array of Numbers with Duplicates in Java?

It's been a long time since I have discussed any coding or algorithm interview questions, so I thought to revisit one of the most popular array based coding problem of finding missing numbers in a given array of integers. You might have heard or seen this problem before on your programming job interviews and you might already know how to solve this problem. But, there are a lot of different versions of this problem with increasing difficulty levels which interviewers normally use to confuse candidate and further test their ability to adapt to frequent changes. In the past I have demonstrated how to find the missing number in a sorted array as well on the unsorted integer array in Java using BitSet (see here), but, with just one missing number and without any duplicates, which kinda make those problems a bit easier.

Top 5 Java Programming Courses for Beginners to Learn Online - Best of Lot

If you are a computer science graduate or someone who wants to learn Java and looking for some awesome resources e.g. books, tutorials, and online courses then you have come to the right place. In the past, I have shared some great books and tutorials to learn Java and in this article, I am going to share some of the best Java courses beginners can join to learn Java. One of the main problems with learning Java is to keep pace with the increasing number of releases. For example, Java 8 was released in 2014 which completely changed how Java is written and now within the last 6 month, we have two major Java releases in form of Java 9 and Java 10. But the good thing is that the core of Java is still the same and all its releases are backward compatible.

Wednesday, January 30, 2019

Difference between Stable and Unstable Sorting Algorithm - MergeSort vs QuickSort

Recently in one on the interview, after some initial questions about sorting algorithms e.g. how do you write QuickSort or difference between QuickSort and MergeSort, the interviewer asked about do you understand the difference between stable and unstable sorting algorithm? This question was new to my reader, so he says, Sorry, never heard about that. The story ended there, and Interviewer moved on to next question but like many of us, my reader went on to find more about unanswered questions and ultimately he asks me what is the meaning of a stable and unstable sorting algorithm? Some of you might be heard about it and many of you might not know about this distinction, I'll try to answer this question in this article.

Top 5 Free Scala Programming Courses for Java Programmers to learn Online - Best of Lot

Scala is a powerful object-oriented and functional programming language which has been long touted as the successor to Java or to replace Java. Well, that didn't happen in last few years but Scala has certainly made a lot of progress and established itself as a scalable programming language for big things. If you are a social media user and know Twitter then let me tell you that they are using Scala, which proves that Scala has all the tools you need to build a high-performance scalable application like Twitter, and Twitter is not the only company which is using Scala. If you look a the Scala's website, you will find that IBM, Goldman Sachs, Verizon, and SAP are using Scala to solve their problems.

Tuesday, January 29, 2019

Top 20 Spring MVC Interview Questions and Answers for 2 to 5 years Experienced 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 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.

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.

Monday, January 28, 2019

Top 5 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?

10 Tools Used by Java Programming Developer 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.

Sunday, January 27, 2019

Top 5 Online Courses to become a Web Developer 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.

Top 5 React and Redux Courses to Learn Online - Best of Lot

If you are a Web developer or someone passionate about web development and looking for some awesome courses to learn React or React JS, a popular JavaScript framework to develop component-based user interface then you have come to the right place. The Facebook's React library has taken the front-end development world by a storm. More and more people have started using React even in favor of Google's Angular, another popular front-end development framework. Well, I am not going into the classic debate of Angular vs React as both the framework has their own advantage and disadvantage but if you have chosen to learn React, you have made the right decision.

Saturday, January 26, 2019

How to close telnet terminal in Linux and Windows (quit, exit not working)

The telnet is one of the most useful Linux networking commands, which is used to check if a server is listening on a particular port and it's whether up and running or not, but it's a little bit tricky to use, especially, if you are not using it on daily basis. Though I have used telnet before, when I use it after a long time, I actually forgot how to close the telnet terminal and how to get out of it. I tried every possible  Linux commands I can think of which is used to close, cancel a command, or exit from VIM editor in UNIX, like  Ctrl + C, quit, exit, q! and even the escape character '^]', only to realize that nothing is working. It may sound silly that an experienced developer cannot even come out of a telnet terminal but this is a true story. 

Friday, January 25, 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.

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.

Thursday, January 24, 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.

Top 5 Java 8 Courses to Learn Online - Best of Lot

It's been more than 4 years since Java 8 was launched on the March 2014 and many of you already thinking that Java 8 now legacy version but there are still so many Java developers out there who don't know how to code using new language features of Java 8 like lambdas, stream, and method reference. It's high time for all those programmers to learn and master Java 8 before their skill become outdated. After that, we already have a couple more Java releases i.e. Java 9, Java 10, and Java 11 in the space of just 6 months apart but Java 8 is still the most used version, particularly when it comes to coding style.

Wednesday, January 23, 2019

Top 3 Programming Languages Java Programmers 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.

Tuesday, January 22, 2019

How to implement Command design Pattern in Java with Example

Hello guys, it's been a long since I have shared a Java design pattern tutorial. I did share some courses to learn design patterns but haven't really talked about a particular design pattern in depth. So, today, we'll learn one of the important design pattern, which is often overlooked by Java developers. Yes, I am talking about the Command Pattern which can help you write flexible, loosely coupled code for implementing actions and events in your application. In simple words, the command design pattern is used to separate a request for an action from the object which actually performs the action. This decoupling between Invoker and Receiver object provides a uniform way to perform different types of actions. This decoupling is achieved using a Command object, which is usually an interface with methods like execute()

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.

Monday, January 21, 2019

Difference between Dependency Injection and Factory Design Pattern in Java Spring

Learning a Programming language like Java or Python is easy but writing production quality code is difficult. Coding is as much an art as much the Science behind it. In order to write good code, you need to carefully design your classes, their dependency and how to use that. This is important so that it can survive the constant change throughout his lifetime. If you have been coding for some time then you know that SOLID principles and Design Patterns help you to write better code. This is obvious because they are proven the solution of some common problems software developers face all around the world. But, knowing just the design pattern is not enough you also need to learn using the right design pattern in the right place.

Sunday, January 20, 2019

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.

Saturday, January 19, 2019

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.

Top 5 iOS Developer Course to learn iOS 12 and Swift 4 in 2019

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.

Friday, January 18, 2019

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.