News Aggregator


Example of Pushdown Using SingleStore and Spark - 2/2

Aggregated on: Mon Dec 13 2021 14:19:18 GMT+0000 (Coordinated Universal Time)

Abstract In the first part of this Pushdown series, we successfully loaded our weather data into a Spark Dataframe, checked the number of rows, and then wrote the Dataframe to SingleStore using the SingleStore Spark Connector. In this final part of our query Pushdown series, we’ll see an example of Pushdown using our weather database. The notebook files used in this article series are available on GitHub in DBC, HTML, and iPython formats.

View more...

Great Engineering Teams Focus On Milestones Instead of Projects

Aggregated on: Mon Dec 13 2021 13:49:18 GMT+0000 (Coordinated Universal Time)

Milestones: The Surprise Solution to Challenges in Product Development The root of all much evil in engineering is our focus on projects. Most engineering organizations focus on delivering projects while what they should focus on is milestones.  Managing projects is hard. Companies contort themselves to do it well. Instead of playing chess, switch to checkers. milestones are an easier game, and you get better results. 

View more...

Managing Active Directory Objects With Azure AD Provider for Terraform

Aggregated on: Mon Dec 13 2021 13:04:18 GMT+0000 (Coordinated Universal Time)

The Azure AD provider for Terraform can be used to manage your Azure Active Directory resources declaratively. This allows you to do things like: Automatically provision users and make sure they belong to the correct groups. Manage Azure compute permissions via Azure AD groups. In this post, you will learn what the Azure AD Terraform provider is used for, how to authenticate and grant permissions and see examples of what you can do with it. Let’s get started.

View more...

YAKDT: Yet Another Kubernetes Development Toolkit

Aggregated on: Mon Dec 13 2021 11:04:18 GMT+0000 (Coordinated Universal Time)

This article is in line with our latest article YAKD: Yet Another Kubernetes Dashboard in which we listed several dashboard projects dedicated to managing Kubernetes clusters. In this article, we focused on development tools and we tried to highlight considerations that everyone should have in mind to correctly identify which tool is the best in which context. Every SRE, DevOps engineer, developer, and Kubernetes operator had to answer this question at least once in their life: what tool would be the best to manage my Kubernetes resources?

View more...

How To Create a NestJS Redis Microservice?

Aggregated on: Mon Dec 13 2021 10:34:18 GMT+0000 (Coordinated Universal Time)

In this post, we will learn how to create a NestJS Redis Microservice. Basically, we will learn how to use the Redis transporter. This transporter leverages the publish/subscribe messaging paradigm. This post uses the NestJS Microservice package. If you are new to the same, please refer to this detailed post about creating a NestJS Microservice.

View more...

Native-image With Quarkus

Aggregated on: Mon Dec 13 2021 10:34:18 GMT+0000 (Coordinated Universal Time)

So far, we have looked at how well Spring Boot and Micronaut integrate GraalVM native image extension. In this post, I'll focus on Quarkus: A Kubernetes Native Java stack tailored for OpenJDK HotSpot and GraalVM, crafted from the best of breed Java libraries and standards.

View more...

LinkedIn Security Vulnerability: A Lesson for Security Engineers

Aggregated on: Mon Dec 13 2021 02:04:18 GMT+0000 (Coordinated Universal Time)

Security-related controversies are not new for LinkedIn. Here's the latest one, which was discovered by a cybersecurity firm, Cyphere, in Aug 2021. As per the company's report, anyone can post jobs on behalf of any company they want, without the consent or knowledge of the original company! This means hackers can post jobs impersonating a reputed company and invite the job applications, receiving thousands of CVs on the fake email address, or redirect candidates to a malicious or phishing website!

View more...

Complex Test Data Prototyping With shapeless and Monocle

Aggregated on: Mon Dec 13 2021 02:04:18 GMT+0000 (Coordinated Universal Time)

Introduction This article describes how shapeless and Monocle libraries, along with GoF patterns and type classes derivations, can help generate complex data for unit tests easily. I'd like to ask for some patience in advance: there is going to be plenty of code because the problem I'm going to present is pretty visible after certain codebase size and domain model complexity. The System Under the Test For the sake of the article example, let's consider a Spark application for personal expenses reports calculations.

