79 karma · joined August 28, 2022
IIRC, the fix was for directory entries were later stored in sorted buckets (aka hash map) and only the corresponding bucket for the file name would get locked. This reduced scope of lock for atomic operations like rename and also allowed faster lookup instead of O(n) based scan.
Assuming Google uses gRPC and protobufs extensively, I can only imagine a chaotic polyglot environment where buffers are copied and transformed very often.
I work at a fairly large Python shop using libraries in C. Cost of FFI is non-trivial, memory management and moving data is the usual culprit.
Most real world software will use many core libraries implemented in C/C++ for doing the heavy lifting. Just the FFI and creating all those Python objects makes it slow.
Python is a great language for prototyping and/or usage as a glue code.
Personally, I am more inclined to use Go for anything quick and performant. If Carbon language becomes a reality, I would bet on that since it allows seamless interoperability with C++ (and there is a large existing eco system). Else, time to learn Rust.
I coded using C++ and pass by reference. He had never seen it in his life. He refused to believe modification on a reference would modify the value in the calling function! I hoping he would be willing to discuss or run the code, this was a total let down.
Note: I have 2+ decades of coding experience
The problem is almost all CI/CD jobs use custom docker images bundled with distro provided compiler toolchains.
Replacing linker in CI/CD jobs transparently is extremely hard/impossible/undesirable.
Is this different? Some attribution in the article would help.
(Thanks for pointing, there are links to original in the article)
I still consider myself a systems programmer mostly writing glue code in Go/Python and jumping into C/C++ as required to improve performance when required.
$ /usr/local/Cellar/llvm/15.0.3/bin/clang++ -fmodules -std=c++2b hello.cpp
$ ./a.out
Hello, World!If Google+ groups took off and started taking social graph into search results and used it for ranking, that might have been a game changer.
I had a brief stint as a manager, ended up doing more coding than my team. That was the moment I decided to step back into coding again.
For me, coding is puzzle solving or playing with Lego. It is therapeutic. If someone can continue to pay me to play, why not!