behdad
behdad on Hacker News
I use it extensively to preserve images and formatting, in the pageless layout. I haven't tested it much with tables. Give it a try and file issues if it doesn't work well and I'll pass on to my agents. Thanks!
Good question, isn't it? GDocs has a "publish to web" feature, but it's vastly broken and loses formatting and image sizing and everything. It's just not priority for Google.
Possibly. I wasn't determined enough to look into that. Plus, it's easier for me to batch download my documents from the terminal.
Note that it will be a HTML plus directory of images, so you need to return an archive.
Posted by
behdad on Sunday September 20, 2026 @08:46PM
from the show-hn dept.
https://github.com/behdad/gdocs-me-up
Over the years I had written dozens of Google Docs documents, that I wanted to post to my website. Not only Google Docs's publish feature is broken and incomplete, Google does not index Google Docs either. So I set out to fix it for myself using AI agents. Sharing here in case someone else finds it useful.
Thanks. :)
Yeah this is not the main wedding invitation. There's a proper HTML with details. This is extra me going wild with the agents fun side. If we were to expect people to finish this to get to the RSVP, we'd have exactly two guests!
msdf still suffers from detail loss at large sizes, which this method doesn't have.
A wave of manic energy in December had me put together a long deck called "HarfBuzz at 20! " , celebrating 20 years of HarfBuzz.
I designed the deck to be presented at the #WebEnginesHackfest later this year. Then reality hit that I cannot present this deck in any sane amount of time.
I decided that instead of tossing the deck out, I just out to be read by the curious. I will present a highly condensed version at the hackfest in June.
Let me know what you think.
Posted by
behdad on Friday February 06, 2026 @03:11AM
from the docs.google.com dept.
I have a puzzle for the hacker in you: The font HarfBust.ttf is an offshoot of Anton Regular, with a twist:
- On software using HarfBuzz (as far back as you go, back to the 2000s) and HarfBuzz only, it will ligate "HarfBuzz" to the HarfBuzz logo.
- On software using HarfRust and HarfRust only, it will ligate "HarfRust" to the HarfBuzz logo.
- On software using HarfBuzz, HarfRust, or DirectWrite, but not CoreText, it will ligate "HarfBust" to the HarfBuzz logo.
How does this work? The font does not use any non-standard OpenType features like `HARF`/`Harf`/`BUZZ`/`Buzz` (which HarfBuzz / HarfRust apply).
Enjoy,
--behdad
Posted by
behdad on Tuesday September 09, 2025 @09:53PM
from the behdad.github.io dept.
Thank you for the question. Rasterization is not my specialty. There definitely is still immense amount of research going into rasterizing fonts and 2D graphics on the GPU efficiently. Here's the latest from Raph Levien's research for example:
https://www.youtube.com/watch?v=_sv8K190Zps
We’re the maintainers of HarfBuzz, the open-source text shaping engine used by browsers, operating systems, and applications to render all text, including supporting scripts like Arabic, Devanagari, Khmer, CJK, and more.
HarfBuzz is known for being fast, portable, and complete. But it’s also sometimes seen as hard to understand or work with. We’re working on a Developer FAQ and Design Notes to clear up misconceptions and explain the "why" behind our more unusual design decisions (yes, the macros are intentional).
So we’re asking:
What was your biggest WTF moment reading or using HarfBuzz?
Other things we’d love to hear about:
* Which parts felt like magic or a black box?
* What do you think we could explain better?
* Have you run into performance or integration surprises?
* Are there features you only discovered by reading the source?
* What do you wish the documentation had told you?
Anything else you want to know about the project?
We'll answer questions on Reddit, here, and also open a GitHub Discussion afterward to collect and respond to feedback more formally and integrate into our documentation.
Thanks in advance for your curiosity, stories, or frustration—we’re listening!
Posted by
behdad on Tuesday July 22, 2025 @06:25AM
from the old.reddit.com dept.
Browser zoom works fine for me. Does it not for you?
Hi. As mentioned, I'll expand on my motivations in a future paper. -behdad
Posted by
behdad on Monday July 08, 2024 @10:04PM
from the behdad.org dept.
Like it or not for hiring purposes it does.
How does that work with new grads?
Assuming that the dictionary is arbitrary as well, just comparing the string to the strings in the dictionary (or hashing it) it takes O(n), regardless of the data-structure you use.
That is a correct solution. The one I was talking about would stop after just trying "The" and "reis".
My bad. The dictionary should be {"the", "there", "is"}.
Imagine the string "there is", and the dictionary {"the", "there", "is"}.
I beg to differ, this is exactly the opposite of a manhole problem, which I tried to explain, which I clearly failed.
My mid-mark would be where someone could write the code for the brute-force answer for both parts but couldn't get the memoize / dynamic-programming solution. That would be where I'd say "I'm not sure, look at other interviews". Otherwise I'll make a hire / no-hire recommendation.
You'd be surprised.. but we're trying to distinguish between someone who can code simple algorithms versus one who can't.
Typically candidates are scored on a scale. And there are multiple interviews. The final hire / no-hire is decided based on the scores and written feedback from all interviews.
It is true that many companies, Google included, have added area-specific questions including some for frontend webdev if I remember correctly.
As someone who actually uses algorithms and data-structures in their job, I disagree.
Thanks. That's definitely an interesting question. How does it do with new grads? How do you grade people on that on a numerical scale? Curious.
This is very nice indeed. I should mock-interview someone using it.