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 to run a Stable Diffusion server on Google Cloud Platform (GCP)

Categories

Tags gcp devops data-science open-source google

Open-sourced alternative to OpenAI’s gated DALL·E 2 with comparable quality, Stable Diffusion offers something to everyone: end-users can generate images virtually for free, developers can embed the model into their service, ML engineers can investigate and modify the code, and researchers have full leeway to push the state of the art even further. By Iulia Turc.

This article includes all the painful little details author had to figure out, hoping that it saves you time. Here are the high-level steps (we will dive deeper into each one of them below):

  • Make sure you have enough GPU quota
  • Create a virtual machine with a GPU attached
  • Download Stable Diffusion and test inference
  • Bundle Stable Diffusion into a Flask app
  • Deploy and make your webserver publicly accessible

Since GPUs are still not cheap, Google is running a tight ship when it comes to its GPU fleet, provisioning its limited supply to those who need it the most, and those who are willing to pay. By default, free trial accounts do not have GPU quota. Good read!

[Read More]

Huawei CSO: Open-source can play a key role in creating a sustainable future

Categories

Tags software cio app-development miscellaneous open-source

Open-source technology can play an important role in tackling the climate emergency by offering greater opportunities for collaboration and shared learning on key issues. By Leigh Mc Gowran.

Technology is already “crucial” for dealing with the climate crisis, but noted some key advantages that an open-source approach offers, particularly in terms of collaboration. We need to be open not just in our collaboration but also in our learnings and results, we need to understand what doesn’t work just as much as what works.

Che spoke about the importance of improving technology to help the environment, including the ways open source can be a benefit when it comes to improving energy efficiency and protecting the wild. Speaking to SiliconRepublic.com, Che said open-source research can be used to help bring “real change” to certain areas such as cloud, edge and devices.

Huawei has been contributing to open-source projects since around 2010, with the level of contributions rising in recent years. The company was the 10th largest contributor to GitHub in 2020, which was a leap from 27th place the year before. Huawei also contributes to Gitee, China’s largest open-source software repository.

Che said there are challenges with bringing people around the world together for open-source collaboration, however. “Different developers may be in different time zones and speak different native languages,” he noted. “They may serve different markets with substantially different requirements. And they may develop their local ecosystems completely differently.” Nice one!

[Read More]

How to learn JavaScript faster – Tips and resources to get started coding JS

Categories

Tags nodejs javascript apis app-development learning

JavaScript is a programming language commonly used for web development, among many other things. It works in conjunction with HTML and CSS to add dynamic functionality to websites. By Annoh Karlgusta.

The article will cover in some depth following:

  • How to learn JavaScript faster – an overview
  • How to practice coding in JavaScript
  • Why you should read the documentation
  • Some best practices you can adopt from reading documentation
  • How to contribute to open source projects
  • How to find projects to contribute to
  • Why you should build lots of projects
  • Resources that might inspire you to build projects

Practicing is what makes you progress. Whether it’s in music, dancing, singing, playing basketball – or coding. Practicing is really repetitive and can be tiring, but it is what helps us and sets us apart in the long run. It is through the action of practicing and repetition that we are able to be good at all these activities. Coding is not different. Good read!

[Read More]

Reducing graph complexity using Go and transitive reduction

Categories

Tags apis app-development performance golang database

Directed acyclic graphs (DAGs) serve a wide variety of applications in computer science, biology, sociology, and other fields that involve complex networks. While these graphs often contain a large number of edges, some of the edges might be redundant, making computations unnecessarily expensive and the graph structure harder to understand. By Dominik Braun.

This article demonstrates how a DAG can be built in Go using the graph library and describes the algorithm to remove these redundant edges in detail. Further it explains:

  • Transitive reduction
  • Building the DAG
  • Computing the transitive reduction
  • Implementing the algorithm
  • Using transitive reduction in your application

Adding numerous edges to a DAG can make the graph unnecessarily complex. However, these graphs can be simplified using a technique called transitive reduction. Good read!

[Read More]

How agile project managers lead software development teams to success

Categories

Tags software app-development cloud cio agile

Whether you’re building websites for an ad agency or software for a company, it’s important to understand how to lead your team to success and make your customer happy. Here’s what you need to be an agile PM, also known as a Scrum Master. By Donovan Rittenbach.

There are four essential responsibilities in which all successful agile leaders excel and they include communication, planning, documenting, managing. The article then explains:

  • The agile methodology
  • Every project has similarities
  • Iteration planning
  • The sprint
  • The iteration demonstration
  • The iteration retrospective

Modern project managers prefer agile practices when it comes to developing software. Guided by agile principles, Scrum Masters lead the team through four key phases of development: the iteration planning, a sprint, sprint review and sprint retrospective.

[Read More]

