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 ]

How code quality is measured: Android code review at Yalantis

Categories

Tags java android app-development

Programmers are the authors of great builds just as writers are the authors of bestselling novels. But behind the scenes, there are always many people who contribute to the process. The best code – like the best products of any type – is the result of collaboration. All programmers, both senior-level software engineers and beginners, occasionally need somebody else to take a fresh look at their code and find issues in it. This is how code quality is ensured at Yalantis. By Kate Abrosimova and Olexander Taran.

In this article, authors show you why and how they do code reviews and give some useful tips on performing a code review:

  • Goals and benefits of code reviews
  • Important aspects of code analysis
    • Documentation clarity
    • Code styling
    • Architectural patterns
    • Simplicity
    • Error handling
    • Test coverage
    • Performance monitoring
    • Security
  • Android code review tools

Code review is a good development practice, but it requires time and effort from the reviewer. And as an app becomes more complex and more developers start working on the project, more resources are required for code review. SonarQube is a powerful code analyzer that works with 27 programming languages, works seamlessly with build frameworks, and integrates with popular CI engines like Jenkins TeamCity. They use SonarQube for regular code checks in most of our projects. Good read!

[Read More]

Browser attack allows tracking users online with JavaScript disabled

Categories

Tags infosec javascript browsers web-development

Researchers have discovered a new side-channel that they say can be reliably exploited to leak information from web browsers that could then be leveraged to track users even when JavaScript is completely disabled. By Ravie Lakshmanan.

“This is a side-channel attack which doesn’t require any JavaScript to run,” the researchers said. “This means script blockers cannot stop it. The attacks work even if you strip out all of the fun parts of the web browsing experience. This makes it very difficult to prevent without modifying deep parts of the operating system.”

In avoiding JavaScript, the side-channel attacks are also architecturally agnostic, resulting in microarchitectural website fingerprinting attacks that work across hardware platforms, including Intel Core, AMD Ryzen, Samsung Exynos 2100, and Apple M1 CPUs — making it the first known side-channel attack on the iPhone maker’s new ARM-based chipsets.

Side-channel attacks typically rely on indirect data such as timing, sound, power consumption, electromagnetic emissions, vibrations, and cache behavior in an effort to infer secret data on a system. Specifically, microarchitectural side-channels exploit the shared use of a processor’s components across code executing in different protection domains to leak secret information like cryptographic keys. Interesting!

[Read More]

Application request tracing with Traefik and Jaeger on Kubernetes

Categories

Tags kubernetes containers apis devops app-development open-source

This is the third in a series of articles on site reliability engineering (SRE) and how Traefik can help supply the monitoring and visibility that are necessary to maintain application health. By Neil McAllister.

Debugging anomalies, bottlenecks, and performance issues is a challenge in distributed architectures, such as microservices. Each user request typically involves the collaboration of many services to deliver the intended outcome. Because traditional monitoring methods like application logs and metrics tend to target monolithic applications, they can fail to capture the full performance trail for every request.

The article main content can be split into:

  • Prerequisites
  • Set up tracing
  • Minimal deployment
  • Install and configure Traefik
  • Deploy Hot R.O.D.
  • Application traces

This post has presented a very simple demonstration of how to integrate Traefik with Jaeger. There is much more to explore with Jaeger, and similar integrations can be done with other tracing systems, such as Zipkin and Datadog. Whichever one you choose, Traefik makes it easy to follow the progress of each request and gain insights into application flow. You will also get links to previous articles in the series and links to further reading. Good read!

[Read More]

How to Create REST API with Azure Functions and Serverless Framework

Categories

Tags apis azure app-development open-source web-development serverless

With the recent updates to the serverless-azure-functions plugin, it is now easier than ever to create, deploy and maintain a real-world REST API running on Azure Functions. This post will walk you through the first few steps of doing that. By Tanner Barlow.

The article then explains the following:

  • Create your local Azure Function project
  • Add your own handlers
  • Add Code
  • Current Folder structure
  • Test your API Locally
  • Deploy
  • Authentication

To see the full end-to-end example used to create this demo, check out this GitHub repo. You will get structured commits to follow the steps described in this post. Nice one!

[Read More]

Online payments using the new Web Payment APIs

Categories

Tags apis app-development open-source web-development

The Payment Request API and the Payment Handler API are a set of new W3C web standard being introduced to make payments easier on a website. It is aimed at standardizing and providing a consistent user experience for payments for both end-users and for merchants. By Deepu K Sasidharan, Developer Advocate, Adyen.

In this article authors look at what exactly the APIs are, what are its advantages and how we can use them in a web application:

  • What is Payment Request API
  • Advantages of Payment
  • Example application
  • What is Payment Handler API

While the Web Payment APIs and not mature enough to replace the client-side components provided by PSPs, I do see a bright future once the APIs are implemented by all major browsers, especially the Payment Handler APIs. You will also get code examples and links to required reading. Nice one!

[Read More]

How to build a serverless real-time credit card fraud detection solution

Categories

Tags serverless gcp infosec cloud

As businesses continue to shift toward online credit card payments, there is a rising need to have an effective fraud detection solution capable of real-time, actionable alerts. By Polong Lin and Pavan Kattamuri.

Because all of the Google Cloud products used in this solution are serverless and fully managed, this means you won’t need to spend time setting up and maintaining infrastructure, enabling you to focus on getting the solution up and running in an hour.

This blog post will be a technical dive into how the solution works:

  • Preparing the data on BigQuery
  • Building the fraud detection model using BigQuery ML
  • Hosting the BigQuery ML model on AI Platform to make online predictions on streaming data using Dataflow
  • Setting up alert-based fraud notifications using Pub/Sub
  • Creating operational dashboards for business stakeholders and the technical team using Data Studio

