paint-brush
641 Stories To Learn About Software Engineeringby@learn
1,958 reads
1,958 reads

641 Stories To Learn About Software Engineering

by Learn RepoJune 7th, 2023
Read on Terminal Reader
tldt arrow

Too Long; Didn't Read

Learn everything you need to know about Software Engineering via these 641 free HackerNoon stories.

People Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - 641 Stories To Learn About Software Engineering
Learn Repo HackerNoon profile picture

Let's learn about Software Engineering via these 641 free stories. They are ordered by most time reading created on HackerNoon. Visit the /Learn Repo to find the most read stories about any technology.

"Don’t worry if it doesn’t work right. If everything did, you’d be out of a job." - Mosher’s Law of Software Engineering

1. How to Delete Commits From Remote in Git

This article explains how to remove commits from a remote server in Git.

2. A Quick Guide to Upgrading Laravel to Version 9 🚀

How you can upgrade your laravel application to version 9

3. Implementing a Singly or Doubly Linked List in Java (A LeetCode Question)

Design your implementation of the linked list. You can choose to use a singly or doubly linked list.

4. Our Code Is Harming The Planet, We Need Carbon Aware Design Patterns

Our Code Is Harming The Planet. Can Carbon Aware Design Patterns Help Us Fix It?

5. A Simple Introduction to Software Development

Software development is a very lengthy process. It includes a lot of research and design, which is necessary for the project's success

6. "If You Have a Goal, You Can Reach it" Nominee Nominee Yan Tsishko

Yan Tsishko is a chief software engineer at Oxagile. He believes Javascript/TypeScript is the most exciting technology & that frontend is the future of tech.

7. How to Get Into Tech and Become a Senior Engineer in 4 Years

As software continues to eat the world, more and more people ask me about "getting into tech," i.e. a successful Software Engineer easily making around $350,000 in total annual compensation. I get asked this a lot because I had very little coding experience when I decided to make a career change into software. Four years after making that decision, I entered Twitter as a Senior Software Engineer with a compensation package I couldn't even dream of making elsewhere. I often look back and refer to my career change as the best decision I made in my life.

8. 3 Main Types of Technical Debt and How to Manage Them

The 3 main types of technical debt are: deliberate, accidental/outdated design, and bit rot.

9. Why Is Git So Complicated

Git is meant to always give you back the data exactly as it was saved OR let you know the repository is corrupted. And it does an amazing job with it.

10. 19 Little-Known Programming Myths

You might think a profession based on logic and learning would be immune to folklore, but the developer community remains rife with myth — myths so pervasive they begin to manifest into reality.

11. The Programming Languages Dominating 2022

The following is a list of the top 10 programming languages in 2022:

12. SOLID Principles: A Simple and Easy Explanation

SOLID Principles is a coding standard that all developers should have a clear concept for developing software in a proper way to avoid a bad design. It was promoted by Robert C Martin and is used across the object-oriented design spectrum. When applied properly it makes your code more extendable, logical and easier to read.

13. A Shortcut From Coding Courses to Job Offers

Learning to program can be frustrating if you’re not sure you’re headed in the right direction. How do you know you’re making real, legitimate progress? Is it when you’ve earned a certification? Completed an online course?

14. Writing Pandas to Make Your Python Code Scale

Write efficient and flexible data-pipelines in Python that generalise to changing requirements.

15. Habits Every Software Engineer Should Imbibe

Good habits are important for a software engineer. They help you write maintainable code that your future self will thank you for.

16. Once Upon a Time in Software Development

Some years ago, when I finished my studies. I worked in a small company with some friends and teammates. You know, it’s the common developer road: you studied a lot to pass algorithms class, math, sciences, and your deontology course to have ethics principles. At the end, some company hired you with a lot of promises about: good job, good salary and good opportunities for your career in software. Basically, it was the dream job after 4, 5, or 10 years of studies.

17. Artifactory: A Great DevOps Tool That Will Help You Release At The Speed Of Light

When it comes to DevOps, releasing fast is very important. Today, we will see how Artifactory is going to help companies release fast and efficient.

18. 5 Different Angles To Look At Java

I’ve encountered Java three times in my life.

19. If your goal is to be a software engineer, you've set the bar too low

When I started coding, it was partially because I thought it’d be cool to make a computer do my bidding.

20. How to Export HTML Tables into PDF Documents Using JavaScript

Web apps that contain tables, charts, and graphs often include an option to export the data as a PDF. Have you ever wondered, as a user,  what's going on under the hood when you click that button?

21. Revealing The Secrets of Top Software Engineers

One of the largest misconceptions about succeeding as a software engineer is that people think if they simply work hard, they will become successful and will receive the recognition they deserve. They couldn’t be further from the truth.

22. What OpenAI’s GPT-4 Means for the Future of Software Engineering

OpenAI's GPT-4 could impact 80% of US workers' jobs, but is the end for software engineers?

23. Mono-repo Vs. Multi-repo Vs. Hybrid: What’s the Right Approach?

I still remember my first day at Outbrain. As part of the Bootcamp (training program), we were required to clone the code from a repository called the trunk (one monolithic repo that contained all our codebase). It took at least half a day to clone and build the whole source code. Over the next year or two in which my team worked with a monorepo, we just suffered — cloning the repo was time-consuming; the slow build/release time frustrated us; flaky tests and bad commits affected all the engineering; and let’s not even mention the IntelliJ indexing time, which easily afforded us time to run down for a chatty coffee break.

24. Why I Dropped Out of College in 2020 to Design My Own ML and AI Degree

Most people would think I was crazy for starting 2020 as a college dropout (sorry mom!), but I wish I made this decision sooner.

25. Trying Clean Architecture on Golang

Independent, Testable , and Clean

26. Please Don't Use OFFSET and LIMIT For Your Pagination

Gone are the days when we wouldn’t need to worry about database performance optimization.

27. Distroless Containers: Hype or True Value?

The goal

28. Top Open Source Vulnerabilities to Watch Out

Open Source packages are a mainstay for most software engineering projects. We are so accustomed as developers to run our npm install (for Node developers) or

29. API Gateway vs Backend for Frontend (BFF): Use Cases, Similarities and Divergencies

In this article, we are going to see what an API Gateway, BFFs, and how they are used for Client-Server communication in a Microservices architecture.

30. Webhooks Are Not the Same as APIs

In this article, we will discuss what makes them different from one another and what is the best case where they should be used.

31. Go: The Complete Guide to Profiling Your Code

Go is a programming language often used for applications in which performance matters. Optimizing your code based on assumptions is not a best practice of course. You need to have insights about your code performance and bottlenecks to be able to optimize it efficiently.

32. How a Clean Codebase Becomes Unmaintainable

Let's figure out how the coding style increases and then degrades.

33. How to Implement Caching Efficiently in NestJS Using Redis

In this post, we’ll look at using Redis to give cache capabilities to a NestJS project. We’ll discuss Redis, what caching is, and the implementation procedure.

34. I Switched to Low-code, Here's Why

You need to make a choice between building something quickly to validate your ideas or building something robust from the start.

35. How I Built a Simple Report Card Program in Java

Learn How to make a simple Report Card System in Java, which will accept 2 subjects but later it will be updated to 15 subjects.

36. Treating DevOps Like Skynet with ChatGPT

One area that really has the tech industry taken by storm is ChatGPT's capability of writing code.

37. 12 Websites That Will Help You Learn Web Development Faster (completely Free)

12 Websites That Will Help You Learn Web Development Faster (completely Free)

38. Nucleoid: A Low-code Framework for Node.js

Nucleoid is low-code framework for Node.js, lets you build your APIs with the help of AI and built-in datastore in declarative runtime engine.

39. How to Correctly Review Pull Requests

Reviewing pull requests can and should be easy. But are your pull requests reviewed properly?

40. Will ChatGPT Change Coding Interviews Forever?

Sergio Pereira talks about ChatGPT and how it could affect coding interviews.

41. Lessons From Starting a New Web Service Business

A company wants to start a new web service - a messaging aggregator for customer support. How do you go from an idea to a Python/Vue/Socket.IO web application?

42. Become a Better Developer by Learning Functional Programming in JavaScript

Functional programming is a programming paradigm. This post tells you the basics and benefits of it and how to use it in JavaScript.

43. How To Customize an OpenAI Chatbot With Embedding

Learn how to leverage embeddings to have an OpenAI chatbot, built with React and Node.js, respond correctly to specific contextual prompts.

44. Lessons Learned from Working Remotely for 2+ Years

I've been working remotely for +2 years now and I've learned a lot about it. Here are 4 lessons I've learned working remotely so far.

45. Why is This So Hard?

This article explores what good code is and shares some tenets of good structure.

46. Resolving the Blocked a Frame with Origin "null" From Accessing a Cross-Origin Frame Error

Learn how to resolve the "blocked a frame with origin "null" from accessing a cross-origin frame error."

47. 10 Repositories to Help You 10x Your Performance on Technical Interviews

10 repositories that will transform the way you approach technical interviews.

48. What is Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC) Models are a set of guidelines to help developers manage the process.

49. This is Your Brain on Factorio

So I’m on zero sleep. I decided last night at 3am that it wasn’t worth waiting in bed, hoping to fall asleep anymore, having to wake up at 8am anyway. Being incredibly tired, beyond tired, loopy even, I think, “what to do?” I don’t have much to do to pack before my flight tomorrow, and I’m useless for anything productive...maybe a little Factorio?

50. ShlinkedIn: A Fun Social Network Built On Open Source

In honor of Open Source Month, I am writing about ShlinkedIn: A parody open source site built on Phoenix LiveView/Elixir that is like LinkedIn doe funny people

51. Rethinking the Concept of Software Quality Through Agile Eyes

Traditional thinking about software quality might not help in really getting the full value out of Agile practices. Let's find out why.

52. RTFM - The Single Most Important Bit Of Advice for Engineers

Reading the manual is a habit that every software engineer needs in order to perform well. Save hours of trial and error.

53. Y2K22: The Problem that Caused Millions of Emails Worldwide to go Undelivered

The Y2K22 Bug is the consequence o very bad software design

54. Structuring projects and naming components in React

As React is just a lib, it doesn’t dictate rules about how you should organize and structure your projects. This is nice, because it gives us freedom to try different approaches and adapt the ones that better fit for us. On the other hand, this could cause some confusion for devs that are starting in React world.

55. How Do Code Reviews Work at Microsoft?

Have you ever wondered how one of the largest software companies worldwide ensures high-quality code through code reviewing?

56. New JavaScript Features in 2022

JavaScript is changing fast with a lot of new and exciting features to help us - developers write code better and better. Let's check these latest features.

57. Deploy Docker Using Ansible

58. How to Consistently Deliver Your Projects on Time: 5 Tips to Follow

The bread and butter of knowledge work is figuring out what needs to be done, in what order, and what can be cut.

59. An Overview of OAuth Fundamentals and Flows

OAuth flows are essentially OAuth-supported methods for verifying permissions and resource owner information.

60. Creating a Terminal Emulator in React

How to create a terminal emulator in React and Typescript

61. Mozilla Summer Startup Studio and MVP Lab

TLDR: See mozilla.org/builders for more details regarding our summer programs!

62. You Can Become a Job Ready Web Developer From Scratch in Less Than a Year

Developers are some of the best-paid people on the planet thanks to their skillset. It's something that you can learn a in less than a year with the right tools

63. 8 Tips for Writing a Winning Software Engineer Cover Letter

You have looked around and located some software engineer jobs that interest you. While you may think you can just write a quick cover letter to go with your resume you may want to think again. A good cover letter takes time. You want your letter to stand out from the rest. Here are 8 tips for writing a winning software engineer cover letter.

64. Top LeetCode Patterns to Use for FAANG Coding Interviews

Coding patterns like Sliding Window or Two Heaps enhance our “ability to map a new problem to an already known problem.”

65. How Clean Code is Lowering the Quality of Developers

I believe that software development has a problem with mis-promotion, and over-promotion of "Clean Code".

66. The Surprising Benefits of Intermittent Fasting for Software Engineers

Discover the numerous benefits of intermittent fasting for software engineers, including weight loss, improved cognitive function, and better health.

67. What Happens When You Call a Function?

68. Stop Teaching Ethics to Software Engineers

69. Doing API Monitoring the Right Way: Metrics and Best Practices

In this post, we'll go through the best practices for API monitoring, such as which metrics to prioritize and how to troubleshoot when an issue arises.

70. Profiling Java Applications with Async Profiler

Disclaimer: This story is not sponsored by Async Profiler.

71. Introduction to Object-Oriented Design Patterns

After hitting a certain level of experience & spending quite enough time in the industry, I have realised the importance of designing/architecting system & software. So I have started looking into system/software design & got to know nothing can better start than a Design Pattern. And the first thing I have done is googling "What is Design Pattern?" Hence got the idea of this article.

72. Learn Blockchains by Building One

The fastest way to learn how Blockchains work is to build one

73. AutoScraper and Flask: Create an API From Any Website in Less Than 5 Minutes

In this tutorial, we are going to create our own e-commerce search API with support for both eBay and Etsy without using any external APIs.

74. My Path to Becoming a Software Developer

My story begins way back in the 2004–2005 school year at Rio Linda High School. I was taking two advanced placement (AP) classes: calculus and physics. I had phenomenal teachers: Mr. Bautista and Mr. Gavrilov. I’m pretty sure they could teach calculus and physics to a cat, Schrodinger's cat, that is.

75. 100 Pieces of Programming Advice from the Book Clean Code by Robert Martin

Clean Code by Robert C. Martin is the most recommended programming book of all time. There’s a good reason why.

76. Becoming Consistent

Becoming Consistent

77. 5 Reasons why you should go to a coding bootcamp

I went to a coding bootcamp recently. These are the reasons why I went and considerations I took when deciding to go.

78. The Future of Software Engineering: Is Low-Code / No-Code the Answer?

Low-code is transforming how software developers build and deploy web applications. How will this impact the future of software engineering?

79. 4 Reasons That Will Make Vim Your Favorite Editor

Vim is a powerful text editor. It's popular amongst coders and writers, and in this blog post, I will convince you to use it.

80. The Clean Code Book for JavaScript Developers: A Quick Summary

This blog post summarizes the book “Clean Code” written by Robert Martin on how to write a readable and maintainable code.

81. How To Make End-to-End Testing Your Friend

It's about time to get automated end-to-end testing on your side and improve your development process.

82. What is Shift Left Testing and Should Your Dev Team Adopt it?

Benefits and key considerations of shift left testing in software development life cycle.

83. Don't Nest Callbacks, Use Promise Chaining Instead

A comprehensive guide to making your asynchronous JavaScript code more manageable using Promise Chaining!

84. All You Need To Know About Model View Controller

In this article we're talking about MVC also known as Model View Controller. Everywhere in the software engineering taking about MVC. So let's jump on to the content.

85. 4 Biggest Mistakes Made During Software Engineering Interviews

If you prefer to follow along via my YouTube video, you can watch it here

86. 40 Best Websites to Learn Programming Online Right Now

If you’re new to coding, you’ll be pleased to hear that there are a ton of great resources on the web to help brand new programmers learn programming from scratch. In fact, some of the best programmers in the industry are autodidacts with no formal degree in computer science.

87. What Software Development Stack to Build on in 2022?

It’s impossible for teams to make the most out of their development effort without the right tools. Here is the best software development stack for 2022.

88. An Overview of Database Indexing for Beginners

Database Indexing is the most common way known and utilized by backend developers to optimize database queries.

89. Write Git Commit Messages That Your Colleagues Will Love