View more...

Kubernetes Version 1.23 Is Out: Everything You Should Know

Aggregated on: Sun Dec 12 2021 21:49:17 GMT+0000 (Coordinated Universal Time)

The Christmas edition of Kubernetes comes with 45 new enhancements to make it more mature, secure, and scalable. In this blog, we’ll focus on the critical changes grouped into the Kubernetes API, containers and infrastructure, storage, networking, and security. Let's start with the “face of Kubernetes”, which makes it scalable and expandable.

View more...

Why Good Communication Is Vital for Software Developer Teams

Aggregated on: Sun Dec 12 2021 21:19:17 GMT+0000 (Coordinated Universal Time)

Whether it's about viewing pull requests, communicating with other developers, stakeholders, non-technical people, or some other form of feedback, how you do it matters a lot and becomes a primary part of a software developer's career. Communication affects people, helps you to work well with your team, and increases effectiveness, which is why it is so important to communicate correctly.

View more...

How to Pinpoint and Fix Distributed Problems Across Microservices

Aggregated on: Sun Dec 12 2021 18:04:17 GMT+0000 (Coordinated Universal Time)

Microservices are separated logically but are highly dependent on each other to deliver the expected functionality. This means performance problems become distributed across multiple services and can be difficult to trace.  Gone are the days of a developer being able to just run a debugger to find problem code  — now multiple contributing factors affect the state of an application in microservices, as well as in Kubernetes environments. A testing harness that closely mirrors the production setup and incoming traffic has become a requirement for highly distributed microservices and containerized environments. 

View more...

Exploring GridGain Nebula: Cloud-Native Service for Apache Ignite

Aggregated on: Sun Dec 12 2021 18:04:17 GMT+0000 (Coordinated Universal Time)

Let's suppose that you embraced Apache Ignite's high-performance distributed database for your projects and now moving to the cloud. As part of that transitioning, you prefer using fully-managed services for your databases, including Ignite. In this article, I'll show you GridGain Nebula -- a fully-managed, cloud-native service for Ignite.  Nebula is an end-to-end solution for running Apache Ignite clusters. With Nebula, you can run scalable, performing application workloads without the hassle of operating the environment. The Nebula hosted solution offers operations as a service. The back-end team manages and operates the clusters, performs software upgrades. It also handles patching, monitoring, and provisioning. 

View more...

5 Ways to Make Sprint Retrospectives Better

Aggregated on: Sun Dec 12 2021 17:34:17 GMT+0000 (Coordinated Universal Time)

Engineering teams need to plan and organize workloads into manageable pieces and sprints are a common, helpful way of doing so. By planning sprints well and including time for not just building, but also getting it done to quality standards, teams can take on a sustainable workload and get more predictable about their schedules. However, if these sprints are not set up efficiently, you can end up feeling worn down by common issues, which sometimes could just be the symptoms of a deeper root cause. A powerful way to avoid making the same mistakes repeatedly is by doing an honest sprint retrospective – a routine part of the agile process – after each sprint. For an hour or two, all members of the sprint team meet to discuss how to make meaningful improvements to the workflow, process, and team efficiency. An efficient sprint retro can look a little like the below: 

View more...

How to Securely Commission Your IoT Device

Aggregated on: Sun Dec 12 2021 17:34:17 GMT+0000 (Coordinated Universal Time)

If you’re planning to grow your IoT business, you’ll eventually have to add new devices to your existing IoT project. This process is referred to as “commissioning” and, to be successful, you must get it right. Why? Well, if a new IoT device is introduced to a project without taking the necessary precautions, the security of that project could be significantly compromised.  Hackers can take advantage of any vulnerabilities that can come up while commissioning, and get access to your project and its data. Open ports or data that are not encrypted can be exploited to get access to your network. Therefore, you need to take it seriously.

View more...

MongoDB Basics in 5 Minutes

Aggregated on: Sun Dec 12 2021 17:04:17 GMT+0000 (Coordinated Universal Time)

