5 Software Developer Competencies: How To Recognize a Good Programmer

A geek programmer acquires technologies like shiny tools in a utility belt. But every technology is simply a collection of patterns expressed in a language, and most patterns are not new; if we understand the patterns, we can readily understand any technology that embodies them.

At various times in my life, I’ve geeked out on programming, but I don’t think that’s the hallmark of a good developer. What could be wrong with a talented developer who gives 110% creating clear, accurate maintainable code from 9 to 5, enjoys lunch while talking about anything but work, and goes home to a life unleashed from a keyboard?

Spring Boot vs Eclipse Micro Profile: Resident Set Size (RSS) and Time to First Request (TFR) Comparative

In this article, we’re going to compare some essential metrics of web applications using two different Java stacks: Spring Boot and Eclipse Micro Profile. More precisely, we’ll implement the same web application in Spring Boot 3.0.2 and Eclipse Micro Profile 4.2. These releases are the most recent at the time of this writing. Since there are several implementations of Eclipse Micro Profile, we’ll be using one of the most famous: Quarkus. At the time of this writing, the most recent Quarkus release is 2.16.2.

This mention is important regarding Eclipse Micro Profile because, as opposed to Spring Boot, which isn’t based on any specification and, consequently, the question of the implementation doesn’t exist, Eclipse Micro Profile has largely been adopted by many editors who provide different implementations, among which Quarkus, Wildfly, Open Liberty and Payara are from the most evangelical.

Building a Real-Time App With Spring Boot, Cassandra, Pulsar, React, and Hilla

When it comes to managing large amounts of data in a distributed system, Apache Cassandra and Apache Pulsar are two names that often come up. 

Apache Cassandra is a highly scalable NoSQL database that excels at handling high-velocity writes and queries across multiple nodes. It is an ideal solution for use cases such as user profile management, product catalogs, and real-time analytics. 

Liquid Web Review

Liquid Web provides managed hosting for Linux and Windows operating systems. Founded in 1997 by a 16-year-old high school student named Matthew Hill, Liquid Web has evolved into a web hosting powerhouse. 

Companies can pick from a range of hosting packages with Liquid Web. Whether you need cloud, VPS, dedicated, WordPress, or VMWare private cloud servers, Liquid Web has you covered. With its privately owned data centers, Liquid Web offers top-notch security to enterprise brands. 

Liquid Web logo

Liquid Web Compared

While Liquid Web didn’t make our top list, one of its subsidiaries, Nexcess, did. But our favorite cloud hosting service of all is the affordable and versatile Kamatera. Try Kamatera with a 30-day free trial today

  • Kamatera – Best for affordable versatility
  • Hostinger – Most bang for your buck
  • Scala Hosting – Best cloud hosting for custom resource allocation
  • Cloudways – Best customizable managed cloud hosting
  • HostGator– Best cheap cloud web hosting
  • Nexcess – Best cloud hosting for ecommerce sites
  • DreamHost – Best cloud hosting for developers
  • SiteGround – Best cloud hosting for scaling resources
  • A2 Hosting – Fastest cloud web hosting
  • InMotion – Best cloud hosting for small businesses

Take a deep dive into each of these favorites in our review of the top cloud hosting software

About Liquid Web

Liquid Web offers managed hosting on dedicated, VPS, and private cloud hosting servers. Its cloud-dedicated, bare-metal servers can handle a range of needs. The standard plans can host small websites and apps. The high-performance plans easily handle databases, ecommerce storefronts, and companies with multiple websites. You can add managed email and HIPAA compliance to your plan for an extra fee.  

All plans come with 24/7/365 customer support from Liquid Web’s renowned customer service team, the Most Helpful Humans in Hosting®. Acronis Cyber Protect backups are available to protect your data. 

Liquid Web Health and Stability

Since it’s been around for over 25 years, Liquid Web has a track record for weathering all the changes that come with the passage of time. In 2015, founder Matthew Hill sold the company to Madison Dearborn Partners. A new management team was brought in, with new CEO Jim Geiger at the helm. Geiger and the new CTO and COO, Joe Oesterling and Carrie Wheeler, respectively, also invested in Liquid Web. 

