Tuesday, November 19, 2019

Top 10 Gift Ideas for Programmers, Software Engineers, and Tech Geeks

My friend circle has a lot of programmers and non-programmers. When it comes to buying gifts for birthdays, anniversary, or holidays, I receive a lot of queries from my non-programmer family and friends about what to buy for a programmer? Well, buying a gift is easy but choosing or finding the right gift for someone is really really tough. I have had this experience when it comes to buying gifts for kids. I know they like toys but my wife told me to buy something more valuable, which not only keeps them engaged but also provides value, help them in learning and they appreciate every time they use. That's a lot to cater to one gift, but that's the perfect gift, isn't it?

Top 10 Computer Programming, Artificial Intelligence, and Sci-Fi Movies Programmers Should Watch

Guys, It's a fun time here, as Holidays are approaching, it's Movie time for many of us. Being a computer programmer, I love movies which are based on programmers life, work, and concept. Thankfully Hollywood is no short of films based on computers, programming, and geeky technical stuff. Another day, I was pretty bored, and when I look back to my DVD collection, I found Inception, Matrix Reloaded, and The Social Network, this all movies are in some way related to computers and technology, which strike me the idea to publish my list of Top 10 Computer programming movies.

Top 10 UNIX and Linux System Programming Books- Best of Lot, Must Read

I have been sharing programming books in this blog for a long time, starting with core Java; I moved to other related technology, like Spring, Design patterns, Data Structure and Algorithms, etc. Today, I am going to share some of the best UNIX and Linux programming books. The list contains some of the must-read UNIX books from great writers like Sir Richard. Stevens, Sir Brain Kernighan, who has contributed so much to the development of the UNIX operating system. Most of the books on this list are timeless,  classic, and don't age with time, much like UNIX, which is around for the last 40 years, and I am sure it will be around for the next 40 years, or maybe forever.

Monday, November 18, 2019

Top 5 Courses to learn C# (C-Sharp) in 2020 - Best of Lot

If there is one programming language that deserves more credit, then it currently receives from developers, than it would be C# or C-Sharp. When we talk about popular programming languages, we mostly talk about how Java is ruling the programming world from the last three decades, how JavaScript changed the web world, or how Python has taken over all programming languages in last couple of years, but we seldom mention C#. If you follow the StackOverflow survey, then you know that C# is always one of the top 5 Programming languages rated by programmers, and this year also close to 31.0% has said that they use C#, which is significant.

Sunday, November 17, 2019

How to send HTTP request using curl and wget command from Linux and UNIX? Example Tutorial

You can use either curl or wget command to send HTTP requests from UNIX or Linux operating system. Both commands allow you to send GET and POST requests, which means you can also call REST web services.  I have a Java web application, which runs on Linux and exposes WebServices. I was writing a UNIX script to download In some data from that web service when I hit by the question, how do I make an HTTP call from UNIX? What is the UNIX command should I use? If you are also facing the same problem, then you have come to the right ht place. Basically, you can use two UNIX commands to make the HTTP request, wget, and curl.

Top 5 Books to Learn Scala and Functional Programming - Best of Lot

Scala is one of the relatively new programming languages which encompasses best practices of many programming languages. The biggest strength of Scala is that it provides a beautiful blend of object-oriented programming and Functional programming. So, you can not only construct elegant class hierarchies for maximum code reuse and extensibility, but you can also implement their behavior using higher-order functions. It has a concise syntax with less ceremony, which also makes it ideal for scripting but doesn't underestimate its power. Like Java, Scala has also used for mission-critical applications by technical giants like Twitter, LinkedIn, and Intel.

Saturday, November 16, 2019

Top 5 Courses to Learn The C Programming in 2020 - Best of Lot

Hello guys, today, I am going to talk about one of the oldest, powerful and a programming language which has survived 50 years. Yes, that's right, 50 years. It's a great achievement for any technology to remain relevant for such a long period. If you don't know, the C Programming language is one of the first general-purpose programming language, invented by Dennis Ritchie and Ken Thomson around 1969. Ken was writing UNIX, another accessible technology that has survived for 50 years around the same time and needed a programming language that can do all kinds of tasks; the result was C programming language.

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

There is no doubt that IntelliJ IDEA is THE best IDE for Java development, even though Eclipse may still be probably used by more people because it's FREE, IntelliJ IDEA is the most feature-rich and complete IDE. The Android Studio, which is the official IDE for Android development in Java, is also based upon IntelliJ IDEA, which further cement its place as the IDE Java developer should learn. The only thing which stops many other Java developers and me from 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.

Friday, November 15, 2019

10 Example of find command in UNIX and Linux

The find command is one of the most versatile commands in UNIX and Linux, and I used it a lot in my day to day work. I believe having a good knowledge of find command in UNIX and understanding of its different options and usage will increase your productivity a lot in UNIX based operating system, e.g. Redhat Linux or Solaris. If you are a QA, support personnel, and your works involve lots of searching text on Linux machine or if you are a Java or C++ programmer and your code resides in UNIX, find command can significantly help you to look for any word inside your source file in the absence of an IDE. It is the alternative way of searching for things in UNIX; grep is another Linux command which provides similar functionality like find but in my opinion, later is much more potent than grep in UNIX.

Top 5 Hibernate Books for Java Developers - Best, Must read

Hibernate is one of the most popular, open-source ORM (Object Relational Mapping) framework, which has now become a standard for developing persistence layer on Java enterprise application, along with JPA (Java Persistence API). I often receive requests to suggest which book is best to learn to hibernate or recommendation about some good books and training courses on Spring and Hibernate. This motivates me to write this article about some of the best books on Hibernate currently available on the market. Earlier I have shared some of the must-read books on Spring framework for a Java developer, which is quite helpful for picking a book in Spring. Similar to the Spring framework, experience in Hibernate is the most sought after thing in Java JEE development roles.

Thursday, November 14, 2019

Top 5 Free Courses to Learn Scala and Functional Programming in 2019 - 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 the last few years, but Scala has undoubtedly 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.

10 Example of lsof commands in Linux and UNIX

It's been a long time since I have written anything on UNIX or Linux commands. Still, 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 the 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 special block file, an NFS mounted file, a socket stream, a shared library, a special character 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 next section.

Wednesday, November 13, 2019

10 reasons to Learn Scala Programming Language

One of the questions my reader often ask me is, shall I learn Scala? Does Scala has a better future than Java, or why Java developer should learn Scala and so on. Well, there can be many reasons for learning Scala, e.g., you are forced to learn because it been used in the new company you joined or your solution architect decided to use it, but that's a different story. Here, we'll talk about reasons which encourage Java developers to learn Scala.  Scala has emerged as one of the most powerful Java alternatives in recent times. It's been the JVM language of choice, leaving Groovy and Clojure way behind, and preferred as the language people want to write most code in.

Top 5 TensorFlow and Machine Learning Online Training Courses for Programmers

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

Tuesday, November 12, 2019

10 JDK 10 Features Java Developers Should Know

Hello Guys, while we all are talking about Java 9 and some people are yet to adopt Java 8 in their projects, here comes the new release of Java, the JDK 10. It's available to download now on Oracle's website. This is the first release in the latest release schedule, where you have a new Java release every six months, I know it's quite early, but that's a reality now. Apart from 6 monthly release, Every 3 years there is an LTS release, which is sort of major Java release. The next LTS release is Java 11 which should be out in September. So you can aim for that. Then you can update three years after that to the next LTS release.

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 are a 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 an excellent opportunity to make a difference.

Monday, November 11, 2019

Top 10 Most Popular Programming Languages of the Last 50 Years and their Inventors

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.

How to Enroll on Spring Professional Certification and Schedule Exam using Voucher Online - Step by Step Guide

So, you have been preparing for Spring certification for quite a sometime, and now you feel you are ready to take the exam, and it's time to buy the Spring certification voucher and schedule your exam. In this article, I'll show you how to buy the Spring certification voucher online. But, before purchasing a voucher, I would like to remind you that the Spring certification voucher is only valid for 90 days, after that it will expire. So, it's best to buy the voucher only if you are ready for the exam i.e. you have gone through several Spring Mock tests and practice tests given in Spring study guides and you are consistently scoring over 80% on them.

Sunday, November 10, 2019

Top 5 courses to learn Apache Maven for Java Developers - Best of Lot

The Apache Maven or commonly known as just "Maven," is an essential 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.

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

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

Saturday, November 9, 2019

find + du + sort + head command example in Linux - Ho to search large files and directories in host to free some disk space

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%.

Top 5 Best Java 8 Tutorials, Courses, and Books

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

Friday, November 8, 2019

10 Tips Improve Your Speed in Bash, and Linux Command Line

Have you ever amazed to see someone working very fast in UNIX, firing commands, and doing things quickly? Yes, I have noticed that a couple of times, and I have always inspired to learn from those superstar developers. In this article or tutorial or whatever you call it, I have dedicated to sharing some UNIX command practices I follow to work fast, quick, or efficiently in Linux. I work for the Financial services industry, and my work involves the development and support of online stock and futures trading applications in Electronic trading, Derivatives, etc. All our services run on Linux servers, so I need to work efficiently and quickly in the Linux machine, and that's how I have learned these productivity tips in Linux.

Thursday, November 7, 2019

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

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

Do you Need to Pass OCAJP before taking OCPJP - Core Java Certification from Oracle

Even though we now have Java 11 certification, I know many Java developers who are going for Java certification like Java SE 8 Programmer 1 and 2, also known as OCAJP 8 and OCPJP 8 with exam code 1Z0-808 and 1Z0-809. Even though Oracle split Java certification into 2 after acquiring Sun Microsystem in 2010, there is still confusion among Java developers whether they need to pass just one OCAJP exam or both OCAJP and OCPJP exam to become a certified Java developer. Well, The short answer is Yes, if you want to become a Java certified engineer then you need to pass both OCAJP and OCPJP, but the long answer depends upon your situation, e.g. whether you hold any previous Java certification or not, which we'll discuss in the second section.

Kotlin vs Java - Which language Android Programmers and Beginner Should Learn First?

Ever since Google announced Kotlin as the official language for Android development in Google IO 2017, programmers who want to become an Android Developer are in a dilemma. Now the big questions in front of them are whether they should learn Kotlin or Java? The answer to these questions depends upon your profile. If you are a complete beginner who wants to learn Android development, then my answer is Java, but if you are a Java developer who wants to jump into the lucrative market of Android App development, then my answer is Kotlin. I'll discuss why a beginner Android programmer should start with Java and why Java developer should learn Kotlin in this article.

Wednesday, November 6, 2019

Top 5 Books for Programming/Coding Interviews - Best of lot

If you are preparing for Programming Job interviews and looking for some of the best books for programming questions, then you have come to the right place. In this article, I am going to share a couple of good books to prepare coding, software design, and data structure algorithm questions, which are essential for any coding interviews. Though a programming interview also explores other areas of software development, e.g., the programming language, you would be mainly used in your project, like, C++ or Java. The database and SQL based questions, the operating systems, and UNIX related questions, some of the software design and object-oriented design pattern questions, and much more, but coding based questions form the core of programming interviews.

6 ways to declare and initialize Two-dimensional (2D) String and Integer Array in Java - Example Tutorial

Declaring a two-dimensional array is very interesting in Java as Java programming language provides many ways to declare a 2D array and each one of them has some special things to learn about. For example, It's possible to create a two-dimensional array in Java without specifying the second dimension, sounds crazy right? but it's possible because two-dimensional array in Java is nothing but an array of array. You can even create a two-dimensional array where each subarray has a different length or different type, also known as a heterogeneous array in Java. This means it's possible to create a two-dimensional array with variable column length in Java.

Tuesday, November 5, 2019

Top 5 Course to Learn Ansible for DevOps in 2019 - Best of Lot

If you are in DevOps space, then you might have heard about Ansible, one of the powerful tools for infrastructure automation. In the past, when you need to set up a server for your application you need to go to each server and install all the software and verify it. This slow, manual, and painful process of server setup is now over with tools like Ansible, Chef, Puppet, and Salt making there way. These are the tools that promote the idea of Infrastructure as code which also brings the added benefit of versioning and scaling when it comes to infrastructure automation.  If you are working towards a career in DevOps, your already a DevOps champion in your team, then learning about Ansible is a good idea, and you have come to the right place.

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

Hello guys, if you are thinking to learn TypeScript this year and looking for some excellent 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.

Monday, November 4, 2019

How do you find length of a Singly Linked list using Loop and Recursion

Hello guys, here is one of the classical programming questions how do you find the length of a linked list using recursion and without recursion. This is not about the LinkedList class of Java API but the linked list data structure, which is made of nodes that contain both data and address of the next node. In order to calculate the length, you need to count all nodes in the linked list. Since it's a singly linked list you can only move in one direction from the head to tail.  This coding problem was asked to me on my first interview with a multinational Investment bankAfter that, this question has been asked to me on several occasions in other Programming Job Interviews as well.

Top 5 Websites to Learn Python Coding for FREE - Best of Lot

Believe it or not, but Python has inspired many people to learn to code and its continually inspiring them. I know a handful of people who are learning Python for different reasons, starting from web development to machine learning. I have seen new people learning Python to write web apps using Django, create a Machine learning Model using Python, and just to write some handy scripts to automate the boring stuff. Python is currently the world's #1 programming language and its popularity is growing every passing day, thanks to Data Science and Machine learning and awesome Python libraries like Pandas, NumPy, and TensorFlow.

Sunday, November 3, 2019

Top 5 courses to learn Tableau in 2019 - Best of Lot

