Techreport blog

Engineering Insights & Guides

The best problem-solving writing in software engineering — databases, performance, security, frontend and distributed systems, in one feed.

11,777 articles
Frontend — Easing Animations in Canvas

Easing Animations in Canvas

The <canvas> element in HTML and Canvas API in JavaScript combine to form one of the main raster graphics and animation possibilities on the web. A

DSDarshan SomashekarDarshan Somashekar·June 19, 2020Frontend
Performance — A Monthly Update On All Things Smashing — Smashing Magazine

A Monthly Update On All Things Smashing — Smashing Magazine

Every month, we present an overview of things the Smashing team has been working on — all in one place. We organized Smashing Meets on three days — events that were open to everyone in the web community. With sessions on performance, CSS, GraphQL, and creative courage, we made sure to leave plenty of time for Q&A, networking, competitions and prizes. The past few weeks have been quite challenging:

ILIris LjesnjaninIris Ljesnjanin·June 19, 2020Performance
Design & UX — What Vitruvius Can Teach Us About Web Design — Smashing Magazine

What Vitruvius Can Teach Us About Web Design — Smashing Magazine

The ancients can teach us a thing or two about design — even web design. The Roman architect Vitruvius had buildings in mind when laying out his golden triad, but its principles are just as applicable to the web as they are to brick and mortar. Today’s article is about architecture, and how some of its core tenets apply to the worldwide web. Architectural terms are not unusual in web development,

FOFrederick O BrienFrederick O Brien·June 19, 2020Design & UX
Systems — Why is there a "V" in SIGSEGV Segmentation Fault?

Why is there a "V" in SIGSEGV Segmentation Fault?

My program received a SIGSEGV signal and crashed with "Segmentation Fault" message. Where does the "V" come from? Did I read it wrong? Was there a "Segmentation *V*ault?"? Or did Linux authors make a mistake? Shouldn't the signal be named SIGSEGF?

MMMarek Majkowski, David WraggMarek Majkowski, David Wragg·June 18, 2020Systems
Design & UX — Solving Common Cross-Platform Issues When Working With Flutter — Smashing Magazine

Solving Common Cross-Platform Issues When Working With Flutter — Smashing Magazine

When using cross-platform frameworks, people might forget the nuances of each of the platforms they want their code to run on. This article aims to address that. Today, Carmine Zaccagnino is going to see some of those differences and how to overcome them. More specifically, he’re going to talk about storage and UI differences, which are the ones that most often cause confusion to developers when w

CZCarmine ZaccagninoCarmine Zaccagnino·June 18, 2020Design & UX
AI & ML — Using GitHub Actions for MLOps & Data Science

Using GitHub Actions for MLOps & Data Science

Background Machine Learning Operations (or MLOps) enables Data Scientists to work in a more collaborative fashion, by providing testing, lineage, versioning, and historical information in an automated way. Because the…

HHHamel HusainHamel Husain·June 17, 2020AI & ML
Design & UX — Mirage JS Deep Dive: Using Mirage JS And Cypress For UI Testing (Part 4) — Smashing Magazine

Mirage JS Deep Dive: Using Mirage JS And Cypress For UI Testing (Part 4) — Smashing Magazine

UI or User Interface test is a form of acceptance testing done to verify the user flows of your front-end application. The emphasis of these kinds of software tests is on the end-user that is the actual person who will be interacting with your web application on a variety of devices ranging from desktops, laptops to mobile devices. In this final part of Mirage JS Deep Dive series, Kelvin Omereshon

KOKelvin OmereshoneKelvin Omereshone·June 17, 2020Design & UX
Performance — Introducing Cache Analytics

Introducing Cache Analytics

Cache Analytics gives you deeper exploration capabilities into Cloudflare’s content delivery services, making it easier than ever to improve the performance and economics of serving your website to the world.

JJplJpl·June 16, 2020Performance
Databases — Wrapping DB2 with PostgreSQL

Wrapping DB2 with PostgreSQL

Connection of DB2 with PostgreSQL done with the extension db2_fwd | Migration of db2's data to PostgreSQL | Read data from DB2

MDMarcelo DiazMarcelo Diaz·June 16, 2020Databases
Engineering — Welcoming the Octograds of 2020

Welcoming the Octograds of 2020

Class of 2020, you did it! With schools turning to drive through diploma stops and recreating their campus in Minecraft, GitHub Education decided that celebrating this milestone for the next…

EHElise HollowedElise Hollowed·June 16, 2020Engineering
Frontend — Better Reducers With Immer — Smashing Magazine

Better Reducers With Immer — Smashing Magazine

In this article, we’re going to learn how to use Immer to write reducers. When working with React, we maintain a lot of state. To make updates to our state, we need to write a lot of reducers. Manually writing reducers results in bloated code where we have to touch almost every part of our state. This is tedious and error-prone. In this article, Chidi Orjil going to see how Immer brings more simpl

COChidi OrjiChidi Orji·June 16, 2020Frontend