Below you will find pages that utilize the taxonomy term “software engineering”
Posts
Data Structures And Algorithms
Data Structures And Algorithms Data Structures: A data structure is a technique of storing data in a computer so that it can be accessed and modified efficiently. Algorithms: An algorithm is a step-by-step instruction to perform a task. Why Should I Learn Data Structures And Algorithms? Enhance your problem solving skills. Write efficient code that is performant and scalable. Specialized fields: machine learning, data science, artificial intelligence and other engineering fields deal with complex data and require efficient processing.
read morePosts
Ansible Naming Conventions
Purpose Of Having Naming Conventions For An Ansible Project Consistency: Adopting a naming convention standardizes naming across the project and organization. This makes it easier for developers to switch between projects. Typically, an organization with an infrastructure team will have several Ansible projects and source code repositories. A developer working on one such Ansible project can seamlessly switch to another given a standard naming convention. Error Reduction: With improper naming there can be pitfalls.
read morePosts
DevOps Lab: Create Your Own Reference Application
A reference application is a sample application that is used as a guide for developers to learn and implement best practices for software development, testing, deployment, and operations within a specific technology stack or framework. It can serve as a blueprint for building and maintaining similar applications and can be used to demonstrate the use of tools, processes, and techniques for achieving high levels of automation, scalability, and reliability.
If you are learning how to deploy applications to Kubernetes of Virtual Machines in cloud, create your own tiny application.
read morePosts
Kubernetes Objects Required For A Typical Web Application: Part II
In the Kubernetes Objects Required For A Typical Web Application post we talked about few Kubernetes objects that a web application developer should get accustomed to. In this post, we will extend the series and talk about more objects that can help web developers scale their applications.
As we delve deeper into Kubernetes topics, the demarcation of roles and skill sets start to reveal. In larger organizations, a dedicated team of infrastructure engineers design and make choices of network topology, IAC tooling and orchestration of the Kubernetes clusters and CI/CD pipelines.
read morePosts
SOPS To Manage Secrets In Git Repositories
In a previous post, we discussed using age to manage secrets in Git repositories. In this post, let’s improve our secrets management workflow in Git repositories using SOPS.
sops is an editor of encrypted files that supports popular configuration formats such as YAML and various encryption techniques such as age.
Read the blog post about age to install the package and creating the key file.
This time, we will use sops to perform encryption and decryption operations instead of the age command.
read morePosts
Age To Encrypt Secrets
Are you storing secrets such as database credentials, API keys, etc. unencrypted in Git repositories? Stop.
To protect your secrets, do not store them anywhere unencrypted. Especially in Git repositories. Ideally, your organization must have some vault solution where secrets can be stored and securely shared with people on a need-to-know basis. In many small organizations, having such a central secrets management solution is still a luxury. The need to store such secret information in Git repositories is obvious.
read morePosts
Kubernetes Objects Required For A Typical Web Application: Part I
From an application developer and Kubernetes user’s point of view, you have to have a working knowledge of Kubernetes. The post outlines the most important Kubernetes objects required to deploy a typical web application. Let us assume that the web application uses the two-tier architecture. We also assume that the cluster is created and administered by an infrastructure or DevOps engineer and the necessary access is provided to the developer to deploy their web application onto the Kubernetes cluster.
read morePosts
Web Application Ideas Suitable For Beginner Web Developers
The List Of Web Application Ideas An e-commerce platform where people can buy and sell products online. A platform for booking and managing doctor’s appointments. A social networking site for connecting with friends and family. A task and project management tool for teams and organizations. A recipe and meal planning app for people who want to eat healthy. A travel planning and booking app that helps people plan their trips and find the best deals on flights and accommodations.
read morePosts
Database Migrations In A Pluggable Module System Using A Graph Algorithm
In this blog post, I will explain how I implemented a graph algorithm to solve the database migration problem in an application pluggable module system.
Prerequisites:
Working knowledge of Python Working knowledge of Graph Theory. Familiar with the terms: Edge, vertex, path, sink, source, digraph, path graph, etc. Gavika Web Framework has a pluggable module system. The modules can be developed independently. They can be installed, upgraded and removed from the main application.
read morePosts
Access Dictionary Keys As Object Attributes
You access Python dictionary keys using the syntax:
my_dicy[my_key] For example:
>>> my_dict = {'food': 'idly'} >>> my_dict['food'] 'idly' Sometimes, you might want to access the dictionary keys using:
my_dict.my_key syntax. If you do this is what happens:
>>> my_dict.food Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'dict' object has no attribute 'food' How can you solve this? Easy.
pip install attrdict How do you use the newly installed package?
read more