In the era of Big Data and Data Science, Data Visualization and Analytics have become really important. Data visualizations like dashboards and charts help you to better understand the data and provides you insights. They also help simplify complex data sets into concise images and diagrams that clients and users can more easily digest. What would you do with the data if you cannot analyze it to gain the insights which can help with your business growth and some path-breaking discoveries and that's where Data Visualization and Analytics tools like Tableau helps a lot.

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.

Saturday, November 2, 2019

Java vs Python - Which Programming Language Should Programmer Learn First?

Java and Python are two of the most popular and influential programming language of the present time. Beginner programmer often get confused, one of the most frequently asked questions is should I learn Java or Python? Is Python is an excellent programming language to start with? Which programming language would you recommend for beginners to learn first etc.? Since I am a Java developer, my opinion is biased, I will always suggest you start with Java and then learn Python, but if you ask this question to a Python developer, you might get just opposite answer. I have well documented my reasons as to Why Java is the best Programming language and Why a programmer should learn Java. One of the most important reasons you would see in that blog post is an active Java community, which will help you throughout your Java career.

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.

Friday, November 1, 2019

10 Books Every Java Programmer Should Read - Best of Lot, Must Read

If you are a Java programmer and wondering what to read to improve your knowledge of Java and become a better Java developer, then you have come to the right place. In this article, I am going to share some of the best Java books ever written. In fact, this is my list of all-time great Java books. They have withstood the test of time and emerges as more and more successful years after years. It doesn't matter if you read them this year or reading them next year, you are always going to learn a lot, and that's why I call them all-time great books.

Top 5 Courses to learn JUnit, Unit Testing and Test Driven Development for Java Programmers - Best of Lot

Hello guys, today, we'll talk about JUnit and Unit testing, one of the critical skills for any Software developer. You may already know that JUnit and Mockito are two of the most popular testing libraries for Java applications, and you will find them in almost every Java application classpath. I often meet and work with Java developers who know Java well but haven't written a single unit test. When I ask them why don't you write unit tests, they come up with many excuses like they don't have time for writing unit tests, there is always deadline pressure, and some of the honest guys will tell you that they tried writing but give-up after 10-15 minutes due to difficulty in testing their code.

Thursday, October 31, 2019

When to use intern() method of String in Java?

The String.intern() method can be used to deal with the String duplication problem in Java. By carefully using the intern() means you can save a lot of heap memory consumed by duplicate String objects. A String object is said to be duplicate if it contains the same content as another string but occupied different memory location e.g. str1 != str2 but str1.equals(str2) is true. Since String object consumes a large amount of heap memory in average Java application, it makes sense to use the intern() method to reduce duplication and take advantage of String pool feature provided by Java. You can use intern() method to intern a String object and store them into String pool for further reuse.

Top 5 Courses to learn Artificial Intelligence in 2019 - Best of Lot

If you are not living under the rock, then you might have heard AI or Artificial Intelligence quite often in the last few years. It's not that Artificial Intelligence is a brand new thing, it's been around for years, but in the last few years it has really peaking up. Artificial Intelligence is impacting every aspect of life just like Electricity did at the start of the 19th Century and IT did a couple of decades ago. More and more companies are trying to solve real-world problems using AI like self-driving cars and many startups using AI in educational and training applications to train children better. My first experience with AI was when IBM's Deep Blue beats Garry Kasparov in chess.

Wednesday, October 30, 2019

How to use EXISTS Clause in SQL? A Real World SQL Query Example using EXISTS

Hello Guys, you might have heard about how useful the EXISTS clause is helpful in writing sophisticated queries. Still, at the same time, I have also seen that many programmers struggle to understand and use EXISTS and NOT EXISTS clause while writing SQL queries.  If you are one of them, then you have come to the right place. Today you will learn how to use the EXISTS clause in SQL by picking up a real-world example and an excellent SQL exercise from the LeetCode. Suppose that a website contains two tables, the Customers table, and the Orders table. Can you write an SQL query to find all customers who have never ordered anything?

Top 5 Data Structures and Algorithms Courses and Classes for Beginners [Python + Java + JavaScript]

Data Structures and Algorithms are one of the most essential 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 to me. I first heard about the array and linked list of my engineering college.

Tuesday, October 29, 2019

Top 5 Books to Learn Data Science and Machine Learning with Python - Best of Lot

While there are many online courses to learn Python for Machine learning and Data science, books are still the best way to for in-depth learning and significantly improving your knowledge. Python is a universal language that is used by both data engineers and data scientists and probably the most popular programming language, as well. All the Data Scientists I have spoken, and many in my friend circle just love Python, mainly because it can automate all the tedious operational work that data engineers need to do. To make the deal even sweeter, Python also has algorithms, analytics, and data visualization libraries like Metaplotlib, which is an essential data scientist.

