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 ]

Assembly Language on the Pi: Learning how to walk again

Categories

Tags app-development robotics big-data data-science

Simon Humphreys shares how Raspberry Pi’s ARM processor makes it a great tool for A level students to get their hands dirty with assembly language.

Assembly language programming is on every university computer science course and also in numerous advanced level courses - so it must be important! The instruction set for the UK’s AQA A level is akin to the ARM instruction set used on the Raspberry Pi, making it a great tool for bare-metal programming.

The article main points:

  • Why learn assembly language?
  • Where next?
  • A simple example

Once the students know how to write an equivalent ‘if–then–else’ construct and how to branch, it becomes relatively trivial to introduce loop constructs such as ‘do–while’, which have a conditional expression at the bottom of the loop and need to jump back to the top of the loop. Very interesting!

[Read More]

Developer best practices – Structuring your repository for static web apps

Categories

Tags app-development web-development cloud azure nodejs

As a good developer, I have my code in a repo, that doesn’t necessarily mean that I have followed all of the best practices that I should. I can still expose myself to risks unknowingly. By April Edwards.

Often in tutorials or getting started guides, we try to make the code and directions as easy as possible for anyone to be able to follow. While this is great for the community, sometimes while we make things easy to get started, but do not consider the impact it can have on the consumer. Meaning, I have deployed my Azure Static Web App, but exposed myself to what could a potential security risk for myself or my organization. In hindsight, we need to make sure our tutorials are fit for purpose and production.

While I have protected my secrets following all of the best practices, what if I hadn’t? What if another developer in the team hadn’t? We deployed our Azure Static Web App and could have potentially exposed critical information externally.

As a developer, we should ALL care about security. We want to ‘shift left’ and implement security early. While nothing obvious sticks out, we don’t have any exposed secrets in my YAML, we’ve done all the things right. But wait… We haven’t. Follow the link to full article to learn what was the security issue about. Nice one!

[Read More]

Think gRPC, when you are architecting modern microservices!

Categories

Tags app-development apis golang cloud cio

More than ever before, present day businesses want their IT systems to constantly evolve and be capable of responding positively to the changing goals and priorities. As they say, change is the only constant. In this context, microservices have become the proverbial Holy Grail for solution architects to design and build modern software. By Nikhil Mohan.

Inter-service communication is one of the most critical design elements in a microservices-based solution that needs careful consideration. RESTful API carrying data in JSON is widely adopted as the most common communication pattern for connecting microservices together.

However, this approach is suboptimal in the following scenarios:

  • REST is resource-oriented. This can be a limiting factor while dealing with API flexibility
  • JSON payloads are human-friendly, but they are bulky and not machine-friendly. Therefore, JSON payload parsing is compute-intensive
  • Data transfer in HTTP 1.1 is text-based and involves no compression of request headers. This results in high bandwidth utilization

gRPC is an open source framework developed by Google and currently managed under the aegis of Cloud Native Computing Foundation (CNCF). gRPC does all the heavy lifting work for inter-service communication leaving developers with only the task of defining a contract for remote procedure calls in a language-neutral format. Moreover, gRPC is action-oriented, thereby helping developers to design flexible APIs.

  • gRPC uses HTTP/2 under the hood. HTTP/2 helps gRPC to overcome some of the limitations with REST over HTTP 1.1
  • HTTP/2 is based on binary data transfer making it highly bandwidth-efficient
  • HTTP/2 does header compression, again helping network bandwidth utilization
  • Language independent. Very ideal for a polyglot microservices architecture
  • Supports streaming communication pattern
  • Easy to plug in features such as authentication, load balancing, logging, and monitoring

Architects like to view modern systems as a collection of numerous cloud native components. Being cloud native is fundamental to the solution, irrespective of whether the target solution is planned for cloud or not. Follow the link to the full article to see example design for movie finder application using gRPC. How interesting!

[Read More]

Advancing your financial services strategy with Azure sustainability

Categories

Tags app-development azure programming cloud cio

Many CEOs and senior business leaders have used the COVID-19 and economic crisis as an opportunity to focus on redesigning their business. Like others, they’ve felt compelled to re-examine their business and operational models, driven by the internal necessity for digital transformation, as well as external consumer and regulatory pressures to advance sustainability efforts. By Kristen Hicks.

The pandemic has also elevated the priority of social issues among executives, with consumers and employees alike granting greater credibility to corporate transparency in shareholder disclosures and the environmental impact of global operations.

The first step towards building an effective sustainability strategy is to define it for your business. Establish a shared understanding of what sustainability looks like across your organization, and how each department contributes to the overarching goal.

Lucas Joppa, Microsoft’s Chief Environmental Officer, shared Microsoft’s sustainability report outlining how we’re making steps towards sustainability in our own businesses, working toward being carbon negative by 2030 and removing historic emissions by 2050. Gartner refers to sustainability as a “mission-critical priority,” and with good reason. With the growing risk that climate events pose to financial assets and global supply chains, and the weight of consumer social sentiment, to not take action on sustainability efforts would mean to increase the risk of both business disruption and customer churn. Rather than overlooking or minimalizing this effort, consider how adopting a sustainability strategy can accelerate your business growth and generate new opportunities. Good insights!

[Read More]

Deploy your Laravel app as a static site to Netlify

Categories

Tags app-development web-development programming cloud php

With JAMstack, your entire site is pre-built as static HTML files and hosted on CDN. Since those static files are served via CDN, it’s blazing fast, scalable, and more secure as there is no backend servers and databases. By Ryuta Hamasaki.

