Smashing Magazine - #441: Legacy Systems and UX Migration

How to manage legacy code base, UX migration, redesign and how to design with legacy systems. Issue #441 Jan 30, 2024 View in the browser

Smashing Newsletter

Labą dieną Smashing Friends,

Legacy isn’t the most exciting matter in front-end or UX. We often speak about shiny new things, yet most products around run on legacy systems. These systems are slow, bulky, broken and unmaintained — but often business-critical, with a huge ecosystem of legacy dependencies on their own.

In this newsletter, we look into legacy — how to rebuild, refactor, redesign and migrate, both for front-end engineers and for UX designers. If you are working with legacy systems, hopefully you’ll find a few useful gems in there.

Meets: the Future of Design Systems
Smashing Meets Future of Design Systems, on Tuesday, Feb 27.

In the Smashing universe, we’ve just announced a few new (and free) community events — on The Future of Design Systems with Brad Frost and The Magic of CSS with Kevin Powell. We’d be absolutely delighted to see you there.

And as always, here’s a little reminder about a few thingies we’ve been tirelessly working for 2024:

Have a productive week, everyone — and hopefully you won’t have to struggle with legacy too much!

Vitaly


1. Understanding Legacy Code

We all have to deal with legacy code, and let’s be honest, it’s hard. To help you tame messy codebases without breaking anything, Nicolas Carlo started “Understand Legacy Code,” a collection of articles, guides, books, podcasts, and talks for refactoring code you’re afraid to change.

Understand Legacy Code

Whether you’re about to dive into a large, undocumented codebase, aren’t sure if a pattern will make the code more maintainable, or you feel you’ve hit the point of no return where burning it all and starting all over seems like the best option, Nicolas has got your back.

His guide also dives deeper into questions like what you can do to make others care about the technical debt that is piling up and how AI could help tame legacy codebases. One for the bookmarks. (cm)


2. Legacy System Modernization

Legacy systems are everywhere, and even though their technology is outdated, they power critical day-to-day operations. Think of the pager still in use in healthcare today, for example, or federal organizations relying on old software. And while changing a legacy system also brings along risks, the effort is well worth it.

Legacy System Modernization

A great starting point for tackling legacy systems and transforming an enterprise for a digital future is the whitepaper that AltexSoft published. It dives deep into legacy system modernization, the challenges it brings along, and best practices for solving them.

Another comprehensive guide to a UX-based overhaul of legacy building products comes from UX design agency Koru. It helps you understand the business value of your legacy application and explores three different approaches to making it more efficient, scalable, and safer. (cm)


From our sponsor

Kiss Bugs Goodbye With Fully Automated End-To-End Test Coverage

QAWolf
QA Wolf gets web apps to 80% automated test coverage in less than 4 months. They build and maintain your automated test suite, plus provide unlimited parallel test runs.

Skeptical? A case study shows how Salesloft saves $750k/year in QA engineering + executes 300+ tests in parallel on every PR in minutes. ⭐ Rated 4.8/5 on G2. Trusted by Cohere, Napster, Gumroad, and many others. Schedule a demo to learn more.


3. Improving A Legacy Codebase

Probably every developer has been there before: You’re confronted with a legacy codebase and need to turn it into a healthy, maintainable project that doesn’t hinder your work. Where do you begin? Jacques Mattheij shares a roadmap that takes you through the complete process step by step — from making a backup to releasing your changes into production.

Five steps for managing legacy code

Jack Franklin also wrote a practical five-step guide to tackling legacy code. It helps teams prioritize updates and follow an incremental approach instead of a “big bang” release. A great reminder that legacy code is not a failing of an individual or a team and that we should learn to embrace it as an interesting technical challenge.

You want to dig even deeper into improving legacy codebases? Then Michael C. Feathers’ book Working Effectively with Legacy Code and Martin Fowler’s Refactoring: Improving the Design of Existing Code might be for you. (cm)


4. Upcoming Workshops and Conferences

That’s right! We run online workshops on frontend and design, be it accessibility, performance, or design patterns. In fact, we have a couple of workshops coming up soon, and we thought that, you know, you might want to join in as well.

Smashing Online Events
With online workshops, we aim to give you the same experience and access to experts as in an in-person workshop from wherever you are.

As always, here’s a quick overview:


5. UX Migration Strategy For Legacy Applications

Planning ahead and putting users first is key to successfully migrating a legacy application. To help you master the challenge, Tamara Chehayeb Makarem shares her UX migration strategy for legacy applications. It goes beyond simply moving existing features to a new system and instead helps you build a strategic system that supports your business goals.

UX Migration Strategy for Legacy Applications

Tamara’s strategy consists of three steps. In the first step, you’ll identify the reasons for the migration and its impact on users. The second step involves choosing the best migration option for your context. Finally, the third step is all about outlining your goals and planning your strategic roadmap. A handy set of guidelines to help you ensure your new system is adopted and welcomed by users. (cm)


From our sponsor

Manage Your Projects And Resources With Our Modern Web Component Suite

Bryntum
By integrating with Angular, React and Vue or plain vanilla JS apps, the web can be a powerful application platform. Bryntum provides advanced UI components and dev tools for over 5000 companies in 70+ countries. Download your trial today.


6. Designing With Legacy

Having faced legacy in all major career assignments, Peter Zalman knows from experience that there is no single correct approach to dealing with decades-old product legacy. But a few common patterns can help teams make the right decisions, as he points out in his article “Designing With Legacy.”