Whether you are part of the fraud protection team in a financial institution or an online retailer trying to reduce fraudulent losses, real time ML solutions are most impactful when they serve the ultimate business goals and efficiently adapt to the changing environment. With data stored on BigQuery, it becomes easy to train machine learning models using BigQuery ML without needing to set up or procure infrastructure, saving time, money and complexity when productionizing the design pattern. Excellent read!

[Read More]

Kubernetes – Bridging the gap between 5G and intelligent edge computing

Categories

Tags management cio kubernetes cloud

An article by Ashish Sharma. In the era of digital transformation, the 5G network is a leap forward. But frankly, the tall promises of the 5G network are cornering the edge computing technology to democratize data at a granular level.

What oil is to the automobile industry, the cloud is to Information Technology (IT) industry. Cloud revolutionized the tech space by making data available at your fingertips. Amazon’s Elastic Compute Cloud (EC2) planted the seed of the cloud somewhere in the early 2000s. Google Cloud and Microsoft Azure followed this. However, the real growth of cloud technology skyrocketed only after 2010-2012.

In this blog, you will read about:

  • A decade defined by the cloud
  • The legend of cloud-native Containers
  • The rise of Container Network Functions (CNFs)
  • Edge computing must reinvent the wheel
  • Kubernetes – powering 5G at the edge
  • KubeEdge – giving an edge to Kubernetes

Gartner quotes: Around 10 percent of enterprise-generated data is created and processed outside a traditional centralized data center or cloud. By 2025, this figure will reach 75 percent.

The advent of cloud-native is a hallmark of evolutionary development in the cloud ecosystem. The fundamental nature of the architecture of cloud-native is the abstraction of multiple layers of the infrastructure. Good read!

[Read More]

7 Reasons why products fail

Categories

Tags management cio software cloud miscellaneous

What is product failure, anyway? Not all failures are catastrophic where the product is pulled from the market and the company goes out of business. Most are partial or soft failures. By Rick Bess.

A key component on why products fail is that management does not specifically define objectives and quantify what success looks like. If you do not define success, you are less likely to achieve it and you may not even be aware of how the product is failing.

The article then covers the following:

  • Strategic objectives to consider
  • Product doesn’t solve the right problems
  • Picked the wrong market
  • Product is too expensive or provides poor value to customer
  • Product is not good enough/poor execution
  • Delayed market entry
  • Poor marketing plan

How do Product Managers and Product Marketing Managers avoid product failure? Start with the end in mind. Define what success looks like and get the organization behind those goals. Good read!

[Read More]

Automate tasks with Power Automate Desktop for Windows 10 with no additional cost

Categories

Tags app-development software learning miscellaneous

In 2020, Microsoft Power Automate doubled down on its investments in the robotic process automation (RPA) space with the introduction of Microsoft Power Automate Desktop. By Stephen Siciliano.

desktop automation in Power Automate Desktop will be available to Windows 10 users at no additional cost. Windows 10 users can harness the power of low-code RPA by downloading Power Automate Desktop on March 2 (2021), and it will be included in Windows Insider Preview builds in the coming weeks.

The article then gives you idea how:

  • Automate everyday tasks and free up time for higher-value work
  • Start automating everyday tasks—no coding required

In addition to the capabilities you get with Power Automate Desktop for Windows 10, you can extend this one step further with capabilities in the Power Automate per user with Attended RPA plan. With this you can enable automations across an organization to share and collaborate across flows, access more than 400 built-in connectors through cloud flows, identify bottlenecks in your business processes with process advisor (preview), extract data from documents in AI Builder, and manage and control flows with centralized governance.

By bringing RPA to Windows 10 users, everyone across an organization can collectively focus on work that makes a difference for the bottom line. Start your desktop automation journey today by downloading the Power Automate Desktop app.

Learn how to build your first desktop flow and automate your tasks in the getting started documentation, along with important additional helpful information. Very interesting!

[Read More]

Exploring semantic map embeddings

Categories

Tags big-data machine-learning cio data-science software

How do you convey the “meaning” of a word to a computer? Nowadays, the default answer to this question is “use a word embedding”. A typical word embedding, such as GloVe or Word2Vec, represents a given word as a real vector of a few hundred dimensions. By Johannes E. M. Mosig.

Semantic map embeddings are inspired by Francisco Webber’s fascinating work on semantic folding. Our approach is a bit different, but as with Webber’s embeddings, our semantic map embeddings are sparse binary matrices with some interesting properties. In this post, we’ll explore those interesting properties. Then, in Part II of this series, we’ll see how they are made.

Semantic map embedding family overlaps with children

Source: https://blog.rasa.com/exploring-semantic-map-embeddings-1/

The article will help you make sense of:

  • Semantic Map Embeddings of Particular Words
  • Semantic Similarity and the Overlap Score
  • Merging: How to Embed Sentences and Documents

A semantic map embedding of a word is an M ⨉ N sparse binary matrix. We can think of it as a black-and-white image. Each pixel in that image corresponds to a class of contexts in which the word could appear. If the pixel value is 1 (“active”), then the word is common in its associated contexts, and if it is 0 (“inactive”), it is not. Importantly, neighboring pixels correspond to similar context classes! That is, the context of the pixel at position (3,3) is similar to the context of the pixel at (3,4).

You can try our pre-trained semantic maps yourself, using our SemanticMapFeaturizer on the rasa-nlu-examples repo. Good read!

[Read More]