Git commit messages are how we communicate to our future selves. In this post, I'll share the three most important rules when creating a commit.

90. The Future of Javascript: Entering into ShadowRealms

ShadowRealms are a new way to separate our code and create safe environments to execute it in. Let's look at how they work.

91. Django Boundaries - Models and Views are Not Enough

"The Web framework for perfectionists with deadlines." This is what Django says and that is actually true indeed.

92. 3 Habits That Will Help You Become a Top Developer

Who/what, according to you, is a programmer’s best friend? Some say coffee, others say keyboard shortcuts but I think it is Stack Overflow.

93. The Complete Guide to Becoming a Software Architect

"I want to become a solution architect. What are the resources to learn more about architecture?" - We are all asking the wrong question.

94. Introducing Starlite: A New Python Asynchronous API Framework

Introducing the python Starlite API framework - a new async (ASGI) framework built on top of pydantic and Starlette

95. Future Javascript: Types May Finally be Coming to Javascript

The type annotations specification specifies how Javascript will, in the future, implement types. Let's look at how types in Javascript will work.

96. How to Get Started With a Clean Architecture Template for NodeJS, Ts.ED and TypeScript

🔰🦸 Template to start developing a REST API with Node.js (Express), TypeScript, Ts.ED, ESLint, Prettier, Husky, Prisma, etc.

97. Tail logs from multiple Kubernetes pods the simple way

Kubernetes (a.k.a K8s) is the de-facto standard of container orchestration software backed by Google and one of the most active open source projects. If you are using Docker it is very likely that you are using Kubernetes or at least have heard about it.

98. What Differentiates a Junior, Mid-Level, and Senior Developer

I often wondered about the difference between junior, mid-level, and senior developers, so I decided to write a short article about the topic.

99. A Q&A With Kunal Kushwaha on Diversity, Open Source, and the Power of "Just Getting Started"

Hear Kunal Kushwaha's story - DevRel Manager at Civo, founder of Community Classroom and Kubeworld + Twilio Developer Searchlight Honoree

100. AI-Assisted Coding with Tabnine

Be more productive, write code faster, make fewer mistakes, and have to do less context switching between other windows and your IDE.

101. An Essential Guide to Legacy Code

In this guide, you'll learn what is legacy code, its characteristics, tools, and the best practices for working effectively with legacy code and technical debt.

102. How to Start Using Diffblue Cover: Community Edition For Unit Testing

Automating the writing of unit tests, the bugbear of every software developer

103. What is Cairo Lang? 10 Best Resources for Scaling dApps Using STARKs

A brief guide about pros & cons of Cairo lang and Top 10 resources to answer your question how to learn Cairo in 2022 and how to scale dApps using STARKs

104. 3 Most Common Ways to Connect your Node and React Applications

There are different ways to connect react frontend and NodeJS backend. In this blog, I am going to tell you three ways how you can connect backend and frontend.

105. How to Review Pull Requests in 2022

Someone in my Virtual Coffee community asked about getting better at reviewing pull requests (PR) today, which prompted this post. Hopefully, you find something

106. Will ChatGPT Put Smart Contract Engineers Out of a Job?

Is AI coming to put software developers out of a job? Find out with Compliance Officer Michael Fasanello and Smart Contract Security Researcher Philip Werlau

107. How to Create Toast Notifications in React Applications

In this article I will show you how to use Tailwind to add some stylish design elements.

108. Let's Go! 5 Use Cases When You Need Golang for Your Tech Project

Reveal why there is hype around Golang and describe the best application variants for this programming language as well as cases when Go is not the best choice.

109. The Microservices Maestro

Something I really like about living in the city is the fact that it is made for the masses. Despite its many defects (the rain not being one), Seattle is architected to enable hundreds of thousands of people to go through their busy days. It has a transportation system that interconnects different areas, it mandates different land usage policies for parks, residences, commerces and schools, and it provides restricted parking zones. It is designed for walking (assuming you like hills), it provides easy access to hospitals and it is guarded by police and fire departments.

110. Why Data Consistency is Important in a Microservices Architecture

Data Consistency might be a pain in the ass. It is a well-known source of unexpected surprises. What is it? What does it depend on? Why is it so often overseen?

111. How to Write the Perfect CV for a Software Development Role

How to create perfect resume? Tips on CV structure, volume, summary, tech skills, and show template of a resume for you.

112. JS Arrow Functions for Newbies

Introduction to new ES6 javascript feature - Arrow Functions.

113. An Insight into Side Hustles for Software Engineers

37% of Americans are involved in some sort of side business one way or another.

114. Processes & Threads: The Essentials to Mastering Linux

Threads & Processes are some of the least-understood topics in Linux. Make yourself stand out by starting learning them today. See yourself transform!

115. C++ Type Casting for C Developers

The typecasting is the feature which makes C++ more type-safe, robust & may convince you to use it over C. But this is also a more underrated topic when you are a newbie or moving from C background. Hence, I come up with an article on it. Here, we will not only see the C++ type casting with example for C developers but we will also cover Why do we need typecasting? & C++ type casting cheat codes for C developers to remember & employ it easily.

116. Understanding WhatsApp Architecture

WhatsApp is one of the most used platforms for messaging. Information is sent immediately, which is why more websites use it for communicating with their users.

117. Deployment Choice: Code Promotion vs Artifact Promotion

When it comes to deployment, a choice must be made. Find out what's the difference in code promotion and artifact promotion

118. How To Build and Sell APIs

Building and selling APIs is a great way to create a new source of passive income.

119. Find the Right VP of Engineering for Your Company

No matter whether you’re just starting to build a business, growing a company, leading a major corporation, or anything in between, technical leadership will be one of the most important decisions and hires you make. In today’s software-driven world, many companies are being founded by technical founders themselves, but that’s not always the case.

120. Keeping Dependencies Up To Date with Maven-Centralized Dependency Management

Keeping Dependencies Up To Date with Maven-Centralized Dependency Management

121. Software Design Patterns Explained

Software design patterns have been used to package solutions to many common design conundrums. Each one has its own advantages and drawbacks to consider.

122. The Basics of The Firmware Development Process

Firmware development is a necessary process in creating a new device and an embedded system. All the features and functionality of a device depend on its firmware. In simple words, firmware lies between software and hardware parts. So, it helps run software on a device and makes hardware perform required functions without involving users.

123. I Became a Software Engineer in 3 Months - Here's How

I became a software engineer in 3 months and I believe you can too. The secret that helped me succeed is showing up every day and doing the work.

124. Welcome To the New Reality: Engineering Metrics are Business Metrics

According to a McKinsey study of over 400 large enterprises across 12 industries, companies with high-performance engineering teams best their competition in all areas, including revenue growth, customer satisfaction, and brand perception. The evidence is so clear that the study itself is called, “How software excellence fuels business performance,” and it concludes that software development is integral to business success in all industries — retail, financial services, manufacturing, and of course, software companies, all require a strong engineering department to succeed.

Yet, many executives view their engineering departments as a “black box.” While other departments report on their success with metrics like revenue, customer retention rate, or cost of new customer acquisition, engineering metrics don’t often make it into the board deck. But engineering metrics are essential to understanding how your company is doing. They convey critical information about your company’s ability to deliver value to your customers, and your company’s potential for future success.

Plus, engineering is expensive — it’s important to know whether that’s money well-spent.

For a holistic picture of how your engineering department — and your business — is doing, you need to start tracking engineering metrics.

125. Marketing the Engineering Team

Ever been a Systems Administrator? I have (first job I ever had!), and I have to tell ya, it's a pretty thankless gig. I mean yes, there is the satisfaction of a job well done, the joy of knowing that everything is up and working to spec, etc., but, behind all of this, you are left with the knowledge that Nobody Cares Till It Breaks 😔.

126. Taking the Harder Path

Is almost never the right answer when developing systems, at least the sort that I build. The easy path is almost always best and that feeling of “something being easy” is often a sure sign of being on the right track.

127. Software Maintenance Types: Corrective, Adaptive, Perfective, and Preventive

Enhancing product functionality, reducing deterioration, and satisfying the needs of users - all of that is achieved through software maintenance.

128. How to Design a Flexible Database Model

Handling these business changes at a data store level can be a nightmare for software engineers if the design of the underlying model does not account for adapt

129. How ML Challenges Software Engineering

Inherent uncertainty, data-driven behavior, rapid experimentation: characteristics of Machine Learning that disrupt traditional software engineering practices.

130. How long does it take to Code an eLearning Platform?

To estimate the development costs it's crucial to know how long it takes for eLearning software development. Find out here!

131. A Picture Book Written in C Code

If you’re a programmer, you probably remember your first program as the classic Hello World program that outputs “Hello World!” to your display. The Hello World program is a nice, simple little program- but it’s BORING! Likewise for the numerous code examples for beginners that involve the variables i and j.

132. GitHub vs GitLab: Which One Is Better for You in 2022?

GitLab and GitHub are both popular cloud-based Git repositories. We compare the two to see if Microsoft has given GitHub the edge.

133. How to Become a Pro Debugger

Debugging is not something that is taught to anyone at any point in their careers, which leads to the belief that it is very difficult.

134. Object-Oriented Programming Explained in 5 Levels of Difficulty

I will explain Object-Oriented Programming (OOP) on Five Levels (a child, a teen, a college student, a grad student, and an expert).

135. 5 Programming Languages To Kickstart your Software Development Career in 2022

5 Programming Languages To Learn In 2022. Python is in the boom, mainly due to Data Science and Machine Learning.

136. How to Upgrade a Laravel App to the Latest Version

How to upgrade your laravel application to the latest version

137. The Implications of Javascript being a Single-threaded Language

Learn how Javascript async/await works and what it means by Javascript is a single-threaded language.

138. Broken Windows Theory in Software Development: Why Details Matter

While some problems in the software development world may seem inconsequential, they can have serious side effects and costs on people and society

139. 6 Places to Start a Career in Data Science in 2022

How to become a data scientist? Want to become a Data Scientist? Here are the resources. Resources to Become a Data Scientist

140. A Decentralized internet is Unviable / Web 3 Developers are Clowns: Do these Opinions Hold any Salt?

In the beginning, God created Web 1.0 (No offense, Tim Berners-Lee). Then Web 2.0 followed. The age of the third web is now upon us but there is a divide...

141. 4 Coding Practices I’ve Picked Up Working for a Startup

Coding practices to pick up when starting out as a software engineer at a startup

142. A Guide to Design Thinking and Continuous Delivery from an Ex-Principal Engineer

How do the big tech companies and unicorn startups succeed in agile product development while maintaining code quality.

143. A Principal Software Engineer's Guide to Planning Projects Painlessly

Planning as a principal engineer is all about bringing engineering, business, and people close together. Here are the things to consider.

144. 10 Things in Engineering We Don't Spend Enough Time On

In this article, we’ll look at ten underrated activities in engineering for which allocating more time can be beneficial.

145. Why Developers Should Take Coding Challenges Regularly

First of all, let me start by saying that the ability to solve coding challenges is not a measure of how good a web developer you are, but it can show that you are a great developer and make you stand out from the crowd. Nobody needs coding challenges to create an outstanding web page using HTML, CSS (or it’s frameworks), and maybe even a little JavaScript.

146. Java Constructor Interview Questions

Here we've listed the most commonly asked concepts on constructors in java that can help you ace your java interview.

147. Implementing the Weighted Random Algorithm with JavaScript

The Weighted Random algorithm is used to send HTTP requests to Nginx servers. In this article, you'll learn how the Weighted Random algorithm works.

148. Finding Digital Crimes by Exploring Master File Table (MFT) Records

To explore the MFT records, learn how to locate date and time values in the metadata of a file we create.

149. 5 Key Benefits Of Being a Software Engineer Nobody Tells You

If you're more of a visual person - check out the video version

I’ve been a software developer for coming up to three years, these are the things that really make me enjoy this career and make me thrilled to recommend it to others.

150. Why OpenTelemetry Should Matter to Network and Systems Admins

OpenTelemetry is young, even by internet standards. Born out of the merger of OpenTracing and OpenCensus projects at the Cloud Native Computing Foundation CNCF

151. 5 Useful Tips from My Amazon SDE II Interview Experience

Amazon SDEII coding and system design interview experience from initial recruiter call to online assessment and onsite rounds.

152. Building An Airbnb-Like Map in Next.js

We will be building a proof of concept to create customer Google Maps markers using any React component in a Next.js project using AirBnB as an example

153. Static Full-Text Search in Next.js with WebAssembly, Rust, and Xor Filters

I built a full-text search engine in Rust and WebAssembly. Fast, lightweight, and tons of fun to build!

154. I Went From No Coding Experience To Creating An Ethereum Application Within One Year

In this article, I explain how I went from no coding experience to creating my first decentralized application on Ethereum.

155. Dev Talent in the Age of Commoditization

Back at the dawn of the modern computing era, one Donald Knuth published a book titled "The Art of Computer Programming" that soon became a bible of software engineering and defined many generations of computer programmers to come. This book, which was intended as a compendium of computer algorithms, had also put forward a very important idea: software engineering is a form of art. At the time, that was the prevailing point of view.

156. 36 Questions Every Software Developer Should Ask Potential Employers

“Do you have any questions for us?” the interviewer asks. This is your chance to find out if the company if a good fit for YOU.

157. How to Debug JavaScript Right Inside Your Chrome Browser

Chrome dev tools are a must have tools for modern day developers. Take your first step learning chrome dev tools by learning source debugger.

158. The Algorithm for Reversing A Sentence

I did a practice interview on Pramp this week. It didn’t go super well — which is frustrating because in retrospect it wasn’t that difficult of a question. Let’s jump in.

159. How to Create Different Gradient Backgrounds in React Native Application

Gradients bring out a colorful taste in our apps. So it’s important to know how and when to use them in your mobile apps. In React Native, gradients are extremely easy to integrate and in this article we are going to describe exactly how to implement them. There are mainly two types of linear gradients in React Native and CSS: Linear and Radial gradient

160. 3 Architectural Design Patterns for Software Development

Learn about software architectural patterns and their benefits and drawbacks.An architectural pattern is a general, reusable solution to a commonly problem

161. 6 Lessons I Learned From Maintaining an Open-Source Project with 800k Downloads

I maintained an open-source project with 800k+ downloads/month. I learned six invaluable lessons and I will now share them with you.

162. 4 Tips to Improve Your Engineering Team's Velocity in Scrum

In this article, you’ll learn what velocity means in the context of an agile/scrum methodology and how you can improve it to allow your team to move faster and

163. Complete #100DaysOfCloud for Free On Cloud Academy

A 100-day commitment to learning facilitated by Cloud Academy. Sign up, complete the Cloud Marathon and your education is free.

164. How Does Technical Debt Drive Up Business Expenses?

How does tech debt cost you? Here are 6 reasons why managing technical debt should be part of your business plan.

165. This Is What I Learnt After Making Over 1,000 Code Reviews

This story was originally published on my blog. If you're interested in this kind of content, feel free to check it out and subscribe :)

166. 5 Caching Mechanisms to Speed Up Your Application

In this article, we will discuss the various Caching strategies available and how to choose the right one for your use case.

167. Unlock the Power of ACID Properties in Databases: A Comprehensive Guide for Developers

ACID stands for Atomicity, Consistency, Isolation and Durability and each of these have a specific purpose when it comes to databases.

168. 7 Ways to Make Your Python Project Structure More Elegant

Best practices for a manageable, scalable, and easily understandable Python project structure

169. 5 Software Engineer Approved Ways to Optimize Development of a React App

When it comes to React, there are some of the things that will optimize your code and will give you better results in it.

170. Unit Test AWS Lambda in Go