This management team continues to lead Liquid Web today. Since the 2015 sale, Liquid Web has added a range of services, including managed WordPress and WooCommerce hosting, managed business email, VMWare Private Cloud, and Acronis Cyber Protect backups.

As far as I’m concerned, Liquid Web is a healthy, stable company with dedicated leaders and ever-improving products. 

Liquid Web Pricing

Liquid Web provides customers with a range of products and services to choose from, so the pricing varies. You can also work with the sales team to create a custom package that fits your business’s needs.  

Liquid Web Pricing Structure

Each of Liquid Web’s 14 core products comes with a unique starting price. The lowest starting price is $13.30 monthly for managed WordPress and WooCommerce sites, and the highest is $1,498 monthly for database hosting.

Remember, these are just starting prices. Each product has several plan options with different prices and features. It’s a little overwhelming if you aren’t sure where to start. We recommend starting at the product overview page and clicking on the service you need. 

Liquid Web Pricing Comparison

Let’s take a look at how Liquid Web’s cloud-dedicated plans compare with Kamatera and Hostinger. A standard cloud-dedicated server starts at $149 a month with Liquid Web. With Kamatera, pricing varies based on the type of server, data center location, vCPU processors, RAM, SSD storage, operating system, and add-ons. 

This makes it challenging to compare the two. But Hostinger offers highly affordable cloud hosting plans that start at just $9.99 a month. It comes with 3 GB RAM—a lot less than Liquid Web’s base 16 GB—and 2 CPU cores compared to Liquid Web’s 4. 

Still, at ten bucks a month, it’s hard to beat the low Hostinger prices. Plus, you get a website builder, a free domain name, daily backups, and unlimited bandwidth with any Hostinger plan. Liquid Web’s bandwidth only goes up to 5 TB on each of its cloud-dedicated plans. 

For LiquidWeb’s VMWare Private Cloud, pricing begins at $510 a month. As with Kamatera, you can pick only the resources you know you’ll use and scale up as needed. 

Liquid Web Trials and Guarantees

Liquid Web doesn’t offer trials. If you pay for a monthly plan, however, you can get a refund if you’re unhappy with your purchase. Annual plans are not guaranteed. 

Liquid Web Cloud Web Hosting Review

Liquid Web provides cloud-dedicated and VMWare-powered private cloud hosting. It also offers managed WordPress and WooCommerce hosting through its subsidiary, Nexcess. 

If you take a peek at the brands on our list of the top cloud web hosting software, you’ll see that while Liquid Web didn’t earn a spot, Nexcess did. To make things more confusing, Liquid Web includes WordPress and WooCommerce cloud hosting on its list of products. But when you click on these services for more information, you’ll see that Nexcess offers them. Which is technically part of Liquid Web…but also not. 

What Makes Liquid Web Cloud Web Hosting Great

A screenshot of the VMWare Hosting product homepage within Liquid Web.
Liquid Web offers VMWare Private Cloud Hosting for businesses of all sizes.

Storage Limits: Liquid Web comes with higher storage limits than some of its competitors. And if you approach your storage limits, the Liquid Web team adds more space for an extra fee. It’s essentially a storage expansion add-on. With Liquid Web, you can scale effortlessly as your business grows. 

Bandwidth: Even though many of Liquid Web’s products are capped at 5 terabytes of bandwidth, users find it’s more than enough. 

Uptime: Liquid Web guarantees 100% uptime. If faulty hardware causes an outage, Liquid Web guarantees that things will be up and running within 30 minutes. If they’re not, users can receive a credit worth 10 times the amount of actual downtime recorded by the Liquid Web system. The company offers similar guarantees for live chat, help desk, and phone calls. See the details in the SLA

Customer Support: It’s clear to Liquid Web users that the customer service team is dedicated to upholding its title as the Most Helpful Humans In Hosting®. You can reach a live agent 24/7, and the team will do everything it can to get you back on track. If your live chat or phone call isn’t answered within 59 seconds, you’ll get hosting credits for each second and minute your call or chat goes unanswered.

Where Liquid Web Cloud Web Hosting Falls Short

A screenshot of the VMWare Private Cloud hosting services page on Liquid Web.
Liquid Web is a solid choice for many businesses.

Affordability: Even Liquid Web’s most basic cloud hosting plans cost significantly more than competitors like Hostinger. Its managed WordPress and WooCommerce plans are about what you’d expect to pay, though. But again, these are offered through Nexcess, not Liquid Web–even though Nexcess is Liquid Web. 