Top 5 Courses to learn ASP .NET in 2019 - Best of Lot

Many people won't agree, but ASP .NET is one of the most popular technology, and many developers are working on ASP .NET around the world. Being a Java developer, I got limited exposure to ASP .NET, particularly in my college days, but I have many friends who are working in .NET and doing great for themselves. There was always some comparison between Java/JEE and ASP .NET and other .NET technologies, but to be honest, both are great. It all depends on which technology you are working, and that is decided mostly by architects in your company rather than yourself. It was totally by luck that I landed on Java world, and my friends landed in the .NET world, but we both have done work on another side.

The 2019 Frontend and Backend 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 significant to share with you, the 2019 Web Developer RoadMap. This is an excellent illustration of 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 necessary for all kinds of programmers.

Monday, October 28, 2019

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

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

10 Reasons to Learn Python Programming Language in 2019

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

Sunday, October 27, 2019

Top 5 HTML 5 and CSS 3 Courses for Beginners for Project based, hands-on Learning - Best of Lot

Hello guys, if you are learning Web Development or thinking about becoming a Web Developer, then you have come to the right place. Earlier, I have shared the 2019 Web Developer RoadMap, and today, I'll talk about HTML and CSS and share some useful resources to learn them in depth. There are three pillars of Web Development, HTML, CSS, and JavaScript. HTML provides structure, CSS provides the style and JavaScript provides the interactiveness. The HTML stands for HyperText Markup Langauge, and it's one of the oldest technology I know. I first come to know about HTML in my college day, good 20 years back, when we are happy to see a list of heading in different colors. HTML has come a long way since then with HTML 5 bringing some of the cool features. The same goes for CSS, the stylish part of your web. It is as old as HTML but improved a lot.

What is the best Book to Learn Java for C and C++ Programmer?

In the last 2 decades, many Java programmers started programming with C and C++, but the situation is changed now, you have more choices like you can choose Python, or you can even start with Java. It seems Academia prefers Python in the USA and Java in India, but there are still many programmers who know C and C++ and want to learn Java for one or other reasons. I often receive emails from my readers about book recommendation, and recently, a couple of them asked me to suggest the best Java books for C and C++ programmers. I can relate those beginners to myself because I have also gone through the same phase, but those days, the university textbooks are our only source to learn new things. We didn't have broadband, and unlimited access to the Internet and eBooks was not popular at that time, but things have changed.

Saturday, October 26, 2019

Top 10 DevOps Courses for Experienced Programmers to Learn Online - Best of Lot

DevOps is really hot at this moment and there are many job opportunities lying for distinguished engineers and DevOps professionals. If you are an experienced Java programmer and want to become a DevOps engineer then you have come to the right place. In this article, I am going to share some of the best online training courses you can take to become a DevOps professional. The most important advantage of DevOps is that it helps you to deliver better software and provide more control over your environment and software development process with the help of modern tools and automation. That's the reason the demand for DevOps professionals is growing exponentially. It's also one of the high paying jobs along with Data Science and Machine learning specialists.

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

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

Friday, October 25, 2019

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

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

Top 5 SQL and Database Courses to Learn Online in 2019 - Best of Lot

Hello guys, if you are a computer science graduate or new into programming world, interested in learning SQL and looking for some awesome resources e.g. books, courses, and tutorials to start with then you have come to the right place. In past, I have shared some of the best SQL books and tutorials and today I am going to share some of the best SQL and database courses to learn and master this useful technology. If you don't know what is SQL and why should you learn it, let me give you a brief overview of SQL for everyone's benefit. SQL is a programming language to work with a database. You can use SQL to create database objects e.g. tables, stored procedure etc and also to store and retrieve data from the database.

Thursday, October 24, 2019

Best Online Learning Platform for Programmers - Codecademy and Pluralsight Review

As a programmer, the most important thing is to keep yourself up-to-date. If you don't your skills will become obsoleate and you may not be Marketable. Being an author of a Java blog and editor of a Medium publication, I receive a lot of queries from Programmers and Developers. Many of my readers ask me about advice like which books to learn to code, which is the best site to learn to code? Where should I go for preparing coding interviews and much more? One of the questions which keep coming to me was about Pluralsight and Codecademy? like which site is better to learn new tech skills and level up your current skill? This is a very important question because learning is an essential part of professional programmers' careers. If you don't learn new things or upgrade yourself, you will leave behind in your job and career.

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

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

