Cloud, Edge, Container, Quantum, Blockchain, AI, Deep Learning, Batch, Streaming, Database, Programming, Software Architecture, Web, App, Low Code, No Code

Image for post
Image for post
Image by Javier Rodriguez from Pixabay

2020 was an unprecedented year in recent history. Humanity has not experienced a global pandemic like COVID-19 in the last one hundred years. It has affected all the countries, sectors, and almost all the individuals on our Planet.

The good news is that we have vaccines on our doorsteps and finally can embrace the new year 2021 with lots of optimism and hope.

2020 was a significant year for the Software Development industry with lots of tangible breakthroughs in many…


Java, Kotlin, Groovy, Scala, Clojure

Image for post
Image for post
Source: BellSoft

BellSoft is rounding up 2020 with top languages for fintech enterprises. Whether you’re a startup launching your very first MVP, an up-and-coming business, or an established company looking for an innovative edge, this list is guaranteed to answer all your IT needs.

Here we’ll explain why you should choose JVM languages over platform-specific native ones, look into their key features and rankings. We’ll be paying special attention to how the languages are applied to use case scenarios, covering everything from finance & banking to insurance. This list will help you understand the advantages and opportunities each one offers. …


MySQL, Oracle, PostgreSQL, Microsoft SQL Server, MongoDB, Redis, Elasticsearch, Cassandra, MariaDB, IBM Db2

Image for post
Image for post
Image by Tumisu from Pixabay

Databases are the cornerstone of any Software Applications. You will need one or more databases to develop almost all kind of Software Applications: Web, Enterprise, Embedded Systems, Real-Time Systems, AI, ML, HPC, Blockchain, IoT, and many other applications.

Twenty years ago, choosing a database was much easier. In most cases, you could have chosen one of the Relational Database Systems and you were done. But in modern Software Development, choosing the right database is one of the most challenging tasks.

With the rise of Microservices, Cloud, Distributed Applications, Global Scaling, Semi-Structured Data, Big Data, Fast Data, Low Latency Data: the…


Microservice Architecture, Database per Microservice, Event Sourcing, CQRS, Saga, BFF, API Gateway, Strangler, Circuit Breaker, Externalize Configuration, Consumer-Driven Contract Testing

Image for post
Image for post
Image by msandersmusic from Pixabay

Tackling complexity in large Software Systems was always a daunting task since the early days of Software development (1960's). Over the years, Software Engineers and Architects made many attempts to tackle the complexities of Software Systems: Modularity and Information Hiding by David Parnas (1972), Separation of Concern by Edsger W. Dijkstra (1974), Service Oriented Architecture (1998).

All of them used the age-old and proven technique to tackle the complexity of a large system: divide and conquer. Since the 2010s, those techniques proved insufficient to tackle the complexities of Web-Scale applications or modern large-scale Enterprise applications. As a result, Architects and…


React, Vue.js, Angular, Spring, Django, Ruby on Rails, ASP.NET Core, Flask, Express.js, Laravel

Image for post
Image for post
Photo by Kevin Ku from Pexels

There are many Web development frameworks in the market. Choosing the right framework is a complex and tricky task. If you are an enterprise, choose a framework that will be maintained for the next 5 years and fit your company's resources and goals. If you are a developer looking for a job, choose a high demand framework in the job market, and fit your profile.

Here in this article, I will list 10 such frameworks for both enterprises and developers. Here are my criteria to choose the web development framework:

  • Mainstream and well adapted in the industry.
  • Highly popular with…


A curated list of the most popular JavaScript libraries to boost your productivity

Image for post
Image for post
Photo by Nikolay Tarashchenko on Unsplash

JavaScript is the ‘Lingua Franca’ of the Web. It is also the second most popular programming language in the world, just behind Python.

If the current trend continues, JavaScript will soon overtake Python as the most popular programming language. One of the Key features of JavaScript is it has a tiny Standard library. To supplement it, JavaScript has millions of libraries (packages). JavaScript package manager NPM ecosystem is one of the most popular and vibrant package manager ecosystems in the Software Development industry.

As a JavaScript developer…


Libraries that can significantly help your software development in Java and JVM

Image for post
Image for post
Image by StartupStockPhotos from Pixabay

25 years ago, James Gosling created Java and changed the programming language landscape forever. Unlike many other programming languages, Java enjoyed high popularity and high demand in the industry in its entire lifespan.

Java has a compelling Core library, which offers many basic functionalities. Due to its high popularity, there exists many mature and powerful Java library. As a pragmatic Software developer, I prefer solving business problems. To solve the common or reoccurring problems, I prefer using a mature library instead of reinventing the wheel.

In a previous blog post, I have listed 10 most important third-party Java libraries every…


A step-by-step guide to install parallel Java versions on any UNIX based System

Image for post
Image for post
Image by Bhakti Iyata from Pixabay

If you are a Java developer, you may need to install multiple Java versions on your machine. You may use Java8 or Java11 in your project, but want to learn newer versions of Java. Or maybe you are working on two different projects where two different versions of Java are used.

One way to achieve this is to install multiple Java versions and configure different Java versions manually. In that case, you have to modify a few environment variables when you need to switch your Java version. The other elegant and convenient way is to use the SDKMAN.

SDKMAN is…


A curated list of the essential Java libraries in Java and JVM software development

Image for post
Image for post
Photo by Min An from Pexels

Java is the number one programming language in Business Application development. It is also one of the top programming languages.

One of the key features of Java is that it has a feature-rich and vast Core library. While the Standard Java library is powerful, you will need other Java libraries in professional Software Development. With 25 years of active development and adoption in the industry and community, Java has many mature and useful libraries.

Here I am listing the top 10 Java libraries used in Java Applications in all domains. Whether you develop software for a hobby project or enterprise-grade…


A curated list of the essential GitHub repositories for Java Developers

Image for post
Image for post
Photo by Christina Morillo from Pexels

Java is the undisputed king of the Enterprise Software development and one of the top in-demand programming languages overall. It has recently celebrated its 25th birthday, and it will remain one of the leading programming languages in years to come.

With over 100 million repositories, GitHub is like the “Library of Alexandria” in Software Development. GitHub contains Frameworks, Libraries, Tutorials, Books, and even Programming Languages.

If you are a Java developer and you want to sharpen your Java skills, then GitHub is like a Gold mine for you. …

Md Kamaruzzaman

Software Architect | Tech Writer | Full-stack | Cloud | Big Data | Follw Me On Social Media: https://twitter.com/KamaruzzMd

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store