What can a service mesh do?

Categories

Tags app-development cloud cio devops containers kubernetes

A service mesh is a force multiplier that can do everything from service discovery to zero trust security, load balancing, multi-cloud connectivity, automation, and north-south traffic. Even as service mesh adoption continues to grow, some organizations are still trying to understand the full extent of what a service mesh can and can’t do. By Van Phan.

If the service mesh you choose is cloud-agnostic, you can greatly simplify a multi-cloud architecture. Not only that, but many service mesh products include service discovery, secure service-to-service communication, load-balancing capabilities, and L7 and L4 network management capabilities that include progressive delivery patterns. Further in the article:

  • Service discovery
  • Zero trust networking
  • Load balancing
  • Multi-cloud connectivity
  • Automation
  • North-South traffic control

For the 81% of organizations that are already using multiple clouds, or plan to do so, service meshes can definitely help contain the sprawl of tools. Agnostic service meshes like Consul can provide further tool consolidation with built-in features to connect services between clouds, automate network device updates, and control access to services from external clients. Good read!

[Read More]

FinOps 'Crawl, Walk, Run' maturity model applied to Kubernetes

Categories

Tags app-development cloud cio devops miscellaneous

FinOps has become an increasingly popular goal of many organizations. It helps to unite financial teams and cloud operations teams across organizations to speak the same language, understand cloud costs and how they can be optimized. By Danielle Cook.

The crawl, walk, run approach maps to the Kubernetes Maturity Model Fairwinds put together and that the Cloud Native Computing Foundation (CNCF) leaned on heavily when producing the Cloud Native Maturity Model. As users adopt Kubernetes, they will take a similar crawl, walk, run approach to the technology, people, process and policy. The financial side should also be part of adoption.

The most important part of the crawl phase is getting your CPU and memory settings right. Open source tools like Goldilocks help identify a baseline for setting Kubernetes resource requests and limits. This is sufficient in small one to three cluster environments where you most likely have a small number of engineers (one or two) managing Kubernetes. Having a tool like Goldilocks is important.

As you are “walking,” the DevOps and platform engineering teams are looking into the cost problem. As you move to the run phase, this changes.

FinOps says organizations in the run phase are all aligned and have adopted a robust model. There are very high goals/KPIs set on the measurement of success and automation is preferred. Good read!

[Read More]

What is web3?

Categories

Tags web-development crypto cio app-development cloud

Every technology goes through generational cycles, including the internet. When a critical threshold of upgrades is crossed, it marks the beginning of a new generation. This moment, and its significance for the marketplace, can prove confusing. By Rahul Nambiampurath.

The article does excellent job explaining:

  • How does web3 work?
  • Web3 examples
  • Web3 apps to replace web2 tech

Just as different programming stacks defined Web1 and Web2, a new software stack defines Web3 to make decentralized internet happen. Web3 is in many ways a continuation of Web2 in terms of interactivity, but at the bottom of the stack is a blockchain protocol. Smart contracts are embedded into each data block. Because they chain together, smart contracts are immutable, which is also what makes both NFTs and cryptocurrencies so valuable. Good read!

[Read More]

Simplify your React component's state with a state machine

Categories

Tags web-development react javascript app-development

Use a reducer to implement a fully-typed state machine without breaking a sweat. As React developers, we’ve all had to work on a component where the state had become impossible to manage. By Guillaume Renard.

A finite-state machine (FSM) […] or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number of states at any given time. The FSM can change from one state to another in response to some inputs; the change from one state to another is called a transition.

The article discusses implementation of such a state machine on simple component example which can be in finite number of states.

Fire Button, expressed as a state machine

Source: https://betterprogramming.pub/simplify-your-react-components-state-with-a-state-machine-8e9c9a4ee1f6

The article then explains how to enumerate the states and events with TypeScript and write a reducer function that transitions from one state to another. Nice one!

[Read More]

How to modularize existing iOS projects using Swift Package

Categories

Tags programming ios swiftlang performance app-development

Modular programming is a software design technique that breaks your project into a smaller maintainable module which promotes separation of concern and reusability. By @sarunw.com.

Modularizing your app may sound technical and complicated, but in reality, it is just as easy as grouping your files in a folder and you don’t need to modularize everything at the very beginning. You can incrementally adopt this part by part at your own pace.

The content of article covers five small steps we need to do to modularize an app:

  • Create a new Swift Package within your project
  • Move files from the main project to the newly created Swift Package
  • Configure Swift Package supported platform
  • Add Swift Package to the main project
  • Change access levels of classes and methods, e.g., private, public

Breaking part of your app into a module is straightforward with Swift Package. It only contains 5 steps, as we learned in this article. You will get screenshots and detailed instruction for each step above. Nice one!

[Read More]