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 ]

Understanding and using systemd

Categories

Tags linux devops miscellaneous

Older but very informative article by Carla Schroder about systemd. systemd is controversial for several reasons: It’s a replacement for something that a lot of Linux users don’t think needs to be replaced.

Red Hat is the inventor and primary booster of systemd, so the best distros for playing with it are Red Hat Enterprise Linux, RHEL clones like CentOS and Scientific Linux, and of course good ole Fedora Linux, which always ships with the latest, greatest, and bleeding-edgiest.

Essential subsystems have deep hooks in the kernel, all manner of management scripts, and software package dependencies, so replacing one is not a trivial task

The article then explains how /etc/inittab is no more. Instead, we have a /etc/systemd/system/ directory chock-full of symlinks to files in /usr/lib/systemd/system/. /usr/lib/systemd/system/ contains init scripts; to start a service at boot it must be linked to /etc/systemd/system/.

Cheatsheet, links to external resources and more information in the article. systemd has 12 unit types and it is fairly complex, so please read to learn more!

[Read More]

Predictive Analytics: the future of digital marketing

Categories

Tags big-data machine-learning analytics infosec

An older blog post by Deepak Kanakaraju on hot topic of predictive analytics. As technology impacts every aspect of our lives, it is also creating an impact in predicting the future, with reasonable accuracy.

In this article, he looks at how much predictive analytics has evolved and if it has a role to play in the field of digital marketing.

Until 100 years back, prediction of the future with the use of data was impossible. There were no devices or instruments to store data, let alone process it. One of the basic things to remember when it comes to prediction with data is that your prediction accuracy becomes higher with the size of the data.

The article explains:

  • How big data helps in prediction
  • The roll of a dice – understanding “regression to mean” with coin toss
  • Regression to the mean in nature
  • Predicting clicks, leads and sales in a funnel
  • Micro and macro predictive analytics
  • Predictive analytics in fraud detection systems

… and more. This article should made you realize that predictive analytics is a subject that you cannot ignore anymore. However, Predictive analytics is a double edged sword. It can raise a lot of privacy concerns especially when the prediction is done on a micro level. Very detailed!

[Read More]

UI in microservices world -- micro frontends pattern and web components

Categories

Tags microservices ux software web-development devops

Interesting article by Altkom software & consulting on topic of microservices. The topic of microservices in IT world is still alive. Like every novelty – it makes lots of noise and causes lots of controversies.

While most of the discussion so far focused on backend services, some started to look at the frontend challenges.

  • How should we develop UI in the era of microservices?
  • Is expanding a concept of microservices to frontend area a good idea?
  • Are currently used technologies ready to implement this approach?

These questions have inspired authors to seek answers and share the results of my search, my thoughts and conclusions in this article.

The article then describes Micro Frontends –- techniques and strategies used to create modern web applications which are being developed by many teams which would like to use various technologies.

It also pays a great deal of attention to Web Components. To learn more, read this detailed article with li ks to further resources, example charts and code.

[Read More]

Create your first AWS Lambda using Rust

Categories

Tags programming functional-programming software serverless streaming

Blog post by Konstantin Kostov about how he created serverless function in Rust programming language and deployed it to AWS. It was an example AWS Lambda function tasked with checking if a provided serial number is correct and that it is unique (not already part of an existing dataset).

Tutorial takes you through:

  • Implementing the Rust function
    • various validation rules
  • Integrating with AWS Lambda
    • Adding external crates
    • Implementing the AWS Lambda Handler
    • Building for the AWS Linux environment
    • Publishing the executable
    • Testing our Rust function

The article is sprinkled with explanatory screen grabs, command line snippets and example code.

Author added also few unit tests to make sure everything works in the way we expect. One of the favorite aspects of Rust is that it encourages inline unit testing, that is keeping the code and the corresponding unit tests very close together.

You will get everything needed to deploy it to AWS and enjoy serverless Rust runtime! Exciting!

[Read More]

Getting started with Jenkins X

Categories

Tags containers devops cicd java tdd

Dave Johnson wrote blog post about starting with Jenkins X. Jenkins X provides continuous integration, automated testing, and continuous delivery to Kubernetes.Jenkins X-managed projects get a complete CI/CD process with a Jenkins pipeline that builds and packages project code for deployment to Kubernetes and access to pipelines for promoting projects to staging and production environments.

This article is a high-level explanation of how Jenkins X works; it assumes you have some knowledge of Kubernetes and classic Jenkins.

When you deploy Jenkins X, a number of services are put in motion to watch your Git repositories and respond by building, testing, and promoting your applications to staging, production, and other environments you define.

Jenkins X also deploys a set of supporting services, including Jenkins, Docker Registry, Chart Museum, and Monocular to manage Helm charts, and Nexus, which serves as a Maven and npm repository.

