DiscoverElixir Wizards"Keeping it Fresh" with Bilal Hankins and Anna Dorigo
"Keeping it Fresh" with Bilal Hankins and Anna Dorigo

"Keeping it Fresh" with Bilal Hankins and Anna Dorigo

Update: 2024-04-25
Share

Description

In Office Hours Episode 6, SmartLogic Developers Anna Dorigo and Bilal Hankins join Elixir Wizards Sundi and Dan to discuss their experiences maintaining a decade-old Ruby on Rails codebase.



They delve into the critical importance of deeply understanding the codebase, keeping dependencies current, and adapting to the original application's evolving priorities and design choices.



The conversation spans a range of topics, including accessibility, testing, monitoring, and the challenges of deploying database migrations in production environments. The guests share effective strategies for sustaining and enhancing older codebases, such as employing automated tools, performing code audits, and adhering to clean coding principles.



Key topics discussed in this episode:




  • Grasping the legacy codebase and its historical context

  • Overcoming accessibility issues in older applications

  • Safe dependency management and upgrades

  • The effects of application scaling on database performance

  • The critical role of comprehensive test suites in legacy systems

  • Using tools like Sentry for error tracking and performance monitoring

  • The benefits of automated security and dependency scans

  • Juggling client needs with budget constraints

  • Local simulation techniques for large datasets

  • The value of iterative code reviews and maintaining clean code

  • Utilizing git history for contextual understanding

  • Onboarding strategies for legacy projects

  • Removing obsolete code and avoiding "magic numbers"

  • Importance of descriptive naming for better code clarity

  • Leveraging a rich repository of example code for learning and reference

  • Proactive code audits to anticipate issues

  • Managing pull request sizes for smoother reviews

  • Communicating effectively about upgrades and potential impacts

  • Strategies for handling large databases efficiently

  • Ensuring thorough test coverage

  • Keeping open lines of communication with clients regarding ongoing maintenance



Links mentioned:



COBOL programming language https://developer.ibm.com/languages/cobol/

Ruby on Rails https://rubyonrails.org/

ARIA Rules (Accessible Rich Internet Applications) https://www.w3.org/TR/using-aria/

Shawn Vo on Elixir as a Competitive Advantage https://smartlogic.io/podcast/elixir-wizards/s5e5-vo/

Bundler Audit Ruby Gem https://rubygems.org/gems/bundler-audit/

Sentry application monitoring and error tracking software  https://sentry.io/

Dependabot Github automated dependency updates

Mix hex.audit https://hexdocs.pm/hex/Mx.Tasks.Hex.Audit.html

Git Blame https://git-scm.com/docs/git-blame

Cow hoof trimming videos - The Hoof GP on YouTube (TW graphic imagery)

Special Guests: Anna Dorigo and Bilal Hankins.

Comments 
In Channel
loading
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

"Keeping it Fresh" with Bilal Hankins and Anna Dorigo

"Keeping it Fresh" with Bilal Hankins and Anna Dorigo

SmartLogic LLC