In this post, author will walk you through how to build a static version of your Laravel app and deploy it to Netlify. The article captures how to:

  • Install Laravel Export
  • Setup Netlify CLI
  • Hooks
  • Query params are not supported

You can build the entire Laravel app as a static site and deploy it to Netlify from your local machine. You don’t need to setup a full-fledged server for hosting your backend app and database. And here is the full source code of the sample Laravel blog application that author created. Good read.

[Read More]

How to make your first contribution to Open-Source? A Beginner's guide

Categories

Tags open-source cloud miscellaneous programming

I know that you might be thinking: is this blog really help you to start your open-source journey? By Roli Gautam.

In this article the author covers:

  • What is an open source?
  • Why should you contribute in an open-source program?
  • Who can Contribute? What do you need to participate in an open-source program?
  • How to get involved in an open-source program?
  • How to choose an open-source project?
  • Create your first issue
  • What can you do to get assigned that issue to you?
  • How to start working on the project?

… and more. There are plenty of reasons to get involved in the open-source community including opportunity to learn new skills, share your knowledge, gain experience in real-world development, build your networking with like-minded peoples. The article will also walk you through useful git commands you will most likely use when contributing to open-source project. Check this article for the resources and links to open-source programs and open-source competitions. Good read!

[Read More]

The hybrid cloud balance: Knowing when to shift between public and private

Categories

Tags devops management cio cloud software-architecture

In the last few years, industry analysts have been discussing the phenomenon of companies considering taking their workloads off the public cloud. In fact, a recent argument that market capitalizations of scale public software companies is weighed down by cloud costs, and by hundreds of billions of dollars, caught the interest of several enterprise leaders. By Ravi Kumar, @Infosys.

My own view is that the public cloud is indispensable to digital transformation. It remains one of the biggest opportunity areas for organizations and is practically the only proven way to scale a business quickly and reliably. And yet the approach to cloud that promises most value for enterprises is hybrid — both public and private — leveraged for the right reasons and at the opportune moment in a business’s lifecycle.

Data shows that only a modest number of companies – a 2019 survey by Gartner put that number at 4% — have actually repatriated (or need to repatriate) their public cloud workloads to a private cloud solution.

When the enterprise is significantly cloud-mature and may be looking at optimizing its workload for a number of reasons:

  • To lower cost: From an efficiency point of view, it takes the complete automation of operations built atop the cloud infrastructure layers of compute and storage to take advantage of cloud
  • Beating latency and improving availability: Public cloud service unavailabilities are rare but can create large-scale disruption when they do occur
  • Security comfort: Technology-wise, the public cloud is highly automated for security, which means less human intervention and fewer errors
  • Lack of skills: It takes deep skills in the areas of provisioning, cloud architecture, and performance reporting, to name a few, to manage workloads efficiently when running a private cloud

Clearly, repatriation is not a “mass” option, nor the default move at a defined stage of an enterprise’s cloud maturity. Very interesting!

[Read More]

Integrating Firebase with React Native

Categories

Tags app-development nosql react javascript frontend

Firebase is a Backend as a Service (BaaS) that provides an advantage to mobile developers who use React Native for developing mobile applications. As a React Native developer, by using Firebase you can start building an MVP (minimum viable product), keeping the costs low and prototyping the application pretty fast. By Aman Mittal.

In this tutorial, we will learn how to get started by integrating Firebase in a React Native application. We will also create a small application from scratch with the help of Firebase & React Native to see how they work together.

The tutorial covers:

  • Getting started
  • Configuring a Firebase project
  • Adding Firebase to a React Native project
  • Adding react-navigation
  • Navigating between the screens
  • Creating a Database with Firebase
  • Adding Data from the app to Firebase
  • Fetching Items from the Database

Firebase is a platform that got acquired by Google and has a healthy and active community. Most users in this community are web and mobile developers as Firebase can help with mobile analytics, push notification, crash reporting, and out-of-the-box it also provides email as well as social authentication. Code examples and screen grabs included. You can find the complete code inside this Github repo. Good read!

[Read More]

Testing implementation details

Categories

Tags react javascript tdd app-development web-development

Testing implementation details is a recipe for disaster. Why is that? And what does it even mean? By Kent C. Dodds.

There are two distinct reasons that it’s important to avoid testing implementation details. Tests which test implementation details:

  • Can break when you refactor application code. False negatives
  • May not fail when you break application code. False positives

Implementation details are things which users of your code will not typically use, see, or even know about.

So how do you avoid testing implementation details?

A surprising number of people find testing distasteful, especially UI testing. Why is this? There are various reasons for it, but one big reason I hear again and again is that people spend way too much time babysitting the tests. “Every time I make a change to the code, the tests break!” This is a real drag on productivity! The author will explain how described tests fall prey to this frustrating problem.

Follow the link to the full article to learn how do you avoid testing implementation details? Very good read!

[Read More]

Experimenting with Chaos Engineering and Blockchain

Categories

Tags devops blockchain learning fintech crypto

In this article, we’ll show how you can use the open-source Chaos Toolkit (CTK) to better understand Blockchain, stable-states, and what immutability really means. By Sal Kimmich.

Typically in chaos engineering, your experiment automates the testing and reporting of your system’s strengths and weaknesses. You can use this to build more reliable systems. Let’s experiment with understanding the state of a blockchain transaction.

The content in more details:

  • Experiment: Understanding rollbacks, immutability and stable states
  • Actions vs probes
  • Running the transaction experiment
  • Some key takeaways

Diving into blockchain with experimentation is a great way to flex your mind around immutability and stable states. Chaos Toolkit is an open-source project hosted on Github. Nice read!

[Read More]