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 ]

Kotlin -- The suspend modifier under the hood

Categories

Tags java kotlin programming app-development

Kotlin coroutines introduced the suspend modifier in our daily life as Android developers. By Manuel Vivo.

In this tutorial author will look under the hood and answer the question: How is the compiler transforming the code to be able to suspend and resume the execution of coroutines? How is the compiler transforming the code to be able to suspend and resume the execution of coroutines?

The article content is split into sections:

  • Coroutines 101
  • Suspend under the hood
  • Continuation interface
  • Using different Dispatchers
  • The generated State machine

The Kotlin compiler will create a state machine for every suspend function that manages the coroutine’s execution for us! Very useful for anybody interested in Kotlin!

[Read More]

Zero downtime Laravel deployments with Laravel Deployer and Github Actions

Categories

Tags php devops web-development cicd

Michael Brooks is author of this blog post about Github actions and how they can automate your entire workflow. From building your assets to running your testing and deployment strategies.

Github Actions is very similar to other services such as TravisCI, CircleCI, GitLab Pipelines etc, but if you already have your projects on GitHub, then it makes sense to get Actions working as well.

The article then deals with:

  • Setting up Github Actions
  • Scaffolding the workflow
  • Defining our jobs
  • Building your JavaScript and CSS assets

Jobs are individual runners or tasks and one job can depend on another. This means if a job fails, and the next one depended on that job, then it won’t run. For example, before we can test our app, we need to ensure our assets are built and if we need all tests to pass before deployment, then we need to ensure that runs successfully too. Perfect!

[Read More]

How to use Netlify to deploy a free Go web application

Categories

Tags golang programming devops

Netlify is an web host that specializes in hosting static files. But Netlify also has various solutions for dynamic hosting, and their “Functions” service turns out to be a very easy way to host a Go web application, often for free. In this post, you will get walk through a demo repo author made that shows how to do this. By Carl M. Johnson.

Netlify’ documentation is pretty good, so it is recommended to consult them for more in-depth information. You can see the final version of all of the code on Github and a live demo on Netlify.

The goal is to have a backend fetch the RSS feed we need and return a JSON Feed from the same origin as our website. Go makes it easy to write a service to turn a URL with XML in it into JSON. A quick Go application that uses the feed2json module to create an HTTP server is just few lines of code long.

However Netlify use an AWS Lambda, rather than a normal HTTP service, so we’ll either need to rewrite our service to use Lambda or find an adapter. To learn how to do it, click and follow link to original article. Well done!

[Read More]

How to create a small business continuity plan for your startup

Categories

Tags miscellaneous management how-to

Disasters like floods, earthquakes, fires, or cyber attacks rarely arrive announced. Is your company adequately prepared for such events? A business continuity plan provides a rundown of the procedures a company must follow in the face of an emergency to continue business operations during and after a disaster. By brex.com.

Business continuity is a company’s ability to maintain its operations and critical business functions during and after a disruption. The business continuity plan (BC or BCP) provides instructions to an organization on how to proceed after a disruptive event. It includes a list of procedures to follow, covering human resources, business processes, protection of assets, and more.

The article further reads about:

  • What is business continuity?
  • Who needs business continuity planning?
  • The business continuity plan outline
  • Five general steps to create a BC plan

Once you have a snapshot, develop a plan. Think of creating a plan of loose guidelines instead of a strict code of regulations so personnel can follow an outline yet still adapt to the type of business disruption. Good read!

[Read More]

How container networking affects database performance

Categories

Tags database sql performance devops kubernetes

An article by Percona team about building and releasing Operators for Kubernetes to run traditional databases in a cloud-native fashion. They released Percona Server for MongoDB and Percona XtraDB Cluster; they were chosen because they both feature replication systems that can be made to work effectively in a containerized world.

The article is split into:

  • Benchmark methodology
  • What CNI plugins we tested
    • Project Calico
    • Flannel
    • Cilium
    • Weave (weave-net)
    • Intel SR-IOV and Multus
    • Kube-Router

For full results please click to the original article. One very interesting result was how strong the correlation was between network throughput, as measured by iPerf3, and database throughput, as measured by sysbench. You will also get video with a talk on the topic. Nice one!