User-Friendly Interface: Users report that Liquid Web’s interface is clunky and confusing to navigate. Fine-tuning the interface for user-friendliness would be well worth the trouble on Liquid Web’s end.

Shared Hosting: Part of the reason why Liquid Web is pricier than some competitors is that it doesn’t offer shared hosting. This is a drawback for would-be users who want to reap the benefits of Liquid Web’s managed hosting—but can’t afford a private cloud server. 

Website Building: Even though Liquid Web offers website building through its managed WordPress and WooCommerce plans, these are technically offered through Nexcess. Liquid Web itself doesn’t come with a proprietary web builder like some of its competitors do. 

Liquid Web Cloud Web Hosting Compared

Our favorite Liquid Web alternative is Kamatera, which you can learn more about on our list of the best cloud web hosting platforms.

  • Kamatera – Best for affordable versatility
  • Hostinger – Most bang for your buck
  • Scala Hosting – Best cloud hosting for custom resource allocation
  • Cloudways – Best customizable managed cloud hosting
  • HostGator– Best cheap cloud web hosting
  • Nexcess – Best cloud hosting for ecommerce sites
  • DreamHost – Best cloud hosting for developers
  • SiteGround – Best cloud hosting for scaling resources
  • A2 Hosting – Fastest cloud web hosting
  • InMotion – Best cloud hosting for small businesses

Liquid Web Virtual Private Servers Review

Even though Liquid Web didn’t make our list of the best cloud web hosting, it did earn a spot as one of our favorite VPS hosting providers. The VPS plans start at $59 a month, which is more affordable for many than the $159 you’ll pay for a base cloud web hosting plan. 

Plus, its memory and storage muscles are just as strong in the VPS plans as they are in the cloud hosting plans. Here’s how it compares to our other favorite VPS services: 

Final Verdict

Liquid Web offers leading-edge cloud web hosting and VPS services. It’s got a responsive customer support team and impressive service-level guarantees. It has enough storage for the biggest companies—and then some. All in all, it’s a great choice for those who can afford it. 

Smaller companies will benefit the most from Liquid Web’s VPS plans. The Liquid Web-Nexcess managed WooCommerce and WordPress services are worth the price, too. 

File Uploads for the Web (1): Uploading Files With HTML

Today we are kicking off the first article in a series all about uploading files to the web. In this article, we’ll start with the basics of using HTML. The full series will look like this:

  1. Uploading files with HTML
  2. Uploading files with JavaScript
  3. Receiving file uploads with Node.js (Nuxt.js)
  4. Optimizing storage costs with Object Storage
  5. Optimizing delivery with a CDN
  6. Securing file uploads with malware scans

Domain login with exchange online

