What it was like working for Gitlab

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • nix

    Nix, the purely functional package manager

  • Semi-related, I would recommend to anyone who is a Linux native to try to find some kind of "minimum viable setup" that is really really easy for you to run out of VirtualBox or Parallels or something for this reason. No matter where you go, you know you can have a suite of tools which work just as you want them to there. Being able to tear it down and rebuild it quickly is also a great way to deal with debugging certain kinds of problems of the "it runs/doesn't run on my machine" category.

    How you do this is of course up to you. At one end of the spectrum is just relying on your memory. At the other end is using NixOS https://nixos.org/ to get fully reproducible builds anywhere you go. Between these are a vast field of options. I know a guy who maintains an Ansible file set to `host: localhost` which installs everything he wants from that file. For me, I just stick with the latest Ubuntu version and maintain a few shell scripts [1] that install 80% of what I like to have on a new install.

    If you like the scientific approach, you can install something like https://atuin.sh/ and do some statistics on what programs you actually run most frequently based on your long term shell history.

    [1]: https://github.com/hiAndrewQuinn/shell-bling-ubuntu

  • duckduckgo-locales

    Translation files for <a href="https://duckduckgo.com"> </a>

  • https://duckduckgo.com/?t=ffab&q=51+percenter&ia=web

    Someone "whose skills are divided 51-49 between emotional hospitality and technical excellence" [1]. Seems quite bizarre to me to define it so precisely. Even if skills were measurable in such a way, how many people will be exactly 51% emotional hospitality, and why is 52% or 50% not suitable?

    [1] https://www.nrn.com/corporate/meyer-51-percenters-have-five-...

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • rbs

    Type Signature for Ruby

  • I don't know what you mean by "Static typing is not webscale".

    > https://news.ycombinator.com/item?id=39159481

    Bugs exist in all code written in all programming languages and you will find bugs in programs written in statically typed languages too as you know. Programming languages are rarely chosen for the absense of bugs alone though or we'd all be using SPARK Ada or something.

    > spitting out code as fast as your keyboard works, or is is not having features do weirdo things

    This is a straw man. No-one has suggested that "spitting out code as fast as your keyboard works" is what Rails allows you to do, or that Ruby code results in features that "do weirdo things".

    In reality engineer productivity is important and Rails enables it in a web environment.

    > I have more than once tried to contribute fixes to GitLab's codebase, and every time I open the thing in RubyMine it hurpdurps having no earthly idea where symbols come from or what completions are legal in any given context.

    Yes, I prefer writing statically typed languages and I would /greatly/ prefer Ruby to be statically typed for a number of reasons, but it will likely never be so in a way I consider to be usable (see https://github.com/ruby/rbs). Not being able to definitively tell what a method returns or where one is defined is a total PITA, but it's one of the array of up and downsides to Ruby, with each language having a different set.

    > I trust JetBrains analysis deeply, so if they can't deduce what's going on, then it must take an impressive amount of glucose to memorize every single surface area one needs to implement a feature.

    You don't need to know how all of Rails works to write a Rails app, as I'm sure you know, so this seems like another mis-representation of the truth, just as you don't need to know how the compiler or CPUs work to do a lot of (most?) programming.

    > That or, hear me out, maybe "it works on my machine" is a close to correct as the language is going to get without explicit type hints as a pseudo static typing

    You seem to be suggesting that Ruby on Rails applications behave unpredictably on a machine to machine basis but that's not really how Ruby works in practice, or matching on my experience.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts