Welcome to curated list of handpicked free online resources related to IT, cloud, Big Data, programming languages, Devops. Fresh news and community maintained list of links updated daily. Like what you see? [ Join our newsletter ]

Make Jenkins logs pretty

Categories

Tags app-development web-development devops cicd cloud

Jenkins’ default logs can be hard to read, but they don’t have to be. By Evan “Hippy” Slatis (Red Hat).

Jenkins is a free and open source automation server for building, testing, and deploying code. It’s the backbone of continuous integration and continuous delivery (CI/CD) and can save developers hours each day and protect them from having failed code go live. When code does fail, or when a developer needs to see the output of tests, Jenkins provides log files for review.

The default Jenkins pipeline logs can be difficult to read. This quick summary of Jenkins logging basics offers some tips (and code) on how to make them more readable:

  • What you get
  • What can be done?
  • Best practices
  • Kubernetes Secrets: Where full transparency won’t work

There are some things that you don’t want to end up in your logs and be exposed. If you’re using Kubernetes and referencing data held in a Kubernetes Secret, then you definitely don’t want that data exposed in a log because the data is only obfuscated and not encrypted. Nice one!

[Read More]

Core Web Vitals: A guide to improving page speed

Categories

Tags app-development web-development performance frontend

The Core Web Vitals for user experience are as follows: Largest Contentful Paint (LCP), First Input Delay (FID), Cumulative Layout Shift (CLS). By Kristi Hines.

Improving your LCP, FID, and CLS could positively affect your users and your rankings on mobile search results pages. An increase of even one position on the first page of search results can result in a sizable increase in traffic. The same goes for user experience. If you can improve user experience, it can result in a sizable increase in business from positive word of mouth referrals, reviews, and repeated business.

The article is split into:

  • What are the core web vitals?
  • Tools to measure core web vitals
  • Why core web vitals matter
  • How to improve core web vitals
  • How to improve largest contentful paint

Google offers several tips for optimizing your website and improving the Largest Contentful Paint metric for your web pages. Start with your web server. If you are experiencing serious delays, it may be time to upgrade your web hosting from a shared to a dedicated server. Good read!

[Read More]

How to build a strong Open Source community: Best practices and lessons learned

Categories

Tags cio cloud learning management miscellaneous

When the VMware Tanzu Community Engagement team assembled three years ago, we did so with the belief that strong, sustainable community engagement is a crucial component of successful open source projects. By Jonas Rosland, Abigail McCarthy, and Amanda Katona.

Regardless of whether you are starting a new open source project or are already deep into an existing one, we’ve learned it’s never too late to create a solid foundation of resources and processes to help community members contribute. We recommend starting with the GUIDELINES.md file. It provides a checklist of project components that we’ve found essential to developing healthy community engagement within any open source project.

Now let’s dive into some of the resources authors have made available:

  • Create a solid foundation for community engagement
  • Perform health checks
  • Use inclusive terminology

There are many other potential use cases in open source projects where Vale can be leveraged; we highly recommend checking out the amazing repository of styles that GitLab has put together. Good read and starting point for anybody building open source community!

[Read More]

Behind the scenes of creating the world's biggest graph database

Categories

Tags database queues search performance cloud devops aws streaming

How we’d decided to try and build the biggest graph database that has ever existed. By Chris Gioran.

Using smaller instances did the trick, and the next day we had the full contingent of 1129 shards up and running. The latency measuring demo app was almost ready so we decided to take some measurements to see where we stand.

This article describes the process how neo4j team built a database which had:

  • 1128 forum shards, 1 person shard, 3 Fabric processors
  • Each forum shard contains 900 million relationships and 182 million nodes. The person shard contains 3 billion people and 16 billion relationships between them
  • Overall, the full dataset is 280 TB, and 1 trillion relationships
  • Took 3 weeks from inception to final results
  • Costs about $400/h to run at full scale

When authors introduced Neo4j Fabric, they also created a proof of concept benchmark that was presented at FOSDEM 2020. It showed that, for a 1TB database, throughput and latency improve linearly with the number of shards that it’s distributed across. More shards, more performance. Follow the link to the full article to learn more about this fascinating database. Excellent!

[Read More]

Laravel Octane v1.0 is here

Categories

Tags php app-development web-development performance

Laravel Octane, a tool to supercharge your Laravel application’s performance. By Paul Redmond.

Octane boasts some exceptional performance benchmarks by using high-powered application servers that integrate with Laravel. Some things to note now that Octane is considered stable and ready for production:

  • Octane requires PHP v8.0+
  • Octane supports Roadrunner, an application server, load-balancer, and process manager written in Golang.
  • Octane supports Swoole PHP, a high-performance programmatic server for PHP with Async IO, Coroutines and Fibers
  • Laravel Sail provides an easy way to get started with both Roadrunner and Swoole

With Swoole you can also leverage Concurrent Tasks, which means you can execute operations simultaneously via lightweight background tasks. Lastly, Swoole has the concept of Swoole tables, which provides “extreme performance throughput and data in these tables can be accessed by all workers on the server.” To get started with Octane, check it out on GitHub at laravel/octane. Nice one!

[Read More]

The revival of stoicism

Categories

Tags miscellaneous how-to cio learning management