Hi has anyone seen an error like this before I believe it has to do with logging into a page using domain credentials but our logins have been converted to exchange online (PHP Fatal error: Uncaught TypeError: ldap_get_dn(): Argument #2 ($entry) must be of type LDAP\ResultEntry, bool given in /var/www/html/folder/external/ldap.php:26\nStack trace:\n#0 /var/www/html/folder/external/ldap.php(26): ldap_get_dn()\n#1 /var/www/html/folder/login.php(141): _ldap_login()\n#2 {main}\n thrown in /var/www/html/folder/external/ldap.php on line 26,)

Loading Pandas DataFrames Into QuestDB

In this article, learn how to improve your time series analysis capability by using the QuestDB Python package to ingest Pandas DataFrames.

Introduction

Pandas is an open-source data analysis and data manipulation library for Python that has become an essential tool for data scientists and analysts. It provides a simple and intuitive way to manipulate data, making it a popular choice for data analysis tasks. 

What Are SLOs, SLIs, and SLAs?

Site reliability engineering (SRE) is the practice of applying software engineering expertise to DevOps and operations problems. SRE, which was popularized by the 2016 publication of Site Reliability Engineering: How Google Runs Production Systems, often means proactively writing code and developing internal applications to combat reliability and performance concerns. 

In SRE, service levels describe services provided to users within a given period of time in measurable terms. Service level objectives (SLOs) are the goals set for the availability expected out of a system. Service level indicators (SLIs) are the key measurements and metrics to determine the availability of a system. Service level agreements (SLAs) are the legal contracts that explain what is agreed upon and what happens if systems don’t meet SLOs.

Spinnaker vs. Argo CD: Best Tools for Continuous Delivery

Intro to CD

Adopting containers has been a common strategy for enterprises to roll out new application changes quickly, deploy efficiently, and run applications securely.

Today, to achieve those goals, many enterprises are now adopting continuous delivery (CD) in order to deploy changes into production quickly, frequently, and safely.

JWT Authentication and Authorization: A Detailed Introduction

In this article, we will discuss authentication and authorization using the JWT token and different cryptographic algorithms and techniques. So, we will be looking at the following things one by one:

  • Introduction of JWT Token
  • Why JWT Token?
  • Structure of JWT Token
  • Client-Server Scenario With JWT Token
  • Client-Server Scenario With JWT Refresh Token

Let’s start one by one with the basics and real-time scenarios.

Uber System Design

The popular implementations of the ride-hailing service are the following:

  • Uber
  • Lyft
  • Curb
  • Grab

Requirements

  • The rider can see all the available nearby drivers
  • The driver can accept a trip requested by the rider
  • The current location of the rider and driver should be continuously published on the trip confirmation

Data Storage

Database Schema

Chris’ Corner: Resizing, Conditionals, and Initials

Ahmad Shadeed recently wrote:

I like to think of CSS as a conditional design language.

It totally is! We tend to think of stuff like @media queries as the conditional part:

@media (max-width: 550px) {
  .grid {
    grid-template-columns: 1fr;
  }
}

That’s true, and new stuff like container and style queries are giving us more “conditional” stuff to work with. But it might be better to think of literally everything in CSS as conditional. Every selector you can write is conditional in some way. Just a sector like aside is conditional — it says, only style elements that match that selector. To grok CSS, you are grokking a massive set of conditions. As Ahmad indicated:

.alert p:empty {
  display: none;
}

This is a big logical if statement. IF the element is a paragraph. IF that paragraph is empty. IF it is a child of another element with a class of alert. All those IFs have to be true for the styles to apply.


You could take conditional CSS another step up though, meaning conditions by which to load the entire .css file at all.

Vadim Makeev wrote up some interesting experiments around all this. Say you do:

<link rel="stylesheet" href="style.css" media="print">

The browser is smart enough not to load that CSS file at all (unless you’re printing, natch).

You can also do this:

<link rel="stylesheet" href="base.css">
<link rel="stylesheet" href="mobile.css"
  media="(max-width: 767px)"
>

Butttttt, the browser will actually load both of those files regardless if the media matches or not. So no obvious immediate benefit, but that’s where Vadim’s research comes in. While all the files with non-matching media (queries) still load, the browser is smart enough to make the non-matching stylesheets load with a lower priority. At least in Chrome and Firefox — Safari has some bug that makes the priority levels not provide the perf benefits.

Pretty cool I think. Doing this kind of work by hand feels onerous though, I’d love to see build processes deal with it automatically.


Ya know I was scared for Mozilla & Firefox for a while. Those big layoffs in 2020 included many browser engine engineers and it seemed like it would be hard to continue to be a viable browser engine alternative without a strong team there. But I was essentially wrong. Since then they’ve shipped plenty of important web platform features at a decent pace, including the ever-important Container Queries and new color formats. Putting MDN on GitHub happened after the layoffs too and that seems like a massive thing to get shipped.

Last year WIRED asked Is Firefox OK? There wasn’t really an answer there, but some good information. We know Google provides the bulk of their income, but they showed really strong growth with their own products and services, saying 14% of all revenue was that back in 2021. They’ve clearly been trying new stuff to increase that, so things look on the right track to me.

I like to see little stories like this: Mozilla fixed an 18-year old CSS bug in the Firefox browser. So they aren’t just playing catch up, they are getting details right along the way too. Better late than never. This one was a weird bug with ::first-letter, the real ticket for doing drop caps:

They said it was kind of a bandaid for now but still cool. Speaking of drop caps though… ::first-letter was always fraught for this purpose. Much better would be to support initial-letter. C’mon Firefox, you can do it!


Michelle Barker on Resizing with CSS:

One drawback is the resize control is only positioned in the bottom right corner of the element, and it’s not possible to style it. It would be nice to have this customiseable ability, and increase the area of the resize control.

Yes!

That’s literally my opening thing in Things CSS Could Still Use Heading Into 2023. Just imagine the CodePen editors. So many things resize, and the ability to do that in HTML and CSS alone would be super sweet. But probably with JavaScript callbacks so we can do stuff like save/persist what has changed in the UI.

And ya know, that makes me think about how we only just got a scrollend event in JavaScript, maybe we should get a resizeend event too.

The post Chris’ Corner: Resizing, Conditionals, and Initials appeared first on CodePen Blog.

SQL To Find Stored Procedure Compilation Error in SQL Server

SQL Server is a relational database management system (RDBMS) developed by Microsoft Corporation. It is a powerful platform for creating, managing, and querying large-scale databases. SQL Server is used by companies of all sizes to manage, store, and retrieve data for various applications.

Apart from allowing to store and manipulate data, the SQL server system provides a set of system objects/tables that are used to store metadata and configuration information about the database engine. These are known as system catalog views. These system tables contain information about various objects within the database, such as tables, indexes, stored procedures, views, constraints, etc.

Challenges and Checklists While Migrating COTS Application to Cloud

The world is moving rapidly towards digitization with a cloud-native approach. The first step towards this journey is migrating the applications to the cloud, preferably with re-host and re-platform disposition. While custom applications are comparatively easier to migrate, a bigger challenge, analysis, and decision arises w.r.t to COTS (commercial off-the-shelf) applications. This blog discusses critical challenges and a checklist approach before one starts COTS migration. The term ‘modernization’ used here refers to replacing and enabling the legacy product with a cloud-compatible version.

Challenges and Checklists

  • Roadmap to retain/replace/retire the Product — Answers to the following queries may lead to retain/replace/retire the product and potential application consolidation and rationalization (to be run as a separate enterprise program, outside migration)
    • Are business/end users using this product frequently as a business-critical application?
    • Is this product/application being used locally or globally (the same app/product is set up in different regions/countries and being used almost the same way)?
    • Can the functionalities be addressed by another (existing) application with enhanced customization?
    • Note: the above queries are best answered by the client's business team and the client's industry domain SME.
  • Version Compatibility Verify the Product Compatibility matrix and documentation w.r.t. technology stack, compliance with the cloud platform, and ensure those can be supported in the target cloud architecture. Each cloud follows a set of security standards and policies supported level of software/technologies. Similarly, the cloud also should support various regulatory compliance w.r.t. client’s industry domain. In general, the OS, middleware, etc., are supported up to N-1 level where N is the latest GA (general availability) release of system/software component.
  • Vendor Support of Product — Check if the vendor has a roadmap for supporting the on-prem hosted product version. It also needs to be verified if the existing system requirements of the product are supported in the target cloud. This may lead to an upgrade before migration. Some vendors, as part of digital transformation, take multi-tenant and software-as-a-service approaches and may force customers to adopt the same for the product.
  • SaaS-Adoption — Does the product has SaaS, and if so, is that acceptable to the client w.r.t Data Privacy and security? Also, one should do a cost evaluation compared to a hosted solution. Verify that SaaS offering support required integration with existing interfaces as well as user accessibility (authentication/authorization) and security.
  • System Integration Landscape — The current product may use an integration style/protocol/port with internal/external systems. As the product is now planned to be on the cloud, the same protocol /port may not be supported as per security standards and may need a separate cloud-specific port. Sometimes, this may lead to a re-design of the product itself which is rare to achieve within the timeline. Most of the time, in this scenario, exceptional approval has been achieved from CSO (chief security office) for existing ports to be allowed over the cloud.
  • Resource Optimization — For business-critical applications, it’s an important architecture decision to have a cost-effective approach towards scalability, availability, improved fault tolerance, and faster deployment. Moving to container will help in all these aspects; however, the COTS product image needs to be ‘lightweight’ and secured. So, one needs to check if the product can be hosted on a container and if has a secure image registered in an official registry approved by the product vendor. Migrating to a container-based approach require extensive integration effort and security/penetration testing. 
  • File-Based Integration — The existing and target configuration of file share depends on the protocol supported (SMB, NFS, DFS, etc.) and whether both systems (publisher and consumer of files) within the same network domain. In target, the domain of participating systems will be different networks by the underlying hypervisor. This also needs specific ports of communication to be opened between the cloud and on-prem.
  • Migration Path Any product migration can choose one of two paths —1) Migrate the new product to the cloud directly, 2) Upgrade the product on-prem and then migrate to the cloud. The first option poses a higher risk in terms of performance and integration as the newer/upgraded version is likely to have different interfacing, port, and technology. The initial upgrade, system, integration, required testing, and compatibility must be done on-premise with all ecosystems and get business approval. This will drastically reduce product testing and integration effort while migrating to the cloud. 
  • Implementation RACI Once the target version of the product is decided for migration, it becomes critical to get the right SME and establish a RACI (Responsible, Accountable, Accountable, Informed) matrix. While setting up the infrastructure and required network can be done by SI (service integrator) and the cloud team, the installation, upgrade, product installation configuration, and integration need to be carried out by the product/COTS SME, who should be from the product vendor team. Generally, the SME has to be engaged from the initial conversation of the upgrade-migrate path and continue to be part of core implementation team. The SI, through the client, must raise a risk of SME availability and timeline and mitigate by the product team’s confirmation on this. For SaaS adoption of the product, the product SME must be included for integration as well as security architecture/design. 
  • Users Access Mechanism The legacy version of many COTS products requires an older way of accessing the product — through additional security software like Citrix, F5, Array Network, FortiClients, etc. (a separate URL is used to access the application/product). This needs users' laptops/devices to install and maintain separate software, configuration, and distribution whenever required. We should look for adopting the modern version of the COTS now support https/WebAPI, which is secure and does not require an additional layer.
  • Observability and Insight As we take an application to the cloud, it is critical that the application generates the right level of traces, logs, and metrics so that cloud-native monitoring tools can capture and use for alerting and incident management. The product should be configurable to generate the right data, which will help building predictive algorithms (using AI/ML). This can provide actionable insight observability and will help taking proactive action to reduce downtime and ensure system health and uptime. So, it is important to adopt the suitable (easily configurable to send logs, set traces, levels, etc.) product version for migration/modernization target architecture.

