HNHacker News
TopNewBestAskShowJobs

martius

2,783 karma · joined August 9, 2011

Site Reliability Engineer, enjoying System & Network programming.

https://marti.us/ (personal webpage) https://marti.us/w/ (index of my articles)

github: martiusweb bluesky: @marti.us

submissionscomments
martius··on Meta lays off 11,000 people
I read this as "we expected to stay at the levels we were at at the beginning of 2022, but instead things went back (down) to the levels of 2019".
martius··on Mark Zuckerberg confirms broad layoffs to begin at Meta
It doesn't make it "a very good deal".
martius··on Mark Zuckerberg confirms broad layoffs to begin at Meta
Four months of pay may not be that much if you moved to another country or continent with your family for this job.

While it's probably easy to land on your feet and find something with a good pay in SV or London, it's probably not the case everywhere.

4 months of pay for this kind of trouble doesn't look like a good deal to me.

martius··on Twitter’s mass layoffs have begun
Even if we assume the changes are for good and will "fix" the company, asking people to work nights and week-ends while conducting mass layoffs in less than a week is a "treat employees nicely" issue.

Actually, I think we're more on the level of "threat employees with basic decency".

martius··on “It’s time for Apple to fix texting”
SMS spam isn't a thing on iOS?
martius··on Google Interview Warmup
I'm a Googler and, like many googlers, I ask this type of questions during interviews.

The recommendation for interviewers is to select a mix between past stories and hypothetical scenarios.

martius··on Dark pattern: how YouTube makes sure you don’t always “skip ad”
Because it only works on a browser, people also experience youtube on other devices (smart TV, chromecast, App on a non-rooted phone).
martius··on Software Engineering at Google (2020) [pdf]
Is it really?

I'm sure there are plenty of candidates giving up because they received a competing offer and wouldn't wait, but I think it's reasonable to expect a hiring process to take a month, even in small companies.

Edit: I also have anecdotal evidence of cases where an offer would be made withing 2-3 business days after the interviews at both Google a Facebook.

martius··on Software Engineering at Google (2020) [pdf]
It can be reduced to ~3-4 weeks from first contact to offer if you are in a rush.

It's as easy as saying like "I just got an offer from $competitor".

The process may take months because candidates usually ask for time to prepare, and some latency once the offer is accepted (background check, etc). If you are actively looking for a job, you are most likely already prepared.

martius··on Less secure apps and your Google Account
Google provides the App passwords feature:

> An App password is a 16-digit passcode that gives a non-Google app or device permission to access your Google Account. Learn more about how to sign in using App Passwords.

Maybe I misunderstand the announcement, but it looks to me that this feature will still be a valid alternative when Oauth can't be used.

martius··on How I learned French in 12 months (2020)
It seems unreasonable to me to expect to be B1 in 6 months with 2 hours of class per week.

I've been learning German 2 hours a week + homework for 2 years and I'm not yet B1 in German. We are 4 students with one teacher and, from what I understand, we are not particularly slow.