MongoDB is a document-oriented database management system that does not require any predefined schema. It is considered one of the classic examples of NoSQL systems. It uses JSON-like documents and a database schema. The database is used in web development, in particular, within the framework of some JavaScript stacks such as MEAN, MEVN, MERN, which are often used by web developers as their favorite tech stacks for creating applications.

View more...

Java: Migrating From Java 8 to Java 17

Aggregated on: Sun Dec 12 2021 17:04:17 GMT+0000 (Coordinated Universal Time)

This article focuses on the features to use when moving directly from Java 8 to Java 17. If your application is still running on Java 8 in production, then It’s difficult to track the features developed after version 8 onwards but there are quite a few easy to use and extremely important features available which can be learned and implemented quickly when migrating from directly Java 8 to Java 17.  In this article I will try to highlight some of them, I will also try to highlight the versions on which the specific feature is available for us to use but not necessarily in the sequential order of release.

View more...

How To Develop Web Application Using Ruby on Rails

Aggregated on: Sun Dec 12 2021 16:34:17 GMT+0000 (Coordinated Universal Time)

Ruby on Rails, also known as RoR or simply Rails, is an open-source structure for web development in Ruby, a thing object-oriented programming (OOP) language like Perl and Python. Ruby on Rails is the super-useful better approach to foster full-highlighted web applications. With Ruby on Rails, amazing web applications that once required weeks or months to create would now be able to be delivered in a matter of days. For developing amazing web apps, you can hire ruby of rails developers on a contractual basis.

View more...

‘Tis the Season to Give Teams What They Need

Aggregated on: Sun Dec 12 2021 16:04:17 GMT+0000 (Coordinated Universal Time)

With another holiday season and a new year ahead, it’s time for organizations to reflect on the past year of explosive digital transformation and plan for new technologies and challenges on the horizon. It’s also a good time for technologists and team leaders to consider how they might better understand the different types of people within their IT organization and what can be done to break down the silos that often exist between developers, security, and operations teams.   Enterprise teams involved in application development and deployment include many different personalities, but understanding what they as teams and individuals have gone through during the pandemic helps foster understanding and leads to better collaboration. Here’s what leaders can do to help each team reach its full professional potential.

View more...

What Is Platform Ops and Why Should Developers Need to Watch Out?

Aggregated on: Sun Dec 12 2021 15:04:17 GMT+0000 (Coordinated Universal Time)

Image Source There’s a new name popping up in the developer circles: platform operations or “platform ops”. But what is it? What can it do? Well, in a nutshell, we’re beginning to find that DevOps struggles to scale and are in need of something that can scale and form a viable strategy for cross-organization adoption of practices. That something is platform ops.

View more...

JCON 2021 Conference Report

Aggregated on: Sun Dec 12 2021 14:34:17 GMT+0000 (Coordinated Universal Time)

JCON 2021 took place October 5 to 8. This is a world-class conference run by the German JAVAPRO magazine. Due to the pandemic, the 2021 event was virtual.  Jakarta EE had a strong presence at the conference with talks on the Jakarta EE Core Profile, Jakarta EE Security, Jakarta NoSQL, MicroProfile 4, Quarkus, Helidon, and Open Liberty from speakers such as Ivar Grimstad, Adam Bien, Otavio Santana, Emily Jiang, Werner Keil, Ed Burns, Grace Jansen, Rudy De Busscher, and Graham Charters. 

View more...

Cloud Cost Management Alone Won’t Fix Your Cloud Spend Problem

Aggregated on: Sat Dec 11 2021 15:19:17 GMT+0000 (Coordinated Universal Time)

The pay-per-use model of the public cloud seemed too good to be true. And you probably quickly caught onto its catch: analyzing and predicting your cloud costs is like driving blindfolded hoping that the street traffic would stay the same.  A solid cloud cost management strategy and tooling solves this problem – but only partially. Knowing what your costs are and where your costs come from isn’t going to reduce them magically. 

View more...

Visualize your Apache Kafka Streams using the Quarkus Dev UI

Aggregated on: Sat Dec 11 2021 15:19:17 GMT+0000 (Coordinated Universal Time)

This article shows how you can visualize Apache Kafka Streams with reactive applications using the Dev UI in Quarkus. Quarkus, a Java framework, provides an extension to utilize the Kafka Streams API and also lets you implement stream processing applications based directly on Kafka. Reactive messaging and Apache Kafka With the rise of event-driven architectures, many developers are adopting reactive programming to write business applications. The requirements for these applications literally specify that they not be processed in real-time because end users don't really expect synchronous communication experiences through web browsers or mobile devices. Instead, low latency is a more important performance criterion, regardless of data volume or concurrent users.

View more...

How to Successfully Leverage AI in Your Automated Kubernetes Monitoring

Aggregated on: Sat Dec 11 2021 14:49:17 GMT+0000 (Coordinated Universal Time)

Organizations are continuously seeking to grow, have better customer relationships, and provide user experiences that edge out rivals, digital acceleration is gathering pace. The IT industry, in particular, and its role in large-scale production environments has grown exponentially complex, with companies investing in AI solutions and increasingly preoccupied with questions such as: “what is hyper-automation?” Monitoring technology gives visibility into these highly disseminated IT environments. AI monitoring systems, in turn, use more components that help streamline complexities and usher in a shift from reactive to proactive decision-making. Throughout this article, we’re going to take a look at the best methods available to you in leveraging AI in your automated Kubernetes monitoring. 

View more...

Low Latency Microservices, a Retrospective

Aggregated on: Sat Dec 11 2021 14:49:17 GMT+0000 (Coordinated Universal Time)

I wrote an article on low latency microservices almost five years ago now. In that time, my company has worked with a number of tier-one investment banks to implement and support those systems. What has changed in that time and what lessons have we learned? Read this article and learn what we learned after five years of developing and supporting low latency microservices.

View more...

Interview - Jeffrey Snover, The Inventor of PowerShell

Aggregated on: Sat Dec 11 2021 14:04:17 GMT+0000 (Coordinated Universal Time)

Introduction We had a great talk with Jeffrey Snover, Microsoft Technical Fellow, and CTO for Modern Workforce Transformation. Snover is the inventor of Windows PowerShell, an object-based distributed automation engine, scripting language, and command-line shell. Enjoy the full interview below!

View more...

Cross-compiling a C++ CLI Application

Aggregated on: Sat Dec 11 2021 13:49:17 GMT+0000 (Coordinated Universal Time)

Github project containing details of every Makefile variable and target, as well as how to configure FreeBSD 13.0 to mount an SSH filesystem at boot. Prepare for Disappointment You'd think as you're reading that somebody, somewhere is busy cross-compiling GCC, or building the latest LLVM with all the backends. You'd think by now, after all these years, it would be an easy process. You'd think that after using Go, there would be a simple command in LLVM to tell you what all targets are available.

View more...

How To Use Shared Libraries in a Jenkins Pipeline?

Aggregated on: Sat Dec 11 2021 13:04:17 GMT+0000 (Coordinated Universal Time)

As Agile methodology picks pace, tools that enable faster time to deliver software got more prominence. Jenkins, arguably the widely used DevOps automation tool, helps companies achieve the full benefits of Agile methodology. For most developers & testers, Jenkins is not something new. It actually became part and parcel of their job description. In this article, let’s discuss how to use Jenkins effectively by using Jenkins Shared Library. Jenkinsfile In the world of Jenkins, a pipeline is the smallest unit every Jenkins user interacts with. Jenkins pipeline can be defined either by using a Jenkinsfile or GUI (Graphical user interface). We recommend Jenkinsfile over GUI, as GUI may prove ineffective for complex requirements.

View more...

Importing Data Using MySQL and Arctype

Aggregated on: Sat Dec 11 2021 12:04:16 GMT+0000 (Coordinated Universal Time)

If you are a developer or database administrator that wants to load the data into your databases quickly, you probably already know that you have quite a few options, at least as far as MySQL is concerned. In this blog, we will look through the options you have when it comes to importing data into your MySQL instances. What Options Are There? First of all, when it comes to importing data into MySQL, you have a couple of options to import data:

View more...

