Simply Business homepage
  • Business insurance

    • Business Insurance FAQs

    Business insurance covers

  • Support
  • Claims
  • Sign In
Call Us0333 0146 683
Chat With UsChat support 24/7
Tech blog

Working with legacy code video series. Episode 2 - Jhonny

1-minute read

Robert Faldo & Jhonny Edelist

Robert Faldo & Jhonny Edelist

11 September 2019

Share on FacebookShare on TwitterShare on LinkedIn

Watch part two of our new video series about working with legacy code, and projects you're not familiar with.

Welcome to our video series!

There are a lot of videos online of software engineers building things from scratch, and a lot of videos of engineers solving challenges or working with code that they're familiar with.

These are both incredibly useful but sometimes it can look a bit like magic. How do they know exactly where they will be adding code? In real life, software engineers often work with code we've never seen before that someone else wrote which means we need to go through a process of understanding the current codebase (legacy code) and working out where we need to make the changes before adding the code that achieves this.

In this video series, we'll be putting experienced software engineers in front of open source projects that they've never seen before and asking them to add a feature. We don't care about the code, we're more interested in how they approach the problem and the steps they go through to solve it.

In this episode:

  • Jhonny will be our experienced engineer. Jhonny is a staff engineer who has over 10 years of professional engineering experience.
  • We'll be using the open sourced project Discourse.

Key takeaways from the episode

  • The task I asked Jhonny to attempt was to add an extra button that would allow a user to share a topic on LinkedIn.
  • Before jumping into the code, Jhonny separated the task into two distinct parts with the plan to focus purely on one at a time.
    • First part: Adding the button onto the page.
    • Second part: The integration with LinkedIn.
  • To find the area of the code that we needed to make the change, he started by searching the codebase for a string that appeared when you hovered your mouse over one of the existing buttons. This resulted in us finding out that the text was hidden behind a call to I18n which made finding the specific code that rendered the existing buttons more difficult.
  • Jhonny eventually used some educated guessing and targeted exploring to try to locate the file that had the code that rendered the buttons onto the page.
  • After finding that the code was written in ember, a framework he had never used before, he had to make some assumptions about how the code worked and was able to use his prior knowledge of javascript to gain an understanding of how it was working.

If you enjoyed this episode, be sure to join us for the next one!

Ready to start your career at Simply Business?

Want to know more about what it's like to work in tech at Simply Business? Read about our approach to tech, then check out our current vacancies.

Find out more

We create this content for general information purposes and it should not be taken as advice. Always take professional advice. Read our full disclaimer

Find this article useful? Spread the word.

Share on Facebook
Share on Twitter
Share on LinkedIn

Keep up to date with Simply Business. Subscribe to our monthly newsletter and follow us on social media.

Subscribe to our newsletter

Insurance

Public liability insuranceBusiness insuranceProfessional indemnity insuranceEmployers’ liability insuranceLandlord insuranceTradesman insuranceSelf-employed insuranceRestaurant insuranceVan insuranceInsurers

Address

6th Floor99 Gresham StreetLondonEC2V 7NG

Northampton 900900 Pavilion DriveNorthamptonNN4 7RG

© Copyright 2024 Simply Business. All Rights Reserved. Simply Business is a trading name of Xbridge Limited which is authorised and regulated by the Financial Conduct Authority (Financial Services Registration No: 313348). Xbridge Limited (No: 3967717) has its registered office at 6th Floor, 99 Gresham Street, London, EC2V 7NG.