How to Validate a Domain Name in Java

A domain name is used to represent online entities and provide users with access to websites that can help them accomplish goals like purchasing products, finding information, and connecting with others. As the internet a tool universally used in commerce throughout business practices, it is important to know what sites you are accessing, as well as any threats that may exist from those domains. 

With phishing attempts and other cyber threats on the rise, online security should be a key part of business planning. Preparing for these risks will help prevent the theft of information and protect your organization and client-base. Having a plan in place will lend your business credibility and reliability in the eyes of your users and partners, who will know that they can trust you with their sensitive data.

Implementing Enterprise Integration Patterns With MuleSoft: Message Routing

Introduction

In the integration world, there are a number of Integration patterns that have been identified and used during our implementation. Each implementation might be using one or more integration patterns.  

There are few universal integration patterns that are most commonly used, and it is a general solution to some business problems or integration design problems that reoccur repeatedly. 

Mapbox GL JS Is No Longer Open Source

Mapbox GL JS, formerly an open source JavaScript library for interactive, customizable vector maps, has adopted a proprietary license in its recent version 2 update:

  • mapbox-gl-js is no longer under the 3-Clause BSD license. By upgrading to this release, you are agreeing to Mapbox terms of service. Refer to LICENSE.txt for the new licensing terms and details. For questions, contact our team at https://support.mapbox.com.
  • Beginning with v2.0.0, a billable map load occurs whenever a Map object is initialized. Before updating an existing implementation from v1.x.x to v2.x.x, please review the pricing documentation to estimate expected costs.

Versions 1.x remain under the 3-Clause BSD license, but Mapbox will only be investing in developing new features for the proprietary licensed version 2.0+. This news came as a surprise to many engineers who have built products on top of this previously open source library.

“This move has produced shockwaves in the geospatial industry,” Javier de la Torre wrote on the CARTO blog. “Many organizations are using Mapbox GL JS directly or fork from it. This library is responsible for the visualization of the so-called basemap, the cartography layer that underpins most maps. Previously Open Source, MapboxGL is a great solution, and could be used with many different data sources, so it became the de facto way to render basemaps.”

Mapbox powers all sorts of maps for high profile websites like CNN, The New York Times, Ancestry, Strava, Shopify, Facebook, and more. It is also used by WordPress.com and Jetpack for the Map block. The library is used in many plugins on WordPress.org, some with tens of thousands of users. Developers using versions 1.x will want to be aware of the future of the Mapbox GL JS library.

“Mapbox’s decision this week to release a brand new version of Mapbox GL JS and keep it proprietary stunned me,” Azavea product specialist Joe Morrison wrote on his personal blog. “Not only was v1 already a wildly popular open source library, but Mapbox’s reputation as a prolific creator of open source software is a cornerstone of their whole identity. Describing what makes Mapbox special without mentioning ‘open source’ is like trying to describe chocolate milk to an alien without using the word ‘liquid.'”

Mapbox hasn’t formally clarified why it went proprietary with the library so speculation abounds. Morrison theorizes that cloud providers are killing the open core business model of software companies. Crunchy Data Geospatial Engineer Paul Ramsey responded to Morrison’s article, contending that Mapbox is not an “open core” company and that the business of selling location based services may not be panning out for them:

But like Google, the value proposition Mapbox sells isn’t in the software, so much as the data and the platform underneath. Mapbox has built a unique, scalable platform for handling the huge problem of turning raw OSM data into usable services, and raw location streams into usable services. They sell access to that platform.

Mapbox has never been a software company, they’ve always been a data and services company.

Mapbox employee Saman Bemel Benrud said the company is finally moving to make its products sustainable:

This change has the potential to negatively impact the developers and companies that built products on top of Mapbox GL JS, thinking its open source licensing was set in stone.

“The change says nothing about ‘open source’ in the large as a model, and everything about ‘single vendor projects’ and whether you should, strategically, believe their licensing,” Ramsey said.

