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 ]

ReactJS testing migrating from Tape to Jest

Categories

Tags tdd nodejs javascript

Thomas Greco is the author of the post sharing his feedback about recently using Jest while contributing to the next-static project after coming across it on Next.js’ repository. He shares a ton of experience writing unit tests and explores the topic a little bit.

He provides examples how to write small unit test in Tape and then migrate it to the Jest.

Author likes that Jest makes it easy to get begin testing code. It was so easy that it lead to the confusion. He also likes snapshot tests - it will take a snapshot of a component each time a test is run. If there is an existing snapshot, Jest will compare the two to make sure that nothing in our UI has changed unexpectedly.

[Read More]

Privacy and trustworthiness for web notifications

Categories

Tags programming web-development infosec

The Internet Engineering Task Force (IETF) nice short article / announcement about privacy of web notifications. HTTPS (HTTP over TLS) is possibly the most widely used security protocol in existence. HTTPS is a two-party protocol; it involves a single client and a single server. This aspect of the protocol limits the ways in which it can be used.

The recently published RFC 8188 provides protocol designers a new option for building multi-party protocols with HTTPS by defining a standardized format for encrypting HTTP message bodies.

The WebPush protocol (RFC 8030) provides an example of the how the encrypted HTTP content coding could be used. The article then goes on and describes parties in WebPush: a user agent (in most cases this is a Web browser), an application server, and a push service.

You’ll also find links to relevant documentation and papers in the article.

[Read More]

How Hotjar built 100% distributed company

Categories

Tags agile teams

Short article about creating a distributed company. Working remotely 100% of the time may be a dream for many of us. But as much as it sounds exciting and easy, it comes with major challenges. From author’s own experience, bad internet connection which makes you repeat yourself endlessly is just the beginning. Hotjar is a company providing all in all analytics and easy way to truly understand your web and mobile site visitors.

Revealing is the fact that a total transparency is the core for successful remote company. One of the things that is so key and pivotal to make a remote company work is transparency. As a remote company, we understand that sitting behind a desk in an office together doesn’t mean you do a better job. Your work speaks for itself.

Hotjar’s team members know far more about their company than a typical employee, including 100% of the financials and company performance data.

And also in the article:

  • How they work and communicate
  • An onboarding process that rocks
  • And what to be prepared for if you join Hotjar
  • How to deal with feeling of isolation

Interesting article - we liked how they managed 100% remote work for everybody.

[Read More]

Comprehensive and visual classification of wireless IoT protocols and network tech

Categories

Tags iot servers

Nicolas Windpassinger detailed article with an overview of wireless IoT protocols and technologies (with some criteria to consider when making choices). Wireless IoT protocols, standards, solutions and technologies for connectivity and data communications come in many flavors for many potential IoT use cases.

Wireless IoT connections and thus the use of wireless IoT protocols are on the rise, also in the Industrial IoT (IIoT) and Industry 4.0. There are slightly alternative ways to look at IoT wireless protocols and classify the various types of wireless technologies within each category - and that is precisely what authors do in this overview.

Some of the topics covered:

  • The complexity of IoT connectivity and wireless IoT protocols – with use cases
  • Several wireless IoT protocols in the IoT network layer in evolution and the dimension of distance
  • Wireless IoT protocols per range and reach – from body area networks to WWAN and LPWAN
  • Choosing protocols and technologies in the wireless IoT network layer
  • Leading LPWA technologies

If you need to design IoT project this is a must read. Plenty of information with accompanying charts and resources for further reading.

[Read More]

Apache Spark natural language processing library

Categories

Tags big-data data-science

Excellent community blog and effort from the engineering team at John Snow Labs, explaining their contribution to an open-source Apache Spark Natural Language Processing (NLP) library. Apache Spark is a general-purpose cluster computing framework, with native support for distributed SQL, streaming, graph processing, and machine learning.

The NLP Library is written in Scala with no dependencies on other NLP or ML libraries. It natively extends the Spark ML Pipeline API. It comes out of the box with:

  • Tokenizer, Normalizer, Stemmer, Lemmatizer
  • Entity Extractor, Date Extractor, Part of Speech Tagger, Spell checker
  • Named Entity Recognition, Sentence boundary detection, Sentiment analysis

