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 ]

Deep dive on Angular I18n with ngx-translate

Categories

Tags frontend-and-mobile backend-development product-and-design

Learn how to internationalize Angular apps step by step with the help of ngx-translate, one of the most popular open-source libraries for i18n. By Ankit.

One of the most popular open-source i18n libraries, ngx-translate, lets you define translations for your app and switch between them dynamically. You can either use a service, directive, or pipe to handle the translated content. In this Angular 13 tutorial, we will learn how to use them all with the help of a small demo app.

For demonstration purposes, we will create a sample feedback form for Phrase, the most reliable software localization platform on the market, and launch our demo app in two different languages – English and German.

The article is very detailed and captures:

  • Why use ngx-translate instead of Angular i18n?
  • Configuring ngx-translate for an Angular app
  • Updating the AppModule
  • Creating a nav-bar component
  • Creating a model
  • Creating translation files
  • Using the translate pipe
  • Using the translate directive
  • Dynamic translation keys
  • Exploring TranslateService
  • Creating a Feedback Component

… and much more. There are Angular code examples with good explanation. Nice one!

[Read More]

Ray on databricks

Categories

Tags data-and-analytics backend-development ai-and-machine-learning

Ray is an open-source project first developed at RISELab that makes it simple to scale any compute-intensive Python workload. With a rich set of libraries and integrations built on a flexible distributed execution framework, Ray brings new use cases and simplifies the development of custom distributed Python functions that would normally be complicated to create. By Stephen Offer.

The article then makes a good job explaining the following:

  • Why need another distributed framework on top of Spark?
  • A simple introduction to Ray architecture
  • Starting Ray on a Databricks cluster
  • Distributing Python UDFs
  • Reinforcement learning

Applications of reinforcement learning broadly consist of scenarios wherever a simulation is able to run, a cost function can be established, and the problem is complicated enough that hard-set logical rules or simpler heuristical models cannot be applied. The most famous cases of reinforcement learning are typically research-orientated with an emphasis on game-play such as AlphaGo, super-human level Atari agents, or simulated autonomous driving, but there are many real-world business use cases. Examples of recent applications are robotic manipulation control for factories, power consumption optimization, and even marketing and advertising recommendations. Good one!

[Read More]

Platform Engineering: Building AWS landing zone with Pulumi

Categories

Tags devops-and-ci-cd architecture-and-apis cloud-and-infrastructure

In this blog, I will cover some key concepts and architecture of Pulumi. We will be building and provisioning the AWS landing zone. By A B Vijay Kumar.

Author wonders if Terraform is the ultimate tech for IaC? Coming with an application developer background, and entering the full-stack cloud developer – learning another language and syntax is painful. Terraform is a DSL (domain-specific language) and requires significant effort to learn and master.

In this blog series, we will be building the following infrastructure on AWS and will run our applications in the EC2 instance. The article then covers:

  • Install Pulumi
  • Setup AWS CLI
  • Generate Pulumi project — boilerplate code for AWS in Python
  • Activate virtual environment and install dependencies
  • Set up public/private key infra
  • Write Infra code

The article contains a lot of Pulumi code with detailed explanation of every code block. Nicely done!

[Read More]

Controlling concurrency in distributed systems using AWS Step Functions

Categories

Tags software-engineering architecture-and-apis cloud-and-infrastructure product-and-design devops-and-ci-cd

Managing concurrency in distributed systems can be challenging. In a monolithic application, you use familiar concepts such as in-memory locks to avoid overloading a database or prevent overwriting a customer record by two users at the same time. With a distributed system, where your application is dispersed across computing environments without shared memory, these methods are no longer available to you. By James Beswick.

Controlling concurrency in distributed systems using AWS Step Function

Source: https://aws.amazon.com/blogs/compute/controlling-concurrency-in-distributed-systems-using-aws-step-functions//

