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 ]

Handling 'Failure at scale' in Azure Functions triggered by IoT Hub

Categories

Tags serverless apis web-development azure devops

An article by Stas(Stanislav) Lebedenko about how to tackle exceptions and re-run failed messages. One of the Serverless solution benefits is a performance at scale. As a result, you can get ‘Failure at scale’ if something goes wrong. Thus it’s crucial to introduce error handling for your Azure Functions project early.

The purpose of the dead-letter queue (DLQ) is to hold messages that cannot be delivered to any receiver, or messages that could not be processed. Link to Azure Service Bus queues docs.

His solution relies on:

  • Azure Storage Queue
  • Azure Function with input trigger for IoT Hub(Event Hub) messages endpoint and output trigger to Storage Queue
  • Notification alert triggered by Queue transaction count in 30 minutes
  • Azure Function for a replay of the messages stored in Storage Queue

The author also provides useful info about:

  • The dead letter queue or poison queue?
  • Error handling via Azure Storage Queue
  • Azure infrastructure and Functions
  • Notification setup

Links to further reading together with screen-grabs and code examples also provided. Good read!

[Read More]

REST and Hypermedia and GraphQL and gRPC and Event-Driven

Categories

Tags apis web-development software-architecture restful

An essay on apievangelist.com about their drive to research API industry over the last couple of years in order to help people understand how they can invest in a diverse API toolbox. It should help you to develop the awareness they need to be successful in designing, developing, and delivering APIs at scale, for a variety of use cases.

Counteracting some of the more vendor focused storytelling in the space that works to confuse, distort, and shame folks for their approach to delivering APIs – providing a more pragmatic view of how we should doing APIs.

The article goes about:

  • REST is where you begin
  • Hypermedia reflects the web
  • Schema powered GraphQL
  • gRPC delivering performance
  • Event-driven approaches
  • Invest in your API Toolbox

gRPC excels at delivering digital resources at scale internally and in B2B environments. gRPC tends to take advantage of HTTP/2, and represents the evolution of the HTTP standard for many.

Doing APIs well takes experience. Being able to competently switch from technology to technology takes confidence, and an awareness of the strengths and weaknesses of each solution. Nice read!

[Read More]

Simplicity in design: 4 ways to achieve simplicity in your designs

Categories

Tags ux web-development management miscellaneous

Euphemia Wong wrong this piece about how to learn ways to achieve simplicity in your designs and recognize why certain designs are overly complex. Simplicity is also one of the key reasons why some companies do better than their competitors.

What is simplicity? Simplicity is all the rage these days. It is a design philosophy that is championed by many successful companies and fans of those companies alike.

Simplicity in design isn’t just about the minimal colors you use or the whitespace you include, it’s about going deep into your user’s minds and using that understanding to design a product that rids itself of inconsequential elements and closes the gap between the user’s goals and the means to achieve those goals through your system.

Ways to achieve simplicity in your designs:

  • Maintain clarity: understand and design for your users’ main goals
  • Make use of automation: design for a minimum amount of conscious and cognitive effort
  • Limit options: design for a strong “information scent”
  • Reduce the gulf of execution: make your users see how your product can help them achieve their goals

It’s not easy to design for simplicity. It’s not supposed to be. Your job as a UX designer is to dig deep into the complexities of everything from user goals to system constraints in order to output a beautiful and easy to use design that will help users achieve their goals effortlessly. Nice one!

[Read More]

Explainer: What is a quantum computer?

Categories

Tags miscellaneous infosec learning machine-learning

This is the first in a series of explainers on quantum technology. How it works, why it’s so powerful, and where it’s likely to be most useful first. By Martin Giles.

A quantum computer harnesses some of the almost-mystical phenomena of quantum mechanics to deliver huge leaps forward in processing power. Quantum machines promise to outstrip even the most capable of today’s – and tomorrow’s – supercomputers.

The secret to a quantum computer’s power lies in its ability to generate and manipulate quantum bits, or qubits. The article explains:

  • What is a qubit?
  • What is superposition?
  • What is entanglement?
  • What is decoherence?
  • What is quantum supremacy?
  • Where is a quantum computer likely to be most useful first?

The machines are also great for optimization problems because they can crunch through vast numbers of potential solutions extremely fast. Great read!

[Read More]

Why less is more is the secret to cloud-native computing

Categories

Tags cloud software-architecture miscellaneous infosec

Jason Bloomberg wrote this article about how it seems that the entire IT infrastructure landscape is advancing so quickly, it might as well be lava under our feet. It is imperative that we find some island, some core of stability, lest the shifting magma of innovation and disruption burn us to a crisp.

Cloud-native computing takes the best practices of cloud computing –- horizontal scalability, resilience, and end-user configurability, to name a few – and extends them to the entire IT environment.