In addition, given the tight integration with Spark ML, there is a lot more you can use right away when building your NLP pipelines. Detailed technical post with accompanying charts and schemas. Great article!

[Read More]

Network functions virtualization: all roads Lead to OPNFV

Categories

Tags devops cloud

In his blog post Amar Kapadia gives comprehensive description of the various open source NFV (Network Function Virtualization) projects integrated by OPNFV (Open Platform for NFV) and the carrier grade features contributed back to these upstream projects by the community.

OPNFV is the only open source project that integrates, deploys, and tests a wide range of open source NFV projects on a continuous basis:

  • NFV infrastructure (NFVI)
  • Virtualized infrastructure manager (VIM)
  • SDN Controller
  • Management and network orchestration (MANO)

Like OPNFV, OpenDaylight (ODL), is also a Linux Foundation project. It is a full blown modular SDN controller that caters to multiple use cases such as NFV, IoT, and enterprise applications. Plethora of information in this post and links to many resources and a book.

[Read More]

How to operate kubernetes network

Categories

Tags kubernetes devops cloud

Julia Evans excellent blog post focusing on how to set up your Kubernetes network. She hasn’t had seen much about how to operate the network and be confident that it would not create a lot of production incidents for you down the line. And that’s why she dives into kubernetes networking in this post.

She tries to home in at these things:

  • Avoiding networking outages in production is important
  • Operating networking software is hard
  • Thinking critically about major changes to your networking infrastructure and the impact on your API integration

Amongst some interesting points made is a notion that networking software often relies very heavily on the Linux kernel. And to fix a production networking issues you often need a lot of expertise. She feels like as an organization running your own Kubernetes cluster you need to make a pretty large investment into making sure you understand all the pieces so that you can fix things when they break.

Good coverage of the kubernetes networking topic from newcomer perspective with some example code.

[Read More]

Golang microservice starter kit

Categories

Tags programming golang microservices

Bruce Wang detailed article in which you learn how they went about creating microservices starter kit when moving from monolithic architecture to self contained microservices.

They created sample app which contains several capabilities and it may not all make sense for a new service and to cover a multitude of integrations so any new service can pick and choose what it needs. The main features supported:

  • Continuous integration with CircleCI and Coveralls
  • PostgreSQL support with migrations using Flyway
  • Synq API integration using our Golang SDK
  • Gin Web framework
  • 100% test coverage via various mocking and code organization techniques

Loads of example code and organization explained in this article. And if you fancy, you can help author with the issues on GitHub. Good read!

[Read More]

Containers versus serverless computing

Categories

Tags software-architecture containers

Michael Churchman from Rancher Labs nice blog post in which he takes a look at what you need to know about serverless computing, and how it should figure into your IT strategy. Serverless computing is a hot topic right now - this article should help you to answer common questions like: Is serverless computing a replacement for containers? Or is it just another popular technology that can be used alongside containers?

Serverless computing of the type represented by AWS Lambda can be an extremely valuable resource, and if it isn’t already part of your DevOps delivery chain, it probably should be.Serverless computing is very well suited to a variety of tasks, but it is far from being an all-around substitute for deploying and managing your own containers.

Author then describes:

  • How serverless works
  • What serverless computing does well
  • Serverless use cases
  • What containers can do better
  • What are the limists

And more in the article. Give it a go!

[Read More]

Data access object pattern in microservice architecture

Categories

Tags software-architecture programming php microservices

Everett Griffiths is author of the blog post which focuses on the Data Access Object design pattern and how it can be used to communicate with multiple data sources. The article will demonstrate a solution using PHP and dependency injection to straddle multiple data sources in a scalable and testable way. Similar results can be obtained in other languages or using different organizational approaches.

He presents very interesting user case when application needs to retrieve data from multiple sources. The example with bad way to update the data model is presented with supporting code and then better alternative suggested.

This article demonstrates one way to split code execution across multiple classes by injecting one class into another. Accessing data across various microservices is only one possible use of this trick of sequential chaining. Drawbacks are listed as well. All in all - good read!

[Read More]