When I started working in Go and AWS Lambda, one of the difficulties that I faced was unit testing. I had a decent idea about what is unit testing and knew how to do it in Ruby but in Go, I had no idea because I was a beginner.

171. Fluent Parallel Tasks in C#

Performance is often one of the key focus points when building enterprise software. Many of the systems that we build rely heavily on communications with other systems. When these external communications become slow, then our software becomes slow. Unfortunately, we often have no control over the response time of the services that we depend on. However, we can optimize the way that we communicate with those services in order to ensure maximum performance.

172. Android is Better. This is why.

To move forward with clarity, companies need something to relate to, for their purpose and for the greater good of the customers.

173. Getting Started with Zalenium: Docker-based Selenuim Grid

The integration of Docker and Kubernetes makes Zalenium an appealing choice for setting up Selenium-based infrastructure.

174. GIT: Explained in 5 Levels of Difficulty

I will explain GIT in five levels to different audiences.

175. 5 Tips to Be More Productive With Kubernetes

I like to read about and see how people set up their environments and any tools, tips, and tricks they use to be more productive when working with Kubernetes and Istio. What follows is a collection of 5 tips and tools that I use daily, and I think it makes me more productive with Kubernetes and Istio.

176. AWS ECS vs AWS Lambda Compared

Comparing cloud services? Read our Lambda vs ECS guide. Consider programming language, pricing, and the benefits.

177. Code Coverage: How to Measure You've Done Enough Testing

In this article you will learn what code coverage is, how code coverage is calculated, and how much code coverage to aim for in your tests.

178. The 6 Stages of the Software Development Process

The software development lifecycle methodologies (SDLC) or the Systems Development Life Cycle method aids in planning the design process of the software

179. 7 Best Java EE Courses for Beginners

Hello guys, If you are a Java developer or someone who wants to learn Java EE for web development and looking for some courses to kickstart your learning, then you have come to the right place.

180. All the Coolest Trends Coming to the Agile Methodology in 2022

Agile Software Development can give companies versatility and help them navigate through change and complexities of the software space, improving efficiency.

181. A Chrome Extension to Code Daily with LeetCode

I made a Chrome extension that generates random LeetCode questions for you to practice with every day. Here's how I did it.

182. An Intro to Algorithms and Data Structures (Javascript Edition)

Understanding algorithms and data structures are crucial to enhancing your performance 10x more than your peers who don't. This is because you analyze problems.

183. Using the Spread Operator in JavaScript

This article will cover the spread operator and how you can use them in your day to day JavaScript programming. This article assumes you have some familiarity with coding in the JavaScript ecosystem.

184. What You Need to Know About Netflix's 'Jupyter Killer': Polynote 📖

Today, Netflix open-sourced Polynote, the internal notebook they developed, to the public. It’s not rare these days that big tech companies open sources their internal tools or services, then got popular and adopted by the industry. Amazon AWS, Facebook’s React.js, etc. are two of them. It makes sense. These big tech companies have the best engineers in the industry and more often than not they are facing the biggest challenges that will drive the development of great tools. Netflix’s Polynote could be another one of those great tools and the data science/machine learning industry does need better tools in terms of how to write code, experiment algorithms and visualize data. Here are several things you need to know about this new tool. I’ll try to keep this succinct and to the point so you can quickly read through it and be knowledgeable about the pros and cons of this new choice of our development/research environment.

185. How to Insert Binary Tree in Rust

Let's learn interesting Rust concepts like smart pointers and ownership with a classic data structure and algorithm together.

186. Understanding Basic Programming Concepts: Objects & Processes

Through my studies I get exposed to a lot of programming. This is useful to solve technical problems, but I also like to think how the concepts can be applied to different domains and everyday life.

187. How To Orchestrate Event-Driven Microservices

Want to add better visibility and flexibility to your microservies architecture? Read on to find out how adding a Conductor can help!

188. The Different Types Of Software Testing

Software testing is necessary for any developed application to verify its stable and sound functioning. It is performed by validating outputs against expected outputs using dummy inputs. These inputs are derived from real-life scenarios to make sure everything seems real. In this article we discuss in-depth what different types of testing are performed before the application is actually deployed.

189. A Guide to Using Data Classes in Python

In "C" Language, you have structs. With the help of structs, we can define the return data type. You can do the same using classes in python.

190. The Low-Code Software Engineering Job Profile: What We Know So Far

An X-ray of the software engineering market looks like this: the US software job market faces a shortage of 427k tech people, while 9 out of 10 business owners are having a hard time finding IT professionals

191. Tips for Writing Good Commit Messages

In this article, I’d like to share my opinion on how to write good commit messages that would make your git log useful and improve your code review process.

192. A 5-Step Guide to Develop a Growth Mindset as a Software Developer

I have outlined five simple steps to develop a growth mindset as a software developer.

193. The Four Rs: How to Become a Good Programmer

Some best practices for how people learn pulled from the research literature and ways of applying them to learning new things as a software engineer.

194. A Cheat Sheet to Understand Web Content Accessibility

The idea of this post is to outline the most important aspects of accessibility, that’s why please treat it more like a cheat sheet than a compendium.

195. What Is an Array Type in Typescript

Arrays work the same in TypeScript as they do in Javascript, the only difference being that we have to define their type upfront.

196. Why You Should Always Avoid Encoding Type Into Names

The Rule: When naming a variable, don't encode it's type into its name, even in a dynamically typed language.

197. How I Force Myself to Work

No one seems to be immune to procrastinating, myself included. Some people get drawn into social media, for others it's YouTube or ProductHunt. I, however, tend to lose whole days on Wikipedia and development communities. Everyone has their poison. If you really are one of these odd people who don't know what procrastination is, check out this video:

198. Why Engineers Won't Do Your Coding Test

The idea behind a coding test is very simple: to filter out candidates who do not have the technical chops for the role, early on in the process before the hiring manager and candidate both waste their time with an in-person interview.

199. Understanding JWTs from Beginning to End

In this article, we will explore mainly JWT and JWS. In addition, we'll also go through JWE, JWA, and JWK quickly.

200. How to Fix Security Bugs Faster with curl Validation

Learn how to leverage the Validate Finding feature of StackHawk to find and fix security bugs faster.

201. A Prisma ORM Review

Prisma ORM is a good choice for your project. It lacks some features of other ORMs. But it's not a big deal because you can jump the lover levels of raw SQL

202. Technical Debt Management Best Practices for Software Engineers

Technical debt exists on each project if it’s more than 1–3 months old. Having technical debt doesn’t necessarily mean that software engineers are not performing well. Technical debt can appear because of business pressure, lack of requirements, lack of interaction between team members etc. However, good software engineers know how to manage the technical debt and do that. Bad software engineers simply hide the tech debt from managers and customers, hoping that the project will be completed before it gets out of hand.

203. Why Communication is Important for Software Developers

In this article you will learn different approaches you can use to improve your communication skills as a software developer.

204. Different Types of Graphs in Data Structure

Learn about different types of graphs in the data structure. Graphs in the data structure can be of various types, read this article to know more.

205. How to Really Use Git: 10 Rules to Make Git More Useful

Git is awesome if you know how to use it effectively. It's not just a backup system! Here are 10 best practices for version control with Git.

206. How To Use Guilds For Better Knowledge Transfer Between Engineers

Hello, Hacker Noon people! Technology guilds are a popular but still fresh way of implementing communities of practices in companies. Still, there are many questions, especially related to guild responsibilities and organization. Together with Andrew Kozin, I've prepared this post for you as a summary of our personal experience and understanding of the role of a technology guild nowadays.

207. How To Do Unit Testing For Microservices

The microservices approach of building applications is most suitable when we develop complex applications with diverse functionalities. Since microservices, unlike monolithic architecture, keeps each function independent of the other, it is the most followed technique in modern times for large applications.

208. My On Call Manifesto

This has been burning for a while.

209. Developer's Gold Mine: 8 Youtube Channels You Should Subscribe to Right Away

This blog showcases 8 best YouTube channels for developers with tutorials, discussions & advice from experienced professionals.

210. Product Managers Can Avoid Delays By Reducing Technical Debt

PMs are ideally placed to create a workplace culture around preventing and responding to technical debt. Here are 7 actionable strategies to help PMs.

211. A Web3 Native Database: Tableland

Smart contract developers need a web3 native database to decouple dapps and data. Tableland makes a nice try.

212. Warp: The Terminal For the Modern Developers

Today, I’m proud to officially introduce Warp, a from-first-principles reinvention of the terminal to make it work better for developers and teams.

213. DONT Use REST for Microservices, OK?

You shouldn't be using a REST or RESTful interface for communication between your microservices. I'm not saying that to be controversial, I'm saying it because that's not what REST was designed for, it's not what REST is good at and it's definitely not the best nor easiest option out there.

214. Design Pattern: Strategy Pattern in Practice

Learn strategy design patterns with practical examples. Why and how to use strategy patterns in software design.

215. How I Became a 100x Developer - As a Junior

The 10x / rockstar developer is a myth. Long live the 100x situational developer!

216. The Most Important Enginnering KPIs for Your Board Deck

Preparing for a board meeting is a stressful experience for everyone. For many CTOs, it’s also an exercise in futility, trying to zero in on engineering KPIs that accurately represent everything that’s happened in the department. The information that usually makes it to the board deck — information on completed features and incident reports — doesn’t tell the whole story.

A list of features shows what the team accomplished, but doesn’t reveal anything about how the team works. It can’t reveal process issues that need to be addressed or highlight challenges the team has overcome. Similarly, incident reports might illuminate problems in the codebase, but they’re devoid of context about how the team is dealing with those issues. Other departments have self-evident, objective KPIs. Sales, for example, can walk through their pipeline from demos booked to contracts signed, using objective measurements to chart their department’s progress over time.

Engineering leaders, on the other hand, must get creative to provide that level of clarity.

You’ll need to think carefully about the story you want your slides to tell, then choose engineering KPIs that map to those specific insights. When considering a metric, we recommend asking:

217. 5 Most Effective Productivity Tools If You’re In Tech Or Software Engineering

Everyone wants to be more productive without burning out. So, how do you get more done without working more hours? And how do you help the rest of your team improve without taking on the role of taskmaster? The answer: use effective tools.

218. How to Build Your Own Automated Self Checkout Service

Brick-n-mortar retailers, learn how to implement an AI-powered autonomous checkout from smart vending machines and kiosks to full store automation.

219. Best Resources for Software Engineers

Top websites and creators for software engineers and developers. My choice of resources to stay up to date with the latest programming tools and solutions.

220. Build Faster Next.js Static Sites Using MDX And Contentlayer

Publishing static content becomes so effortless with Next.js, MDX, and Contentlayer. This article will show you how easy it is to implement that system.

221. 5 Ways to Prioritise Your Product Backlog

This article takes a look at the different methods for product backlog prioritisation, such as Stack Ranking, The MoSCoW method, and more.

222. How to Write Meaningful Code Comments

In this guide, you will learn why it is important to write code comments, what are different code comment types, and the 4 best practices.

223. An Introduction to Domain-Driven Design - Part 2

Model - a set of concepts existing in the head of the customer/project creator and terms that reflect his understanding.

224. Everything You Need to Know About Promises, Thenables, & Lazy-Evaluation

JavaScript Promises evaluate eagerly, but sometimes that's a problem. This post covers why and how to create custom lazy-evaluating promises.

225. How Experienced Software Engineers Evaluate Designs

Experienced software engineers learn what works after maintaining their work for years.

226. You Needn’t Be Perfect as Software Developers, Live Your Life

We know that the software community has a multidisciplinary structure. In such a situation, you should not feel inadequate.

227. Programming Concepts for Non-programmers. Explained.

We use programming concepts in everyday life more often than you think. Here're some programming concepts explained for Non-programmers.

228. Mozilla Spring MVP Lab

TLDR: Apply to be a part of the Mozilla Spring MVP Lab at mozilla.org/builders

229. How Loop Is Building A Virtual Restaurant Operating System

Sundar Annamalai and Vinod Pachipulusu about starting Loop as a virtual restaurant platform to help restaurants with their business.

230. How to Send Emails Using Python

Learn how to send an email in your Python application with SMTP, a transactional email API, and with a multi-channel notification service.

231. Getting to the Promised Land of Software Engineering

A software engineer navigating the benefits of good communication in a remote workplace

232. Steps to Fall in Love With an Unfamiliar Codebase

Here I have tried to list some guided steps one can take to get familiar with any new codebase they come across.

233. How to 10x Software Engineering Productivity with Better Dev Tools

Low-Code: Achieving 10x Software Engineering Productivity Through Better Dev Tools

234. Analyzing the Source Code of Popular Desktop Apps for NodeJS Malware. Part2

Following my last article about a Discord malware, we now take a deeper look inside the inner workings of the PirateStealer malware.

235. How to Seed Your Rails Database with Faker

I built a Customer Support System a few days ago and started to think of a way to seed my rails database with random data for testing without having to manually type in the data. This may not be the best way to do it, but it works and allows you to test your application.

236. How to Setup a Powerful PhpStorm Configuration to Improve Laravel Development

By just having the right IDE setup — you can learn and grow, meanwhile producing quality code and software.

237. How to Manage Machine Learning Products [ Part II]

Best practices and things I’ve learned along the way.

238. A Guide to API Versioning Best Practices

In this article, we will be discussing some of the best practices for API versioning for ease of user consumption and flexibility.

239. How To Future-Proof Your React File Uploader

Web developers who want to build an application using ReactJS must consider the react file upload to ensure that users can upload any file they need.

240. Reasons to Flatten your Source Code

Our software is a large castle, formed by several layers superimposed and mixed, in order to facilitate its own maintenance, but which, in fact, end up creating

241. JavaScript is Everywhere

JavaScript facilitates every person, business, and organization’s interactive online presence across the world.

242. 6 Reasons why JavaScript is the GOAT of Programming Languages

Often considered as a tool to build applications in your web browser, JavaScript can also be used as a general-purpose scripting language. Discover why

243. Why I Left Engineering Management and Moved Back to Individual Contribution

Thinking of transitioning away from Engineering Manager to Individual Contributor? That is exactly what I did! Let me tell you a little bit about it.

244. Writing Google Apps Script Code Locally in VSCode

An easy Set-Up guide to writing google apps script locally with VS code with clasp.

245. The Two Primary Reasons Why Python's Popularity Keeps Growing

Python, a programming language that has long been hailed as being both capable and easy to learn & understand the code, it is available to both Windows, Linux/Unix, Mac OS X & other platform users who can now download an official Python package from the Python Software Foundation page. Python comes preinstalled on most Linux distributions like Ubuntu releases, but in Microsoft’s Windows operating systems we need to install & configure explicitly.

246. How I Got a Job at Spotify via my GitHub Profile

How my GitHub profile got me a job at Spotify. It doesn't have to be a good profile, but having one can be a difference-maker.

247. Asking Questions Makes You Look Smarter

Junior developers are afraid of looking dumb. They think that seeming stupid will hinder their career progression. Nothing could be further from the truth.

248. 7 Programming Concepts Everyone Should Know (With Code)

Hi Folks , Hope you all programming geeks are doing good. Today, we will discuss about the basic programming design principles and concepts that everyone should be aware about while developing a software . Well, Software Development ain’t easy. Programming/coding can be a real daunting task if not done in the right way. Hope you guys will like this post . So, without wasting time lets get started . [ i will be using JavaScript in here but you can use whatever language you are comfortable with ! ]

249. API Error Handling in React

I will tell you what formats for common handlers exist and why it is better to agree on a single format with the backend than to fence a new solution every time