Wednesday, October 23, 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.

Udemy vs Pluralsight Review - Which is better to Learn to Code and Programming?

Hello guys, how are you doing? I am again back with answering one of the familiar doubts among online learners, Pluralsight, or Udemy? Which are the better websites for learning code and leveling up your programming skills? As a Java blogger and editor of a Medium publication, I often receive questions like this from my readers. Earlier I have answered questions like Pluralsight vs. CodeCademy and Udemy vs. CodeCademy but never explained about Pluralsight vs. Udemy, which many of my readers have been asking from a long time. Since Pluralsight and Udemy are two of the most popular online learning platforms and me also spend considerable time every day on each of them, I felt to write my review of Udemy and Pluralsight and explains pros and cons of both Udemy and Pluralsight so that you can make an informed decision when it comes to learning tech skills online.

Tuesday, October 22, 2019

Top 5 Programming Languages Beginners Can 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 go 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.

Monday, October 21, 2019

Top 5 RESTful Web Services with Spring and Java Courses for Experienced Developers

In the last article, I have shared some courses to learn Microservice development with Spring framework and today, I'll talk about RESTful web service developments. The REST API and RESTful Web Services needs no introduction, it's everywhere now and driving a new internet revolution. Most of the software development in the web space now also involves REST APIs. Gone are the days where the only interface for a web application was the browser, now most of them support REST APIs, which allows them to be accessible on any device e.g. mobile devices, tablets, apple watch and any other digital gadgets. It doesn't matter whether you are working for software giants like Amazon, Facebook or Google or working with startups like Uber or Netflix, REST APIs are everywhere.

Top 5 Websites to Learn Java Online for FREE - Best of lot

Begin the author of a Java blog, I often receive questions like how to improve my coding skills?,  or how do I learn to code in Java?, or I am having difficulty solving programming problems, please help, etc. This is mostly from programmers who have just started programming or a graduate with a programming degree or even some programmers with a year or two in Job. Like many other things in the world, to improve coding, you need to code, code, and code - and to develop programming, you need to write a program, and that's where many of these programmers fail. In 90% cases, they simply don't write enough programs to develop programming logic and code sense and, if without too much experience at data structures and algorithms, if they attempt problems given on sites like LeetCode, HackerEarth, TopCoder or Project Euler, they fail miserably.

Sunday, October 20, 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()

10 Java and Web Development Courses from Udemy - Best of Lot

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 excellent 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, only $10.99, even for a course whose original price is $200.

Saturday, October 19, 2019

Top 5 Free Kubernetes courses for DevOps Engineers and Java 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 Kubernetes 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.

How to Remove a Key, Value, or Entry from an HashMap in Java 8 - Example Tutorial

In the last article, I have shown how to remove key/value pairs from a map in Java based upon some conditions like remove all entries where values are greater than some values. I have told you that you must use the Iterator's remove() method for removing mapping while iteration to avoid ConcurrentModificationException, but that's not required anymore in Java 8. From JDK 8 onwards, you can selectively remove mapping without iterating over Map. The JDK 8 API has added several new methods to existing interfaces e.g. java.util.Collection, java.util.Map, Comparator etc because the interface can now contain concrete methods in form of static and default methods.

Friday, October 18, 2019

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.

Difference between StringJoiner vs String.join in Java 8 with Examples

Joining multiple String literals or object into one is a common programming requirement and you will often find situations where you need to convert a list of String or a Collection of String into a CSV String for your application. For a long time, JDK API has no way to join multiple String literals or objects together, which forces programmers to write hacks like looping through all String objects and manually joining them using String concatenation to create the final, joined String. Even though this approach worked, it was filled with errors and hacks like you need to be careful not to add delimiter before the first element and after the last element, which often caused issues, particularly in case of beginners and junior Java developers.

Thursday, October 17, 2019

Top 5 Courses to Learn Linux Shell scripting (bash, ksh, csh)Online - Best of Lot

A massive chunk of a developer's time is wasted in trying to repeat tasks and commands, especially when it comes to working with a bunch of UNIX or Linux machines, and a good knowledge of shell scripting can free you from such mundane task and give time to do some interesting stuff. If you don't know what shell scripting is then let me tell you is nothing but a program written using shell built-ins, and Linux commands to automate things, e.g. checking if a host is reachable or finding and deleting large files which are older than certain days or archiving them into another machine. Basically, it's a tool that allows you to automate the boring and repeating task, and that's the way programmers should work. They should not be repeating stuff; instead, they should be investing that time to create a script or program which can automate that task.