Practical Guide to SRE: Infrastructure-as-Code (IaC)

Aggregated on: Fri Dec 10 2021 23:34:16 GMT+0000 (Coordinated Universal Time)

Although SRE toolsets vary from one team to another, there is one type of tool, Infrastructure-as-Code (IaC), that virtually every SRE needs to manage reliability at scale. If you’re not leveraging IaC, you’re not being all you can be as an SRE. Keep reading for a breakdown of how IaC works, why it’s so important to SRE, and how SREs can add IaC to their reliability engineering strategy.

View more...

Our Experience Migrating From Dagger to Koin

Aggregated on: Fri Dec 10 2021 21:19:16 GMT+0000 (Coordinated Universal Time)

Note: This was assembled with Koin version 2.0.1. More recent versions have changed some things. Refer to the official documentation for more information. Context Our team has a legacy project, started by a team from another company, with other standards, practices, experiences, and so on. This project was initially set up with Dagger as a dependency injection mechanism and is not modularised. As the project grew, so did the compilation times. When it got to the point where compiling the project could take more than ten minutes, we decided to see what we could do about it.

View more...

Getting Started With Pandas

Aggregated on: Fri Dec 10 2021 18:34:16 GMT+0000 (Coordinated Universal Time)

Today we will introduce one of the first inner training chapters on the fundamentals of DataScience treatment tools. We are talking about Pandas, Numpy, and Matplotlib. Pandas is a third-party library for numerical computing based on NumPy. It excels in handling labeled one-dimensional (1D) data with Series objects and two-dimensional (2D) data with DataFrame objects. NumPy is a third-party library for numerical computing, optimized for working with single- and multi-dimensional arrays. Its primary type is the array type called ndarray. This library contains many routines for statistical analysis.

View more...

Microservices Communication With Apache Kafka

Aggregated on: Fri Dec 10 2021 18:34:16 GMT+0000 (Coordinated Universal Time)

When developing a new product, the first thing that comes to mind is how to structure code. There is a battle going on in this regard: monolithic vs microservices. It has been going on for a while because software developers and company owners are still trying to figure out which architectural style is ideal for their applications. The scalability, efficiency, and competitiveness of the product are determined by the strategy used – monolithic vs microservices. While monolithic systems have been used for a while, microservices are a comparatively modern form of software system structure. Indeed, a slew of technologies emerged under the DevOps mindset, allowing us to design scalable, distributed systems based on microservices. One of the main advantages of a microservice architecture is that it makes it simpler to select the technological stack (programming languages, databases, etc.) that is most suited for the desired functionality (service) rather than being forced to take a more conventional, one-size-fits-all approach.

View more...

How to Use Ballerina Local Repository

Aggregated on: Fri Dec 10 2021 18:34:16 GMT+0000 (Coordinated Universal Time)

The need for overriding dependencies in a programming language is a fundamental need for many scenarios. Here we are discussing how to override dependencies in Ballerina. If you are new to Ballerina, I recommend you to play with it before reading this article. You can find everything you need in the Learn section of Language’s website. Let’s start! Think you are working on a library that is used in a larger critical application, and you want to test a bug fix for this library inside of the larger application. Then it’s crucial to test it before publishing this library to a public package repository like Ballerina central. This is where the Local Repository comes into the picture. Also, you can use it in the following scenarios:

View more...

How eCommerce Brands Can Leverage AI for Product Image Optimization

Aggregated on: Fri Dec 10 2021 17:34:16 GMT+0000 (Coordinated Universal Time)

The COVID-19 pandemic impacted businesses in different ways, and I would like to share something worthwhile that I learned. I was able to save my brand dozens of hours and thousands of dollars we could have lost in revenue.  As a CMO, my PPC team needed to create 250 unique banners based on the template the company’s designer created, and also modify dozens of landing pages. Incidentally, our designer was down with the virus and no member of the team had any design background. 

View more...

Introduction to Multi-Tenancy in Kubernetes

Aggregated on: Fri Dec 10 2021 17:04:16 GMT+0000 (Coordinated Universal Time)