In this blog, you use AWS Step Functions to control concurrency in your distributed system. This helps you avoid overloading limited resources in your serverless data processing pipeline or reduce availability risk by controlling velocity in your IT automation workflows. With this sample application, you implement a distributed semaphore using AWS Step Functions and Amazon DynamoDB to control concurrent invocations of a function in AWS Lambda.

The article the explains:

  • Deploying the concurrency control application
  • Running the concurrency control application
  • How it works
  • Handling failure

To apply this concurrency control in your own application, replace the branch defined in the Do Work parallel state with a state machine definition that contains the business logic of your application. You also update the ConcurrentAccessLimit value template.yaml to specify the level of concurrency that your application requires. Nice one!

[Read More]

How using same programming language for IaC made AWS Step Function testable

Categories

Tags data-and-analytics cloud-and-infrastructure devops-and-ci-cd architecture-and-apis testing-and-quality

AWS Step Functions are difficult to test. I found an approach to testing that helped in one particular scenario. It relies on using the same programming language for both testing and infrastructure-as-code (IaC). I hope the idea helps others tame their Step Functions into a testable submission. By Graham Allan.

Instead of testing the Step Function by executing it, I took advantage of using TypeScript for both CDK and integration tests in the same repository. I defined constants in their own file. With this simple change, I can use the DynamoDB client to execute the query in a Jest test. I run the test from my machine. I can iterate on the query without worrying about deploying or executing the Step Function. Sure, I need a real DynamoDB table, but that is rarely modified.

The article main parts will explain:

  • Why are Step Functions hard to test?
  • What about integration testing a Step Function?
  • Adding a DynamoDB task to a Step Function
  • How the shared programming language enabled better tests

Step Functions are hard to test. If that explanation does not work for you, try this: Step Functions are difficult to test in the same way stored procedures on a database server are hard to test. Having a shared programming language across IaC and tests allowed a creative way to gain confidence in author’s system, with more maintainable tests. Excellent read!

[Read More]

Cloud trends show customers increasing investments in hybrid and multicloud

Categories

Tags cloud-and-infrastructure leadership-and-career miscellaneous

Across every industry and geography, companies are working hard to keep pace with evolving business needs and build on their existing digital investments. In my role leading the product team for the core of Azure, I spend a lot of time with customers learning what they need to be successful as they integrate cloud technologies into their business strategy to digitally transform. By Erin Chapple - Corporate Vice President, Azure Core PM & Design.

As many have experienced firsthand, the pandemic has pushed more businesses to adopt wider use of cloud computing technology. A new survey finds it’s also driving more companies to deploy a hybrid (mix of on-premises and one or more public clouds) or multicloud (multiple public clouds) approach. The survey, conducted by The Harris Poll and sponsored by Microsoft, found 86% of all respondents plan to increase investment in hybrid or multicloud environments, and 95% say those technologies have already been critical to their success.

The survey and our own observations both underscore how companies are emphasizing remote work, increasing demands for efficiency and ever-present competitive pressures to reduce costs. While the pandemic has already accelerated use of cloud technology, respondents shared they will continue to proactively and strategically invest in cloud, specifically hybrid and multicloud, in the next few years. Good read!

[Read More]

A primer on WebAssembly

Categories

Tags frontend-and-mobile cloud-and-infrastructure product-and-design

To understand why there was a requirement for WebAssembly, let’s take a not-so-quick stroll down memory lane. And why it hasn’t replaced Javascript yet. By Divya Mohan.

So what exactly is WebAssembly? It is a binary instruction format for stack based machines.It is closer to machine code than either asm.js or JavaScript. Therefore, it is a no-brainer that decoding, compiling, fetching, and optimizing WebAssembly code takes lesser time. Why?

The guide then explains:

  • History of the WWW
  • Enter JavaScript
  • asm.js
  • Enter WebAssembly

Introduced as a subset of JavaScript, the asm.js specification aimed at describing a sandboxed virtual machine for memory-unsafe languages like C or C++ and provide a low-level, efficient target language for compilers. Implemented first by the Mozilla Firefox browser, this spec introduced performance improvements via employment of ahead-of-time optimizing compilation strategy for valid asm.js code by the JavaScript engines.

