The code Let’s consider a simple function that checks for equality of two passwords, and it throws an error when the first one is not provided: export default function samePasswordsValidator(password, otherPassword) { if (!password) { throw new Error("no password given"); } return password === otherPassword; } Try-catch idiom (bad) When testing the code that throws exceptions, one immediately comes up ...
Read More »How we can leverage Artificial Intelligence to Automate Software Application Testing
Today, saying that a lot of hype surrounds Artificial Intelligence would be an understatement, as we see the term associated with a plethora of new products and technologies. Much of it is fluff, as is the case with any new and booming technology, but the rest of it are really specific use cases where AI truly shines. But what exactly ...
Read More »Simple Things That Are Actually Hard: User Authentication
You build a system. User authentication is the component that is always there, regardless of the functionality of the system. And by now it should be simple to implement it – just “drag” some ready-to-use authentication module, or configure it with some basic options (e.g. Spring Security), and you’re done. Well, no. It’s the most obvious thing and yet it’s ...
Read More »JavaScript Master Class
Everything You Need to Know to Become a JavaScript Developer Hey fellow geeks, This week, on our JCG Deals store, we have another extreme offer. We are offering a massive 89% off on JavaScript Master Class. Get it now with only $10,99 instead of the original price of $99. JavaScript is the web’s most popular programming language and an absolute ...
Read More »The final days of finalizers in Java
If you are developing in Java long enough, you are surely aware of the Object::finalize() method and the concept of the finalizers in general. protected void finalize() throws Throwable ... Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. A subclass overrides the finalize method to dispose of ...
Read More »Service to Service call patterns – GKE with Anthos Service Mesh on a single cluster
This is second in a series of posts exploring service to service call patterns in some of the application runtimes on Google Cloud. The first in the series explored service to service call patterns in GKE. This post will expand on it by adding in a Service Mesh, specifically Anthos Service Mesh, and explore how the service to service patterns ...
Read More »HTTP – Content negotiation
With HTTP, resources are identified using URIs. And a uniquely identified resource might support multiple resource representations. A representation is a specific form of a particular resource. For example: a HTML page /index.html might be available in different languagesproduct data located at /products/123 can be served in JSON, XML or CSVan avatar image /user/avatar might available in JPEG, PNG and ...
Read More »KeepSolid Private Browser: Lifetime Subscription
Enjoy Lightning-Fast Browsing Under the Radar with AES-256 Traffic Encryption & Unlimited Connection Speeds Hey fellow geeks, This week, on our JCG Deals store, we have another extreme offer. We are offering a massive 42% off on KeepSolid Private Browser: Lifetime Subscription. Get it now with only $29 instead of the original price of $50. Make your web surfing safe ...
Read More »KivaKit XML Streaming
KivaKit XML Streaming Since Java 1.6 in 2006, Java has had a built-in XML streaming API in the package javax.xml.stream. This API is known as StAX (Streaming API for XML), and it is a very efficient “pull parser”, allowing clients to iterate through the sequence of elements in an XML document. Other approaches to working with XML are event-handling ...
Read More »