Podcasts I’m Playing in 2020

Since I seem to have a lot more time on my hands without travel thanks to current…things, I’ve been consuming podcasts more and more during my morning workouts. I’ve got a decent list going now and I wanted to share it with you. Here are my favorite podcasts (not including the one that I do for Gestalt IT, the On-Premise IT Roundtable:

  • Packet Pushers – The oldest and best is still my go-to for listening. I started back at Episode 3 or 4. i can remember the intro music. And I’ve been a guest and a participant more times than I can count. Greg, Ethan, and Drew do an amazing job of collecting all the info about the networking world and pushing it to my ears daily. When you through in their news feed (Network Break), cloud (Day Two Cloud), DevOps (Full Stack Journey), IPv6 (IPv6 Buzz), and one-off stuff (Briefings in Brief) there’s a lot to consume aside from their Heavy Networking “main” feed. You can sub to any or all of these if you want. And stay tuned because you might hear me from time to time.
  • Network Collective – Jordan is one of my old and Continue reading

YAML anchors and aliases and how to disable them

Introduction

In this short post I explain what are YAML aliases and anchors. I then show you how to stop PyYAML from using these when serializing data structures.

While references are absolutely fine to use in YAML files meant for programmatic consumption I find that it sometimes confuses humans, especially if they’ve never seen these before. For this reason I tend to disable anchors and aliases when saving data to YAML files meant for human consumption.

Contents

YAML aliases and anchors

YAML specification has provision for preserving information about nodes pointing to the same data. This basically means that if you have some data that is referenced in multiple places in your data structure then YAML dumper will:

  • add an anchor to the first occurrence
  • replace any subsequent occurrences of that data with aliases

Now, how do these anchors and aliases look like?

&id001 - example of an anchor, placed with the first occurrence of data
*id001 - example of an alias, replaces subsequent occurrence Continue reading

Packet Pushers: The New Network Challenge

A couple of weeks ago Scott Morris, Ethan Banks, and I sat down to talk about a project I’ve been working on for a while—a different way of looking at reaching for and showing your skills as a network engineer.

Today’s Heavy Networking explores ideas for designing a new networking certification program. The concept is built around a network design challenge that focuses on broad, systems-oriented knowledge.

You can listen over at Packet Pushers, or download the show directly here.

Internet2 Ramps up MANRS Support for U.S. Research and Education Community

The research and education community in the U.S. relies on a critical infrastructure to meet our education and research missions: the global Internet. This has been especially true during the COVID-19 pandemic, when it has enabled the rapid transition from on-campus to at-home learning.

In addition to being intense Internet users, we also operate a significant part of the Internet that’s tuned to meet higher education’s unique needs. The Internet2 network interconnects more than 1,000 individual networks across the U.S., and collectively we coordinate our activities and operations to ensure researchers and educators have the capabilities they need.

The Internet2 community is increasing participation in MANRS because routing security is a growing area of concern for network operators around the globe.

Whether from accidental misconfiguration or malicious hijack, the results are often more than just inconvenient. As academic and business critical functions are hosted or off-prem, the Internet is no longer a nice to have, but a key component of an organization’s IT infrastructure.

Colleges and universities have a long history of being connected to the Internet, and there was a time when connecting to the Internet was nearly “set it and forget it.”

But, today, Continue reading

Heavy Networking 527: New Ideas For A Network Certification Program

Today's Heavy Networking explores ideas for designing a new networking certification program built around a network design challenge that focuses on broad, systems-oriented knowledge. The goal isn't to replace current certifications, but to create an option that emphasizes deep knowledge of protocols and networking concepts. Our guests are Russ White and Scott Morris.

The post Heavy Networking 527: New Ideas For A Network Certification Program appeared first on Packet Pushers.

The Internet “Just Works”: The EARN IT Act Threatens That and More

When the EARN IT Act was introduced in March 2020, technologists, civil society organizations, academics, and even a former FBI General Counsel blasted the bill as a thinly veiled attempt to prevent platforms from keeping users safe with strong encryption. The bill had implications for intermediary liability, of course, but it was clearly a play to take down the strongest digital security tool we have online.

The EARN IT Act is now a monstrous version of its previous self. It would not only weaken the ability of platforms to protect users through encryption, but fundamentally alter how platforms operate, leading to dangerous consequences for users and the global Internet.

While the new version of the bill would prevent the federal government from forcing platforms to weaken encryption to maintain their intermediary liability protection (a foundational aspect of most companies’ business plans), it would essentially allow states to pass their own version of the original EARN IT Act. This would create a chaotic patchwork of state-level laws, threatening user security across the country and creating borders for a networking system that was never meant to recognize them. This bill would not only weaken the ability of platforms to protect users through Continue reading

Bayesian Non-Finite Mixture Models

Motivation

Following up from our previous post on Bayesian Finite Mixture Models, here are my notes on Non-Finite mixture model.

Non-finite Mixture Models

Bayesian finite mixture models can be used when we have a prior knowledge or some good guess on the number of groups present in the dataset. But if we do not know this beforehand, then we can use Non-Finite mixture models. Bayesian solution for this kind of problems is related to Dirichlet process.

Dirichlet Process(DP)

We briefly mentioned about Dirichlet distribution in the previous post Bayesian Finite Mixture Models, which is a generalization of beta distribution, similarly Dirichlet Process is an infinite-dimensional generalization of Dirichlet distribution. The Dirichlet distribution is a probability distribution on the space of probabilities, while Dirichlet Process is a probability distribution on the space of distributions. A Dirichlet Process is a distribution over distributions. When I first read this, my mind went
.

What this means is, that a single draw from a Dirichlet distribution will give us a probability and a single draw from a Dirichlet Process will give us a Dirichlet distribution. For finite mixture models, we used Dirichlet distribution to assign a prior for the fixed number of clusters, Continue reading

Cisco ACI Tips and Tricks

Cisco ACI does things a bit differently to traditional networking. I find myself constantly duck hunting to do simple things so I am documenting them here so they are easier for me to fine. Get VRF Names Get a list of VRFs with the show vrf command from a leaf node. How to Ping To ping a...

How to Meet Interesting People in Your Industry

The easiest way to meet interesting people in your industry is to attend a networking event, work related conference, or a training course. These types of event usually do attract a high turnout so as well as the information on offer; you do get a chance to network with others who are in the same business as you.

Mingling at Industry Events

The good thing about industry events is that you will meet people at all different levels and stages of their career. This can seem daunting if you are just starting out, but remember that everyone had to start somewhere and most people are going to be supportive and friendly if you have the right approach.

To handle a networking event and actually get to meet interesting people, you can employ some handy strategies to make introductions and social interaction much easier.  One tip is to email the organizers and let them know that you are new. You will probably find that they offer to meet you and introduce you to a couple of people which will help get the ball rolling.

In addition, it is a good idea to arrive a bit early, rather than fashionably late Continue reading

Make Consistent Enterprise Automation a Reality with Ansible Content for AIX and IBM i

As we navigate through unprecedented times, the spotlight is on enhancing IT resilience and ensuring business continuity. We see that enterprises are experiencing shifts in market conditions and automation can be a key to rapidly responding to changes. With many enterprises having hybrid IT and multiple operating system environments, each with its own tooling and processes, implementing a consistent automation strategy to help scale and maximize impact has been a challenge. This is where Red Hat Ansible Automation Platform can help, by more easily enabling automation across different IT environments.

Red Hat Ansible Automation Platform provides automation in areas that span across development, DevOps, compute, network, storage, applications, security, and Internet of Things (IoT). A common request we at IBM had been getting from our users was for Ansible Automation support of AIX and IBM i operating systems. Red Hat and IBM are pleased to announce the general availability of Red Hat Ansible Certified Content for IBM Power Systems.  Red Hat Ansible certification involves Red Hat testing the Collections developed by IBM and a commitment to provide enterprise support. The Collections for AIX and IBM i are maintained and supported by IBM.

Ansible content for AIX and IBM i helps Continue reading

Internet Society Foundation Announces $1.5 Million in COVID-19 Response Grants

The Internet plays a more important role than ever, serving as a lifeline so that children can continue learning, families and friends can stay connected, and vital public health information can keep circulating. At the Internet Society Foundation, we believe access to the Internet and its solutions can create healthier and safer communities, reduce vulnerabilities, and help build the resilience communities need to navigate the COVID-19 pandemic and emerge better prepared in the future.

That’s why we’re thrilled to announce that we’ve completed the selection process for our Emergency Response: COVID-19 grants, awarding USD$1.5 million in funding to four innovative projects that are using the Internet to help communities respond and adapt to the challenges created by the current pandemic.

The funding will support the following efforts around the globe: 

  • Expanding an online platform which connects and trains caregivers across Asia
  • Extending the reach of a COVID-19 training program to support 10,000 health workers in five African countries
  • Enabling a disaster response team to expand Internet connectivity for 24 critical primary health and coordination facilities across eight countries
  • Expanding the scope of an innovative technology platform that supports fact-checkers in Latin America

Read about each project!

Established Continue reading

How To Setup Your Local Node.js Development Environment Using Docker

Docker is the defacto toolset for building modern applications and setting up a CI/CD pipeline – helping you build, ship and run your applications in containers on-prem and in the cloud. 

Whether you’re running on simple compute instances such as AWS EC2 or Azure VMs or something a little more fancy like a hosted Kubernetes service like AWS EKS or Azure AKS, Docker’s toolset is your new BFF. 

But what about your local development environment? Setting up local dev environments can be frustrating to say the least.

Remember the last time you joined a new development team?

You needed to configure your local machine, install development tools, pull repositories, fight through out-of-date onboarding docs and READMEs, get everything running and working locally without knowing a thing about the code and it’s architecture. Oh and don’t forget about databases, caching layers and message queues. These are notoriously hard to set up and develop on locally.

I’ve never worked at a place where we didn’t expect at least a week or more of on-boarding for new developers. 

So what are we to do? Well, there is no silver bullet and these things are hard to do (that’s why you Continue reading

Creating an AWS Security Group using Pulumi and Go

In this post, I’m going to share some examples of how to create an AWS security group using Pulumi and Go. I’m sharing these examples because—as of this writing—the Pulumi site does not provide any examples on how this is done using Go. There are examples for the other languages supported by Pulumi, but not for Go. The syntax is, to me at least, somewhat counterintuitive, although I freely admit this could be due to the fact that I am still pretty new to Go and its syntax.

As a framework for providing these examples, I’ll use the scenario that I need to create two different security groups. The first security group will allow SSH traffic from the Internet to designated bastion hosts. The second security group will need to allow SSH from those bastion hosts, as well as allow all traffic between/among members of the security group. Between these two groups, I should be able to show enough examples to cover most of the different use cases you’ll run into.

Although no example was present for Go when I wrote this article, readers may still find the API reference for the SecurityGroup resource to be useful nevertheless.

First, let’s Continue reading

Linkerd’s Little Secret: a Lightning Fast, Service Mesh Focused Rust Network Proxy

KubeCon + CloudNativeCon sponsored this post, in anticipation of Linkerd can deliver critical features such as transparent mutual TLS, gRPC load balancing, blue-green deploys, and golden metrics. But like all abstractions, these features come at a cost. Some of this cost is human in nature: the more complex the service mesh, the more effort required to operate it successfully. Some of the cost is system cost: a service mesh consumes CPU and memory, and introduces latency to the application. Linkerd’s goal is to minimize this cost by being the smallest, fastest service mesh for Kubernetes (a claim which