250. What it Means to be a Senior Software Engineer

How can we measure whether an engineer deserves to receive the Senior title? What engineers should do to get to this stage of career development?

251. 10 JavaScript Interview Questions and Answers to Help you Land Your Next Role

10 JavaScript questions for experienced developers that can help you crack your next interview.

252. Varun Sharma on Software Engineering, Climate Change, and Taking Inspiration From Movies

Varun Sharma has been nominated for a 2021 Noonies Award for Architecture.

[253. Learn the Truth about Software Developers and

Dare to Change your Recruitment Strategy](https://hackernoon.com/learn-the-truth-about-software-developers-and-dare-to-change-your-recruitment-strategy) You can hire the best of the best if you try to understand the current preferences of software developers and update their strategy. Let`s learn how!

254. Software Architecture Basics: What, How & Why

Software architecture, design and process of architecting explained using a case study.

255. The Secrets to Building a World-Class Software Engineering Team to Create Cutting-Edge Products

Skilled IT workers are challenging to find and keep – and the talent shortage is bound to continue in 2022. But there’s a recipe that’s guaranteed to work...

256. Landing A Job At Twitter As A Software Engineer [How I Did It]

This is the story of how I landed a job at Twitter as a full-time software engineer, what I went through, how I prepared and why I finally decided to join the company.

257. Hammering at Clean Architecture

Who doesn’t like sharpshooting wood elves, chaos infested wastes and dwarfs digging deep under the mountain for treasures? Daring Sigmarite warrior priests and armour-clad chaos Chosen and all manner of other fantastic creatures? I know this might sound weird, but this is an article about programming! I’ve recently gained interest in trying to understand a bit more about Uncle Bob’s clean architecture design and, to do that, I’ve created a small app that I believe showcases some of the main strengths that I believe it has. Disclaimer: All Warhammer references are the property of Games Workshop and I also do not claim to be some clean architecture guru. But maybe this will help someone else with their first steps in grasping the concepts of this cool new toy I’ve found.

258. My First Experience Deploying an ML Model to Production

In this blog, I will be sharing my learnings and experience from one of the deployed models.

259. Logging Without Tears

Learn standard practices you should take advantage of when dealing with logging. Make the logging great again.

260. How to Approach Project Estimation in a Healthy Way

Learn how to do project estimation that removes deadlines and avoids stress from a successful software engineering leader.

261. 7 Proven Practices to Boost Development Speed and Project Quality

Improve the development process and product's quality by implementing proven practices in your projects.

262. The Difference Between Covariance and Contravariance in .NET C#

Simple explanation of DotNet (.NET) CSharp (C#) Variance, Invariance, Covariance, and Contravariance. Providing a Cheat Sheet.

263. Writing an Event Bus for React

Event Bus is great for lightweight event systems. We'll discover its use case in React and build an Event Bus from scratch with TypeScript.

264. Micro-Frontends: Using TypeScript's Ambient Modules

How to use TypeScript's ambient module feature for cross-sharing micro-frontend imports using single-spa.

265. Can You Really Code Without IF Statements?

I went to an OOP workshop by Sandi Metz several years ago. She made a comment that at one of her previous jobs, they didn't use if statements.

266. How Google’s Python Code Style Guide Can Help You Speed Your Engineering Team

Creating a consistent style guide for your codebase can help your team be more consistent and productive. Here's how Google's Python Code Style Guide looks like

267. It's All About Quality: Top 5 Trends in QA and Testing

Top five quality assurance and testing trends that you need to follow!

268. How To Manage Technical Debt Properly

We're used to thinking that you cannot deliver fast and maintain a healthy codebase. But does it really has to be a trade-off?

269. Why do Interviewers care so much about Algorithm and Data Structures?

Data Structures and Algorithms are one of the most important skills that every computer science student must-have. It is often seen that people with good knowledge of these technologies are better programmers than others.

270. PyTorch vs TensorFlow: Who has More Pre-trained Deep Learning Models?

Given the importance of pre-trained Deep Learning models, which Deep Learning framework - PyTorch or TensorFlow - has more of these models available to users is

271. Getting Started with Kubernetes Persistent Volumes

272. 5 Steps to Successfully Prepare for Software Engineering Interviews

If you prefer to follow along via my YouTube video, you can watch it here

273. What The Job Market Looks Like Now For Software Engineers

Software engineers seem to be in demand, but there are a lot of contradictory threads and information out there. Articles have even come out that question whether you really want to actually be a software engineer or whether you want to actually use your software engineering skills to create your own systems.

274. 15 of the Best Continuous Delivery Tools

Continuous Delivery is one of the best practices for software development, but what are the best tools for it today? Here are my picks.

275. Useful React Libraries Every Developer Should Know

This article aimed to list the most useful and straightforward React libraries that cater to specific needs within the ecosystem.

276. Building Your First Startup with Python and Node.js

This article is for business owners willing to launch their first product. In this material, we will discuss and try to compare two popular backend solutions.

277. Why is There Not Enough Software Engineers?

“The tech industry is thriving. It’s expanding almost three times faster than the rest of the UK economy and it’s nearly worth £184bn.”

278. How to Automate Kubernetes Deployments with Postman

Kubernetes is the most widely used container-based orchestration platform today. Learn how to deploy apps with continuous delivery using Postman.

279. Top 3 Free Resources to Learn Django in 2022

This blog post provides an introduction to the Django framework as well as a handpicked list of free resources to learn this framework.

280. Lean and Agile: Why Not Both? An Introduction for the Uninitiated

If you aren't an educated and/or experienced tech person, a lot of question marks may pop up in your mind while looking at these two terms: Lean and Agile. Even if you are technically proficient, you may wonder what the difference between these two really is.

281. 14 Things I Wish I Knew Before Becoming a Software Engineer

A Q&A for students with a Facebook software engineer

282. A Different Approach to Teaching Kids and Teens to Code

How do you teach 5th graders about Software Engineering concepts without getting too deep into any particular language? This is a question I’d been asking myself a few weeks in advance of attending a local school’s STEM<em> (Science, Technology, Engineering and Mathematics)</em> fair.

283. A Guide to Git with Trunk Based Development

Learn the mindset and process behind Trunk Based Development, and how to use git effectively with this pattern.

284. Continuous Integration: Best Practices To Follow

We think of bugs as being in code but that’s just the end of the story. Bugs are a human problem. You fix one bug in code but you prevent future bugs by helping humans to work better.

285. Real-time Notifications for Jenkins Jobs with CatLight

Before deep into, I would like to say this will be useful if you are managing multiple Jenkins jobs which you think is a little bit complex 😊

286. What's All the Rave About Machine Learning?

With machine learning, a user can provide a computer algorithm with a massive amount of data, and the computer will analyze it and base its recommendations.

287. How I Got a Tech Job In Berlin

This is for people currently working and residing outside of Europe, who are looking for jobs in Berlin/Europe. There are many opportunities here, as the startup scene in Berlin is on the rise. I've been working as a Software Developer for the last 5 years, out of which I spent a year and a half in Berlin. Like many developers out there, moving abroad for work is a personal dream, and most people materialize that dream by doing a Masters from abroad, and working from there. For me, the story was a little different.

288. All About Lambda Functions in C++: from C++11 to C++17

Lambda function is quite an intuitive concept of Modern C++ introduced in C++11, So there are already tons of articles on lambda function tutorial over the internet. But still, there are some untold things(like IIFE, types of lambda, etc.) left, which nobody talks about. Therefore, here I am to not only show you lambda function in C++ but we'll also cover how it works internally & other aspects of Lambda.

289. Debugging Tutorial 1 - Introduction: Conditional Breakpoints

First post in a (hopefully) long series covering everything you need to know about debugging in VSCode, IntelliJ/IDEA in Java, NodeJS, Kotlin & Python.

290. How to Teach Yourself Backend Development?

Many self-taught coders have a hard time deciding between all the various options, but it’s so much easier to learn effectively if you have a clear goal.

291. The One and Only Software Design Principle

If we build our entire paradigm on a single rule, we can keep it simple and make excellent models.

292. Top 10 Software Development Companies Working with Automotive AI

Make choosing an AI software development partner easier for yourself: check out this top 10 selection of industry-approved teams.

293. Top 5 Test Automation Tools to Improve Your Workflow

In this article, we invite you to discover our choice of the 5 automation tools that you should imperatively have tried or implemented within your organization.

294. ChatGPT in Software Engineering: A Glimpse Into the Future

How ChatGPT can support the software development lifecycle and provide a glimpse into the future of human-AI collaboration in software engineering

295. How To Assess And Improve Your Software Engineering Team's Performance

How do you measure how well your engineering team is doing and how do you find the bottlenecks where you can improve things the most?

296. Bring In The Bots, And Let Them Maintain Our Code!

Learn how to automate away as much maintenance as possible using Renovate, Travis CI, and CodeCov

297. Top 7 Courses to Become a Software Architect or Solution Architect

Every Programmer wants to grow in their career, but it’s not easy, and if you don’t pay attention to your job, you will likely stay in the same position for many years. The growth in the initial few years is generally fast. Still, once you reach the barrier of 5 years, you need to decide which direction you want to move like — people management, product management, or software architecture.

298. Understanding Event Driven Architecture

Event-driven architecture is a software architecture paradigm promoting the production, detection, consumption of, and reaction to events.

299. How to Manage Configurations Easily Using TOML Files

Central configuration files are a plus for modern Python project structures. TOML files help us store project parameters in a beginner-friendly way.

300. My Developer Interview Experience at Lyft, Microsoft, Booking, Uber, JP Morgan, Amazon and Facebook

Yet another story of how an ordinary guy from the middle of nowhere in Russia managed to get multiple FAANG offers. This time, in Europe.

301. 5 Most Common Software Deployment Mistakes and How to Avoid Them

There are a lot of factors that go into the software that drives the world today such as interface design, coding, testing, deployment.

302. 4 Ways Software Engineers Organize Their TODOs

TODOs are a tricky subject for developers. Many codebases are guilty of having TODOs linger around while nobody knows who’s responsible for a TODO or even has the required context to tackle it. Yet, should we feel ashamed for our lingering TODOs?

303. How to Write Raw SQL Query Migration in Laravel

We have created a laravel package to keep the track of raw SQL migration using package Laravel raw sql query migration

304. The Basics of Secure Application Architectures - Separation, Configuration, and Access

A starting point for building secure application architecture for busy developers

305. 7 of the Top Best Languages for Web Application Development

Interested in choosing the best language for developing web applications? Our developers have shared the top seven choices in 2021. Discover what they are.

306. From Developer To PM: The Untold Truth About Growing Your Career

Developers with a strong understanding of company strategy rise faster, despite the misconception that engineers should only focus on technical details.

307. I Wish I Never Learned to Code

I write code for a living. You might say I’m a professional software engineer, but really software engineering is much more than just a profession — it’s a lifestyle. The hoodies, the ping pong, the endless snacks and soda… it’s all true. And yet, as rewarding as this field can be, I have a confession to make:

308. Don't Make These 5 Golang Mistakes

These are mistakes that I’ve made writing Go. Although these might not cause any sort of error but they can potentially affect the software.

309. 6 Biggest Mistakes With The CSS Grid

Introduction

310. Incident Management: Onboarding Tips and Tricks

“Coming together is the beginning. Keeping together is progress. Working together is success.” Henry Ford.

311. Increasing Developer Productivity with skaffold

Primary focus of Developer is to write code. Build, Test and Deploy of the application are better left to be managed by tools. skaffold can help in automating some of mundane tasks that comes with using kubernetes.

312. Enlarge your DRY :  How to Share Values Between Web App Backend and Frontend

REST API endpoints paths list which backend uses to route API requests and frontend uses to make backend API requests.

[313. 5 Useful Tips to Become a

Successful Software Developer](https://hackernoon.com/5-useful-tips-to-become-a-successful-software-developer) Want to know some foolproof tips to become a software developer? In this guide, we have covered everything for you to know.

314. What’s Lurking in Latin America’s Tech Industry?— Surprising Facts of LATAM’s Talent Reserve

A snapshot of LATAM’s tech industry and why it has become a go-to destination for U.S. companies to hire remote software engineers.

315. Modularity Concept in Java and .Net

Modularity is central to modern software engineering - or may be all type of engineering not just software. We’ll explore support for modularity in Java and .Net platforms, but before that let’s first try to find answers for what and why of modularity.

316. Understanding Rails Polymorphic Active Record Associations

Brief Introduction

317. Open Source Myths and Half-Truths: Part 2

Let's continue our analysis of the top myths and half-truths about open source. Part 1 is available at https://hackernoon.com/open-source-myths-and-half-truths-part-1-rur3e9x

318. Arbitrage as a Shortest-Path Problem

An explanation of arbitrage and a look at an efficient algorithm to find riskless instantaneous arbitrage opportunities across markets.

319. Adopting a Mature Engineering Organization in Startups

Have you heard of software companies struggling to go through the stages of business development? Yes, of course, all of them do. The CEO oversees the company, ensuring that there are enough funds and the team is set up to get the right things done properly. But this is not a one time phase. It is an ongoing challenge. The company must continue to develop to remain competitive and infiltrate new markets.

320. Real-World Examples of Using Design Patterns in Modern PHP

Design patterns are an essential part of software development, providing a common language and best practices for recurring problems.

321. 6 Best Websites to Learn Blockchain Online

Here is a list of the best websites and online learning platforms to learn Blockchain.

322. Understanding CORS: Why It's Important and How it Works

This article will explain what CORS is, how it works, and why it is important.

323. Top 5 Headaches for Web3 Developers

The developer experience for Web3 is rife with inconveniences, including bloatedness, lack of protocol standardization, limited support for other platforms, and many more.

324. 7 Main Mistakes I Made While Learning to Code

So it has been two months since I started my transition to a more tech-related career. I thought that in 3 months I would have enough knowledge to actually build a digital product. I couldn’t be more wrong. My main lesson learned is: learning to code is a lifetime commitment; it never stops.

325. Software Requirements Specifications Template

This article is devoted to the consideration of Software Requirements Specifications, their importance in the software development process, and how they could be written. Within this article, I will pay more attention to the effective SRS template and its description.

326. Top 10 Software Engineering Metrics To Track If You Lead An Agile Team

Every conversation I have with CTOs, Engineering Managers, and Tech Leaders eventually gets to the “Which Metrics Should We Measure?” discussion.

327. Why Rust Is So Popular?

If you are looking for some kind of metal panel business idea, allow me to be clear: the Rust I am referring to is a programming language.

328. The Difference Between Backend, Frontend, Full-stack and Super stack Development

I looked at archive.org and found a website I put live in 2001, which means I have been writing some code for 20 years. Of course, I am not going to give a link to that website still it will be safe to mention 20 years back in Kathmandu when people didn’t have an email I had built websites. I uploaded it over a 33.8k modem with a dial-up connection. Kids these days will not even know the sound of that modem (yes I am old).

329. 5 Myths about Open Source Software (OSS)

Open source software has a lot of admirers, and very often nowadays when a new project is about to be developed, it is generally implied it is going to be done using OSS. Paradoxically, interest in this software has generated a lot of distortions and misconceptions that in practice sometimes prevent its trust among non-experienced users.

330. Mitigating Gatekeeping and Impostor Syndrome with Emotional Intelligence

Do you sometimes feel like you’ll never know enough to be a real software engineer? Have you interacted with seasoned engineers who made you feel like you just won’t cut it in the industry?

331. How to Build a Pokédex App with React and a Slash GraphQL Backend

In this article, we're going to walk through some of the basic setup for Slash GraphQL and then take a look at how I built a Pokémon Pokédex app with React and Slash GraphQL in just a few hours!

332. Developing AI Web Applications in Python

Read in this blog, How Python in Artificial Intelligence is an Ideal Fit for Web Development Projects?

333. 5 Tips to Help you Start Programming

I've been trying to start programming since early 2015 and I was finally able to start in 2020. It took a long time for me to start programming. There are certain things, that hindered me from learning. I tried multiple ways to overcome my issues but I failed. It took almost six years to finally convince myself to learn to program. Just in six months, I’ve learned C, C++, JavaScript, and Python. Though I’m no expert, I’ve just gathered basic knowledge of these.

334. Working With Transient Errors

Each remote service that we call eventually going to fail. No matter how reliable they are, it is inevitable.

335. Let's Stop Calling them 'Bugs' - Software Quality is Our Responsibility

The term Bug sounds like an excuse out of our scope infecting our systems. It is not. Software quality is under our control. It is our responsibility to deliver

336. What is (wrong with) software?

Software is eating the world. Those of us who work, live and love software do not usually stop by to think about its meaning.

337. Software Engineering Best Practices Collection for Machine Learning

An ever-increasing number of organizations are developing applications that involve machine learning components. The complexity and diversity of these applications calls for software engineering techniques to ensure that they are built in a robust and future-proof manner.

338. How I Used Blitz JS To Take My Pet Project Into Production

Our colleague Lazar decided to built an Absence Tracker, so we can ditch the Telegram group where we reported our absences.

339. Buddy Vs Jenkins: Technical and Tactical Differences

Buddy and Jenkins find themselves on completely opposite ends of the CI/CD spectrum. So which one should you go for? It certainly is a question of context. There are some clear technical differences but how they relate to actual value is circumstantial and should be taken on a case by case basis. As such, this comparison will be broken down into two sections.

340. What you Need to Know About Time Estimation in Software Development

Time estimation is an important skill for software developers, a nightmare for project managers, and just as opaque for customers. Why such a situation? Let's take a look!

341. Less Dirty Code

Clean Code is a Lie and Nobody Writes it.

342. Implementing Domain Driven Design For Microservices

Have you been finding it difficult to model boundaries of your system’s microservices? Have you been slowed down by the Technical complexity of your codebase? Has your team been stepping on each other’s toes ?

343. The Complete Guide to Making Sense of Types in TypeScript

344. Switching Jobs in Tech Industry: 6 Key Lessons I've Learned

Switching jobs in the tech industry can be an interesting adventure. Learning how to navigate the onboarding at a new company while keeping your health in check

345. Dimensionality Reduction Using PCA : A Comprehensive Hands-On Primer

We, humans, are experiencing tailor-made services which have been engineered right for us, we are not troubled personally, but we are doing one thing every day, which is kind of helping this intelligent machine work day and night just to make sure all these services are curated right and delivered to us in the manner we like to consume it.

346. How To Apply Machine Learning And Deep Learning Methods to Audio Analysis

To view the code, training visualizations, and more information about the python example at the end of this post, visit the Comet project page.

347. How I Built a Simple Report Card Program in Java for 15 Subjects Part 2

Write a program to take marks of 15 subjects from the user and display the Total, Percentage, Highest Marks, Average, and Remarks.

348. Taking A Glance At Software Testing, In Particular E2E Web Apps Testing

In this blog post, we will try to explain software testing from a very simple perspective and look in particular into end to end testing for web applications. We will also explore a very popular tool used in end to end testing for web applications.

349. 6 Steps to Grow Into A Lead Engineer At FAANG

If you are a software engineer in one of the FAANG companies or similar you are probably one among the thousands of engineers  at the company. How do you go from starting fresh as a junior engineer to leading a team in say 5 years?

350. Software Testing 101: Regression Tests, Unit Tests, Integration Tests, Oh My!

How do you prove that the software is working? How do you know you are not introducing harmful side effects? This is Software Testing 101!

351. Visual Regression Testing with Playwright

Visual Regression Testing with Playwright - Automated Testing

352. How I Designed My Own Machine Learning and Artificial Intelligence Degree 

After noticing my programming courses in college were outdated, I began this year by dropping out of college to teach myself machine learning and artificial intelligence using online resources. With no experience in tech, no previous degrees, here is the degree I designed in Machine Learning and Artificial Intelligence from beginning to end to get me to my goal — to become a well-rounded machine learning and AI engineer.

353. 5 Tools To Level Up Your Efficiency On Windows 10

Microsoft has done great efforts to improve the user experience and build an active ecosystem for developers. Moreover, Microsoft has completely embraced open source in recent years, there are so many awesome open-source projects developed by Microsoft.

354. Developments In Developing: Computer Scientists vs Engineers

Software Engineering != Computer Science

355. DocRaptor Vs. WeasyPrint: Python PDF Generation Tools Showdown

A PDF export showdown. Who will win: DocRaptor or WeasyPrint?

356. Hiring Freelance Developers? Here's What You Need to Know

Hiring freelance developers can provide you with many benefits over hiring full-time software developers. The most important benefit of hiring a freelance developer is that they are more affordable. Companies can avoid spending money on a yearly salary and benefits, and instead just pay for the work being done on their project.

There is also a global network of talent that can be provided to you by utilizing freelance platforms, which we will discuss shortly. Working with a freelance developer allows your company’s operations to stay lean because you can hire freelance developers as needed and cut down on expenses.

357. Building an App That Uses All 7 New JavaScript ES2020 Features

The world of web development moves fast, especially in the JavaScript ecosystem. New features, frameworks, and libraries are constantly emerging, and the minute you stop learning is the minute your skill set starts to become obsolete.

358. How I Made My Own Library of HD GIFs

Till the time I was learning to code on my own, I had the liberty to pick & explore random new stuff and technologies and build small CLIs/chrome extensions for myself.

359. 5 Important Lessons I Learnt As A Software Engineer

Recently I completed 2 years as a full-time software engineer. I started working since December 2017 at a company name Hullo.ai which was a small 10 people startup where I had to work on a multitude of things. In my first month, I had to write a Go server and dockerize it. My learning curve for the first month was something like this.

360. As Software Eats the World, Game Engines Eat Software

Marc Andreessen famously claimed “software is eating the world,” a decade later I claim "game engines are eating software"

361. Releases: The Last Frontier of Standardization

As software engineers, we strive to better our craft and leave a lasting mark on the organizations we work for. Throughout our careers, we balance two types of knowledge: the combination of business domain and technical stack is our bread and butter. Sometimes we might value the business domain over the technical stack and vice versa as we expand our toolkit. For example, we might work at a financial institution (let’s call it Acme Investment Bank) for a broad domain, but where the tech stack is not bleeding edge. On the other hand, we might roll the dice and work for a firm that has a bleeding-edge tech stack but where the domain is very specific, like a company that sells wine to your pets.

362. Best Facial Recognition Software to Use in 2021

Face recognition is a method of biometric identification through an image, video, or other audiovisual element of an individual’s face. In this article we’re going to look at the biggest market players and provide a list of the best facial recognition software solutions so that you can choose the one that meets  your business goals.

363. From Media Production Lead to Full Stack Engineer in Six Months

Story and advice from a self-taught full-stack engineer

364. The Power of Tech Communities

And how it led me to a Software Engineering job at one of India’s largest online grocery company.

365. A Video Game, a Fighter Plane, and a Story to Explain Technical Debt – Even to Non-Technical People

Imagine you are a project manager building a historic fighter plane in a video game. A technical debt story about white stripes on a fighter plane.

366. 3 Software Engineering Podcasts You Didn't Know You Needed

Here are 3 amazing software engineering podcasts recommendations that will help you become a better software engineer.

367. How To Improve Code Quality With Code Reviews and Refactoring

Originally published at Managing Technical Debt.

368. How to Become a 10x Dev: An Essential Guide

The ultimate guide to becoming a 10x Dev - or what kind of devs I'm hiring (and promoting) as a VP of Engineering?

369. Are Paywalls Worth It? - Here's What You Need to Know

How I learned the opportunity cost of not using a paywall...kind of

370. Real-Life Software Security Vulnerabilities And What You Can Do To Stay Safe

Most important aspects of our life including our finance, identity, and healthcare now depend on code. Software security is now a critical aspect for not just companies, but individuals as well.

371. 9 Strategies To Speed Up Your Software Development Process

No matter how big or little, every company is always looking for ways to speed up software development projects to stay ahead of the competition.

372. Here's How We Train Our DevOps Skills Internally

Our team started to apply DevOps practices long before we registered Mad Devs as a company. Specifically, I ran into this approach more than 10 years ago in a different company where I worked as a System Administrator.

373. Some Employer Gimmicks to Pay Lower IT Salaries

It is not a secret that in many companies, expenses on salaries of IT departments’ employees make up a significant part of the budget. And the high competition in the labor market further pushes the level of wages for IT specialists. High expenses lead to the fact that the employer is always searching for options to reduce their costs. It turned out, the companies themselves, trying to reduce costs as much as possible, turn to various tricks to reduce the cost of the work done. Similar mechanisms are used not only in IT but also in different other areas of the employer. But let’s talk about everything in order.

374. 5 Successful Strategies for Finding a Job in Tech

The COVID-19 pandemic has changed the way people search for jobs, but it is still possible to find a rewarding tech job. To make your job-hunt successful, utilize multiple strategies at the same time. Let’s take a look at the most effective ones.

375. Always Leave the Code Better than You Found It - Boy Scout Engineering 101

Most engineers have heard of the 'boyscout rule': 'Always leave the code better than you found it.' It's often been heralded as a magic cure for technical debt; if only all software engineers behaved like good citizens, our software wouldn't deteriorate so relentlessly.

376. Leveraging Google's Pinject to Write Loosely Coupled Python Code

Dependency Injection(DI) is a set of software design principles that enable engineers to develop loosely coupled code. This stack overflow post is the best ELI5 description of DI:

377. The Importance of Building a Diverse, Well-Rounded Engineering Team

Every individual has strengths and weaknesses; it’s easy as a hiring manager to hire people who display similar strengths as yourself. That’s because these strengths are easier to identify since you have experience and interest in said area and more confidence in your evaluation. However, people like you may also have similar blindspots. These blindspots, amplified on a group of people, will become much more detrimental. As a manager, I would want to reduce the number of weak areas on my team.

378. Ten Useful Git Log Tricks

If you are using Git for a while you should have come across git log. As everyone knows, the git log is a simple command that helps us to view the changes or project history.

379. Pull Request Checklist: What You Need to Do Before Assigning a PR to Someone

If you work in a team opening a Pull Request (or Merge Request) looks appropriate. It’s a common practice nowadays. However, have you ever thought about opening a Pull/Merge Request when working by yourself?

380. 17 Highest-Paying Cities in the San Francisco Bay Area for Software Engineers

A list with 17 of the highest paying cities for Software Engineers in the San Francisco Bay Area. Curate by reports from the verified professionals at Blind.

381. 16 Python Libraries to 'pip' in 2020

In this article we will get familiar with several amazing Python libraries being used by the best software teams. With the exception of HTTPX (which is in beta), the libraries listed below are being actively developed & maintained and are backed by a strong community.

382. How Do Code Reviews Work at Google?

Code reviews at Google play an important role as an engineering practice and have been adopted already in the early days of Google. Still today, they are used to keep the code base clean, coherent and to ensure no arbitrary code is committed. Even though the code review process looks similar to code reviews at Microsoft, there are some Google specifics that allow for a particular lightweight code review process.

383. 74% of US Government Employees Work Remotely and Are Permanently Transitioning to Flexible Work

Here are the know the reasons behind the US government's positive stance on remote work policies.

384. ELI5: Agile Software Development

Agile software development means different things to different people. In this post, we will define what agile software development is with a simple analogy that a five-year-old can understand. The analogy we will use is as straightforward as serving an apple to 4 kids. Yes, it will be that easy, let’s get started:

385. Five Guidelines for Robust Logging

This article describes best practices for standardized logging from the point of view of performance, debuggability, and security.

386. How to Interact With the Elrond Blockchain in a Simple Static Website

The tool is called elven.js. It is an open-source MIT licensed tool based on the official erdjs SDK. What it does is it

387. Growing Geeks Into π-shaped R&D Engineers

A Chief Innovation Officer shares tips for growing a new breed of R&D engineering talents that are skilled in more than just conventional code using π-matrix.

388. Andela Is Building Africa's Tech Ecosystem—And Companies Like Microsoft Are Following Suit

It’s still dark out when my alarm rings at 5:00am and I begin the familiar shuffle down the hall to the kitchen and the coffee machine. I pour a steaming cup as my computer boots up, the steam mixing with the early morning fog that’s spilling in through an open window.

389. Programming as Theory Building

Building models and solutions in software is not just about programming. We will review Peter Naur's classic paper.

390. How Software Engineers Can Better Develop Empathy

Software developers who aren’t familiar with the name Linus Torvalds are almost certainly familiar with his work. He’s widely regarded as one of the most prolific software developers in the world due to his authorship of the Linux kernel and Git, two of the most important projects in modern software and computing.

391. 11 Books Every Software Developer Should Read

Here is a list of some of the best books new software developers can learn from.

392. Crystal Programming Language is Slick Like Ruby and Fast Like C [An Overview]

In my never-ending quest to find harmony between speed of doing things (development speed) and speed of the thing (performance), I came across a project in its incubation phases which had me thinking: “This could be the one language for me.”

393. How to Prepare for the Facebook Behavioral Interview

Facebook Behavioral Interviews; Tell Me About A Time You Had To Manage Conflicting Priorities; Evaluation Criteria, Response Framework, and Tips & Tricks

394. How to Do Speech Recognition in Python

In my free time, I am attempting to build my own smart home devices. One feature they will need is speech recognition. While I am not certain yet as to how exactly I want to implement that feature, I thought it would be interesting to dive in and explore different options. The first I wanted to try was the SpeechRecognition library.

395. 4 Software Engineering Principles You Should Know

Engineering principles that lead to better, robust and maintainable codebases.

396. Nude Models - Part II : Getters

Ye olde Reliable Data Structures and Their Controversial (Read) Access.

Using objects as data structures is an established practice that generates many problems associated with the maintainability and evolution of software. It misuses brilliant concepts that were stated five decades ago. In this second part we will reflect on the reading access of these objects.

397. Premium Chat Module For Your React Native App

At Instamobile, we’re building a ton of complex features to save time and energy for React Native developers across the world. One of these complex features is the chat functionality, which is a must have in almost all mobile apps nowadays. In this tutorial, we’ll learn how to add a React Native Chat into any mobile app with only a few lines of code.

398. How I Got Myself FIRED as a Software Developer and How You Can Do It Too

— Hey — Hi, yeah, so because of budget constraints we decided to replace you — Uhm, ok — Ok, thanks

399. 4 Career Advancing Reminders for Junior Devs

Ask questions, ask for help, always be learning, and participate in code reviews. Often.

400. Difference Between Inheritance And Composition

With the introduction of OOPs, Inheritance and Composition entered our senses and still confusing us.

401. Top 3 Metrics For Engineering Team Performance

What’s the overall performance of your engineering team? Let’s look at how we can improve your team’s performance.

402. How to Make a DevOps Strategy

DevOps is a deployment process that helps automate a lot of processes that used to take a team hours to days to get through. When you are trying to get that process going, you need to know that everyone is on-board or else it won't work. Switching from Waterfall deployments to DevOps is a huge organizational change.

403. RANSAC, OLS, PCA: 3 Ways to Draw a Straight Line Across a Set of Points

How I approached solving an interview task for autonomous driving from 3 different perspectives: RANSAC, PCA, and Ordinary Least Squares (OLS).

404. 3 Skills You Need to be a Great Software Engineer Besides Coding

When asked about their talent stack, most software developers reply with "writes code". To be a successful developer you need so much more than that.

405. What's Your Cycle Time?

If you can’t answer it, don’t worry, you’re not alone. Many engineering leaders couldn’t tell you without some significant number-crunching. Gaining visibility into performance is only half the battle though. Knowing how to interpret metrics and how to apply them to improving performance is where the magic happens. Many CEOs do not know how to align engineering metrics to business KPIs (revenue, customer retention, etc.). Bringing metrics to your board or non-technical CEO for the first time may be challenging if you are unable to help them bridge the gap.

406. Trees: Non-Linear Data Structures for Beginners

An overview of Trees as a data structure. A software engineer's tool. Should I use a hashmap?

407. Software Development for Beginners

In this article we are going to explore this huge and passionate world of software development by demystifying what it really is and how can we get started in this field.

408. Why Burnout Syndrome Is More Common Among Software Developers

Indicators for burnout risk of software developers can be measured at an early stage with analytical software-based methods and allow for timely countermeasures

409. Dealing With Impostor Syndrome as a Software Engineer

This question has haunted me for years. And it seems I’m not alone. Many people experience this same insecurity. They desire to know if they’ve made it.

410. State Machines Can Help You Solve Complex Programming Problems

The notion of state machines is extremely useful in programming. It streamlines the process of developing more complicated use case apps.

411. Zombie Testing: One Behavior at a Time

Selecting great test cases is very hard. Unless you summon the undead.

412. Why is Making Software so Difficult?

We think of Software Development as a pursuit grounded in logic. From this perspective it can be shocking that software projects have high failure rates - 31% in 2014. And some projects fail to the tune of billions. How is this level of chaos possible in an apparently logical discipline?

413. What Do Engineers Really Think About Technical Debt?

My team at Stepsize has surveyed 200+ Engineers and published the State of Technical Debt 2021 Report that explores the impact of tech debt on companies.

414. Integration Comparison: Adyen, Braintree, Stripe

When a new online merchant chooses a payment gateway, one likely narrows them down to Adyen, Braintree, PayPal, Stripe. They're indeed the most popular today, and they are all robust and easy to integrate.

415. Fleet Serverless Node.js Function Introduction

In February this year, we announced Fleet (Formerly Hole), a FaaS platform built on Node.js to be faster than other platforms and to create a more faithful integration with the ecosystem. In this post, I will clarify how all of this works and what we are bringing differently to the Serverless ecosystem, and what it means for startups and companies.

416. Social Impact Using Your Heart and Mind in Tech

My generation has seen a world much less forgiving. We grew up understanding the fundamentals of climate change, and saw rising sea levels and record setting temperatures all over the world.

417. 5 Metrics to Track when Refactoring your Codebase

Code refactoring provides a well-needed mental break for developers, and I think many devs can relate to this. Writing code all day is very demanding, especially if you create new functionality day by day. It’s a taxing exercise, and developers often need some space to think about the codebase's overall organization and look back on what can be improved.

418. Improving the Working Environment for Developers - In 3 Stages Only

… and incidentally establishing DevOps.

419. Data-Driven Approach for Software Engineering: How to Avoid Common Problems

In today’s digital world, data is constantly being generated, evaluated, and updated. It also plays an important role in the work of software engineers by providing accurate, actionable feedback that helps engineers understand where and how to make improvements to a product or process.

420. 5 Metrics Engineering Managers Can Extract from Pull Requests

Many Engineering Managers promote Pull Requests as part of the development workflow. It’s a consolidated practice that brings lots of benefits. It consists of comparing the changes of a branch with the repository’s base branch (conventionally called master).

421. 3 Top Resources To Learn About Apache Kafka

Top 3 books and tutorials on Apache Kafka

422. So, You Want To Be A Developer? Buckle Up

Are you an aspiring developer or engineer who is looking to break into the field? It’s always a hassle to prioritize the things to learn because of a plethora of information available out there. I believe the best way to get insights is to hear directly from people working in the industry.

423. We Should Get Rid of "Hello, World!" Forever💩

Every tutorial I've read for the last 30 years starts with the infamous 'Hello World' example. This could be one of the reasons we write crappy software.

424. 200+ Software Engineers Taught Me The Best Way To Manage Technical Debt

Over the last six months, I’ve learned how the best software engineers and leaders manage technical debt. I've interviewed more than 200 experts, to understand how tech debt is handled at growing software companies.

425. 10 Ways to Prevent and Manage Technical Debt—Tips from Developers

Developers deal with technical debt every day, and they know how to prevent and manage it better than anyone else. Here’s just some of what they had to say.

426. The Final Guide on Landing a Software Engineering Role at a FAANG Company

A roadmap that can be followed by any software engineer on their next job search and land a job at big tech. i.e. Google, Microsoft, Meta, Apple and Amazon.

427. The Magic of Component-based Frontend Development

428. Here's How To Become a Real Software Estimates Expert

The first time you finish a piece of software you've estimated, you discover a harsh reality ... software estimates are hard. Unexpected edge-cases, dependencies, meetings, and a thousand other things. This law summarizes it perfectly:

429. Everything You Need to Know About Bootstrap 5

Bootstrap is a powerful front-end library, that gives you the power of quick design and responsive mobile-first site layout. It lays on top of the 12 grid system and it has extensive pre-built components.

430. Reducing Time Spent on Refactoring 3 Tips from a Dev

Recently, I had to deal with an old codebase that was difficult to maintain and scale. In this article, I'll share how my team and I decided to deal with maintenance and the best practices we implemented to reduce time spent on refactoring.

431. 7 Git Practices to Start Using in Your Next Commit

Every software has best practices. Git is not different. It has become the most used versioning system in the last years. Many companies adopted git because of its features. If you wonder why git is so powerful, here are some of the advantages over other versioning systems, like Subversion:

432. Coupling: The One and Only Software Designing Problem

A root cause analysis of all failures of our software will find a single culprit with multiple costumes. The enemy is always there. Many times disguised as laziness, sometimes simplification, and very frequently with the optimization outfit.

433. 10 Best Countries to Outsource Software Development in 2022

Here are the top 10 best countries to outsource software development based on cost, ease of finding a developer, quality of software engineer, and more.

434. Best IDEs for .NET Development

The .NET Core platform makes it possible for businesses to develop applications for just about any platform—from Windows, macOS, Linux, and even mobile operating systems. This isn’t just a time saver, but a means to cut back on your budget. You will be able to develop across all platforms, and you won't have to hire developers for each ecosystem. Instead, you can hire one developer or a team of .NET developers to make it all happen.

435. End-to-End Encryption Basics

Imagine, you are messaging your business partner about a super secret idea, it is worth $ 1m, will you trust the messaging application not to read your super secret conversation? No, right. No one will, still people across the world use whatsapp for such sensitive messaging (although I prefer telegram for my secret conversations). Well, turns out, it is because most messaging apps(including whatsapp) use a technique called End to End Encryption, which doesn’t allow these messaging services or their employees to read your conversations with your contacts. But how does this works, well, that is what we will try to understand here.

436. My Roadmap For Making a Popular Workout App From Scratch

First, welcome to my series of “My Roadmap For Making a Popular Workout App”. I will share with you my trip to make my workout app into a popular mobile app.

437. Using JavaScript Grid Tutorial to Solve Issues With App Development

The importance of web and mobile apps that can handle massive volumes of data has skyrocketed over the past few years. As a result, small and large enterprises want to make the most of their data for monitoring and better decision-making.

438. How I Broke Into Data Science

A software engineer’s journey into data science at Yelp and Uber

439. Here’s How You Can and Why You Should Go Beyond HTTP 1.1

440. Code Refactoring: A Comprehensive Guide for Engineers

In this guide, you’ll learn all about refactoring source code: the benefits, challenges, tools, and best practices, and what is the difference between refactoring and technical debt.

441. Dear Product Managers, Stop Building Things

Product managers have a dangerous role because of one oft-missed truth: Decisions about what to build are far more costly than most teams realize.

442. Finding A Software Developer Mentor When You're A Newbie

Your first job as a software developer can be very challenging. Having a mentor to discuss your industry-related challenges can be key to your career.

443. How to Stop Developers from Writing Low-Quality Code

Developers tend to go for getting things working, ending up with a working program, lacking the quality you would like to see. In this article I will explain how to get quality code as well.

444. The Importance of a Developer's Mental Health Day

A moment of reflection dear dev, dear engineer, and dear LANister. A brief reminder that yes, we are here, and yes we are alive. We made it to this day! What a joy! Ohh, hey Kelvin! Let's talk about our mental health today. A little sanity in all the chaos of whatever bugs, errors, and painful hours we might have had to this moment.

445. An Overview of Load Balancing Challenges

Not all traffic can be arbitrarily routed.

446. Update Your Website via Spreadsheets Using Monday.com and Reshuffle Open Source

Give non-technical people a structured way to make updates to a webpage (without fearing they’ll mess up) from within Monday by using Reshuffle Open Source

447. Top 6 Software Development Methodologies of 2022

Here are the top 6 software development methodologies that the project manager and the team must follow throughout the software development process.

448. 27 Highest-Paying Cities in United States for Machine Learning Engineers

Machine learning engineers might be some of the most highly skilled software engineers. We take a look at how cities in the US compensate their ML engineers.

449. I Already Know Where the Problems Are in My Code

How cognitive biases make us overlook problems in our code and how we vigorously defend our opinions against data-based insights. And what can help against it.

450. Personal Finance for Software Engineers: Things I've Learned

Personal Finance is something that is, for better or worse, not a required class. Here are some basic things I wish I knew when I started working in software.

451. A Code Review Checklist to Focus on the Important Parts

A code review checklist, as well as clear rules and guidelines around code reviews, can make your code review practice so much more beneficial to your team and significantly speed-up code reviews.

452. 5 Top Tech Careers to Consider Studying Towards in 2021

Gain entry into IT with knowledge of data science, engineering, cloud computing, cybersecurity, or devops.

453. Developers Should Drive Their E2E Tests to Cypress

All software companies strive to produce quality products. The journey begins with a product that works. Software correctness is usually defined as the adherence of software to its specification. In most cases, formal verification is not possible. As such, we typically impose functional correctness with test coverage.

454. Enterprise Software Is the Hardest Software To Write

There is a perception that enterprise software is easy. The thought process goes something like: “How can adding up numbers and producing reports be as hard to do as programming image recognition, or writing software to control nuclear power plants?”

455. Web Developer Job Interview Preparation: 25 Questions, Prompts, and Coding Assignments

You’ve set the alarm for 2:45pm.

456. 4 Most Commonly Asked Algorithms In Coding Interviews

If you prefer to follow along via my YouTube video, you can watch it here!

457. Introduction to Design Patterns and Dependency Injection

A walk-through of dependency injection.

458. Computer Science Degrees: Are they Worth Getting in 2021?

Is a computer science degree worth it? For me, partially. For you? You tell me.

459. An Intro to .Net Microservices Application Architecture

.Net Microservices is gaining massive popularity in the Tech market. Let's find out what actually is dot Net Microservices Application Architecture?

460. How LZ77 Data Compression Works

How does the ZIP format work?

461. Software Design Principles: Doing Little Things Right

Designing software systems is about tradeoffs and making tradeoff decisions is hard. You always feel like you are loosing one thing or the other but that’s not what we are going to talk about today.

462. A Pleasant Way to Kick Off Your Data Science Education- This is CS50

So You Want to Get Into Data Science

463. Understanding Multiprocessing and Multithreading in Python

In this article, we will be discussing for the differences between Multithreading and Multiprocessing and how to decide what to use in Python.

464. HTTP — PATCH Method! I’ve Been Thinking About It All Wrong

Today I learned, The Reality that People Never Told Me about HTTP-PATCH!

465. Top 4 Classic Software Development Books

Much of modern problems in software development have actually been solved and we keep forgetting this to our peril. Every day something pops up in a conversation, on one of our teams or on socials that can be addressed by a book from years and sometimes decades ago.

466. How to Build a Flutter Web Application in 2022

In this post, we'll go over the benefits of Flutter web development for your business, as well as the steps involved in developing such apps.

467. What is the Difference Between Arrays, Lists, and Dictionaries in Python?

Comparing the different data storage types in Python.

468. Engineers Spend 33% of Their Time Dealing with Technical Debt

There are many ways in which technical debt costs us money: lost deals, customer churn, employee churn, lawsuits, and more. However, there are a couple of issues that are more important than others: engineering time, morale, and the missed revenue from software delays.

469. 🏅year in Review: Tools That Helped my Productivity as a Software Engineer

As a software engineer, you have to find the perfect mix of tools and templates that can help make you more efficient in your day-to-day tasks.

470. DORA Explores DevOps: How can Engineers Measure Productivity?

How can we use data to understand engineering bottlenecks?

471. What Are The Responsibilities Of Software Development Manager?

The definition and content of activities of the software development manager can vary widely.

472. Scaling Backend Development Teams

At its heart, scaling a team is about matching skills to problems. In this piece, we share a guide about scaling backend API software development teams

473. How to Become a TypeScript Badass

474. 3 Dev Leaders Open Up About Remote Software Development

I’m writing this from my new “office” which is a small desk in a large closet located under the stairs of my house. Harry Potter style. We have our first baby on the way so I got kicked out of our 2nd bedroom and I’m embracing the office-under-the-stairs life.

475. Solar Architecture: A New Perspective on Enterprise Software Development

The development life cycles of applications in an enterprise environment often follow a common theme. An application begins life with a clear purpose in mind and over time has requirements brought in that cause incremental additions to the scope of the original concept. These additions could either be completely in sync with the original concept or perhaps the requirement just had no better home to belong in. As the application matures to an end-of-life state it has now grown far past its original intended purpose and is in dire need of a refactor — breaking down the monolithic beast into smaller and more succinct components.

476. Inside Business Insider's Story About a Failed American Tech Dream

We've all been there at one point in our careers, haven't we?

477. What is Code Refactoring? - Use Cases, Applications, and Benefits

The importance of code refactoring is immeasurable since its purpose is to simplify the code for better performance. ⚡Use all the benefits now.

478. How To Make Your First Open-Source Contributions

479. How to Build a User Management Solution with ORY Oathkeeper and Auth0

Building a user management solution using ORY Oathkeeper and Auth0.

480. Exception Handling with Examples

Exception handling is common to most programming languages, and the mechanism and behaviors are similar in most languages: try\catch\finally. It is well documented. We are not going to discuss that.

481. Top Facebook Behavioral Interview Questions - Part 1

Facebook Behavioral Interviews: How they cover the topics of leadership, time management, ability to deal with disagreement while assessing the right fit.

482. How to tell if your code actually sucks...

There is no better moment for me than starting a brand new project.

483. 3 Non-Technical Qualities of a Great Software Engineer

There are many software engineer qualities that will make you stand out. Among them, these 3 are crucial for you to become a great software engineer and leave t

484. A Deep Dive Into AWS Key Management Service (KMS)

AWS KMS Security and Key Management

485. What Kind of Scientist Are You?

Data science came a long way from the early days of Knowledge Discovery in Databases (KDD) and Very Large Data Bases (VLDB) conferences.

486. How to Consolidate Real-Time Analytics From Multiple Databases

Have you ever waited overnight for that report from yesterday’s sales? Or maybe you longed for the updated demand forecast that predicts inventory requirements from real-time point-of-sale and order management data. We are always waiting for our analytics. And worse yet, it usually takes weeks to request changes to our reports. To add insult to injury, you keep getting taxed for the increasing costs of the specialized analytics database.

487. 5 responsibilities of a Tech Lead and 17 Metrics to Track Their Performance

Tech lead, team lead, software architects, and engineering managers — as any developer already knows, naming is hard. Throughout the industry, those roles are as fuzzy as their responsibilities.

488. I Burnt Out on Inconsistent Codebases

How Front End Development Broke Me: A Burnout Story

489. AI-Powered Tools Are Revolutionizing The Software Development Industry

Artificial intelligence (AI) affected the majority of industries all over the world. There are a lot of definitions of what AI means, but we think that the most relevant is to consider artificial intelligence as the process of adaptation to a new environment, collection of new knowledge, and using it in new scenarios. AI can be adapted to all spheres of human life, it can automate some processes or partly replace humans. AI systems and tools can demonstrate some of the human intelligence behavior: learning, planning, motion, creativity, manipulation, and many others. Generally, artificial intelligence is a form of adaptable intellect, which can inherit human behavior.

490. A Step-by-Step Guide to Hiring Coding School Graduates for Your Engineering Team

...and set them up for success

491. A Beginner's Guide to Unit Testing In JavaScript

In this article, we are going to discuss a testing approach known as unit testing. What are unit tests? How should you implement them? and their benefits.

492. The Importance of Code Quality, Explained

One would expect that writing code which any programmer can read and understand would be an inherent skill of software developers. The fact is that only 20% of programmers have this ability. The code that you are writing must be understood not only by the machine but also by humans. In software development, quality should be everyone’s priority. Throughout the development process, the goal should be the delivery of good quality and working code.

493. React Native Basics: Implementing Infinite Scroll

React Native is without any doubt a strong and powerful solution. It opens the world of cross-platform app development for a much wider audience of software engineers who aren’t familiar with native technologies. But it might at the same time be quite difficult to implement complex things when you’ve just started learning. In this short tutorial, I want to give a step-by-step guide on how to implement one of them — infinite scroll.

494. Tech Hiring Cultures Analyzed via Glassdoor Interview Data

During the process of working on my book on machine learning interviews, one question that I’ve been asked many times by candidates is the onsite-to-offer ratio, e.g. what percentage of people who interview at a company eventually get an offer. Another number that recruiters and hiring managers are keen to know is the yield rate on offers of different companies – e.g. what percentage of people who are extended an offer by a company accept that offer?

495. Nude Models - Part I : Setters

Ye olde Reliable Data Structures and Their Controversial (Write) Access.

496. 3 Book Recommendations For Tech Leads (And Those Aspiring To Be)

Books are the best resource for sharing knowledge in a not-assisted way. They go deep into a topic, or more briefly over a bunch of them. Although, as a Software Engineer, I learned a lot from blog posts, tweets, and conference talks, it was books that prepared me for the Tech Lead role.

497. Do Not Refactor Code That is Not Yet Working: Beautiful Code is Working Code

Excessive concern about the beauty of the source code can compromise the outcome of a project.

498. Transitioning from Engineer to Product Manager: My Founder's Story

In this post, I'll try to share my experience on learning product manager’s job as a software engineer. What the job is like, what’s involved, as an introvert can you be a become a product manager, and many other questions you might have. I am a technical co-founder of a product management app called Shipit and needed to put myself into the role of product manager to learn the intricacies of the job.

499. How To Get More Out of Writing Tests in Your Development Routine

TL;DR

500. Top 10 Software Development Tools: Build Robust Software In 2021

Atom, Node.js, Cloud 9 IDE, and Linx are some of the best software development tools on the market.

501. Getting Into Tech: 7 Golden Tips For a Career Change

If you are reading these tips on how to switch your job to IT, then below you will find some golden tips which I wish I had got at the start of my career back t

502. DevOps Automation Tools For Continuous Improvement

DevOps, the term seems a buzz word for many from the last few years, but this buzzword is the most searched term on the internet by IT recruiters, software firms, and agencies. When it comes to DevOps, the pro enthusiasts argue saying it is never about the tools or automation, but they miss to see that, in fact, tools are the ones that take over the culture ones the DevOps culture is set in any firm. We all agree DevOps is not only about the tools, nor even an individual role, perhaps, it should be a group effort, DevOps is a trinity of people, process and tools. But to enable DevOps, in any organization, DevOps tools play a vital role.

503. Throwing Top Engineering Internship Myths out the Window

Internships are not about coffee runs, you can get a great experience that can make you stand out when applying for your first job out of University.

504. Re-learning the Basics of C++

C++ was initially intended to extend the C programming language with features that make object-oriented programming easier.

505. 5 Most Commonly Asked Data Structure Questions in Coding Interviews

If you prefer to follow along via my YouTube video, you can watch it here!

506. Leave Scrum To Rugby - 4 Major Issues With Using Scrum

Scrum is a buzzword, the virtue signal of choice for middle-management in software organizations.

507. Technical Debt Management is Important: You Can’t Keep Building on a Broken System

Every software company has some amount of technical debt, which is additional development work created in the long-term by taking a shortcut in the short-term to get code out the door. Technical debt can take the form of poor design decisions, much-needed refactorings, technology upgrades, and outstanding bugs.

508. How to Write a Software Requirements Specification (SRS) Document

Many stakeholders still hope to get a high-quality product without investing resources in SRS documentation.

509. Speed Up Your Updates Delivery: This Method Really Works

A development method to bring value quickly while not slowing down the pace of software releases.

510. How Does Blockchain Security Work, Anyway?

What is blockchain security? Learn how blockchain security works and common blockchain security vulnerabilities to know.

511. Swift Dependency Injection With Functions

Implementing an architecture within an application can be challenging. There are rules we can follow (SOLID, Clean Architecture) and patterns to guide us (MVVM, MVP, MVI, Redux, …) but sometimes, things we thought were well established deserve a step back.

512. The 4 Mindsets of a Great Startup Engineer

For those looking to leap into the world of startups, here are the four essential mindsets that will make you a successful startup engineer.

513. Software Version Control for N00BS

Software configuration management is a complex issue to implement, where programmers do not document anything and the entire process is done "ad hoc".

514. An Introductory Guide to Monolith Software Applications

Monolithic architecture in software development. Discover the world of n-layered patterns and what they involve.

515. In-car Payment Systems Unlock New Opportunities for M2M Economy

The full potential of in-car payment systems will be revealed in the machine-to-machine economy and a cooperative mobility ecosystem

516. ERP vs. CRM: Which Would Most Benefit Your Business?

Your organization’s growth is often tied to the tools that you choose to implement your business plan. Given that it’s such a crucial part of success, these tools have become a divisive topic.

517. 5 Main Things That Will Help You Understand Why Technology Is Important In Business

Technology in business is a phenomenon that is taking over the world. Business is certainly not going anywhere anytime soon; technology is the only way to go. Business needs to have the right tools in place to compete in a competitive corporate environment.

518. We Crashed and Lost All Essential Data Logs. Where Did We Go Wrong?

Relax, nobody lost a forest.

519. How to Make Sure Your Developers are NOT a Single Point of Failure

When I wrote "Your Developer is not a Single Point of Failure" there was definitely push back from managers, suits and other C-Suite denizens. Without a doubt, developers can be single points of failure. I would be lying, if I did not acknowledge the "historical blame" lies mostly at the feet of developers for the belief coders are single points of failure. Too many software developers built ivory towers of code for the sake of job security. Too many businesses were held hostage to custom algorithms only a handful of people could decipher...perhaps only ONE person could!

520. How to Decouple a Legacy System

An exercise improving legacy code

521. The Rational Software Engineer: How to Find a Dream Job

Rational Software Engineer: How to Find a Dream Job covers how to go through the job search process and identify whether a company is a good place to work.

522. How to Find the Stinky Parts of Your Code (Part V)

Are we done on code smells? Probably never!

523. Application Testing In Go: Do It Right And Don't Create a Mess

Problem - How many times have we faced this problem of worrying about cleaning up after running test cases. When some of our test cases run, they might add data to our database or add files to our directory which we don’t want to worry about every time.

524. 7 Database Optimization Best Practices for Django Developers

In this article, we will be discussing the ways to optimize the database for speed in Django applications.

525. Why Dockerizing Applications is the Key to Building Scalable Software

Container technologies have a profound impact on the entire IT industry. Learn the basic principles behind containers and the 10 reasons why you should use them

526. Let's Explore the Top Uses of the Golang Web Framework in 2022

The ever-evolving technological era has necessitated the need for cost-effective, high-speed, and reliable sources for web applications. The current market trend of cost reduction and efficiency has dictated that an Internet-based one replaces the traditional desktop-based application.

527. Managing an Engineering Team: A Guide for Startups

How to build a proactive and happy engineering team? What should you know to manage and lead the team of engineers more effectively? Here we’re going to share the startup guide with the helpful tips to make you a better manager and leader.

528. Software Engineers Are the Heroes the Planet Needs to Halt Climate Change

Engineers all over the world are beginning to mobilize under a unified mission of moving the needle towards an emissions-free planet.

529. How to Conduct a Constructive Code Review

What’s the difference between a negative experience and a constructive review?

530. 9 tips for better Code with JavaScript

Javascript is a language that's understood by the browser. You need to make your JavaScript code more readable in fewer lines of code.

531. You Don't Need To Be A Rockstar Programmer To Succeed

This post will show the steps I took to arrive at this point in my career and dispel some myths that I’ve seen newer engineers, including myself, fall prey to.

532. Developing, Packaging and Distributing a Python Library

How to use new packaging standards with virtual environment tools — adapted from the official documentations of python.org and Pipenv

533. Devs: Write Some Code for Yourself and Earn Cash

A case study for all software developers to earn with side hustle by using their skills to earn extra cash

534. Arrays in Ruby: Benefits and Costs to Use Them

Data structures are eagerly introduced to new programmers, since they will be using them pretty much through their whole career. Knowing them, how they work, what are they good for, which one to use, are things that can change the performance of your solutions quite vastly.

535. A Quick Guide to Lean Software Development Principles

I remember learning about lean manufacturing at Toyota in an early middle school business class, and was endlessly fascinated by the idea of minimizing waste and maximizing productivity through intentional design. Over time, lean methodology was adopted by several industries, outside of manufacturing, including software development.

536. The Ultimate Strategy to Preparing for the Coding Interview

How to do faster preparation for coding interviews?

537. Asynchronous Programming Techniques with Kotlin

An introduction to Kotlin coroutines compared to Futures/Promises such as Reactor’s Mono or Java’s CompletableFuture

538. We Built A Search Engine With MeiliSearch and JavaScript: Here's How You Can Too

Struggle to find the chemistry Nobel prize winner for 1979? Try out MeiliSearch's super-fast-search JavaScript tutorial to find Nobel prize winners in a matter of milliseconds. 🌬️

539. Interested in Learning to Program? 13 Reasons to Start Now

Software development is something that is gaining popularity at lightning speed with the development of technology. The demand for regular developers is high compared to most other mainstream professions. But, what are the other reasons for learning to code?

540. Must-have Soft Skills for a DevOps Engineer

Essential skills for DevOps Engineer to boost your career with no stress

541. How LZ78 Compression Algorithm Works

How does the GIF format work?

542. A Quick Primer on Everything You Need to Know About Blockchain

Blockchain is a term utilized to represent distributed ledger technology.

543. A Common Misconception About Agile Methodology

I have been involved recently in Agile transformation, i went through lots of conversations, with Techy people, that have a lot of misconceptions about Agile.

544. Your Docs Are the Gateway to Your Devtool

Writing good documentation is crucial. While working on Appwrite, documentation is one of the essential parts of our development life-cycle. When we are building tools designed for developers, our docs are where developers first meet our product. Complex, unclear, or unorganized documentation site can drive developers away even if your product is great. It doesn’t worth a lot if your code is awesome or neat if no-one can use it.

545. Measuring Sprint Velocity

We’re going to look at what sprint velocity is, how it can affect your development cycle, and what formulas you can use to measure sprint velocity.

546. Why I Left Coding for Low-code

Like any other story, they all start with a point in time. Mine? In 2015 when I met Plant an App team (DNNSharp at that time) over a simple AngularJS interview.

547. 4 Focus Areas for New Engineering Managers Who Give a D.A.M.N.

Management is just doing The D.A.M.N job: providing Direction; fostering Alignment; maintaining Motivation, and making sure there's No Blockers.

548. Spring Framework: To Use Or Not To Use, That Is The Question

It's impossible to write OOP code with Spring. From its core it promotes the use of singletons and anemic data structures a.k.a. data "objects" a.k.a. DTO. This fuels procedural programming and kills OOP.

549. Road to Simplicity: Hexagonal Architecture [Part One]

Software writing taught me that: a well written software is a simple software.

550. Make Your Way Out Of Developer’s Block 👨‍💻

551. The Most In-demand Web Technologies of 2022

If you want to join the Freelancing market, a good first step would be to actually understand what the market is looking for; what technologies are popular...

552. 3 Things I Wish I Knew When I Was Still An Engineer

I loved being a software engineer, or so I thought. On my last project working as an engineer, I fondly recall spending my weekends writing code to finish any user stories in my queue. It got to the point that I completed my work so far in advance that I was running a few sprints ahead of my team. I started to use my newfound free time during the week to sit in as many application requirement gathering meetings as possible. I began to collaborate more with our design team and shadow interviews with customers about the product we were building. I shifted into more of a mentorship role for our engineering team. At times, I found myself explaining the rationale behind a feature design decision and bouncing ideas around for an architectural approach in the same conversation. It took me a while to reach this career-changing realization; I was more interested in shaping the product than building it.

553. The Amazing React Router

Context

554. Everything You Need to Know About Multithreading: The Realistic Release Consistency [Part 2]

In our last installment, we introduced sequential consistency, the threading programming contract between programmers and computer systems.

555. Why and How to Hire Ukrainian Developers

Is the war really an obstacle to the timely performance of quality work?

556. Healthy Conflict is Necessary in the Workplace

I have always been wowed by people’s irrational desire to avoid healthy conflicts at work. It seemed that their primary goal is not to achieve results but to treat each other politely. Everyone was super polite and courteous. We were not making pots and pans; we were celebrating the Day of Politeness.

557. Introducing My New App Journey with Heroku

In the final part of his series, the author provides a retrospective of using Heroku for the very first time, detailing the new design and lessons learned.

558. A Programmer's Guide to Crack 'Twice the Work, Half the Time' Code

Modern methods of software measurement do not provide a strong base for continuous improvement. This article tries to fill this gap.

559. 50 Shades of Lead Time: Measuring Each Part of the Development Process

I have read multiple definitions for Lead Time and Cycle Time over the last years. Recently, I shared why I prefer using the first over the later.

560. How to Prepare Yourself For Data Structures and Algorithms Interviews at FAANG

Written By Esco Obong (@escobyte on Twitter), Senior Software Engineer @Uber, Founder of Algorythm study group on Facebook and Black Software Engineers Career Support Group on LinkedIn.

561. Complexity. Software. Resiliency.

The management of software development teams is a real-life representation of complex systems.

562. Technical Debt and How to Prioritize It: An Interview with Adam Tornhill

Last week we hosted a webinar where I interviewed Adam Tornhill, CTO & Co-founder of CodeScene, about technical debt: what is it, why is it important, and how to manage it effectively.

563. Hype Driven Development: A Case For Punishing This Abomination

Disclaimer: long read. About the painful stuff, what I want to share for more than a month. Also does not claim to be complete, it is more about how I try to deal with it.

564. Here's What a Successful CTO Does

The chief technology officer’s role starts from the love of technologies and should sound like Chief Technology Lover. Indeed, the true love of technology is where most of the successful CTOs take place. They hack systems because of curiosity, read books because of the need for knowledge, trying new tools, programming languages, and environments. A CTO  must also possess the ability to think effectively in conceptual terms, bring clarity, and strong leadership. A CTO must have team-building skills since long-term goals require accomplishing far more than one person can do.

565. How to Upload Files With JavaScript

This is the second post in a series about uploading files for the web. In this post, we use JavaScript to create the file upload request.

566. 21 Keys to Building Better Business Software

I know, 21 is a lot of keys. Software development is complex, don't let anyone tell you different. I imagine some of these points will resonate with you and hopefully some will be new and enlightening.

567. Track & Manage Your Technical Debt To Make Better Strategic Decisions

If you are looking for a tool to start managing technical debt this article will help you make the right decision.

568. Load Testing Using Vegeta: Rapid Step by Step Guide

Load testing is an important part of releasing a reliable API or application. Vegeta load testing will give you the confidence that the application will work well under a defined load. In this post, we will discuss how to use Vegeta for your load testing needs with some GET request examples. As it is just a go binary it is much easier to set up and use than you think, let's get started.

569. Tree - AST Crushes JSON, XML, YAML, TOML, etc

XML, JSON, TOML, YAML are bad relative to Tree data format

570. Running Great Tech Interviews: The Art of the Follow-up Question

This article gives sample software engineering interview questions, as well as my approach to conducting efficient interviews.

571. A Comparison Of Web Component Solutions

"Don’t repeat yourself." Every programmer has this concept drilled into their head when first learning to code. Any time you have code you find yourself duplicating in several places, it’s time to abstract that code away into a class or a function. But how does this apply to user interfaces? How do you avoid re-writing the same HTML and CSS over and over again?

572. 5 Ways to Optimise Team Performance Without Going Full Agile

My last job in Brazil before moving to the UK was at ThoughtWorks. While I didn’t agree with everything that they did there (OMG… Java, please no! ^_^’’’) there is one thing about ThoughtWorks that is incontestable: they are very good with processes.

573. What Is Dynamic Programming?

This article is for them, who have heard about Dynamic Programming and for them also, who have not heard but want to know about Dynamic Programming (or DP) . In this article, I will cover all those topics which can help you to work with DP .

574. Bye Bye Google: How I Botched My Company's Launch After Leaving

I like to analyze my past work through the prism of evaluating my mistakes (I’m sure my therapist would have a field day with that one). I launched my first publicly available engineering project in early December and as George W. Bush once said, “Mistakes were made”.

575. 17 Apps to Boost Developer Productivity

To help you build the ultimate workflow, we went looking for the developer productivity tools that are currently trending in coding communities.

576. 10 Best VS Code Extensions to Improve Your Productivity

I asked developers in my team what VS Code extensions they use to boost their productivity, and here’s what they said.

577. Should Web Developers Learn How To Use Photoshop?

When I returned to coding after a long break, I felt sorry that I had wasted a lot of time. I learned image manipulation software instead of coding. That’s when I started to wonder:

Is Photoshop still relevant for a web developer?

578. Why Tinder, AirBnB, and Pokemon Go All Use Kubernetes

Why IT executives should consider using Kubernetes in 2021 and what is its real value for business? Find real-world use cases and expert advice on adoption.

579. Top Resources for Software Engineers: How A New Grad Can Find A Job

This short post is written for recent graduates and current students who aim to find a job as a Software Engineer in the Tech industry and contains a list of resources to help them.

580. Best Working Environments for Devs: A Hierarchy of Needs

Developing and coding are incredibly tough. There are hundreds upon thousands of lines of code, and a single error can leave you trawling to find what exactly went wrong and why.

581. How To Discover a Coding Mentor

You’re not here to mess around. You want a job that pays you for your technical skills and you’re willing to do whatever it takes to land that job offer. But the journey’s been tough. You’re concerned with if you’re learning the right things. You’re not sure if you’re heading in the right direction. You’ve tried coding something, looked at coding docs, and then realized the docs weren’t that helpful.

582. 4 Tips on How to Refactor Code in Visual Studio Code

This article looks at how you can refactor your code using Visual Studio Code (VS Code) and Visual Studio Code plugins.

583. Web Accessibility Checklist For Your Project

Web accessibility is important. Making your app accessible is morally the right thing to do, it helps you win more business, and it may even be legally or contractually required. However, not many software engineers or web designers know how to make their apps accessible.

584. 10 Companies Building IoT Devices in 2022

Our life today is comfortable to a large extent due to smart devices. These things are the world of the Internet of things (IoT).

585. How to Use Docker Multi-Stage Build to Create Optimal Images for Dev And Production

Docker has sharply risen in popularity in the past years. It has been one of the tools that have changed the way we work as software engineers and DevOps Engineers. From Docker v 17.05 multi-stage build was introduced which helped abandon the older builder pattern with use of stages and target. This post discussed how you can exploit docker multi-stage build to build optimal images suited for dev/test and production with a NodeJs example application.

586. Code Churn: How it Relates to Refactoring and Technical Debt

Code churn is a measure or indication of how often a file changes. It typically refers to how often a developer throws out code

587. Super Duper SQL Tips for Software Engineers

In this post, we will talk about the features of working with SQL. We will talk about how you can possibly improve your database queries and speed up your app

588. How Should I Prepare For a Technical Interview?

Red flag: Individuals who immediately jump into solutions and coding before the interviewer gives them the green light.

589. The SDLC: Phases, Models and Methodologies — Ultimate Guide 2020

The software development life cycle is about producing high-quality software promptly.

590. Laziness Chapter I: Meta-Programming

Meta-programming is magic. That is the main reason why we should not use it. There are many dire consequences on the horizon.

591. 10 Best Object-Oriented Online Programming and Design Courses 2020 [Updated]

There is no doubt that object-oriented programming is a pillar of software development and also one of the reasons for the huge success of Java. Strong knowledge of object-oriented programming helps you to create better software.

592. How to Find the Stinky Parts of Your Code [Part XVI]

The most beautiful code, the most beautiful functions, and the most beautiful programs are sometimes not there at all.

593. How to Make Your Website Accessible: WCAG 2.1 W3C Recommendation

Web accessibility is an incredibly vital aspect to consider when developing a website or web application, yet so many companies either ignore accessibility guidelines or don’t understand how to implement them properly.

594. What is Code Review and Why We Need to Keep Doing It

In this post, I will try to answer 2 questions.

595. OKRs vs. KPIs: What's the Difference for Engineering Teams?

OKRs vs. KPIs, what are the differences? That’s a common question I hear from managers of Engineering Teams. KPIs are more straightforward to explain than OKRs, which can be tricky and more complex. They don’t mean the same, although they are connected.

596. How to Create a Killer Resume for Your First IT Job

597. Data Scientist vs. Software Engineer - Key Differences Explained

The data scientist is emerging as a new career option. Software engineering is an older discipline that has already made its perfect place in the IT world.

598. How to Efficiently Manage JavaScript Monorepos With Lerna

Manage JavaScript 'monorepos' with Lerna, Build a React Icon Library & Publish to NPM

599. Create a Full Autocomplete Search Application with Elasticsearch, Kibana, NestJS and React

In this article, I will be walking you through how to set up elasticsearch on your PC.

600. Five Big Myths Surrounding Technical Debt

In a software company, people often talk about tech debt, usually blaming it for something bad that is happening, such as

601. Hacking Your Way to the Best Angel Investing Deals Means More Transparent Deal Flows

When you hear someone say they are an “angel investor,” you may assume they have access to a large disposable income, but that's no longer the case.

602. Writing clean code: Naming

Code is read more than it is written. To write code we are constantly reading it. Here are 8 rules for writing cleaner code based by choosing better names.

603. Dependency Injection to Make Your Code Testable [A How-To Guide]

Have you ever wanted to write unit tests for your code, but you’ve found that it’s difficult to do so? Often this is the result of not writing code with testing in mind. An easy way to solve this is through utilizing test-driven development, a development process in which you write your tests before your app code.

604. Interviewing Top Talent, Made Easy

Hiring senior talent doesn’t have to be hard with this simple process.

605. Software Intelligence: How to Take Quality Control in 6 Practical Steps

Lead Photo by Max Duzij on Unsplash

606. The Rational Software Engineer: How To Be Passionate About Your Work [Part 2]

Find out what contributes to job satisfaction and being passionate in the field of software engineering.

607. Behavior-Driven Development From Scratch [101]

Behavior-Driven Development (BDD) is a really powerful tool that helps us build robust, value-based software. You can sometimes hear detractors say that it brings a lot of complexity and leads to long tests difficult to maintain. Let's take stock of what BDD really is, by determining anti-patterns and best practices.

608. How Does A Remote Control Work?

For the last 3 years we have been working with IR signals every day. And all this time we learn something new. Let's find out how it works!

609. An Engineer's Guide to TODOs: How to Get Things Done

A lack of focus, lack of visibility into our codebase problems, and context switching decrease developer productivity. Here are the best ways and tools that'll help you get things done.

610. 8 Places to Learn System Design and Software Architecture for Technical Interviews

Hello folks, if you are preparing for System design Interview and looking for best resources to master Software design and System design then you have come to the right place.

611. AVR Microcontroller Testing Procedures

In this article, my colleague Anton Kozlov tell us how to cover the main methods of simulation and firmware testing for AVR microcontrollers. Let's start!

612. Software Security Primer

As a developer, when you think of security, what comes to mind? Is it clear what are different aspects that need to be handled to make a software secure? And why you need to do that?

613. Everything You Need to Know About “this” in JavaScript

An in-depth explanation of the deceptively simple concepts around "this" and its binding (implicit, explicit, and new) in JavaScript.

614. The A-Z Of Email Development And Sending Emails

All email fundamentals that every developer must know. What an email consists of, how it gets from sender to recipient, and other basics.

615. Understanding the Node.js Event Loop

JavaScript is single-threaded, so how does it handle asynchronous code without blocking the main thread while it waits for an action to complete?

616. The Early Velocity Trap

With much of the DevOps stack having matured and good practices becoming more mainstream, the need for quality in software has quickly become a central issue

617. Rules of Thumb for Software Engineering

There are quite a few rules/principles that get thrown around in the software world. Some that come to mind are SOLID principles, Design Patterns, Do one thing and do it well, etc. I totally stand by all of them and believe our world would be a much better place if these principles are followed more.

618. Fail Fast Philosophy, Explained

Failure is fashionable. Making is much easier than thinking and failures are not stigma, let’s take this idea to our code.

619. The Markets Are Out of Order. How To #BreakTheCycle

Last week’s markets were a whirlwind making history for not one, but two crashes now called Black Monday (2020) and Black Thursday (2020). On each of these days, market-wide curbs, also called trading circuit breakers, kicked in to prevent panic selling and rapid market decline when the markets dropped more than 7% after the opening bell.

620. How to Find The Stinky Parts of Your Code (Part VI)

Are we tired with code smells? Not yet!

621. Intro to SAFe®: Scaled Agile Framework®

Scaled Agile Frameworks can take some figuring out. Let's understand SAFe. We'll see why to use it, its core elements and how it works.

622. How to Find The Stinky Parts of Your Code [Part XI]

This another code smell chapter

623. Is it Crystal Clear for Everybody That a Date Should Not Mutate?

To mutate is to evolve. It was proposed by Sir Charles Darwin and we use it in the software industry. But how mutable should software be?

624. How to Select Software Engineering Metrics and Set KPIs that Matter

Software Engineering KPIs (Key Performance Indicators) are measurable values that indicate the progress of engineering teams’ performance towards business objectives. Therefore, they need to be consistent, broad enough to consider everyone’s effort, and, most importantly, measurable.

625. Understanding The Concept of Clustering In Unsupervised Learning

What is hierarchical clustering in unsupervised learning?

626. I Asked #DevTwitter for Advice for Junior Developers; got 50+ Responses

What I would say to myself if I could travel to my past.

627. Top 10 On-Demand IT Certifications With Highest Pay: 2020 Edition

Information Technology (IT) certification can enrich your IT career and pave the way for a profitable way. As the demand for IT professionals increases, let's look at 10 high-paying certifications. The technology landscape is constantly changing and the demand for information technology certification is also getting higher. Popular areas of IT include networking, cloud computing, project management, and security. Eighty percent of IT professionals say certification is useful for careers and the challenge is to identify areas of interest. Let's take a look at the certifications that are most needed and the salaries that correspond to them.

628. The Technical Debt Illusion: From The Trenches

Originally, the metaphor of technical debt was introduced to help us explain the need for refactoring software systems to upper management.

629. How to Find the Stinky Parts of Your Code (Part III)

There are yet more code smells. Let’s keep changing the aromas. We see several symptoms and situations that make us doubt the quality of our development.

630. How to Find The Stinky Parts of Your Code (Part X)

More code smells. No joke. We see several symptoms and situations that make us doubt the quality of our development.

631. 50 Highest-Paying Cities in the United States for Software Engineers

Based on salaries and total compensation packages, Blind curated a list of the top 50 highest - paying cities for software engineers in the United States.

632. 2022 Web Development Trends, Mistakes, and Misconceptions: What You Need to Know

Read in this post, 2022 Web Development Trends, Mistakes, and Misconceptions: What You Need to Know

633. What Startup Entrepreneur With A Non-Tech Background Should Know About Android

A huge number of new businesses and startups used to rely on the Internet and mobile application as their entire marketplace or a major part of their growth strategies. Thus, the mobile industry is lucrative in this respect and delivers best results. So, if you are having a promising business idea in mind, then the next best step could be to develop the app instantly. Going with the number of smartphone users Android users overpower iOS therefore, hire Android developers to easily establish your business in the market.

634. Move Business Logic out of Application Using Hyperon Engine

Well-written multitier applications consist of multiple layers. The most widespread three-tier architecture divides our code into a presentation, business and data access tiers. Like it or not, but the business layer is where we, developers, spend the most time on a daily basis. This is the place where all processes and decisions our application depends on take place. Therefore, requirements for the business layer change more often than in any other layer. What hurts us, developers, most is that with every change, even the smallest ones, we need to recompile and rebuild our app. It usually takes a piece of the valuable time that we could use for more interesting things. What if we could move a business logic out of our code and let non-technician people change it?

635. InfluxDB: From Open Source Time Series Database to Millions in Revenue

The InfluxBD Origin Story: How Paul Dix took a failing SaaS product and turned it into a successful commercial open source time series database company.

636. An Introduction to Test-Driven Development

Test-driven development (TDD) is all the rage these days and has been a discussion topic for quite some time. If you are brand new to TDD, this article should serve as a good introduction to what TDD is, why it’s useful, what a typical TDD workflow looks like, and when to use TDD.

637. There Are No Silver Bullets For This Werewolf

The phrase “No Silver Bullet” is widely used in the industry. In this article we will revisit the classic paper by Fred Brooks that gave rise to it.

638. The Dirty Code Problem: Improve Your Game with Good Naming Practices

The Rule: Whenever you name a variable, function, or class, ask if it is concise, honest, expressive, and complete.

639. Heroku and CircleCI : Automated CI/CD Process for a NuxtJS

Published with permission from Alvin Lee.

640. How Data-Driven Agile Helps Deliver Better Software Faster

What is Agile Data-Driven?

641. The Science Behind Making Software Engineering Interviews Truly Predictive of Job Performance

Thank you for checking out the 641 most read stories about Software Engineering on HackerNoon.

Visit the /Learn Repo to find the most read stories about any technology.