What Is Multi-Tenancy? The idea of sharing a single instance of an application or of software among various tenants is called multi-tenancy. This approach is quite popular since the rise of cloud environments. Now, with the introduction of Kubernetes, developers and administrators require the same approach to be implemented on Kubernetes clusters. As that would provide better resource utilization, provide better management of underlying compute resources, and reduce cost. This blog post will discuss various available approaches to introduce multi-tenancy in Kubernetes clusters and will try to draw a comparison between all of them.

View more...

Develop Spring Boot REST API in AWS - PART 1/4 (CodeBuild + ECR)

Aggregated on: Fri Dec 10 2021 16:34:16 GMT+0000 (Coordinated Universal Time)

In this video tutorial, we are going to explore a demo (part 1) of developing spring boot REST API on AWS.  It involves the following steps: 

View more...

Is Web Scraping Legal?

Aggregated on: Fri Dec 10 2021 16:34:16 GMT+0000 (Coordinated Universal Time)

Ranging from unethical hacking, identity theft, internet scams, social engineering to many more, we hear and see regulations outrightly trying to clamp down all forms of crime and swindling on the internet. However, the stance of the internet law on the legality of web scraping remains controversial. Since you might also find yourself scraping data from the web, either now or in the future, whether for business purposes or personal use, let us address the question: is web scraping legal? You’ll soon find out.

View more...

Milvus in IP Protection: Building a Trademark Similarity Search System With Milvus

Aggregated on: Fri Dec 10 2021 16:34:16 GMT+0000 (Coordinated Universal Time)

In recent years, the issue of IP protection has come under the limelight as people's awareness of IP infringement is ever-increasing. Most notably, the multi-national technology giant Apple Inc. has been actively filing lawsuits against various companies for IP infringement, including trademark, patent, and design infringement. Apart from those most notorious cases, Apple Inc. also disputed a trademark application by Woolworths Limited, an Australian supermarket chain, on the grounds of trademark infringement in 2009.  Apple. Inc argued that the logo of the Australian brand, a stylized "w", resembles their own logo of an apple. Therefore, Apple Inc. took objection to the range of products, including electronic devices, that Woolworths applied to sell with the logo. The story ends with Woolworths amending its logo and Apple withdrawing its opposition.  With the ever-increasing awareness of brand culture, companies are keeping a closer eye on any threats that will harm their intellectual properties (IP) rights. IP infringement includes: Copyright infringement Patent infringement Trademark infringement Design infringement Cybersquatting The aforementioned dispute between Apple and Woolworths is mainly over trademark infringement, precisely the similarity between the trademark images of the two entities. To refrain from becoming another Woolworths, an exhaustive trademark similarity search is a crucial step for applicants both prior to the filing as well as during the review of trademark applications. The most common resort is through a search on the United States Patent and Trademark Office (USPTO) database that contains all of the active and inactive trademark registrations and applications. Despite the not-so-charming UI, this search process is also deeply flawed by its text-based nature as it relies on words and Trademark Design codes (which are hand-annotated labels of design features) to search for images. This article thereby intends to showcase how to build an efficient image-based trademark similarity search system using Milvus, an open-source vector database. A Vector Similarity Search System for Trademarks To build a vector similarity search system for trademarks, you need to go through the following steps: Prepare a massive dataset of logos. Likely, the system can use a dataset like this. Train an image feature extraction model using the dataset and data-driven models or AI algorithms. Convert logos into vectors using the trained model or algorithm in Step 2. Store the vectors and conduct vector similarity searches in Milvus, the open-source vector database. To accelerate the process of feature extraction, you can deploy the trained AI model on multiple servers. However, you do not have to worry about data inconsistency if you use distributed service to process data because you can use Flask to ensure synchronized data processing. When the system is built, your user only needs to upload an image of a logo, and then the system converts this new image into a new vector using the same AI model you trained. The system searches for similar vectors to the new vector in the Milvus database and returns the corresponding vector IDs. Ultimately, your user will be able to see all the results of similar logos to the one he or she has uploaded. The following screenshot is a demonstration of a vector similarity search system for trademarks. As you can see, the user uploaded the logo, the swoosh, of the sportswear brand Nike. The system returns all images that are similar to this logo. In the following sections, let's take a closer look at the two major steps in building a vector similarity search system for trademarks: using AI models for image feature extraction, and using Milvus for vector similarity search. In our case, we used VGG16, a convolutional neural network (CNN), to extract image features and convert them into embedding vectors. Using VGG16 For Image Feature Extraction