[Read More]

Quick front-end integrations through components

Categories

Tags frontend web-development programming

Integrations between people and projects are a challenge for every organization. For teams that work remotely, it’s twice as challenging. Integrations should be made as simple and “low-touch” as possible. By Jonathan Saring.

Luckily enough, modern frontend is built with components. And, we can leverage Bit to achieve quick and simple component-driven integrations between teammates working on different projects. Bit lets front-end teams expose components from each other’s projects and quickly use their APIs wherever they’re needed. It makes the process much simpler and more effective than before through a set of unique features and capabilities throughout the component’s lifecycle.

In this post, author explains and demonstrate:

  • How to quickly expose components from your project and let other teammates use their APIs in their own projects (no repo splitting)
  • How these components can be quickly integrated into new projects using Bit’s ability to “source” components for local code editing
  • How your team can share all your components for reuse and expose their APIs through the bit.dev component cloud.
  • And finally, how you can connect Bit.dev to GitHub and Slack to create one super-workflow for building with components together

Excellent read and as a bonus you will get video tutorial as well.

[Read More]

Building a CLI chat app with Go and WebSockets

Categories

Tags programming golang software

In this tutorial you will elarn about more about the WebSockets protocol. Go provides a WebSocket library, but the Go team advises to use other solutions built by the community. By Gustavo Caso.

Author used websocket – a minimal and idiomatic WebSocket library for Go. At a time it was the most recent of all and had support for context and rate-limiting. Once we move away from deciding on the WebSocket library, we need a way to route request to our server, Go provides a fantastic http package for doing that.

The tutorial and provided code splits content between client and server. The server handles new WebSocket connections, listen to messages on those socket connections and broadcast messages to the right users. Also, it takes care of adding and removing users to different chat rooms.

The client connects to the server, listens to messages that are sent to it and print them. It also allows the users to submit new messages to the server. For the details follow the link to the original article. Nice one!

[Read More]

Building a minesweeper game using React Hooks

Categories

Tags programming javascript react ux

Author of this blog post will share his experience and learnings with a project to improve my knowledge of the most significant ReactJS feature in recent time – hooks. Tutorial is about building Minesweeper clone. TypeScript was also used. By Ivaylo.

The article walks you through:

  • Development environment & setup
  • Game styling using retro library React95
  • Game logic
  • React hooks
  • State, without Redux
  • TypeScript 3.7

… and more. Author is now convinced that hooks are the future of React together with concurrent rendering, which will be the next major feature. Source code is available on GitHub. Easy read!

[Read More]

User authentication with Amplify in React Native and Expo app

Categories

Tags react javascript web-development app-development infosec

AWS Amplify is a fantastic framework that helps you develop your web or mobile applications quickly. By Aman Mittal.

AWS Amplify not only does it enhances your current tech stack, but it actually has many built-in features that you don’t have to worry about, especially when your app is in the development process. Some features include authentication, GraphQL and REST API support, a way to manage user pool, notifications.

Amplify can be integrated with most popular frontend frameworks like React, Vue, Angular, Ionic, React Native, or plain old vanilla JavaScript, if you’d like.

The article then reads about:

  • Requirements
  • Creating a new React Native App
  • How to create a new AWS IAM user
  • Initializing & Integrating Amplify SDK
  • Enable Amplify Auth Resource
  • withAuthenticator: Adding a High Order Component
  • Testing the default Amplify auth flow

This tutorial takes a look at one of the most important features of an application: authentication. Excellent read!

[Read More]

Five ideals for the modern enterprise

Categories

Tags startups teams miscellaneous career

Gene Kim is a researcher and an author who has been studying high performing IT organizations for over two decades. HIs take on the five ideals for the modern enterprise.

He notes why each is essential for the modern enterprise:

  • Locality and simplicity
  • Focus, flow and joy
  • Improvement of daily work
  • Psychological safety
  • Customer focus

This post covers three objectives that The Unicorn Project book looks to address, which is to describe what successful transformations have looked like to help others replicate those outcomes, the challenge of trying to figure out how you get data where it needs to go, and how we can overcome the strong opposition to the new ways of working.

Excellent read for any entrepreneur!

[Read More]