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 ]

Zero trust workload security with GKE, Traffic Director, and CA Service

Categories

Tags cloud containers gcp software-architecture infosec

At the core of a zero trust approach to security is the idea that trust needs to be established via multiple mechanisms and continuously verified. Internally, Google has applied this thinking to the end-to-end process of running production systems and protecting workloads on cloud-native infrastructure, an approach we call BeyondProd. By Anoosh Saboori Product Manager, Zero Trust and Sanjay Pujare, Tech Lead, Proxyless gRPC Security.

As it stands today, the use of mTLS for service-to-service security involves considerable toil and overhead for developers, SREs, and deployment teams …. The GKE cluster’s mesh certificate component continuously talks to the CA pools to mint service identity certificates and make these certificates available to intended workloads running in GKE pods. Issuing Certificate Authorities are automatically renewed and the new roots pushed to clients before expiry.

Establishing and verifying trust in such a system requires: 1) that each workload has a unique workload identity and credentials for authentication, and 2) an authorization layer that determines which components of the system can communicate with other components.

To provide managed service mesh security that meets these requirements, Google is happy to announce the general availability of new security capabilities for Traffic Director which provide fully-managed workload credentials for Google Kubernetes Engine (GKE) via CA Service, and policy enforcement to govern workload communications. The fully-managed credential provides the foundation for expressing workload identities and securing connections between workloads leveraging mutual TLS (mTLS), while following zero trust principles. Follow the link to the full article to learn more!

[Read More]

Replace traditional email mailbox polling with real-time reads using Amazon SES and Lambda

Categories

Tags cloud aws software-architecture serverless

Integrating emails into an automated workflow for automated processing can be challenging. Traditionally, applications have had to use the POP protocol to connect to mail servers and poll for emails to arrive in a mailbox and then process the messages inline and perform actions on the message. This can be an inefficient mechanism and prone to errors that result in the workflow missing messages. Since this method requires polling it’s not great if you need real-time processing of messages and introduces inefficiencies in the design. By Syed Ali Abbas Gardezi and Satish Natarajan.

This blog post shows how to use SES to perform automated processing of email in an application workflow. I will use the option in SES to save received emails in S3 and trigger a Lambda function to process the message without having to poll a mailbox. This sample application demo is using email to receive simple orders which get automatically processed and the details stored in DynamoDB.

The article goes over:

  • Create an S3 Bucket for Email Storage
  • Create DynamoDB Table to Simulate Application
  • Create Lambda Function triggered by SES to Process Email
  • Configure SES to Send Emails to S3 and Trigger Lambda Function

In this post, we have shown you how to integrate email processing into an application workflow without having to resort to polling a mail box. Good read!

[Read More]

Amazon MemoryDB for Redis – Where speed meets consistency

Categories

Tags cloud aws cio software-architecture nosql devops

Modern apps are not monolithic; they’re composed of a complex graph of interconnected microservices, where the response time for one component can impact the performance of the entire system. For instance, a page load on an e-commerce website may require inputs from a dozen microservices, each of which must execute quickly to render the entire page as fast as possible so you don’t lose a customer. It’s critical that the data systems that support those microservices perform rapidly and reliably, and where speed is a primary concern, Redis has always been top performer. By Dr. Werner Vogels.

The article describes:

  • Redis’ best-effort consistency
  • MemoryDB: It’s all about the replication log
  • Redis-compatible
  • Purpose-built database for speed

The world moves faster and faster every day, which means data, and the systems that support that data, have to move even faster still. Now, when customers need an ultra-fast, durable database to process and store real-time data, they no longer have to risk data loss. With Amazon MemoryDB for Redis, AWS finally offers strong consistency for Redis so customers can focus on what they want to build for the future. Good read!

[Read More]

How to create an effective technical architectural diagram?

Categories

Tags cloud miscellaneous cio software-architecture learning programming

An Alibaba engineer shows how you can create effective architectural diagrams. By Ding Yi @Alibaba.

The value of technical communication is not only reflected in the way that applications are developed through commercial products and open-source projects and the way that various business launch processes are accelerated. But, its value is very much also reflected in the experience shared by several different outstanding engineers in improving productivity, optimizing product performance, and promoting the user experience. In a sentence, technical communication is important because it improves our professional capabilities.

The article pays attention to the following:

  • What is an architecture?
  • What is an architectural diagram?
  • What are functions of an architectural diagram?
  • Types of architectural diagrams
    • Scenario view
    • Logical view
    • Physical view
    • Process view
    • Development view
  • What makes for an effective architectural diagram?

… and more. An architecture can be defined as an abstract description of entities in a system and the relationships between them. It involves a series of decision-making processes.

There are many methodologies for depicting a good architectural diagram. This article introduces the C4 method, which however is also constantly evolving. Despite of this, regardless of the drawing methodology, we simply need to consider the intention of the drawing and better communicate it with the audience. We do not have to be unduly restricted by rules in the drawing process. In short, before starting a diagram, ask yourself: Who is it for, what is it of, and how to make it intuitive and understandable. Nice one!

[Read More]

How to handle errors in Swift task groups

Categories

Tags swiftlang app-development ios programming

There is one important topic related to task groups that author will cover, which is “error handling”. By Lee Kah Seng.

As we all know, a task group consists of multiple child tasks that run concurrently. When one of the child tasks encounters an error, how should the task group handle the error? What happens to those child tasks that are still running?

In this article, we will look into 2 most common ways we can use to handle errors in a task group:

  • Throw an error using a throwing task group
  • Returns results of all completed child tasks

