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 ]

The Hows, Whats, and Whys of Elixir Telemetry

Categories

Tags web-development programming erlang elixir

“What gets measured gets managed.” This quote – wrongly attributed to Peter Drucker – tells us that when we monitor information about something, we can make decisions about what it is we’re monitoring and where to go next. An article about monitoring in Elixir by Samuel Mullen.

The article deals with:

  • The Value of Monitoring
  • Lies, Damned Lies, and Vanity Metrics
  • Getting Started with Telemetry

Telemetry is a library giving us a dynamic dispatching library for metrics and instrumentations." It’s a simple library providing a standardized interface for capturing and handling metrics from monitored events.

Telemetry isn’t a revolutionary idea and the maintainers don’t claim it is. What they do claim is that it provides a simple and flexible means for capturing data. Good read!

[Read More]

10 ways to smarten up your customer experience

Categories

Tags miscellaneous career cio software

CMO asks the experts for some practical tips for better customer experience management and optimisation. An article by Vanessa Mitchell (www.cmo.com.au).

Does CX begin with the customer? Or the product? Is it just customer service, or does it need to feature throughout the customer journey, beyond purchase? Or perhaps it even begins before all this?

It is well known brands concentrate on CX are more profitable, and enjoy more customer loyalty. But even with the statistics, switching a product-focused company to a customer-focused one takes a lot of work and stakeholder agreement.

Some practical tips to make it work for brands mentioned:

  • Discover first
  • Embrace the emotion
  • Define your strategy
  • Invest in technology
  • Build a bigger picture

… for more follow the link to the article. Some good advice here!

[Read More]

Web components

Categories

Tags web-development css frontend miscellaneous open-source

Guide to web components by Vernes Pendić. Web components are one of the most useful, built-in, standardized (W3C), browser features added recently. This article will guide you through understanding what they are and how to use them.

Web components contain 4 sub-specifications that describe the available possibilities regarding DOM element manipulation. The first two, Custom elements and Shadow DOM, are more important and we’ll talk about them further.

The article content is split into:

  • Custom elements ⚙️
  • Shadow DOM 👻
  • Additional functionalities

As such not all browser vendors have taken advantage of all of its capabilities (list of browsers that support the specification) but with the help of polyfills, their use can be extended on the majority of browsers. There is also plethora of links to further resources and reading. Good read.

[Read More]

How to manage your machine learning workflow with DVC, Weights & Biases, and Docker

Categories

Tags big-data machine-learning software-architecture

James Le wrote this article in which he wants to show 3 powerful tools to simplify and scale up machine learning development within an organization by making it easy to track, reproduce, manage, and deploy models.

Managing a machine learning workflow is hard. Beyond the usual challenges in software engineering, machine learning engineers also need to think about experiment tracking, reproducibility, model deployment, and governance.

The article discusses the following:

  • Using version control with DVC
  • Tracking experiments with Weights & Biases
  • Deploying Models with Docker

DVC is a handy tool built to make machine learning models shareable and reproducible. It is designed to handle large files, data sets, machine learning models, and metrics as well as code. Using emerging platforms can keep your projects organized and make you more productive as a machine learning engineer. Nice one!

[Read More]

Federated Learning: Challenges, methods, and future directions

Categories

Tags machine-learning big-data data-science

What is federated learning? How does it differ from traditional large-scale machine learning, distributed optimization, and privacy-preserving data analysis? Learn from the blog post by Carnegie Mellon University.

Mobile phones, wearable devices, and autonomous vehicles are just a few of the modern distributed networks generating a wealth of data each day. Due to the growing computational power of these devices—coupled with concerns about transmitting private information—it is increasingly attractive to store data locally and push network computation to the edge devices.

The article deals with:

  • What is federated learning?
  • What are the challenges in federated learning?
  • Federated Learning @ CMU
  • Future Directions

Much more detail in the article. These challenging problems (and more) will require collaborative efforts from a wide range of research communities. Good read!

[Read More]

Simplifying Microservices on Kubernetes with Microsoft's Dapr (Distributed Application Runtime)

Categories

Tags microservices docker kubernetes software-architecture

Gokul Chandra put together this tutorial on hot topic of microservices. Majority of the issues that developers often run into while developing microservices for edge or cloud, revolve around event-driven needs.

Dapr (Distributed Application Runtime) uses a side-car pattern which is similar to side-car implementation in service mesh architecture, where a local proxy is used to route requests. A key feature of Dapr is that it is completely platform and language agnostic, meaning that it can run on any platform, any Kubernetes deployment, in the cloud or on-premise, and even on any IoT device.