Maybe German is really harder to learn than other languages, but probably not 2x or 4x as French (I'm French).

martius··on I Quit Shopify After Five Months
My reading is that OP was disappointed that they weren't leveled as senior, yet, they left the company because they were working on the tech they want to be an expert of.

It strikes me as a misunderstanding on how career evolution works in these companies (and, I believe, most tech companies). A senior eng will focus less on the pure technical aspects (language, framework, etc), but rather will have the soft skills allowing them to carry larger projects/impact.

For instance, with experience, a senior can identify design mistakes early, can weight the value of different solutions based on aspects like time/eng-cost, tech debt, complexity, risk.

In a company of the size of Shopify, shifting away from "Rails ERB templates" to a more modern solution definitely require these skills (and also probably way more than 6 months of tenure). They could have proposed this project, tried to get some buy-in and learn new "frontend skills".

martius··on Macron says France will build new nuclear energy reactors
Macron says things a year before the next presidential election.

Assuming they really set this project in motion, there's plenty of time for the next government to cancel it.

martius··on Mozilla to put ads in Firefox address bar suggestions
I would expect more transparency on the objectives of C-levels and how their compensation is impacted when they don't meet these objectives.

I'm not saying they are doing a bad job, but I really can't say if they've been doing a good job either.

martius··on One Fastly customer triggered internet meltdown
It may be more acceptable to have more frequent outages if the impact radius (number of websites or services impacted) is smaller.
martius··on Opting Your Website Out of Google's FLoC Network
It's a good idea to read the article:

> During the current FLoC origin trial, a page will also be included in the calculation if Chrome detects that the page load ads or ads-related resources. (Ad Tagging in Chromium explains how Chrome's ad detection mechanism works.)

Ad tagging? https://chromium.googlesource.com/chromium/src/+/master/docs...

> Ad Tagging works by matching resource requests against a filter list (...) to determine if they’re ad requests. Any requests matching the filter are tagged as ads. Further, requests (and some DOM elements such as iframes) made on behalf of previously tagged scripts are also tagged as ads by the AdTracker. An iframe will be marked as an ad iframe if its url matches the filter list, if tagged script is involved in the creation of the iframe, or if its parent frame is an ad iframe. The main frame of a page will never be tagged as an ad. Any request made within an ad iframe is considered an ad resource request.

I can't find what is included in this filter list, I'm not sure it's open source.

(mandatory disclaimer: I work at Google, not on Chrome nor ads)

martius··on French lawmakers approve a ban on short domestic flights
There is a TGV station in CDG.
martius··on An update to storage policies across your Google Account
This would allow to guess existing email addresses which is not a good idea.
martius··on SRE Teams: Hash
The biggest difference is that the software I keep running in production is 100% made in-house. Previously, I was running a system built on top of open-source software (Hadoop and Kafka, in particular).

It has a lot of benefits:

* we have an influence on the priorities of the project, and make sure our issues are prioritized. You can't be sure of the evolution of an open-source project.

* continuous rollouts. In my previous job each major version bump of Kafka or Hadoop could become a complex migration to plan a long time in advance. Now, we still have migrations to do, but often the scope is smaller and the transition smoother.

* strong culture and policies. We hold ourselves accountable. In my previous job, we would often mitigate incidents and forget about them, not write the post mortem or really root cause the incident. Usually because we knew/believed it would not be solved anytime soon (conflicting priorities, or whatever else). I've never seen an incident swept under the rug at Google.

martius··on SRE Teams: Hash
Teams have different level of engagement on different services.

In my case:

* I have a good in-depth knowledge of one product I'm oncall for. My team may implement some design changes required (ex: for scaling) and I contribute code to this project.

* I have shallow knowledge of 2 other products, I'm trained at identifying a trigger that causes an outage and mitigate it (common mitigations are: move traffic, increase quota temporarily, rollback a release). If I can't solve an incident without in-depth knowledge of these products, I escalate to the devteam, and they will be responsible for root-causing.

A mitigation that requires a patch, cherry pick and rollout would be a terrible (and risky) thing to do, so I'd rather find any alternative first.

martius··on SRE Teams: Hash
It can be the role of SREs to build and provide the infrastructure improving the reliability of rollouts, allowing the rest of the company to build reliable products without compromising the velocity.
martius··on SRE Teams: Hash
I've been an SRE in a company which is not a FAANG and I'm now an SRE at Google.

While there is more structure at Google, it's basically the same job :)

The implementation varies between companies, and I understand this is what these articles try to capture. My point is that as an individual contributor in an organization where "SRE" is really a thing, I believe that the role is often quite well defined.

martius··on Google Services Experiencing Disruptions
https://twitter.com/uhoelzle/status/1309313556328841216?s=19

"a pool of servers that route traffic to application backends crashed"

martius··on Embrace, extend, and finally extinguish – Microsoft plays their hand
Pull-requests and forks are only a piece here.

It's not the only one implemented by tools that extend Git (Phabricator and Gerrit, for instance, support pre-commit workflow).

Github also brings a bug tracker (albeit a simple one), discoverability, hosting (obviously) and integration with many useful tools (CI, documentation generators, etc). All of this is easy to use.

These pieces greatly contribute to the success of many open-source projects (of various sizes). Github "extinguishes" alternative because of this, not because it designed an alternative to email-based workflows.

I suppose that many projects (open-source or not) want to use tools that extends Git. Maybe what we need is a standard making these tools interoperable and open.

martius··on Async Python is not faster
Hi, thanks for your response :)

Edit: I've been downvoted so I'll add a precision: Usually, it is believed that async shines against other models once you reach a certain scale (https://en.wikipedia.org/wiki/C10k_problem). This benchmark shows than async app frameworks are slower than the sync ones when running at a given scale, and since the article doesn't give many details on the incomming traffic, I can only assume that it's low, since it saturates 4 cores.

I believe that your conclusion that "Async python is not faster" is an over generalization of your use case.

I'm not saying that the configuration in your benchmark is not correct, I am saying that this benchmark may not yield the same results if you try to scale it on bigger hardware.

I believe that scheduler overhead can't be ruled out (not for python nor any other program) on a server since we've sometimes observed that the scheduler could be the bottleneck under some circumstances. For instance, some Linux schedulers used to show poor perfs when using nested cgroups with resources quota enabled.

Also, I'd like to state my first point again: you need to see how the number of workers will influence the memory usage on your system. Especially with python, if you've got a lot of workers, you can expect some memory fragmentation that can impact the perf of your system.

martius··on Async Python is not faster
I'm not sure this is a realistic benchmark. A couple of remarks:

16 workers is not that much considering that modern servers can have a lot of cores available, and I expect that the more workers you need the more likely you'll hit other bottlenecks:

* the more workers you need, the more memory you consume (workers are processes, not threads),

* I don't know how OS scheduler behave these days, but the general-purpose OS scheduler may consume some CPU time you'd rather give to your app.

I understand the point on latency variation though: preemptive multitasking will slice the CPU time "fairly" between workers, while in a cooperative multitasking situation, it would be the job of the programmer to yield after some time.

martius··on Async Python is not faster
What matters is that the server app uses as much CPU as it can when it needs it.

With a sync server, a worker is inactive as long as it is waiting on IO, so you need enough workers to maximize the chance that all workers are busy, else, some clients are waiting even if you've got the CPU to deal with them.

With an async server, a single worker handles many clients simultaneously, in theory, a single worker per core is sufficient to eat all the CPU available.

martius··on Germany, France launch Gaia-X platform in bid for ‘tech sovereignty’
There are "good" French companies where you can grow a career and get a good salary.

What surprises me is that these companies seem to either hide their French roots, and are often ignored by the academic world. When I was student in engineering school, the only companies we would hear from where the big French corps like Orange, Cap Gemini, Thales and co.

I'm sad to see that these French companies don't get the support and publicity they deserve. I hoped that the French tech thing would help these companies, but I only ever hear about startup with vague pitches founded by business school graduates which don't know a thing nor care about any "tech".

martius··on Google plans to move UK users' accounts outside EU jurisdiction
In which way?
martius··on Google cuts jobs at cloud-computing group
At Google, resistance and critics live well beyond the boundaries of a product/area.

This doesn't make sense.

← PreviousPage 2 of 5Next →