Blog post is split into brief high level description of:

  • Creating a new project with Jenkins X
  • Importing your existing projects into Jenkins X
  • Promoting your project to production
  • Other features of Jenkins X (preview environments, extensions, serverless)
  • Jenkins X limitations

Using Jenkins X is also a good way to learn about some useful open source tools for deploying to Kubernetes, including Helm, Draft, Skaffold, Prow, and more… Great!

[Read More]

5 ways to style React components in 2019

Categories

Tags react javascript web-development programming

An article by Jonathan Saring about styling of building blocks of user interfaces in React in 2019. As visual elements, styling them is a big part of how application actually meets our users, and composes the way our brand and product looks and feels.

Choosing the right method for styling components isn’t an absolute truth. It’s a relative choice that should serve your use case, personal preferences and above all architectural goals of the way you work

The article then describes in the detail how to style components using these techniques:

  • Inline CSS
  • CSS in JavaScript
  • Styled Components
  • CSS Modules
  • Stylable

When scaling our codebase, our styling method is the key to balancing modularity and avoiding common scaling issues which can compromise our development velocity. Good read!

[Read More]

Deploy Node.js App with GitLab CI/CD

Categories

Tags devops cicd programming nodejs

An article by Seulkiro Park in which he sheds the light on deployment process utilizing continuous integration and continuous delivery (CI/CD) tools offered by GitLab.

In the tutorial he guides you through:

  • Creating a GitLab project
  • Creating example Node.js express application
  • Heroku application setup
  • GitLab CI/CD configuration file
  • Heroku deployment

GitLab has a runner to manage jobs as part of CI/CD, e.g. test, deploying to staging or production environments. You can navigate to Settings > CI/CD > Secret Variables and then you can store your secret keys or any other environment variables that the Runner can access to.

GitLab CI/CD is super easy to set up and useful for deploying your changes to different staging environments before production then finally production environment.

Heroku supports git repository and even deployments from GitHub out of the box. Good read!

[Read More]

Migration to Google Cloud Platform (GCP)

Categories

Tags software-architecture gcp cloud startups google

By Neeraj Khandelwal, Senior Engineering Manager-DevOps at Hike published series of blog posts about their growth journey and migration to Google Cloud Platform (GCP). They hit scaling challenges once they hit 100 million registered users and sent 40 billion messages every month.

Using GCP’s global load balancing, a single anycast IP can forward up to 1 million requests per second to various GCP back-ends such as Managed Instance Groups(MIG) and it didn’t require any pre-warming.

In the first part they describe why they decided on GCP and how they run proof of concept (PoC). They key areas they cover in PoC:

  • Load Balancer
  • Compute Engine
  • Networking and Firewalls
  • Security
  • Cloud Resource Accessibility
  • Big Data
  • Billing

The POC included testing and verifying for VMs/Network/Load Balancer Throughput, Stability, Scalability, Security, Monitoring, Billing, Big Data and ML services.

Excellent read for any CIO, CTO!

[Read More]

Combining Amazon Aurora, Lambda, and SQS to go beyond the native capabilities of MySQL

Categories

Tags sql serverless aws devops miscellaneous queues

David Yahalom posted on redgate Hub about innovative combination of Amazon Aurora, serverless Lambda and Simple Que Service to strecth MySQL beyond native capabilities.

Most commercial database systems are ‘monolithic’ and integrate a great deal of advanced functionality and capabilities directly into the database itself. As one example, both Microsoft and Oracle provide an asynchronous messaging/queuing mechanism that is part of the database engine.

When your run your MySQL databases as an Aurora MySQL cluster in Amazon Web Services, you also have access to the full set of powerful AWS ecosystem services and solutions which you can leverage where native database functionality is missing.

The article provide clear instructions how:

  • Create an Amazon SQS Queue that will be used to store messages as JSON payloads
  • Configure IAM Role and create a cluster parameter group
  • Create a Lambda function which will use the SQS API to send and receive messages from Amazon SQS
  • Invoke the Amazon Lambda function from within an Aurora MySQL Cluster using mysql.lambda_async

This is just one example of how you can extend the core functionality of MySQL by leveraging additional cloud-native components provided by AWS. You will also get screen grabs from AWS admin interface and sample code to implement everything above. Fantastic read!

[Read More]

The power of web components

Categories

Tags web-development css frontend programming

Post by Potch html5 developer and web platform advocate from Mozilla about re-usable code. He writes about handful of web standards. Each standard has some independent utility, but when used together, they enable something that was previously impossible to do natively. The capability to create user-defined HTML elements that can go in all the same places as traditional HTML.

Defining your own working HTML elements requires new powers the browser didn’t previously give developers.

This article is meant as a primer, introducing a range of new capabilities and resources. The article then explains in some details:

  • How the <template> element works
  • Custom elements
  • Shadow Document Object Model (DOM)

You will also find code example explaining how to create your custom element – fancy button. Very educational for anybody interested in frontend and web design. Nice!

[Read More]