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 ]

Why AI is perfect for mobile apps

Categories

Tags big-data app-development data-science analytics

Why AI is the perfect accompaniment to modern mobile app development and how it’s already being used to transform the apps we use every day. Artificial intelligence has been breaking into the mobile app development industry and becoming part of more developers’ tools in their wheelhouse. This is because AI and machine learning are able to provide many benefits to not only the team building the application but to the end user as well. By @ninetwothree.co.

The article then guides you through use cases for ai in mobile apps:

  • Face recognition
  • Facial identification
  • Voice recognition
  • Vocal identification
  • Recommendations for using ai in mobile development

Based on user input, mobile AI can recommend ever better content to the user. Customers save time on finding the products they truly desire. Unknown products that might enhance the individual’s life can pop up on the screen with a higher probability. Good read!

[Read More]

Five ways to reduce costs with containers

Categories

Tags microservices devops serverless containers cloud

In this article, Google Cloud Product Manager Rachel Tsao explores how to save on compute costs with modern container platforms. Many tech companies and startups are built to operate under a certain degree of pressure and to efficiently manage costs and resources. These pressures have only increased with inflation, geopolitical shifts, and supply chain concerns, however, creating urgency for companies to find ways to preserve capital while increasing flexibility. The right approach to containers can be crucial to navigating these challenges. By Rachel Tsao.

The ways to control compute costs with containers:

  • Identify opportunities to reduce cluster administration
  • Consider serverless to maximize developer productivity
  • Save with committed use discounts
  • Leverage cost management features
  • Match workload needs to pricing models

Beyond cost savings, many tech and startup companies are seeking improved business agility, which is the ability to deploy new products and features frequently and with high quality. Excellent read!

[Read More]

Journey of a microservice application in the Kubernetes world

Categories

Tags microservices devops kubernetes containers cloud

Tutorial describing how to deploy a webhooks application on a real production cluster. We will create this cluster on Civo. Civo is a cloud provider with a unique offering of managed Kubernetes clusters based on k3s. By Luc Juggery.

Tutorial then dives straight into:

  • Creation of a k3s cluster
  • Installation of a Ingress Controller
  • Running the application
  • Testing the whole thing

Civo clusters are shipped with a StorageClass as well, we’ll use it in a next article adding persistent storage to the application’s database. Traefik ingress controller, helm, Let’s Encrypt for TLS certificates - are all used together with newly created cluster. You also get plenty of screenshots and code together with config fiels used in the article. Nice one!

[Read More]

Designing asynchronous microservices with AsyncAPI

Categories

Tags microservices devops apis cloud

In the microservices world, it’s essential to design applications carefully so they scale and function efficiently. When we build services, it’s also important to keep performance in mind so that microservices remain performant as they grow in size. By Vyom Srivastava.

Asynchronous communication is when one service sends a message to another service without waiting for a response. This allows a microservice to continue with its work instead of waiting for a response before proceeding further. Author covers everything you need to know about designing microservices with AsyncAPI:

  • What is AsyncAPI?
  • Specifications
  • Tutorial
  • Code explanation

AsyncAPI is specifically designed for use with message-based architectures such as Pub/Sub systems, queues, and event streams. AsyncAPI specifications are written in YAML or JSON and are composed of three main sections: AsyncAPI version, info and channels. Good read!

[Read More]

Introducing workerd: Open source workers runtime

Categories

Tags serverless devops software-architecture apis cloud infosec

Introduction to workerd, the JavaScript/Wasm runtime based on the same code that powers Cloudflare Workers. workerd is Open Source under the Apache License version 2.0. workerd shares most of its code with the runtime that powers Cloudflare Workers, but with some changes designed to make it more portable to other environments. By Kenton Varda.

This introduction walks through:

  • Self-hosting workers
  • Local development and testing
  • Programmable proxies
  • Server-first
  • Web standard APIs
  • Nanoservices
  • Homogeneous deployment
  • Capability bindings: cleaner configuration and SSRF safety
  • Always backwards compatible

workerd is not just another way to run JavaScript and Wasm. Our runtime is uniquely designed in a number of ways. It’s important to note that workerd is not, on its own, a secure way to run possibly-malicious code. If you wish to run code you don’t trust using workerd, you must enclose it in an additional sandboxing layer, such as a virtual machine configured for sandboxing. Nice one!

[Read More]

Kotlin JDSL: Let's use Kotlin to easily write reactive Criteria API

Categories

Tags programming kotlin functional-programming jvm apis