Dapr exposes its APIs as a sidecar architecture, either as a container or as a process, not requiring the application code to include any Dapr runtime code. This brings-in the advantage of having Dapr integrated with existing and legacy code operated through a standard HTTP/gRPC interface. This facilitates enterprise developers to experience the benefits of microservices development without having to rewrite their applications.

The article then explains:

  • Dapr Kubernetes
  • Dapr concepts
  • Spec and service invocation
  • Bindings
  • Pub Sub and Broadcast

… and much more. Dapr today provides an extensive set of building blocks apart from service invocation and state management like: Publish and subscribe messaging between services, Event-driven resource bindings, virtual actors, Distributed tracing between services etc. Good read!

[Read More]

A mini-guide: Build a REST API as a Go microservice together with MySQL

Categories

Tags golang apis sql containers docker microservices

In this mini-tutorial, author creates a simple REST-API with a MySQL database. Author have recently found himself coding and deploying a lot of Go microservices and this is his experience and advice. By Johan Lejdung.

The article deals with:

  • Setup the API – routing
  • Database connection – using go-sql-driver
  • Structs & Dependencies
  • Database Migrations

This coupled with a docker-compose file – containing the database – makes development on multiple machines dead-simple. An undeployable microservice is of no use, therefore author added a Dockerfile to package the application for easy distribution.

The built image is a mere 10MB! The code is available in GitHub repo. Short and sweet!

[Read More]

Using Tableau with Kafka: How to build a real-time SQL dashboard on streaming data

Categories

Tags big-data data-science software-architecture apache

Scott Morris, Software Engineer at Rockset wrote this piece about building a real-time dashboard for operational monitoring and analytics on streaming event data from Kafka, which often requires complex SQL, including filtering, aggregations, and joins with other data sets.

Apache Kafka is a widely used distributed data log built to handle streams of unstructured and semi-structured event data at massive scales. Kafka is often used by organizations to track live application events ranging from sensor data to user activity, and the ability to visualize and dig deeper into this data can be essential to understanding business performance.

The article is then split into:

  • Streaming data from Reddit
  • Connecting Kafka to Rockset
  • Connecting Rockset to Tableau
  • Creating real-time dashboards

… and more plus all the code is included together with explanatory screen grabs. Interesting not just for aspiring data scientists!

[Read More]

GraphQL introduction and integrating GraphQL into your frontend stack

Categories

Tags learning open-source nosql apis restful

GraphQL is becoming the new way to use APIs in modern web and mobile apps. Free and powerful, concise course that will introduce you to GraphQL and integrating GraphQL into your frontend stack, in the shortest amount of time possible. By hasura.io.

The tutorial explores the fundamentals of GraphQL and the things that make GraphQL especially suitable for modern applications, like its realtime capabilities! The course is light on opinions so that once you grok the fundamentals you can go on to choose your favorite libraries, tools and tailor your workflow.

Key topics and takeways:

  • GraphQL vs REST
  • GraphQL queries, mutations, subscriptions
  • Setting up a GraphQL client with Apollo
  • Integrating GraphQL queries in your react app
  • Integrating GraphQL mutations with query variables to handle form input
  • Updating local state after a GraphQL mutation (form input) using Apollo cache
  • Optimistic updates to local state and UI after GraphQL mutations for a slick UX
  • Using subscriptions with a subscriptions hook
  • Building a real-time feed with notifications using mutations and subscriptions

Detailed free introduction into GraphQL which will take you less than 2 hours. Excellent!

[Read More]

Object Oriented Programming in Python vs Java

Categories

Tags python programming java oop

An article by Jon Fincher. This article compares and contrasts object-oriented programming support in Python vs Java.

Java programmers making a move to Python often struggle with Python’s approach to object-oriented programming (OOP). The approach to working with objects, variable types, and other language capabilities taken by Python vs Java are quite different. It can make switching between both languages very confusing.

The article explains how to:

  • Build a basic class in both Java and Python
  • Explore how object attributes work in Python vs Java
  • Compare and contrast Java methods and Python functions
  • Discover inheritance and polymorphism mechanisms in both languages
  • Investigate reflection across Python vs Java
  • Apply everything in a complete class implementation in both languages

Code examples for both languages included. It isn’t a primer on object-oriented programming. Readers should have good knowledge of Java, and also be familiar with coding Python.. Nice one!

[Read More]