Development of Freestyle Libre 2 App-Overview

Introduction to the Freestyle Libre 2 App

The Freestyle Libre 2 app is a mobile application that allows users to track their glucose levels using their smartphones. The app is developed for CGM (Continuous Glucose Monitoring) and is designed to work with the Freestyle Libre 2 glucose monitoring system developed by Abbott. In this article, we will see an overview of How the Freestyle Libre 2 app was developed and which multiple languages were used in the process and launch.

Programming Languages Used in Developing the App

To develop the Freestyle Libre 2 app, multiple programming languages were used, including Java, Kotlin, Objective-C, and Swift. These languages were chosen because they are commonly used for developing mobile applications on the respective platforms, including Android and iOS.

How to Engineer Your Technical Debt Response

The Southwest Airlines fiasco from December 2022 and the FAA Notam database fiasco from January 2023 had one thing in common: their respective root causes were mired in technical debt.

At its most basic, technical debt represents some kind of technology mess that someone has to clean up. In many cases, technical debt results from poorly written code, but more often than not, it is more a result of evolving requirements that older software simply cannot keep up with.

Hierarchy in MDM: What and Why

What Is Hierarchy?

In master data management, hierarchy management is an essential component. It allows a comprehensive view of different domains within an organization. It links the relationship among customers, suppliers, products, locations, and other entities within the business. 

Hierarchy Used in Different Master Data Domains

Hierarchy in MDM is used in several domains, such as party master data, location master data, and product master data. Party master data includes the company, business contacts (customers, suppliers, and related business partners), and individuals (employees, customers, and contractors).  It deals with customers, providers, and other business entities. The accounts are settled in the department, legal representatives, and parent organization sequence at the national level; and then at the global level. 

Location master data occupies the external hierarchies around the globe ranging from continents to the down level to streets and buildings. In contrast, internal hierarchies include geographies such as sales districts and different regions in the organization. Product master data is related to external and internal products. External products may be UNSPSC, HS, ETIM, etc. Contrarily internal products are linked to reporting, purchasing, and sales of products, etc.