Granny's Programming Pearls
"inside of every large program is a small program struggling to get out"

Pankaj Shet

Ranch Hand
+ Follow
since Sep 08, 2006
Pankaj likes ...
Java Scala Spring
Cows and Likes
Total received
In last 30 days
Total given
Total received
Received in last 30 days
Total given
Given in last 30 days
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Pankaj Shet

Thanks Mathew for this Answer. But do you mean Migration will not help much?

I feel that javascript frameworks will be much lighter compared to JSPs.
JSP is a server side rendering. JSPs will be converted into servlets, and then they will be rendered.
Hence, render perfomance is slow in case of JSPs.
Javascript frameworks will be Client Side rendering, hence performance will be much faster.

Apart from the above, How are JSP's advantageous over Javascript frameworks?


Hello Guys,

I was able to clear the 'Lightbend Certified reactive architect' exam 2 weeks back.

This has helped me a lot for understanding what really is reactive systems.

5 months ago
Hi Ranchers,

I have a small question regarding the above topic.

How is the migration of spring mvc with jsp (JSTL) to spring boot Javascript frameworks(Angular /Reactjs/Vuejs) helpful?

What are the advantages of doing so?

Thanks a Lot for your reply Junilu,

But if there are three instances getting created, if there are three constants, than that's not the singleton.  There must be the way to restrict enums to create a single instance irrespective of number of ENUM Constants.

Otherwise I can definately create the singleton object using class by creating just a single object of that class in the same way I create the single ENUM constant, without writing any additional code of restricting that class?

What's your say?

Hi Ranchers,

It is said that Enum singletons are the best way way to create singletons.

How ever I have one doubt.

Writing Enum Singleton is very simple.


and we access it in the following way,



If we write two or more Enum Constants like:

doStuff() is accessible by all 3 INSTANCEs?

there are 2 possibilities:

1) 3 different Instances are created
2) Still at any point of time, irrespective of number of constants, only single instance is created?

If the 2nd possibility is true, then its a true singleton.

but if 1st possibility is true, Its like we are creating just one instance of the ENUM and saying its a singleton.

There should be a way to restrict the no of constants in the ENUM, to one and only one and not more than one to make the ENUM a Singleton.

I request your opinion on the same.


Also if there is anything better other than AWS kindly suggest. IBM BLUEMIX, AWS, ORACLE CLOUD, OPENSHIFT, AZURE, GCP, Salesforce etc.. Whichever cloud technology certification is the hottest in the market kindly suggest.

Hi Ranchers,

If anybody is AWS certified Devops professional, I request you please help me with the detailed preparation approach.

Where should I start? Which path to follow? Etcc..
Is this certification really valuable in the market?


Thanks for your reply Stephan.

It is using Spring platform, but we are not using Spring Security.

What we are doing is explained in brief:

Everytime the user logs in, the User credentials are verified from db and JWT tokens are sent back to user.
Every subsequent request which is not the login request is intercepted by the spring HandlerInterceptor which does the job of verifying the tokenstring, parsing the claims.
If claims are formed succcessfully, the request is processed further else it is not.
We are using https request..!

So now I want to understand why would I have to integrate OAUTH2, OpenID and Spring Security,  what are the advantages of using each.

Apart from above if anything is found more secure please suggest.

I want to make REST API Ultra secure.

Please help me out for the same.

1 year ago
Hi Ranchers,

I am currently working on a Security POC where in we are using JWT for token based security
This POC later will be integrated later in my actual project.

What are the best strategies to make my REST calls and REST API secure?

Actual Project already have OAuth 2 Token based Security.

I am already using HTTPS Protocol.

Request you to help me with the same.


1 year ago
Hi Ranchers,
I am interested in learning functional programming languages.
However I am not able to get the complete list of Functional Programming Concepts and languages that support them.
Haskell /Lisp are pure functional languages.
Smalltalk is Pure OOP.

However, out of the newer languages,

Scala, Clojure, Kotlin, Groovy, Python, (Javascript/Ecmascript/Typescript/Coffescript/ClojureScript/Dart) , Go, Erlang, Elixir, Solidity (Ethereum)

Some of the features may be /may not be supported by one or more of the above languages.

I am trying to classify which functional/OOP features of pure languages are supported by all of the above languages.

OOP Pillars:

Abstraction, Encapsulation, Inheritance, Polymorphism, Objects, Cohension and Coupling.

Functional programming :

Side Effects, High Order Functions, Lambda Expressions, IO, Immutability, Function Currying, Mixins, Closures, ApplicativeFunctors, Monads, Monoids.

Apart from above concepts, what are the other concepts which will complete the list, which concepts did I miss from the list?  Request a complete list of Functional Programming Concepts.

Also I have heard about Reactive Programming. What is it good for and when to and when not to use languages ?
Reactive Programming Languages :
RxJava, RxScala, RxJs, ReactiveIO

When should we use which languages(OOP/ FP/Reactive) ?

As far as I am aware:

Scala/Python/R/Matlab:  BigData (Scala Prefered for performance/Python prefered for Maths libs and simplicity)
Kotlin/Java:  Android (Kotlin prefered)
Clojure : AI/ML/Microservices
Go/Elixir/Erlang : Concurrency and Parallel Processing.
Solidity/Serpent : Blockchain
Javascript /typescript /ecmascript /coffescript/ClojureScript/Dart /Webassembly:   Client Side.
Groovy/Ruby: ?
C/C++/Rust/Arduino: Low Level/ Hardware/ Embedded/IOT
Objective C/Swift :IOS

If I have to choose one best language (What should I choose?)
May be (Scala/Kotlin/Clojure/Erlang/Rust/Go)

I think Clojure is the best choice which fits the bill. (Good for BigData, Microservices, AI/ML. Concurrency and Parallel Programming/Mobile/Blockchain/Web(ClojureScript)

But job market is not indicating any signs for Clojure growth. Don't know why?
It's good for Scala/Golang.

I know these are too many questions, but request your help and opinion.
Help is always appreciated.



Hi Ranchers,

Why would I migrate my current website to Liferay 7 CMS?

What are some great and attractive features of Liferay 7.x or Liferay DXP over other CMS?

Request you all to help me understand them.

2 years ago
I prefer both Videos as well as Books.

First of I listen to the Video Tutorials, where I become really choosy.  Look at the contents, see to it that we can get started with.
After we completing the video tutorials, once I get the overview of the topic, I use books to get in-depth knowledge of the same.

If there are further books and videos on each sub-topic, I follow the same way as above to get more in-depth knowledge.

2 years ago