Top 2 Books for OCPJP8 Certification - Java 8 1Z0-809, 810, 813 Exam

This is the second part of the best books for Java 8 certifications. Since you need to pass two exams, OCAJP8 and OCPJP8, to become a Java SE 8 certified developer, I have shared some of the best OCAJP8 books in the last article. In this article, I will tell you more about the second exam, OCPJP8, and suggest the best books to prepare OCPJP8. This exam is known as a professional level exam, and it's more stringent than the associate level exam. The OCPJP8 stands for Oracle Certified Professional Java Programmer. The exam code for this certification is 1Z0-809.

Wednesday, October 16, 2019

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

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.

What is a Functional interface in Java 8? @Functional Annotation Examples Tutorial

The Functional interface is one of the most important concepts of Java 8 which actually powers lambda expression but many developers don't put enough effort to understand it and spend time learning lambda expression and Stream API without first understanding the role of functional interface in Java 8. Unless you know what is a functional interface and how lambda is related to it, you can't use powerful features of Java 8 like Lambda expression and Stream API. Without knowledge of functional interface, you won't be able to understand where you can use a lambda in the code but also you will struggle to write lambda expression the method is expecting, hence, it's important to have a good understanding of functional interface in Java 8.

Tuesday, October 15, 2019

Top 5 Frontend Web Development Courses for Beginners - Best of the Lot

Frontend development is one of the critical skill for web developers as there is a lot of demand for programmers with excellent front-end development skills. If you've never experienced client-side web development, learning the plethora of front-end technologies can be difficult, but with proper guidance and choosing the right courses, you can achieve your target. The one thing which I want to tell you that a good knowledge of HTML, CSS, and JavaScript is a must for any front-end developer. Even though we are living in the era of frameworks and libraries, but knowledge of these fundamental technologies cannot be undermined.

How to Convert a Lambda Expression to Method Reference in Java 8?

If you have been coding in Java 8 then you may know that using method reference in place of lambda expression makes your code more readable, hence it is advised to replace lambda expression with method reference wherever possible. But, the big question is, how do you find whether you can replace a lambda with method reference? Yes, it's not that easy, especially if you have been using Java 8 only for a couple of months and struggling to get the functional programming concepts and idioms sorted in your head. Sometimes, IDEs like IntelliJ IDEA and Eclipse does offer some hints to convert lambda expression to method reference but it does make sense to learn the logic behind it, otherwise, it won't make sense.

Monday, October 14, 2019

Top 5 Spring Microservices Courses with Spring Boot and Spring Cloud

Microservices is the new buzz word in software development word and everybody is talking about it, but it's been in practice for quite some time especially in form of RESTful web services. The idea of Microservices is simple, breaking a big monolithic application which contains everything from UI to service layer to database into small chunks of applications which are loosely coupled and can work on their own. For example, in a company like Uber, you could have several applications providing different services e.g. discovering when a driver is online or a passenger is searching for a cab, finding a route, traffic and handling payments. These small applications are known as Microservices.

Top 5 Books and Courses to Crack Oracle's Java SE 11 Certification | OCAJP 11 1Z0-815 and OCPJP 11 1Z0-816, 1Z0-817

Hello guys, if you are preparing for the OCAJP 11 (1Z0-815)  or OCPJP 11 (1z0-816) exam and looking for some advice on preparation then you have come to the right place. The Java SE 11 Certification is one of the toughest of Java certification at the developer level. It's much harder than OCAJP 8, it's predecessor, and some of the programmers who have attempted it calling it even harder than the professional-level certification like OCPJP 8. In order to crack Java SE 11 certification, you need to prepare hard, but, at the same time, you also need to know which areas you should focus on. What topics should you spend more time on and which books and courses can help you to learn those essential topics?

Sunday, October 13, 2019

Top 5 Online Courses to Learn Web Development in 2019 - Best of Lot

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.

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

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

Saturday, October 12, 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 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.

The OCAJP 1Z0-808 - Best Books and Mock Exams for Java 8 OCA Certification

From the last couple of months, I have been helping a few developers to prepare for Java 8 associate certification with exam code 1Z0-808, also known as OCAJP 8. From my experience, both for preparing for Sun certification and helping other developers to get Java certified, I can say that two keys to be successful in Oracle Java SE certification are choosing an excellent study guide/course and buying one or two top quality mock exam simulators. When I say success, it doesn't mean just passing the exam but scoring above 90% because passing score 65% is not very difficult to achieve and anybody can pass OCAJP 8 by just a couple of month of practice but to score 90% and above is not that easy, you need to prepare and prepare hard.

Friday, October 11, 2019

