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 ]

I want to learn Artificial Intelligence and Machine Learning. Where can I start?

Categories

Tags cloud-and-infrastructure ai-and-machine-learning data-and-analytics how-to leadership-and-career

How I went from Apple Genius to startup failure to Uber Driver to Machine Learning engineer. An older article about journey to become ML expert by Daniel Bourke.

I was working at the Apple Store and I wanted a change. To start building the tech I was servicing. I began looking into Machine Learning (ML) and Artificial Intelligence (AI). I began looking into Machine Learning (ML) and Artificial Intelligence (AI).

The article main content is split into:

  • How did I get started?
  • My self-created AI masters degree
  • Getting a job
  • Sharing your work
  • How much math?
  • What does a machine learning engineer actually do?

Here are a few questions a machine learning engineer has to ask themselves daily:

  • Context — How can ML be used to help learn more about your problem?
  • Data — Do you need more data? What form does it need to be in? What do you do when data is missing?
  • Modeling — Which model should you use? Does it work too well on the data (overfitting)? Or why doesn’t it work very well (underfitting)?
  • Production — How can you take your model to production? Should it be an online model or should it be updated at time intervals?
  • Ongoing — What happens if your model breaks? How do you improve it with more data? Is there a better way of doing things?

Learning online, I knew it was unconventional. All the roles I’d gone to apply for had Masters Degree requirements or at least some kind of technical degree. I didn’t have either of these. But I did have the skills I’d gathered from a plethora of online courses. Along the way, I was sharing my work online. My GitHub contained all the projects I’d done, my LinkedIn was stacked out and I’d practised communicating what I learned through YouTube and articles on Medium.

How do you start? Where do you go to learn these skills? Nice read!

[Read More]

How to create a storage bucket in the GCP cloud storage console

Categories

Tags cloud-and-infrastructure leadership-and-career how-to

Google Cloud provides three main services for different types of storage: Persistent Disks for block storage, Filestore for network file storage and Cloud Storage for object storage. In this blog, we are discussing the third Cloud storage for object storage in detail. By Gopal.

Cloud Storage is a service for storing your objects in Google Cloud. An object is an immutable piece of data consisting of a file of any format. You store objects in containers called buckets. All buckets are associated with a project, and you can group your projects under an organization. Thus the Google cloud storage hierarchy will be Organization → Project → Bucket → Object.

The article then walks you through:

  • Basic tools for interacting with the Cloud storage
  • Prerequisites for creating a storage bucket
  • Creating a storage bucket in GCP

GCP Cloud storage is reliable and secure object storage. You can make a transition to lower-cost classes easily when it meets the criteria you specify, such as when it reaches a certain age or when you’ve stored a newer version of the data. Through “storage transfer service” and “transfer service for on-premise data” easily transfer your on-premise data to any GCP storage bucket easily.

All accompanied by detailed screen shots so you can follow article smoothly. Nice tutorial.

[Read More]

How to implement lazy loading in Angular

Categories

Tags frontend-and-mobile product-and-design devops-and-ci-cd

Lazy loading probably sounds like jargon to developers entering into the world of building Single Page Applications using frameworks such as React or Angular. But it is not as complicated as it sounds. By Lakindu Hewawasam.

The article will walk you through:

  • Why do we need lazy loading in the first place?
  • How do I implement lazy loading?
    • Creating the angular project
    • Integrating lazy loading in angular
    • Splitting modules for components
    • Creating the modules
    • Configuring AuthModule
    • Configuring the CommonModule
    • Defining routes for lazy loading
    • Testing the lazy loading

There is a lot more than you can do with this, and the best place to learn more is the Angular documentation. Good read!

[Read More]

Dealing with eventual consistency and idempotency in MongoDB projections

Categories

Tags cloud-and-infrastructure data-and-analytics leadership-and-career

Auditability, diagnostics, time travelling are usually the first mentioned features when speaking about Event Sourcing. All of them are great, but to me, projections are the real killer feature of an event-driven approach. Why? By Oskar Dudycz.

