VPN dependent.

  • 16 Posts
  • 164 Comments
Joined 1 year ago
cake
Cake day: June 30th, 2023

help-circle
  • Recently I used Google maps to search for the nearest DHL near me so I could return a package. DHL is not that popular near me and when I specifically typed for DHL, I would get only their competitors in the search results.

    There was a DHL service center near me and I had to scroll a bunch to find it. Oh, and apparently big box stores (or anyone) can pay Google to come up in the search on maps, even if unrelated.

    I don’t think they have skin the in shipping game but their algorithms are over optimized that they don’t even show what your searching for, but trying to infer why you’re searching for it. That or whoever pays them more. Certainly a search risk


  • Out of college I did not work at a start-up but instead got a job at a “big, stable” corp. I got the following advice from the older engineers at big, stable corp. Some of those engineers are my personal friends 7 years later.

    “Why work here where it’s slow and stable? You’re young, go take some risks, earn money, and most importantly get experience under your belt. Then come back with experience and coast. Your compensation grows slowly here so might as well come in with experience and start with a high salary. Also, everything is slow here, your peers at fast paced companies will out pace you.”

    That was some of the truest shit I’ve ever heard. I’ve since left big,stable corp and am working at a company who was a start-up but opted to grow instead of being bought out. I am working on a family so cannot afford the risks of a start-up.

    Yes, I work many more hours but the pay is way better and in the last 1 year I’ve learned more than i’ve learned at big,stable corp. There is just much less process and red tape and we are more hands on and wear many hats. At times this is exhausting but I find comfort that if I were to lose my job, I have tangible experience to get hired again where as at Big,stable I was picking up skills how to do reviews on processes and techniques unique to the company.








  • I don’t think I am well positioned to answer that question given my experience. Ill give it my best.

    I believe the advantage of more abstraction of gRPC was desireable because we can point it at a socket (Unix domain or internet sockets) and communicate across different domains. I think we are shooting for a “microserves” architecture but running it on one machine. FFI (IIRC) is more low level and more about language interoperability. gRPC would allow us to prototype stuff faster in other languages (like Python or go) and optimize to rust if it became a bottleneck.

    Short answer is, we are able to deliver more value, quicker, to customers (I guess). But I don’t know much about FFI. Perhaps you can offer some reasons and use cases for it?


  • At work, we started the c++ migration to rust doing the following:

    1. Identify “subsystems” in the c++ code base
    2. Identify the ingress/egress data flows into this subsystem
    3. Replace those ingress/engress interfaces with grpc for data/event sharing (we have yet to profile the performance impact of passing an object over grpc, do work on it, then pass it back)
    4. Start a rewrite of the subsystem. from c++ to rust
    5. Swap out the two subsystems and reattach at the grpc interfaces
    6. Profit in that now our code is memory safe AND decoupled

    The challenge here is identifying the subsystems. If the codebase didn’t have distinct boundaries for subsystems, rewrite becomes much more difficult







  • hahaha good point.

    That colleague, keep in mind is a bit older, also has Vim navigation burned into his head. I think where he was coming from, all these new technologies and syntax for them, he much rather prefers right clicking in the IDE and it’ll show him options instead of doing it all from command line. For example docker container management, Go’s devle debugger syntax, GDB. He has a hybrid workflow tho.

    After having spent countless hours on my Vim config only to restart everything using Lua with nvim, I can relate to time sink that is vim.



  • As a former Vim user myself, I have to say I really dislike screensharing with coworkers who use Vim. They are walking me through code and shit pops up left and right and I don’t know where it comes from or what it is I’m looking at. Code reviews are painful when they walk me through a large-ish PR.

    These days, I tend to bring my vim navigation/key bindings to my IDE instead of IDE funcs to Vim. Hard to beat JetBrains IDEs, especially when you pay them to maintain the IDE functionality.


  • code is just text, so code editors are text editors.

    What sets IDEs apart are their features, like debugger integrations, refactoring assists, etc.

    I love command line ± Vim and used solely it for a large portion of my career but that was back when you had a few big enterprise languages (C/C++, Java).

    With micro services being language agnostic, I find I use a larger variety of languages. And configuring and remembering an environment for rust, go, c, python etc. is just too much mental overhead. Hard to beat JetBrain’s IDEs; now-a-days I bring my Vim navigation key bindings to my IDE instead of my IDE features to Vim. And I pay a company to work out the IDE features.

    for the record, I am in the boat of, use whatever brings you the greatest joy/productivity.


  • wait until Google releases a new pixel this fall, buy “last year’s” pixel at a discount and they are supported for 7 (?) years of updates (including firmware).

    I would recommend GraphenesOS bc they only deal with android and pixel phones so there is a high level of compatibility and things rarely break. (In many cases GrapheneOS was more stable than Google’s android, recently with the multiple profiles and memory bug). They also push fixes and security hardening upstream sometimes.

    Anyway, GrapheneOS will support a Pixel for as long as the manufacturer (Google) releases firmware updates. So you have the potential of 7+ years of support from GrapheneOS.