He then describes what he considers such an island: cloud-native computing. Here is why:

  • Bringing the cloud to all of it
  • “Less” #1: Codeless
  • “Less” #2: Trustless
  • “Less” #3: Stateless

As applications scale up and down in a cloud-native environment, microservices appear and disappear on the order of milliseconds. The only way to configure an infrastructure to handle such dynamic behavior at scale is via a codeless approach. The only way to secure such application assets is via zero trust. And the only way such applications can keep track of anything and still scale is by managing state in an inherently stateless environment. Good read!

[Read More]

How to read a WebPageTest waterfall chart

Categories

Tags web-development frontend performance

Matt Hobbs put together this guide on web page test waterfall charts. He pulled together many bits of information into a single blog post.

The article dives in and explains:

  • Basic layout of the waterfall chart user interface
  • Vertical lines
  • Common scenarios, including
    • DNS-prefetch
    • Preconnect
    • Prefetch
    • Preloading
  • HTTP/1.1 vs HTTP/2
  • Online Certificate Status Protocol (OCSP)
  • Firefox enhanced tracking protection

… and much more. We liked how he explained OCSP bad performance and how you should look into enabling OCSP stapling on your server. Nice one!

[Read More]

Incorporating UX work into your agile backlog

Categories

Tags web-development ux miscellaneous how-to

In this article author describes three different backlog models which enable teams to keep track of UX work in their Agile processes. Each model comes with pros and cons. By Rachel Krause.

There is no definitive rulebook when it comes to Agile backlogs – every team may structure its backlog differently. At its core, this is a good thing: every team has its own way of working so a one-size-fits-all process isn’t practical.

The article then goes over:

  • Backlogs in Agile
  • Backlog structure
  • Unified backlog: Explicit UX and development items in the same backlog
  • Task-Based unified backlog: Role-Based work expressed as tasks within backlog items
  • Multiple Backlogs

The great thing about backlogs is that you’re able and required to be flexible. Don’t be afraid to mix and match different methods until you find something that works for your team.

[Read More]

Here's what we learned about page speed

Categories

Tags web-development programming performance

Backlinko.com analyzed 5.2 million desktop and mobile pages and in this article they published what they learned about page speed.

The authors learn which factors impact page speed. First, they established worldwide benchmarks for Time To First Byte (TTFB), Visual Complete and Fully Loaded load time metrics. Then, they looked at how image compression, Content Delivery Networks (CDN) and hosting impact site loading speed.

Their data revealed some very interesting (and surprising) insights:

  • Average desktop Time to First Byte (TTFB) speed is 1.286 seconds on desktop and 2.594 seconds on mobile
  • On desktop, CDNs have the biggest impact on TTFB. However, on mobile devices, the number of HTML requests seems to affect TTFB the most
  • Larger pages take 318% longer to visually load compared to smaller pages
  • Light pages fully load 486% faster than large pages
  • Third-party scripts significantly slow down page loading speed
  • Using responsive images results in the best overall image loading performance. Use of WebP was significantly less effective at reducing image load times

… and much more in this article full of revealing facts. Great resource for anybody into web development!

[Read More]

How to make your Angular 8 forms reactive

Categories

Tags javascript nodejs performance

Angular provides two main approaches to handling forms – the template-driven method and the model-driven method which involves reactive forms. This article focuses on reactive forms. By Nwose Lotanna.

Reactive forms are a platform for achieving the model-driven approach of form handling in Angular. It is the most powerful and scalable way of form handling in Angular. As opposed to the template-driven forms that use template directives to build the skeleton of a form, reactive forms let you build out a form and react to the changes in the values inside the component class.

The article covers following:

  • What are reactive forms?
  • Why are reactive forms important?
  • Registration of reactive forms
  • Form controls
  • Data binding in reactive forms
  • Replacing a data value

Straight to the point article with all the code included. Sweet!

[Read More]

Build a PWA using only vanilla JavaScript

Categories

Tags javascript programming nodejs teams app-development

Sayan Mondal wrote this article on building progressive web app. A Progressive Web App (PWA) works like any other normal app but with a lot of added features and a lot less hassle. They are fast, reliable, and can work perfectly in an offline environment.

A Progressive Web App (PWA) is a web app that uses modern web capabilities to deliver a native app-like experience to users. These apps meet certain requirements (see below), are deployed to servers, accessible through URLs, and indexed by search engines.

The article explains:

  • Why should we use it?
  • Creating a Basic PWA (UI and GitHub repo with PWA HTML code)
  • Web app CSS
  • Importing Google Fonts
  • Adding Media Queries
  • Add Vanilla JavaScript Functionality
  • What is a Web App Manifest?

… and much more. You will get not only instruction how to create your PWA but also how to deploy and install it. Nice one!

[Read More]