View more...

Automating AppSec with Contrast Security

Aggregated on: Fri Dec 10 2021 00:34:16 GMT+0000 (Coordinated Universal Time)

Everything we do is online. We bank online, access healthcare, pay our taxes, build our businesses -  and along the way we put trust in companies to keep us protected. Unfortunately, companies aren’t great at writing secure software. Contrast Security wants to change that.

View more...

Deploying Board Resource Depot for Large Scale Semiconductor Companies With Multi-Geographical Teams

Aggregated on: Thu Dec 09 2021 20:34:15 GMT+0000 (Coordinated Universal Time)

DevOps has evolved over the last decade as a combination of practices that combine software development and IT operations. Because of its utility, flexibility, and sophistication, DevOps has become an essential ingredient of success in supporting basic software engineering principles such as CI/CD (continuous integration/continuous deployment) and the exploratory iterations of Agile development. Organizations that follow DevOps practices create a reusable development pipeline and overarching methodology for software development. These frameworks include highly automated workflows that facilitate rapid and repeatable coding efforts, experimentation, test automation, and production-level deployment. New software products can be conceptualized, created, and then stored systematically with archived and auditable data, code versions, documentation, toolchain configurations/dependencies, and scripts. These archives serve purposes such as re-creating original SW development environments, tracking changes, ensuring version reproducibility, and facilitating further enhancement and evolution of software products. 

View more...

CockroachDB Admission Control

Aggregated on: Thu Dec 09 2021 18:49:15 GMT+0000 (Coordinated Universal Time)

Last week, while running a workload consisting of 200 different queries, we noticed right away that a CPU imbalance was causing a performance issue. Looking at the first graph, below, you can see right away that one of the three CockroachDB nodes was operating at near 100% CPU. Not ideal. At the time we installed that cluster, we utilized version 21.1.11 of CockroachDB, which was the most current. Now fast forward in time to November 16 — version 21.2.0 has just been released, with a new feature called Admission Control. From the docs for this new feature, one scenario where Admission Control can help is when

View more...

Backend Interview With Oriol Saludes: Fullstack Developer at Apiumhub

Aggregated on: Thu Dec 09 2021 17:34:15 GMT+0000 (Coordinated Universal Time)

We are continuing with our interview series.  Previously we had interviewed Diego Ojeda, Android Lead at Apiumhub;  Serhii Zabolennyi, QA Automation engineer at Apiumhub; Javier Gomez, Backend developer at Apiumhub; and Cuong Le, Backend developer at Apiumhub. Today we interview Oriol Saludes, Backend developer at Apiumhub, and talk about key lessons learned in Backend architecture. Interview With Oriol Saludes, Fullstack Developer Question #1: List Your Top 5 Backend Frameworks and Explain Why 1. Symfony, PHP Symfony is a framework for PHP with a great evolution over the last few years. It has evolved to a componentization style, and now, some Symfony components can be used as standalone libraries in any PHP project. With this idea in mind, they even closed the Silex project, a microframework based on Symfony that the same community was maintaining. This is because since version 4, when building a new application, you can choose to start using the whole framework or a minimal part if you are building a microservice or a simple API.

View more...

3 Unexpected Benefits of Talking About Technical Debt

Aggregated on: Thu Dec 09 2021 17:04:15 GMT+0000 (Coordinated Universal Time)

Did you know talking about technical debt can help you win at work? Technical debt conversations are not usually a path to promotion. They are more likely to be frustrating and filled with complaints. Many such conversations end with a realization that not much will change. Despite that, there are 3 unexpected benefits of talking about technical debt. When you talk about technical debt more often you do three things:

View more...

Apache Kafka in the Public Sector — Part 4: Energy and Utilities

Aggregated on: Thu Dec 09 2021 16:34:15 GMT+0000 (Coordinated Universal Time)

