Wouldn't using Koltin or Scala, which benefit from the engineering effort of JVM and arguably its ecosystem solve this problem ? (Since NULL is not idiomatic in either language)
Yes and no : I have been using kotlin for a while for Android.
Currently our codebase is 75% kotlin.
Issues arose at the interface between java and kotlin. Unless there are @Nullable @NonNull annotations (and they need to be truthful), the kotlin compiler cannot know the nullability of something coming from a java method.
It can be pretty pernicious : if you use some java written libraries like Moshi (json parsing), it can also lead to crashes : IIRC if you declare a moshi generated property to be non null but it is absent from the json, it will generate an object with null, creating a crash.
Still, null is now an anecdotal issue in Kotlin. The Android framework team is working on annotating all their APIs with the corresponding nullability annotations and more and more JVM libs are also working on handling it gracefully.
It was never a huge issue to begin with even in java, just pretty cumbersome to have to add annotations everywhere and have to add some policies like 'no null collections, only empty' in a codebase to have sane handling.
It's not idiomatic, but it's still possible. I've got NullPointerExceptions while writing fairly complex, modern Scala, so it's about as possible as with Java in my experience.
So consensus largely is - probability of fraud is higher in adult entertainment business, downstream processors either charge exorbitant fees or altogether refuse to accept such payments, to mitigate having to deal with chargebacks.
My question is, Why is chargebacks still a thing ?
Why hasn't the US adopted 2F Auth for payments ?
With advent of smart phones we can have reliable identification based on two factor authentication, by sending a text message to mobile number registered with the bank, or even go further with text + fingerprint / text + password. The odds of fraud with such system would be minuscule.
Is there any reason apart from banks being greedy and the government being hand in glove with them ?
It actually runs deeper - the reason 'probability of fraud is higher' may as well be called 'probability of buyers remorse' is higher. In the industry we call it friendly fraud. When a customer finishes what he came to finish doing, the regret of spending 50 bucks can often result in a call to the bank. Some credit card providers make it even easier you can just click 'dispute' online and pretend like it was fraud to get a refund.
Interestingly, 3D Secure (verified by visa etc) was created to solve the issue of friendly fraud, but whats mystifying is it applies for all categories except for Adult.
Of course, this isn't the whole story, there's other factors like aggressive affiliate marketers - but it's a big part of it.
Please do look outside US market. In India two factor authentication via a text message to bank registered mobile number of the customer is mandated by law. Chargebacks here are virtually unheard of, probably most customers here don't even know what a 'chargeback' is.
The US is keeping its banking system primitive intentionally, as the government is hand in glove with greedy banks. Sending money whether to a business or an individual is free in India, for both parties.
Not having a process for chargeback removes buyer protection. This will make people risk averse and only deal with big and trusted companies like Amazon and Flipkart.
But in the US, I give my card to many small businesses knowing that I've chargeback as a tool. The businessess also ensure quality and delivery timing because payment processor is closely monitoring their chargeback rates.
One friend told me that in India, banks can freeze your account without a court order, I am not talking about a loan or credit card default.
Sending money is never free, there is always a cost associated with the activity. So which exact transaction is free?
Can you please elaborate on how someone who is currently IT Staff become a true software engineer ?
Apart from work experience alone, because that would be a chicken and egg problem.