HNHacker News
TopNewBestAskShowJobs

fsaintjacques

166 karma · joined April 12, 2011

https://github.com/fsaintjacques

[ my public key: https://keybase.io/fsaintjacques; my proof: https://keybase.io/fsaintjacques/sigs/Yg1HeI9vItNn1ALJyYNOqHCuRHrExi62XYyFGXBwUaA ]

submissionscomments
fsaintjacques··on Progressive encoding and decoding of 'repeated' protobuffer fields
I recently toyed with a tiny VM for protobuf, you can use it in redpanda WASM streams, or in streaming pipeline (without having to use SAX parsers or IDL shenanigans with projected message compiled...) for filtering and projecting before deserializing. 100% written by claude.

https://github.com/fsaintjacques/wql

fsaintjacques··on Building a Streaming Platform in Go for Postgres
If only go had lambdas, functional interfaces and record classes...
fsaintjacques··on How to (and how not to) design REST APIs
I highly recommend anyone to read Google's [AIP](https://google.aip.dev/). There's even a grpc schema linter for it. Put more focus on the resource data design than nitpicking on transport details. I would consider the best lessons to be:

- Optional but supported user defined identifiers, it's so frustrating to work with API that passes you back an identifier.

- String identifier (names) for resources, with some kind of type namespacing, i.e. the prefix in the author's document - Consistent set of fields (create_time, update_time, annotations, ...)

- Avoid dynamic map (this is a JSON self-inflicted wound)

fsaintjacques··on Protobuf-ES: Protocol Buffers TypeScript/JavaScript runtime
JSON parsing is a minefield, especially in cross-platforms scenarios (language and/or library). You won't encounter those problems on toy project or simple CRUD applications. For example, as soon as you deal with (u)int64 where values are greater than 2^53, a simple round-trip to javascript can wreak silent havoc.

See http://seriot.ch/projects/parsing_json.html

Protobuf support for google's first-class citizen languages is usually very good, i.e. C++, Java, Python and Go. For other languages, it depends on each implementation.

fsaintjacques··on Ask HN: Have you used SQLite as a primary database?
If the application is in go, you can likely embed litestream.
fsaintjacques··on AMD and Valve Working on New Linux CPU Performance Scaling Design
glibc already does dynamic dispatch for the memcpy family of functions.
fsaintjacques··on Ask HN: Who is hiring? (April 2021)
Optable | Montreal and Remote | Golang, React, Crypto | Full-Time | https://www.optable.co

Optable is building a decentralized data management and connectivity platform designed for online advertising. Our goal is to enable advertisers to leverage publisher's first-party data in a world where third-party cookies and globally shared identifiers will disappear. We operate private instances of our software on behalf of our customers. We use modern, secure multiparty computation and cryptographic techniques to allow matching of data while protecting privacy. We are looking for full-stack engineers who are comfortable working on complex backend features but won't shy away from front-end development. We are also looking for a cryptography engineer to help us build cryptography software and protocols.

Please apply by writing to careers -at- optable.co and mention hackernews.

https://www.optable.co/jobs/software-eng-full-stack-dev https://www.optable.co/jobs/cryptography-engineer

fsaintjacques··on Samsung TV owners complain about increasingly obtrusive ads
It sure does.
fsaintjacques··on I lost €4k in a Facebook scam
Let me introduce you to the underworld of affiliate marketing https://www.investopedia.com/terms/a/affiliate-fraud.asp

There's always money to be made if you can generate significant legitimate traffic to a given destination.

fsaintjacques··on FlexBuffers
Not zero copy, requires deserialization.
fsaintjacques··on Google faces $5B lawsuit for tracking people in incognito mode
Because it would be a trivial indicator that you're in incognito mode.
fsaintjacques··on How we scrape 300k prices per day from Google Flights
There's a very high chance this is monetization of botnets, which adds even more to the overall shadyness.
fsaintjacques··on Pure Bash Bible
Python is a portability minefield. I'll spend more time trying to get the script/package run than reading the bash script.
fsaintjacques··on Launch HN: Memfault (YC W19) – Crashlytics for Firmware
See https://backtrace.io, disclaimer, previous employee.
fsaintjacques··on AdTech Sucks
rtb bid request volume can easily go 1m/sec, this is not impressions, but offers to buy for an impression.
fsaintjacques··on AdTech Sucks
Technical challenges and salary. In my local market, most jobs are web shops and/or CRUD business applications with low pay.
fsaintjacques··on On SQS
Tables as queues is perfectly legit, one less component to worry about.
fsaintjacques··on Floyd Martin retires after nearly 35 years as a mailman tomorrow
I received my first paper nigerian scam last month!
fsaintjacques··on How does a relational database work? (2017)
https://cstack.github.io/db_tutorial/
fsaintjacques··on AI Startups in Montreal
They have a few people and a tiny office recruiting for developers. I work beside them.

https://www.peersight.com/job/appnexus-senior-software-engin...

fsaintjacques··on AI Startups in Montreal
As a software engineer in Montreal, you can get above market rate at these companies:

- AdGear

- AppNexus

- Element.ai

- Google

- Hopper

- Shopify

fsaintjacques··on Arguing against using protobuffers
This.

Don't forget integer type defined by implementation. Very easy to shoot yourself in the foot in when consumers/producers are not written in the same language, even more if it's a mix of dynamic and static languages.

Nothing beats a well defined and commented schema.

fsaintjacques··on Intel Announces Optane DIMMs
I'm curious about this, could you point at the documentation?
fsaintjacques··on Intel Announces Optane DIMMs
AFAIK, the Optane disks are _byte_ addressable.
fsaintjacques··on Cache Organization in Intel CPUs (2009)
Coffee lake is not the same as cannon lake. This chart is from 2015 and suggests the cannon lake would be released in early 2017.

I doubt we'll see cannon lake this year, since they released kaby lake early 2017...

https://en.wikipedia.org/wiki/Coffee_Lake https://en.wikipedia.org/wiki/Cannonlake

fsaintjacques··on Cache Organization in Intel CPUs (2009)
It seems you know this subject very well :) https://github.com/etep/resume

On an unrelated subject, do you know if the next desktop generation (coffeelake?) will support AVX512 or should I just buy a skylake-x?

fsaintjacques··on x86 Paging Tutorial
Ciro, your work is amazing.
fsaintjacques··on Ubuntu 16.04.2 LTS released
Does that means you can have fairly recent kernels with LTS releases? If so, amazing. That was my biggest complaint of Ubuntu on servers.
fsaintjacques··on Hackers Make $5M a Day by Faking 300M Video Views
I almost replied like you did; the joke is that there is no such list.
fsaintjacques··on Hackers Make $5M a Day by Faking 300M Video Views
You take a decision based on an offer called the bid request, domain/url/page is part of said metadata.

The catch is that almost all fields in said offer can be faked by a malicious adversary due to lack of security/competence from the exchange.

Page 1 of 4Next →