Everyone from Silicon Valley billionaires to self-help enthusiasts is repurposing Stoicism for our modern age, with results that are good, bad, and highly indifferent. By Shayla Love.

Over the last 10 years, Stoicism has gone from a topic confined to philosophy lectures to one consumed by the masses. Sometimes referred to as Modern Stoicism, Stoic ideas and texts are now found in dedicated podcasts, newsletters, Instagram accounts, self-help books, personal coaching, and in-person events, like the well-attended annual event Stoicon.

Stoics, unlike their contemporaries the Epicureans and the Cynics, had no position against extreme wealth or status; they were not to be sought after, but if you happened to be wealthy or powerful, so be it.

Modern Stoicim’s emphasis on focusing only on what you can control, in some permutations, can support expressions of capitalistic individualism that view wealth status or social disparities as givens, and place priority on furthering personal interests or affluence; this might be more likely in iterations of Modern Stoicism that don’t highlight themes of interconnectedness that arise from Stoicism’s metaphysical, pantheistic side.

The ancient Greeks said that philosophical arguments are like medicines: Some would be appropriate for some people at certain times, others for other times. Stoicism is a useful medicine, and there may be times in our lives when swallowing it is better than others. Very interesting read!

[Read More]

Using GitHub Actions to deploy serverless applications

Categories

Tags aws devops serverless cicd app-development

Continuous integration and continuous deployment (CI/CD) is one of the major DevOps components. This allows you to build, test, and deploy your applications rapidly and reliably, while improving quality and reducing time to market. By Gopi Krishnamurthy, senior solutions architect.

In this post, you learn how to create a sample serverless application using AWS SAM. You then use GitHub Actions to build, and deploy the application in your AWS account.

Further in the article:

  • Prerequisites
  • Creating the AWS SAM application
  • Local testing
  • Deploying your application
  • Testing the application

A GitHub Actions runner is the application that runs a job from a GitHub Actions workflow. You can use a GitHub hosted runner, which is a virtual machine hosted by GitHub with the runner application installed. You can also host your own runners to customize the environment used to run jobs in your GitHub Actions workflows.

GitHub Actions is a GitHub feature that allows you to run a CI/CD pipeline to build, test, and deploy software directly from GitHub. AWS SAM is an open-source framework for building serverless applications. Follow the link to the full article to get yaml code and detailed info. Well done!

[Read More]

Top 5 auth solutions for React Native

Categories

Tags infosec react javascript app-development frontend

Get to know 5 auth providers for React Native to get a head start with your Authentication flow. By Viduni Wickramarachchi.

With the increasing threats out there, the stability of the authentication mechanism is vital for any application. As a result, today’s standard practice is to integrate an Auth Solution, which is hardened for security.

The content is split into:

  • Using Auth0 - Leaders in pluggable auth solution space
  • Using AWS Amplify and Cognito - Default for AWS and cost effective
  • Using Firebase - Works best with Firebase suit
  • Using Azure AD B2C - Easy to integrate with Azure and AD authentication
  • Using Ping Identity - Good for enterprise solutions

All of these solutions have their own benefits when used in React Native applications. I have mentioned some of these in the relevant sections. Good read!

[Read More]

Elixir adoption success story

Categories

Tags programming erlang functional-programming elixir app-development learning

How a team that was new to Elixir over-delivered a big project in just three months. By Sophie DeBenedetto.

Adopting a new language is more than just a technical journey. A language is only the right tool for the job if your engineers can wield it well. So, as a technical leader you don’t just select a language or a framework based on its technical capabilities and how suited it is for the problems you need to solve, you also try to optimize for the skills your team already has, for a robust ecosystem surrounding that language, for strong community support, and so much more.

This Elixir success story centers on a three month engagement with an EdTech company to deliver Flatiron School’s in-browser IDE (Interactive Development Environment) and curriculum management system into their own ecosystem. This meant that we would be porting over some existing codebases in both Ruby and Elixir, as well as building out a new Phoenix application that our partnering EdTech company would need to maintain. These applications together represented a non-trivial set of features:

The article describes the success story in these steps:

  • The project
  • Why we chose Elixir
  • The team
  • The journey
  • Our secrets to Elixir success
  • Elixir has a gentle learning curve
  • Elixir has a robust ecosystem
  • Fast and comprehensive testing in Elixir
  • Easy Elixir releases
  • First class observability in Elixir
  • An Elixir library for all your needs
  • Elixir was the right tool for the job
  • Elixir makes it easy to teach and learn

… and more. Many teams and organizations reach for Elixir to solve complex technical problems well-suited for Elixir’s concurrent, fault-tolerant, and distributed nature. Very interesting read!

[Read More]

What is Recursion? A recursive function explained with JavaScript code examples

Categories

Tags programming nodejs javascript app-development learning

Recursion is a technique used to solve computer problems by creating a function that calls itself until your program achieves the desired result. By Nathan Sebhastian.

function randomUntilFive(result = 0, count = 0){
    if(result === 5){
        // base case is triggered
    }
    // recursively call the function
}

randomUntilFive();

This tutorial will help you to learn about recursion and how it compares to the more common loop:

  • What is recursion?
  • Why don’t you just use loop?
  • How to read a recursive function
  • How to write a recursive function

When reading a recursive function, you need to simulate a situation where the base case is immediately executed without executing the recursive call. Nice one!

[Read More]