this post was submitted on 31 Oct 2023
201 points (98.1% liked)

Technology

58141 readers
4310 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] jelloeater85 6 points 10 months ago (1 children)

Very cool. Any other related stories?

[–] [email protected] 8 points 10 months ago (1 children)

Yeah! When I joined the team, the build system was basically a bunch of Bash scripts duct taped together so to speak. It would fail all the time and everyone was unhappy. Devs couldn't get a solid image, nor could the QA team have a product that they were sure they could reproduce. The build team all quit out of frustration because everyone was blaming them all the time for delays and it wasn't even their fault because they didn't write the scripts.

Some intern started another script but left early in his project. He didn't transfer anything to anyone and we basically had to take out his hard drive to connect it to my system to extract his scripts because he didn't bother to give anyone the password to his machine.

I still had to redo everything from scratch because his scripts somehow only worked on his system and were not portable.

Over the course of one year, I rebuilt the whole thing from the ground up. And in the end, it was a mix of Python, Bash, Perl and it was using chroot jails and Qemu as a containerization system before Docker even existed. In the end, I could build a Linux distribution with any suite of software for multiple architecture using a simple config file. I had a master system that acted as a monitor and a load balancer that would delegate the builds to whatever machine or container was available and give me real time information on the progress of each build.

Then the company went bankrupt.

[–] [email protected] 2 points 10 months ago (1 children)

I was going to say that sounds like quite the elegant setup you ended up with, and in a pre docker world? Straight up crazy in my eyes. Really puts into perspective how I take all the tolling around containerization for granted nowadays.

[–] [email protected] 3 points 10 months ago

And then when I have a job interview, they ask my how long I've been working with Docker. I tell them only a couple of years. They always say it's not enough. Then I ask them if they know about chroot jails and debootstrap and how to assign resources using cgroups and they don't even know that I'm taking about.... SMH