The public sector includes many different areas. Some groups leverage cutting-edge technology, like military leverage. Others like the public administration are years or even decades behind. This blog series explores how the public sector leverages data in motion powered by Apache Kafka to add value for innovative new applications and modernize legacy IT infrastructures. This is part 4: Use cases and architectures for energy, utilities, and smart grid infrastructure. Blog series: Apache Kafka in the Public Sector and Government This blog series explores why many governments and public infrastructure sectors leverage event streaming for various use cases. Learn about real-world deployments and different architectures for Kafka in the public sector:

View more...

How To Analyze Contributing Factors Blamelessly

Aggregated on: Thu Dec 09 2021 13:04:15 GMT+0000 (Coordinated Universal Time)

SRE advocates addressing problems blamelessly. When something goes wrong, don't try to determine who is at fault. Instead, look for systemic causes. Adopting this approach has many benefits, from the practical to the cultural. Your system will become more resilient as you learn from each failure. Your team will also feel safer when they don't fear blame, leading to more initiative and innovation. Learning everything you can from incidents is a challenge. Understanding the benefits and best practices of analyzing contributing factors can help. In this blog post, we'll look at:

View more...

Spring Boot With Kafka Communication

Aggregated on: Thu Dec 09 2021 11:49:15 GMT+0000 (Coordinated Universal Time)

In this article, we will be looking into how we can publish and subscribe to a Kafka topic.  Introduction Kafka over the years has gained a lot in popularity for its high throughput and real-time asynchronous messaging. It's considered a de facto standard for streaming of events and provides fault-tolerant storage that is stable, reliable, and scalable.

View more...

Stream Landing Kafka Data to Object Storage using Terraform

Aggregated on: Thu Dec 09 2021 07:49:15 GMT+0000 (Coordinated Universal Time)

You can easily archive data to IBM Cloud Object Storage for long-term storage or to gain insight by leveraging interactive queries or big data analytics. You can achieve this through the Event Streams UI, where topics can be selected and linked to Cloud Object Storage buckets, with data automatically and securely streamed using the fully-managed IBM Cloud SQL Query service. All data is stored in Parquet format, making it easy to manage and process. Check out " Streaming to Cloud Object Storage by using SQL Query" for more info. In this post, you will set up the Cloud Object Storage stream landing using Terraform.

View more...

Tackling Technical Debt: Founding OutSystems

Aggregated on: Thu Dec 09 2021 00:04:15 GMT+0000 (Coordinated Universal Time)

Recently on the Dev Interrupted Podcast, OutSystems CEO and founder Paulo Rosado joined us to chat about his path to founding the company, advice for successful leaders, and the growing threat of technical debt for businesses around the world. The conversation below has been edited and summarized for length and clarity.  Tell us about OutSystems' founding story. What inspired you to start the company? In February 2021, OutSystems was valued at $9.5 billion dollars - but it certainly didn’t start out that way. The idea behind OutSystems was decades in the making, and its mission stems from what I observed after moving to Silicon Valley back in the mid-nineties. 

View more...

Choose the Right Model: Comparing Relational, Document, and Graph Databases

Aggregated on: Wed Dec 08 2021 22:04:15 GMT+0000 (Coordinated Universal Time)

What exactly is a database model? A database model is nothing more than the structure a database developer has chosen to store information. A database model also spells out the relationships between different parts of the dataset, and any limitations that may restrict read or write access. Individual databases are designed based on the rules and concepts of the broader data model the designers adopt. Developers often use these models to strategically design databases for larger-scale real-world projects such as:

View more...

Starting an SRE Team? Stay Away From Uptime.

Aggregated on: Wed Dec 08 2021 21:34:15 GMT+0000 (Coordinated Universal Time)

A good SRE engineer will tell you your service is never down. A great SRE engineer will tell you that’s not what you should be measuring. In fact, they’ll tell you their job is customer service.  Site Reliability Engineering (SRE) has grown immensely popular with many of the world’s largest tech companies, like Netflix, LinkedIn and Airbnb employing SRE teams to keep their systems reliable and scalable.

View more...