Projections are different interpretations of the same fact. Look at the photo below. Muhammad Ali is standing in triumph over Sonny Liston. Each of them interprets the same fact from an entirely different perspective.

Projections have multiple advantages for the development process. The one that I’d like to highlight especially is reducing the cognitive load. You can break down a process into two parts. At first, on modelling the business logic and capturing its result. Then thinking about how to interpret it. This is a liberating experience from thinking all at once in the relational approach. “Gosh, when I add that field, then this will break foreign key. How do I do this migration?”. Of course, we’ll eventually need to think about connecting our event with the read model, but we can split that thought process.

Projections are powerful but also non-trivial. In theory, it’s just a left-fold approach: you take the current state and apply event data, getting a new one. Yet, things can get more complex if we want a robust, fault-tolerant solution. To learn more and get access to code on TypeScript please follow the link to the full article. Good read!

[Read More]

Using Terraform to deploy to EKS

Categories

Tags cloud-and-infrastructure devops-and-ci-cd

Historically, companies have been restricted to manual solutions for maintaining IT infrastructure—but Infrastructure as Code (IaC) offers a different solution. By Lukonde Mwila.

With the rise of cloud and automation technology, as well as DevOps practices, it’s become simpler, more efficient, and reliable to provision complex infrastructure. Cloud providers like Amazon Web Services (AWS), Google Cloud Platform, and Microsoft Azure allow APIs to facilitate automation of resources in their environments. Your application’s underlying infrastructure and configuration can now be automated and versioned using code.

The article will take you through:

  • The Advantages of Using Terraform
  • The Disadvantage of Using Terraform
  • Provisioning an EKS Cluster Using Terraform
  • Networking Infrastructure with VPC
  • VPC
  • Subnets, Internet Gateway, NAT Gateway, and Custom Route Table
  • Security Groups
  • Variables for Network Resources
  • EKS Cluster with Managed Node Groups

… and more. Yuo will also get required yaml files for spinning up the reference infrastructure in the tutorial.

A managed Kubernetes cluster like EKS eliminates the complexity and overhead for software teams to provision and optimize control planes. Automation technology like IaC enhances the infrastructure management lifecycle with a host of benefits. However, Kubernetes cluster management in AWS can have significant cost implications if there are no tools in place to provide relevant insight, monitoring, and reporting for optimal usage. Good read!

[Read More]

How to build GitHub Actions in PHP with Minicli and Docker

Categories

Tags devops-and-ci-cd backend-development architecture-and-apis product-and-design

GitHub Actions facilitates creating CI/CD automated workflows that can be triggered by GitHub events, such as when a pull request is created, a merge is made, or a new comment is posted on an issue. What some people may not know is that you can also run GitHub actions at scheduled times, based on cron expressions. By Erika Heidi.

In this guide, you’ll learn how to use GitHub Actions to periodically run a PHP command line application built with Minicli. This application will update a CONTRIBUTORS file in the same repository where the workflow action is set, updating information about top contributors of a project. We’ll implement the repository update portion using the update-files-on-github action, which will generate a commit with the file change to the repository where the workflow is run.

This guide will help you with the following:

  • Bootstrapping the application
  • Pulling contributors with the GitHub API
  • Setting up the application Dockerfile
  • Creating the action file
  • Setting up a workflow

…and more. GitHub provides a large library of readily available actions you can integrate into your project, and you can also find user-contributed actions in the marketplace. However, because workflows are so flexible, sometimes it can be difficult to figure out how to combine multiple actions and which inputs or environment variables are required in certain scenarios. Nice one!

[Read More]

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

Categories

Tags cloud-and-infrastructure devops-and-ci-cd architecture-and-apis security-and-privacy

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-and-infrastructure architecture-and-apis

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-and-infrastructure leadership-and-career architecture-and-apis data-and-analytics devops-and-ci-cd

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-and-infrastructure miscellaneous leadership-and-career architecture-and-apis software-engineering

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]