• Dev Notes
  • Posts
  • Google's Monumental Code Migration: From Perforce to Piper

Google's Monumental Code Migration: From Perforce to Piper

Good Morning! Google successfully completed a massive four-year project to migrate its entire codebase from Perforce to a custom-built system called Piper, demonstrating the feasibility of maintaining a monolithic codebase at scale. The international timekeeping community has decided to phase out leap seconds by 2035, a move that will significantly impact tech systems and require updates to time-handling code. A joint study by cybersecurity agencies revealed that over half of critical open source projects use memory-unsafe code, highlighting a widespread vulnerability in software infrastructure.

Google's Monumental Code Migration: From Perforce to Piper

Google had a big problem. All their code was on one Perforce server, and it was getting too full. They decided to make their own system called Piper to fix this.

It wasn't easy to switch. They had to:

  • Move over 300 tools that used Perforce

  • Keep important systems running during the change

  • Make sure they didn't copy Perforce's design to avoid legal issues

The whole process took 4 years, finishing in 2012. The team had to talk to 25,000 engineers and get them to change how they worked.

The Big Move: When it was time to switch, they had to stop all code changes for a short time. It was risky, but it worked! They moved everything to Piper without any big problems.

After the switch, Google's systems were safer. They could also make new tools like Tricorder, which checks code for issues. This big change showed that it's possible to keep all your code in one place, even for huge companies.

The switch changed how big companies think about managing lots of code. It showed a new way to handle complex code systems, which many other companies now follow.

Read More Here

Goodbye Leap Second: What It Means for Tech

Context: Leap seconds were added in 1972 to keep atomic clocks in sync with Earth's spin. Now, experts have decided to get rid of them by 2035.

These extra seconds have caused trouble for computer systems. For example:

  • Reddit crashed in 2012 due to a Linux bug

  • Data centers saw big jumps in power use

The Change: Two ways of measuring time (UTC and UT1) will be allowed to drift apart until 2135. This gives scientists time to find better ways to keep time in sync.

Coders will need to update their programs to stop handling leap seconds. Google's "leap smear" method, which adds tiny bits of time throughout a day, might be a good way to handle time changes for now.

This is a big change in how we keep time. While it won't happen right away, it's important for tech people to know about it and start thinking ahead.

Read More Here

Memory-Unsafe Code Common in Key Open Source Projects, CISA Finds

CISA, FBI, ACSC, and CCCS worked together to study important open source projects. They looked at 172 projects that OpenSSF said were critical.

Main Findings:

  • Over half (52%) of the projects use code that isn't safe for memory

  • 55% of all the code lines use languages that can cause memory problems

  • C and C++ are the main languages causing these issues

When programmers use languages that aren't safe for memory, they have to manage memory themselves. This can lead to problems like buffer overflows and use-after-free errors. Even projects that seem safe often rely on parts that aren't. Changing old code to safer options is tough. It takes a lot of time, money, and skilled people.

What They Suggest: Make plans to use safer code, put safety first when making software, and be careful about using code from other places.

Read More Here

🔥 More Notes

Youtube Spotlight

Claude 3.5 Sonnet vs GPT-4o: Side-by-Side Tests

Click to Watch

Was this forwarded to you? Sign Up Here


or to participate.