You will also learn how to:

  • Define a throwing child task
  • Throw an error using a throwing task group
  • Understanding the behavior of a throwing task group
  • Returning results of all the completed child tasks

We hope this article gives you a good idea of how to handle errors when using a task group. The 2 methods that author has shown you in this article are just 2 of the most basic ways to handle errors in a task group. You can definitely extend the concepts used in these methods to handle a more complex situation that suits your needs. Good read!

[Read More]

Comprehensive guide to understanding customers and making better UX decisions

Categories

Tags ux learning web-development app-development

User research is an integral part of the UX design process. It provides insight into your users’ needs and behaviors, so that you can create better products and experiences for them. By Alexander Radahl.

The importance of conducting thorough user research before designing a product or service is widely recognized, but it’s important to know what types of research will be most helpful for your project. Below author will discuss some top UX research methods and their respective pros and cons, so that you can make the best decisions for your project!

The article then covers following:

  • Different types of UX research methods
  • Market insight
  • Personas
  • Usability testing
  • Creating prototypes for user feedback and more
  • User testing
  • User interviews
  • Surveys
  • Focus groups
  • Contextual inquiry
  • How to conduct user research

… and more. The process will appear differently based on the case, the team, and how you like to work. But using the example above and the tools provided in the last article, you have a head start in how to conduct UX research. Nice one!

[Read More]

What is artificial intelligence and how does the EU plan to regulate it?

Categories

Tags big-data miscellaneous cio startups machine-learning learning

Receiving a film recommendation on your favourite video-on-demand platform, unblocking your phone with your face, using autocorrect, and chatting with a chatbot: all of these are everyday examples of Artificial Intelligence (AI). Despite sounding futuristic, AI is already being used by European citizens daily. Its opportunities can be endless, but there are also risks on the table. By Aida Sanchez Alonso.

“The potential of using AI in beneficial ways is enormous: less pollution, improved medical care, enhanced opportunities, better education and more ways to enable citizens to engage in their society,” said Margrethe Vestager, Europe’s competition commissioner who is also in charge of digital.

The article then reads about:

  • What is Artificial Intelligence and why should we worry?
  • What’s the EU current stance on Artificial Intelligence?
  • Is facial recognition going to be a reality in the European Union?
  • Can the risks of reproducing biases be avoided?
  • And what about overregulating or underregulating?

Between wanting to set the world standard to the risk of overregulation that could prevent technology from developing, the European Union faces a great challenge with AI regulation. Good read!

[Read More]

Coming to grips with lifecycle management in MS Teams

Categories

Tags azure learning cio management miscellaneous

Spontaneity is not the best way to approach your Microsoft Teams deployment. Sufficient planning and strategizing need to be done to prepare for its longevity. Lifecycle management is all about being visionary and efficiently managing your Microsoft Teams deployment long after it has been rolled out. By Michal Pisarek.

The article describes:

  • Lifecycle management in Microsoft Teams: What, why and how?
  • What is the typical lifecycle of a team?
  • Implementing lifecycle management with Microsoft 365 Tools
  • Lifecycle management at the creation stage
  • Lifecycle management during the active stage
  • Lifecycle management for sunsetting teams
  • Microsoft Teams management with orchestry

Getting content into MS Teams and Microsoft 365, in general, is fairly straightforward and there are features within the tools that help you manage it too. But, from a holistic perspective, it is important to think about how and where you are sharing content and collaborating. This is where lifecycle management comes into play, helping you utilize out-of-the-box capabilities or bringing in outside sources to best manage information for long periods of time. To put it simply, lifecycle management is the strategy to manage MS Teams teams for their respective longevity. Good read!

[Read More]

101 machine learning algorithms for data science with cheat sheets

Categories

Tags big-data learning data-science analytics

Your one-stop shop for machine learning algorithms. These 101 algorithms are equipped with cheat sheets, tutorials, and explanations. By Nathan Piccini.

Think of this as the one-stop shop/dictionary/directory for machine learning algorithms. The algorithms have been sorted into 9 groups:

  • Anomaly detection,
  • Association rule learning
  • Classification
  • Clustering
  • Dimensional reduction
  • Ensemble
  • Neural networks
  • Regression
  • Regularization

You will get plenty of links to further resource in this article, such as link to Scikit-learn algorithm cheat sheet or SAS: The machine learning algorithms cheat sheet. Great read!

[Read More]

How WhatsApp scaled to 1 billion users with only 50 engineers

Categories

Tags performance web-development programming app-development open-source

In 2016, WhatsApp reached more than a billion users. They managed to serve this scale with only 50 engineers. By @quastor.org. They had the following load stats: 42 billion messages sent daily, 1.6 billion pictures sent daily, 250 million videos sent daily.

Here’s a dive into the engineering culture and tech stack that made this possible. WhatsApp’s Engineering culture consists of 3 main principles:

  • Keep things small
  • Keep things simple
  • Have a single minded focus on the mission

WhatsApp consciously keeps the engineering staff small to only about 50 engineers. Individual engineering teams are also small, consisting of 1-3 engineers and teams are each given a great deal of autonomy. In terms of servers, WhatsApp prefers to use a smaller number of servers and vertically scale each server to the highest extent possible.

Their goal was previously to have 1 million users for every server (but that’s become more difficult as they’ve added more features to the app and as users are generating more activity on a per-user basis). Read the article in full to learn more details. Excellent read!

[Read More]