In this post, we’ll be looking at Kotlin JDSL Reactive modules. While many of you might have a preconceived notion that JPA cannot be reactive, Hibernate released a reactive JPA library called Hibernate Reactive. By Hyunsik Kang.

Before the release of Hibernate Reactive, we used R2DBC as there were no existing reactive libraries for JPA. However, R2DBC doesn’t support object relations and automatic change detection, which are some of JPA’s greatest advantages. Simply put, R2DBC is basically an SQL mapper. If you can’t use R2DBC, you can use Reactor with synchronous JPA as an alternative.

The main sections of the article:

  • Introducing Hibernate Reactive
  • Things to improve on Hibernate Reactive
  • Introducing Kotlin JDSL Reactive
  • The classes and interfaces required for generating reactive queries
  • Kotlin JDSL Reactive vs Hibernate Reactive

Hibernate Reactive is quite difficult to use because of the inherent characteristics of the asynchronous code in Criteria API and Hibernate Reactive. Kotlin JDSL Reactive was designed to improve upon these shortcomings. Good read!

[Read More]

How to program an IoT device in Elixir using Nerves?

Categories

Tags programming iot erlang functional-programming elixir

Elixir is a great choice language for IoT devices due to its fault-tolerant nature, but also because of the ability to handle a lot of concurrent I/O operations thanks to the BEAM scheduler running under the hood. By Artur Ziętkiewicz.

In this article you will find:

  • Minimum requirements
  • Configuration
  • Setting up an Over-The-Air updating
  • Adding web interface with Phoenix
  • Other UI libraries

Nerves is a platform that comes with a set of tooling that simplifies the process of creation and maintenance of an Elixir app on IoT devices. Software built using it are already battle-tested and working on production. Nerves supports most common boards (for example, every type of Raspberry Pi), but there’s one restriction: it has to be able to run Linux, that’s because Nerves actually runs your Elixir program on a lightweight Linux distro. Very informative!

[Read More]

Implement step-up authentication with Amazon Cognito

Categories

Tags aws devops infosec app-development

In this blog post, you’ll learn how to protect privileged business transactions that are exposed as APIs by using multi-factor authentication (MFA) or security challenges. These challenges have two components: what you know (such as passwords), and what you have (such as a one-time password token). By using these multi-factor security controls, you can implement step-up authentication to obtain a higher level of security when you perform critical transactions. By Salman Moghal, Mahmoud Matouk, and Ozair Sheikh.

The main points explained in the article:

  • Solution architecture
  • Identity provider
  • Protected backend
  • Data design
  • Authorizer
  • Initiate auth endpoint
  • Respond to challenge endpoint
  • Deploy and test the step-up authentication solution
  • Step-up solution design details

This solution uses several Amazon Cognito API operations to provide step-up authentication functionality. Amazon Cognito applies rate limiting on all API operations categories, and rapid calls that exceed the assigned quota will be throttled. Nice one!

[Read More]

Java memory model

Categories

Tags jvm java programming app-development

The goal of this post is to get familiar with how memory works in java. We will see how it works in combination with the OS it runs on, how it’s structured and how it functions internally inside a JVM. By Nermin Karapandzic.

The article is split into:

  • Heap
  • Stack
  • Code cache
  • How does JVM manage heap
  • Garbage collection in more detail
  • Phases of garbage collection

Heap memory is used for dynamic allocation of java object and java classes in runtime. Newly created objects are always saved into heap space while the references to these objects are always in stack memory. Good read!

[Read More]

PyTorch on Google Cloud: How to train PyTorch models on AI Platform

Categories

Tags gcp google data-science python json

PyTorch has been predominantly used in research and in recent years it has gained tremendous traction in the industry as well due to its ease of use and deployment. By Rajesh Thallam, Vaibhav Singh.

Google Cloud AI Platform is a fully managed end-to-end platform for data science and machine learning on Google Cloud. Leveraging Google’s expertise in AI, AI Platform offers a flexible, scalable and reliable platform to run your machine learning workloads. AI Platform has built-in support for PyTorch through Deep Learning Containers that are performance optimized, compatibility tested and ready to deploy.

Authors then explain:

  • Why PyTorch on Google Cloud AI platform?
  • Use case and dataset
  • Creating a development environment on AI Platform Notebooks
  • Creating a Notebook instance with the pre-built PyTorch DLVM image
  • Notebook instance with custom container
  • Training a PyTorch model on AI Platform training

You will find plenty opf resources for further study in this article. Authors explored Cloud AI Platform Notebooks as a fully customizable IDE for PyTorch model development. We then trained the model on Cloud AI Platform Training service, a fully managed service for training machine learning models at scale. Nice one!

[Read More]