“I (and others) took the licensing (incorrectly) of Mapbox GL JS to be a promise, not only for now but the future, and made decisions based on that (incorrect) interpretation. I integrated GL JS into an open source project and now I have to revisit that decision.”

Some community members have already forked Mapbox GL JS to maintain the 1.x version, but the vast majority of contributors to the original library were sponsored by Mapbox. The immediate future of the MapLibre GL fork may not include many new features, as the initial roadmap’s stated goal is “consistency and backwards-compatibility with previous releases and continued bug-fixes and maintenance going forward.”

A lengthy discussion on Hacker News drew a response from former Mapbox engineer Tom MacWright, who wrote the company’s open source policy as a founding member of the team.

“I won’t get into all the context, but I think we should consider whether a community without contributors is a community,” MacWright said. “GL JS never had major active contributors outside of the company, and there are no self-funded webgl experts with lots of time who are ready to maintain a fork.

“OSS, we hoped, was about enabling people and unlocking people’s ability to collaborate. It turns out that in 2020, it’s mostly helping companies and getting nothing in return. That’s not a dynamic you can build a sustainable business on.”

The MapLibre GL fork may gain some momentum and emerge as a viable alternative to Mapbox’s closed source library, but it will take time to see how well it is maintained. In the meantime, the existing version 1.x can meet most users’ needs. Mapbox has burned through a lot of good will with this controversial licensing update, which some perceive as a “bait and switch” offense. Rebuilding community trust, after removing the freedoms granted by the previous license, will be an uphill battle.

API Security Weekly: Issue #114

This week, we check out the API aspects of the recent SolarWinds and PickPoint breaches. Also, we have a review on how to shift API security left with GitHub and 42Crunch and an introduction video on GraphQL security.

Breach: SolarWinds

The SolarWinds hacking reported this weekend was not API-related as such. It was a supply chain attack in which hackers (likely a state actor) managed to add their backdoor in one of the DLL files of SolarWind’s IT monitoring and management software, Orion. After a dormant period, the malicious code would contact the command and control center (C2) to get further instructions and execute them. This was in turn used against SolarWinds’ customers, including multiple US government agencies.

Using PostgreSQL Aggregate Functions in YugabyteDB to Analyze COVID-19 Data

An article in the Washington Post, published on 23-Oct-2020, argues the case for wearing a mask while the COVID-19 pandemic continues and refers to data from Carnegie Mellon’s COVIDcast, an academic project tracking real-time coronavirus statistics. Look for this:

There’s a simple statistical measure of correlation intensity called 'R-squared,' which goes from zero (absolutely no relationship between the two variables) to 1 (the variables move perfectly in [linear] tandem). The 'R-squared' of CovidCast’s mask and symptom data is 0.73, meaning that you can predict about 73 percent of the variability in state-level COVID-19 symptom prevalence simply by knowing how often people wear their masks.

Can DevOps Honestly Release Daily Cycles?

Is it realistically possible for DevOps teams to reach daily release cycles? This feat may only be possible with automated testing...

Test automation is the wave of the future in quality assurance testing. Done properly, it can alleviate human errors, improve product quality, and drastically speed up the delivery of products.

The Growing Importance of Endpoint Security

What to make of this world driven by technology? Is it a benefit or a problem for society? The truth is, it’s both.

While technology is the backbone of greater innovation, growth, and efficiency, it also opens the road to potential security breaches and other types of cyber attacks.

[Interview] Steve Klabnik, Rust Core Team Member

Introduction

Steve Klabnik is a member of the Rust core team, an active open source contributor, and author of The Rust Programming Language, Rails 4 in Action, and Designing Hypermedia APIs books. In 2012 and 2016, we invited Steve to speak at the RailsClub (now RubyRussia) conference. Since then, Steve has been working on Rust a lot, did a lot of interesting things and we realized that we should definitely interview him once again!

