4 ms·
Which is huge for a page that displays an input box and a button to send the query, which requires a few bytes. Add a few KBs for the suggestions. These few by
by jraph 5y ago
Which is huge for a page that displays an input box and a button to send the query, which requires a few bytes. Add a few KBs for the suggestions.
These few bytes is actually mostly what you get when browsing Google with w3m. By the way I just noticed they now have a cookie banner that works in w3m without JS? Now this is some zeal!
- ciphol 5y agoAs soon as you start typing your search, it starts making search suggestions. That's a complex feature which must involve lots of code. Also, the search page is not just the search page, it's the portal for all Google services and has corresponding links and menus at the top. So we should expect the page to be much bigger than "a few bytes", and it is.
- Gigachad 5y agoNone of us know what the google home page is actually doing. It reminds me of the gnu coreutils where the program "true" which simply returns a successful status code on run, is hundreds of lines in C. I could do that in 3 lines! Except I'd be ignoring all of the weird use cases and architectures that the coreutils have to support. The google homepage works on a _remarkable_ number of devices. You could install a fresh copy of windows XP and the built in IE works flawlessly with google while almost any other page is broken. And also forgetting all the analytics they need. I know its a dirty word on HN but this kind of stuff is essential for a product of this scale. Throw in some extras for accessibility, etc.
- josefx 5y agoIf I remember correctly GNU true violates various specs because it does too much (help and version) when it should ignore all parameters. As you say a valid implementation can be done in three lines.
- Gigachad 5y agoThe code is made way more complex by combining both true and false in to the same binary and then using the output binary name to decide which return code it outputs. It seems overly complex to me but I have no idea what kind of requirements they have.
- MaxBarraclough 5y ago> gnu coreutils where the program "true" which simply returns a successful status code on run, is hundreds of lines in C Looking at [0] it seems to be 80 lines, as it's doing argument-parsing (for --help and --version) and stream-management. [0] https://github.com/coreutils/coreutils/blob/master/src/true.c https://github.com/coreutils/coreutils/blob/master/src/true....