Designing With Legacy

In the article, Peter highlights the risks that a complete redesign and continuous improvements can bring along, putting special focus on an aspect that can easily be overseen: the users’ emotional attachment to the existing product. The article is also a great reminder that you’re not only dealing with a legacy product but also with a knowledge base that has grown over years and that can’t just be replaced with a shiny new design concept. A must-read to prevent you from hasty decisions that could do more harm than good. (cm)


7. News From The Smashing Library 📚

Promoting best practices and providing you with practical tips to master your daily coding and design challenges has always been at the core of everything we do at Smashing.

In the past few years, we were very lucky to have worked together with some talented, caring people from the web community to publish their wealth of experience as printed books. Have you checked them out already?

Success At Scale
… and we’re currently working on a new book: Success At Scale, shipping in February. Pre-order your copy or browse the complete library.


8. Recent Smashing Articles


That’s All, Folks!

Thank you so much for reading and for your support in helping us keep the web dev and design community strong with our newsletter. See you next time!


This newsletter issue was written and edited by Cosima Mielke (cm), Vitaly Friedman (vf) and Iris Lješnjanin (il).


Sent to truly smashing readers via Mailchimp.
We sincerely appreciate your kind support. You
rock.

Follow us on Twitter Join us on Facebook

unsubscribe update preferences view in your browser

Older messages

#440: Interface Design

Tuesday, January 23, 2024

Design better animations, typography, icons and use Gestalt principles in product design. Issue #440 • Jan 23, 2024 • View in the browser Smashing Newsletter Konbanwa Smashing Friends, Interface design

#439: Accessibility and Inclusive Design

Tuesday, January 16, 2024

Playbook for universal design, accessible target sizes and tools for accessible design, annotations and brand colors. Issue #439 • Jan 16, 2024 • View in the browser Smashing Newsletter Latha math

#438: Free Books and Guides

Tuesday, January 9, 2024

With books, templates and guides for product designers and front-end engineers. Issue #438 • Jan 9, 2024 • View in the browser Smashing Newsletter Boa noite Smashing Friends, Roll up your sleeves! In

#437: New Ways of Working in 2024

Tuesday, January 2, 2024

New work practices for 2024, UI Stack, “How to work with me”-manuals and useful tools for Figma and SVG. Issue #437 • Jan 2, 2024 • View in the browser Smashing Newsletter God kveld Smashing Friends,

#436: State of Front-End, AI and UX 2024

Tuesday, December 19, 2023

New opportunities and challenges ahead of us — from new CSS and JavaScript features to state of AI, UX, email design and graphic design in 2024. Issue #436 • Dec 19, 2023 • View in the browser Smashing

You Might Also Like

Writing a POV Doc

Sunday, May 5, 2024

Issue 193: Share what you care about at scale ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

It's Officially Show House Season

Thursday, May 2, 2024

View in your browser | Update your preferences ADPro Showing Up, and Showing Off One of the traditions design aficionados look forward to the most each year is the return of decorator show houses. In

Zelman Meats, AI Feedback Loop, Figma Variables, CSS Masonry, Passkeys

Thursday, May 2, 2024

The 5 best design links, every day. Curated by a selection of great editors. Email not displaying properly? View browser version. Sidebar May 2 2024 Zelman Meats logo by Red Dot Studio logodesignlove.

Every viral brand has these 5 things in common ⚡️

Wednesday, May 1, 2024

See if your brand checks all the boxes... Branding, branding, branding. Like, PR, it's an oft-misunderstood area of business building. Many people think a logo, some colors, and a font constitute

inherit(), Polish, Picture-Superiority Effect, Music Notation, Multi-Brand Design System

Wednesday, May 1, 2024

The 5 best design links, every day. Curated by a selection of great editors. Email not displaying properly? View browser version. Sidebar May 1 2024 Self-Modifying Variables: the inherit() Workaround

164 / What if you could talk to Scarlett Johansson from the movie Her?

Tuesday, April 30, 2024

Product Disrupt Logo Product Disrupt Half-Monthly Apr 2024 • Part 2 View in browser Welcome to Issue 164! Standing out in today's competitive market is hard, really hard. But side projects can help

#454: JavaScript

Tuesday, April 30, 2024

Front-End Engineer Handbook, JavaScript Cheatsheet, File System APIs and Invokers. Issue #454 • Apr 30, 2024 • View in the browser Smashing Newsletter Labas vakaras Smashing Friends, Let's talk

Mayer Rus on L.A.’s Great Gallery Migration

Tuesday, April 30, 2024

View in your browser | Update your preferences ADPro Image may contain: People, Person, Accessories, Bag, Handbag, Food, Meal, Adult, Clothing, Hat, Glasses, Fun, and Party For this week's edition

Head of Typography, Centering Things, 3D Badge, Alternating Style Queries, Hate Speech

Tuesday, April 30, 2024

The 5 best design links, every day. Curated by a selection of great editors. Email not displaying properly? View browser version. Sidebar April 30 2024 Detect JavaScript Support in CSS ryanmulligan.dev

JavaScript Support, AI in UI/UX, Deja Vu, Nature of Code, Clubhouse

Tuesday, April 30, 2024

The 5 best design links, every day. Curated by a selection of great editors. Email not displaying properly? View browser version. Sidebar April 29 2024 Detect JavaScript Support in CSS ryanmulligan.dev