We sat down with Steve to hear from him first-hand about his professional activities at the moment, the design success of Rust, a little about the "full-stack" development hype, and overcoming burnouts.

Key Application Metrics and Monitoring for Developers

In the past, code and infrastructure were handled by completely separate organizations. Developers wrote code, while IT set up servers. Developers fixed bugs, while IT handled infrastructure maintenance. However, with the trend towards DevOps and the increased availability of Platform-as-a-Service (PaaS), there is an increasing overlap between Dev and IT. For developers, this can mean taking care of infrastructure, a task that is quite different from standard app dev.

As a full-stack developer, I've been pushed to handle more and more infrastructure-related responsibilities, including monitoring production applications. We just went live for HP Foundation at https://www.life-global.org with our Next.js-based learning management system. As a dev team lead, I have been researching how to best support and maintain the application through metrics.

A Simple Implementation of Remote Configuration For SwiftUI

First of all, a quick definition of Remote Configuration: It is a way to customize the behaviour of a desired system based on certain parameters that are stored on a remote location.

Many well-known libraries will give you this feature, and many of us are tempted to just integrate this big, complex, and unknown dependency without evaluating the real cost of it. 

Clean Code: Method Arguments Must Be Crisp and Encapsulated

While writing methods, please pay close attention to the method arguments. This is the one area where the method assimilates the foreign body into its core body. Foreign material is always dangerous, you do not have any control over it, but as an owner of a method, you can put a defensive mechanism aka validation, or the anti-corruption layer of your method.

Tip 1

Always put validation on the input argument, you can use java annotations to do the validation.

Your Helm Zoo Will Kill You

This article is controversial. It aggressively questions helm-charts and current dev workflow designs, and I’m well aware that not everyone will like this. Let me be clear before we dive in: this is an enterprise view. It’s a view that is relevant to team sizes of 20 developers onwards. If you’re a smaller dev shop that builds a few apps, this doesn’t apply to you, and you should just keep things as is. But for those of you that are working at scale or that are about to scale: watch out. Your helm-chart zoo will kill you. Maybe not tomorrow but almost definitely next year.

Working Change by Change With kubectl

At first, they created kubectl-kangaroo, and everyone could do everything the way they wanted. However, the challenge with just using kubectl is that you are working change by change. That’s fast but makes it impossible to track what has actually changed in your cluster. One super clever person went ahead and managed everything in Kubernetes manifests and then versioned them in Git. Dope, my friend, dope.

Ultra Low Latency Video Streaming and 7 Use Cases

Especially with COVID-19, people started to demand more live streams. But especially in some live streams which we will talk about in the rest of the blog post should be really 'live' to satisfy the audience. Let’s start with how popular live streaming is. According to the Cisco Annual Internet Report; Increasing internet connection speeds will enable a higher resolution to live video streaming and live video streaming will become popular in every field.

With the popularity of live streaming, the need for ultra low latency video streaming is increasing day by day.

Top 9 Web Security Tools to Secure Your App/System

Security testing is used to identify the unapproved users within some information system and make the data secure. A conscientious and well carried out security testing can help the data to be secure and remain inaccessible to the malicious viruses and threats that might want to break through it. Below are the 9 web security tools that you can use to identify unauthorized invasions into your system.

1. Sucuri

Some of the features that this tool provides are remediation of security, deployment of protection platforms, identifying security issues, continued inspection configuration, a configuration of performance optimization, and many more.

How Low-Code Is Transforming Software Development

The role of any technology is to make the lives of humans easy. One of the biggest testament of this statement can be seen in the development and adaptation of “Low-Code” Software development. With everything getting simplified with the rise of technology, the mantra of this success continues even in the developmental processes of applications and software. 

It is well-known that coding is one of the primary ways of developing software and applications. That makes app development restricted to the limits of the developers who are writing the codes. Low Code and no-code development is going to transform how software and apps were developed till now. In this article, we will see how Low-code technology is transforming software development.