Top 10 Courses to Crack Coding Interviews in 2019 - Must Join Best of Lot

To be honest with you, getting your first job is never easy. It is, in fact, the most laborious task, and you need to put your best effort into finding a role in your dream company. Most of the computer science graduates dream of working for Google, Facebook, Amazon, Microsoft, and Apple, but they often not able to clear their rigors coding interviews. The single most important reason for failing those coding job interviews is a lack of knowledge and practice; hence, it becomes increasingly important that you prepare hard in advance. Unfortunately, I learned this little too late after spoiling my chances at Microsoft and Amazon, but you can learn from my experience and prepare better for your programming job interviews.

Top 5 books to Learn Object Oriented Programming - Must Read, Best of Lot

The OOP or Object Oriented Programming is one of the most popular programming paradigms which helps you to organize code in the real-world system. It's a tool that allows you to write sophisticated software by thinking in terms of objects and relationships. Unlike its predecessor procedural Programming paradigm, which is implemented most notably by C, which solves the problem and complete task by writing code for computers, the OOP style of programming allows you to think in terms of real-world objects which have both state and behavior. You can view anything as objects and then find their state and behaviors, this will help you to simulate that object in code.

Thursday, October 10, 2019

The 2019 Java Developer RoadMap

I have been sharing a lot of roadmaps to become a Web developer, DevOps engineer, and recently React.js developer. One of the requests I received from many of my readers was for creating a Java Developer Roadmap. Since Java is my expertise, It wasn't a problem to create a Java Developer Roadmap, but it took slightly longer for me to create one because of the limited time I get. Anyway, I am finally ready to share my Java developer RoadMap with you. This roadmap contains my years of experience and the unobstructed path of how to become a Java expert. It answers many burning questions like which technologies a Java developer should learn? What tools make you a better Java developer? And, which framework a Java developer must absolutely learn.

Wednesday, October 9, 2019

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.

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.

Tuesday, October 8, 2019

Top 5 Coursera Professional Certificates to Start your Career in IT

If you are thinking of a career in IT but lack a Computer Science degree or a Professional degree than you don't need to disappoint. Coursera's professional certificates can give you all the knowledge and credential to start a career in Information Technology. If you don't know, Coursera launched Professional Certificates recently which can help you get job-ready for an in-demand career field in less than a year. You can earn a career credential, apply your knowledge to hands-on projects that showcase your skills for employers, and get access to career support resources.

Top 5 Spring and Hibernate Training Courses for Java JEE Programmers

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

How to find the 3rd (kth) Node from end or tail in a linked list in Java

Hello guys, the problem to find the 3rd element from the end in a singly linked list or Kth node from the tail is one of the tricky but frequently asked linked list problems in Programming job interviews. I know you can easily solve this problem by moving from tail to head or in the reverse direction but the main challenge here is to solve the problem in just one pass. That means, you can not traverse the linked list again and you cannot traverse backward because it's a singly linked list. So what do you think? Isn't this problem challenging? Well, I did struggle when I saw this problem very first time but once you understand the logic and some tricks to solve a linked list based problem like Recursion then it would be easy for you, and that's what you will learn in this article.

Monday, October 7, 2019

Top 5 courses to learn Spring Boot in 2019 for Java Developers - Best of Lot

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

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.

Sunday, October 6, 2019

Top 5 Courses to learn Hibernate and JPA in 2019

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.

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, October 5, 2019

Top 5 Core Java Books for Beginners - Learn Best of Lot

Hello guys, I have shared a lot of books related to Java and related technologies in the past, like books and online courses to learn Spring, Hibernate, JVM internals, and Performance tuning, Multi-threading, and Concurrency, Design patterns, Data structure, and Algorithms, etc., but I haven't shared books for core Java books for beginners yet. Even though I have mentioned a couple of popular titles every now and then, I really didn't have a complete compilation of essential core Java books for beginners. Since Java is one of the most popular programming languages and very useful for getting a job as a Software developer, it has become a choice of programming language to start learning coding and application development, it makes sense to start well with core Java.

Top 10 Free Courses to learn Docker in 2019 - Best of Lot

I have been answering a lot of questions about what programmers should learn in 2019 and Docker Container is one of such skill. Docker and containers are a whole new way of developing and delivering applications and IT infrastructure. In this post, I'll talk about what is Docker and why a programmer should learn Docker. In today's world of massive scalability, where every single mobile app and web application needs to support billions of users (think of Youtube, WhatsApp, Uber), software application development and deployment have become increasingly complex. Gone are the days when software is developed by a small team of onshore people.

Friday, October 4, 2019

Can you Learn Web Development in the 40s?

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