WebAssembly, abbreviated Wasm, was designed to be a portable compilation target for programming languages, enabling deployment on the web for client and server applications.

WebAssembly, abbreviated Wasm, was designed to be a portable compilation target for programming languages, enabling deployment on the web for client and server applications. Good read!

[Read More]

Securing IoT with Quantum Cryptography

Categories

Tags cloud-and-infrastructure leadership-and-career security-and-privacy business-and-emerging-tech

The Internet of Things (IoT) is a growing technology that continues to gain traction year after year. On the one hand, it can be helpful, but on the other hand, it carries many security threats. These threats include scalable remote attacks, side-channel attacks on cryptography, DDoS attacks, data breaches, malware, and others. By Roland Atoui.

The article then search answer for the following questions:

  • Why use Quantum Cryptography?
  • Why secure IoT?
  • How does Quantum Cryptography work?

Of course, technical quantum solutions are challenging to implement in IoT devices due to technical and commercial constraints. Therefore, a few security options combine both the quantum and classical approaches. One option keeps the current semiconductor chips but uses quantum techniques to create a unique long cryptographic key for every device. This can be done with a quantum random number generation (QRNG). It creates a noise source with a high randomness level.

Although quantum cryptography and quantum computing have developed quite efficiently, some more advancement is necessary for them to become a reality in commercial systems. Commercial use is a big challenge. Firstly, implementing quantum systems in IoT is expensive. Secondly, large-scale quantum apparatus is hard to afford for many organizations. Thirdly, the properties of photons restrict them from traveling long distances. If these issues can be resolved, we will have successful IoT systems with quantum cryptography. Good read!

[Read More]

Best practices for using AWS StepFunctions

Categories

Tags cloud-and-infrastructure devops-and-ci-cd leadership-and-career frontend-and-mobile architecture-and-apis

In this post you will learn some of the best patterns/tricks author has learned during my time creating Step Functions workflows. By Lukas Fruntke.

Since it has been introduced in June Step Functions Workflow Studio proved its value to me several times. As its a low-code editor with the most common configurations already baked-in, the effort of writing/designing a workflow with Amazon States Language plummeted. Those minutes and hours handwriting workflows with 100 lines++ are finally over for good, which is something you must not ignore when dealing with Step Functions.

The main points captured in this article:

  • Make use of the Step Functions Workflow Studio
  • Utilize the service integrations
  • Use .waitForTaskToken
  • Make use of the inbuilt retries
  • Utilize Heartbeats to fail fast
  • Define a Catch Handler
  • Further reading

While AWS offers some 17 “optimized” service integrations (for the definitive list see here), that include different custom options of integrating with the specific services, AWS has released an option to call the APIs of nearly all AWS services directly, as described in this article. This allows you to scrap some of the utility lambdas one uses to add much-needed functionality-augmentation to a service and go with Step Function instead. You will also get links to further reading. Excellent!

[Read More]

Google's 20% rule spend on learning new skills and why it works

Categories

Tags leadership-and-career

Most people spend every second of their workday trying to keep up with their calendars and to-do lists — attending meetings, responding to emails, racing to meet deadlines. This makes it difficult to set aside time to explore ideas that interest us or learn new skills. And during a time when it’s impossible to predict how our jobs and industries will evolve, expanding our expertise is what gives us a competitive edge in the long-run. By Dorie Clark.

How can we ensure we make the time to stay ahead? Enter: Google’s “20% time” rule, a concept made popular when Google went public in 2004:

  • Clearly identify what you want to learn
  • Win — even if you lose
  • Be flexible and committed
  • Look for ways to make it fun
  • Think in decades

Just like with an investment in the stock market, when you invest time in your 20% projects, the power of compound interest is dramatic. What at first seems small and meaningless can enable you to put massive distance between you and your competitors. Good advice!

[Read More]