E

Eager Blog

eager.io · Company blog · on HN since 2014

Eager, a startup later acquired by Cloudflare, published web technical history and developer articles such as the history of the URL and email.

What HN saysCommenters call its history of the URL and the languages that almost became CSS excellent reads; other comments cover its hiring and the Cloudflare acquisition.
52HN people shared it
30linked it in comments
66stories submitted
2.0Kstory points
5 years agolast shared
2014people per year2026

Most-shared posts

  1. 1
    Languages Which Almost Became CSS
    10 people · 771 points · first shared 2016 · 133 comments on HN
  2. 2
    Eager has been acquired by Cloudflare
    8 people · 11 points · first shared 2014 · discussion on HN
  3. 3
    How long do GUIDs really need to be?
    7 people · 140 points · first shared 2014 · 100 comments on HN
  4. 4
    Everything I Know About the Script Tag
    7 people · 15 points · first shared 2016 · discussion on HN
  5. 5
    Build Static Websites
    4 people · 55 points · first shared 2015 · 56 comments on HN
  6. 6
    Smarter Link Underlines For Every Website
    3 people · 115 points · first shared 2014 · 57 comments on HN
  7. 7
    The History of Email
    3 people · 111 points · first shared 2016 · 21 comments on HN
  8. 8
    The History of the URL: Path, Fragment, Query, and Auth
    3 people · 3 points · first shared 2016 · discussion on HN
  9. 9
    The History of the URL: Domain, Protocol, and Port
    2 people · 185 points · first shared 2016 · 35 comments on HN
  10. 10
    How We Impersonate Users to Fix Problems Faster
    2 people · 10 points · first shared 2015 · 2 comments on HN
  11. 11
    The History of Stock Quotes
    2 people · 10 points · first shared 2016 · 1 comments on HN
  12. 12
    You Can Now Buy (and Sell) Apps on Eager
    2 people · 9 points · first shared 2015 · discussion on HN
  13. 13
  14. 14
    A Quick History of Image Maps
    2 people · 3 points · first shared 2016 · discussion on HN
  15. 15
    The Curious Case of document.write
    2 people · 3 points · first shared 2016 · discussion on HN

What HN people wrote when they linked it

elmin · 2016-05-02
Eager | Boston/Cambridge, MA/Remote | Full-time/Part-time/Interns Eager (https://eager.io) is a way for non-technical website owners to use all of the open-source and SaaS tools developers use every day. Think of it like an app store for things which make websites better. For developers, we are the Heroku for code which gets deployed onto websites. If you like writing JS/CSS and the idea of building reusable open source components is interesting to you... If you like writing Go and would like to work on the twenty or so microservices which power our infrastructure... If you are interested in working on Marketing/Growth/BizDev in a growing startup which is aiming to change the way thousands of SaaS companies reach their customers... Please reach out, I'd love a chance to chat with you about what we're doing and what you're looking for -> [email protected]
bosdev · 2016-04-01
Eager | Boston/Cambridge, MA/Remote | Full-time/Part-time/Interns Eager (https://eager.io) is a way for non-technical website owners to use all of the open-source and SaaS tools developers use every day. Think of it like an app store for things which make websites better. For developers, we are the Heroku for code which gets deployed onto websites. If you like writing JS/CSS and the idea of building reusable open source components is interesting to you... If you like writing Go and would like to work on the twenty or so microservices which power our infrastructure... If you are interested in working on Marketing/Growth/BizDev in a growing startup which is aiming to change the way thousands of SaaS companies reach their customers... Please reach out, I'd love a chance to chat with you about what we're doing and what you're looking for -> [email protected]
zackbloom · 2016-12-13
Here's more info about the acquisition: https://blog.cloudflare.com/cloudflare-acquires-eager/ And a link to the acquired company: https://eager.io
fiatjaf · 2016-09-02
Write an https://eager.io/ plugin that basically creates an account and a calendar automatically, then embeds it in the target page.
Zikes · 2016-02-25
It is a bit of a pain, but I've found it to be a worthy trade-off for static typing. Finding documentation on the json struct tags was a lot more difficult than it should've been. This article seems to address a lot of the pain points I originally had: https://eager.io/blog/go-and-json/
sfeng · 2015-03-14
The great irony is you can now go read a very similar rant about what you, in turn, did wrong: http://eager.io/blog/build-static-websites
lobster_johnson · 2014-10-31
The article mentions "friendly" URLs as being a driving factor. That makes it a presentation issue; ie., it's part of the content, and it is wise to consider if you can derive it from the content. For a blog post, for example, there is a title. The classic way of adding a readable date to the URL is useful, if you're reading the URL in the first place. This particular blog post uses that approach: https://eager.io/blog/how-long-does-an-id-need-to-be/. For other objects there might still be useful data. Instead of /invitation/3jdix8jAJm you might have /invitation/myblog/[email protected]/u7pW, the last part being an auto-generated random component. The benefit is that the ID becomes self-explanatory (self-describing) and very nice for tracing through logs and the like. Of course, one has to be careful about not exposing anything exploitable.
jasim · 2019-04-12
When someone says HTML & CSS is terrible I ask them to design something better that lets you represent user interfaces that can adapt across multiple screen sizes, and allow complex layouts that Flexbox and CSS Grid makes possible. It is easy to criticize something if you don't have to worry how you would do it better. That said, HTML & CSS is just how the world currently is. It doesn't mean that it is the best possible way to do it. CSS could've been very different if not for many fortuitous events in history: https://eager.io/blog/the-languages-which-almost-were-css/ The best possible way to represent user interfaces is to represent them visually. Having to learn code to build UI is just today's limitation. While many have tried and failed to do better, this is still an open question. Today maybe a designer must understand HTML & CSS to fully embrace the medium. But that means they have to get out of their visual thinking mode, and look at letters on a screen and interpret them in their mind's eye. As programmers we're used to it, but it doesn't mean it is the best nor the only way to do it. So I'm all for articles like this that questions the status quo instead of accepting defeat and asking people to just get on with the program.
iamleppert · 2016-04-08
Looking around I see lots of people just blindly using UUIDs for everything. At a prior job, I had a boss who forced me to use UUIDs for everything, before we had even collected a single row of data. It hurts my pragmatism to solve a distributed systems problem before we even had a distributed system! Don't be a sheep and use UUIDs, rather than a simple integer primary key or composite key that is natural to the table. People say it's just an id, who cares? But I say people making these kinds of decisions are probably making other poor choices backed by something they read and don't understand. Here's a great article on locality and the need for uniqueness and why UUIDs should only be introduced when needed and to solve very specific distributed systems problems. The reality is almost all applications will never need to have multiple concurrent writers. https://eager.io/blog/how-long-does-an-id-need-to-be/?hn
adamschwartz · 2014-11-10
No doubt, at a certain point it does come down to aesthetic preference. Using a border-bottom to achieve the look you’re describing is totally a valid preference. One potential advantage to the border-bottom technique is the way it can be used to make a link stand out. In fact, I use this link styling on my personal website for that reason [1]. (Note: when using a border-bottom, I’d recommend using a slightly larger line-height so that the line still seems associated with the text above it and not the text below it. This is one of the pitfalls described in the original Medium post [2].) Unfortunately, aside from iOS 8, normal text-decoration underline links have the descender crossing problem. I absolutely took this into consideration when designing SmartUnderline. SmartUnderline literally only applies itself to links with text-decoration underline, nothing else. It even tries to ensure other conditions which make the transformation favorable (display inline, solid background color, etc.). Ultimately I think the before-and-after on the SmartUnderline website tells the best story [3]. No doubt one may appreciate other, very different link styles. (For example, just using a different text color to denote _link_ is a perfectly valid and commonly used technique.) But if you’re using text-decoration underline already, this just makes those links look better. I think blogs, news articles and wikis are some of the primary examples of where these links look best. Anywhere…
throw6622 · 2022-02-05
This has an interesting intersection with Telstar, the first communications satellite: http://eager.io/blog/telstar-and-starfish-prime/
krapp · 2021-10-02
While support for multiple languages was the plan all along (the spec for the script tag mentions "text/tcl" along with javascript and vbscript)[0,1], browser makers never bothered to support other languages when javascript became the popular choice, apart from Microsoft with VBScript and Chrome with Dart, whose languages were vendor specific. Eventually, people just compiled code written in other languages into Javascript, treating it more as an "assembly language for the web"[2] than a language directly coded in, and the script type attribute was officially deprecated from the script tag in HTML5. [0]https://www.w3.org/TR/REC-html40/interact/scripts.html [1]https://eager.io/blog/a-brief-history-of-weird-scripting-languages/ [2]https://www.hanselman.com/blog/javascript-is-assembly-language-for-the…
rasz · 2021-09-01
This looks familiar, pre CSS 1993 familiar in fact http://1997.webhistory.org/www.lists/www-talk.1993q4/0264.html https://eager.io/blog/the-languages-which-almost-were-css/ Pei Y. Wei ([email protected]) of ViolaWWW graphical browser: (BODY fontSize=normal BGColor=white FGColor=black (H1 fontSize=largest BGColor=red FGColor=white) )
munawwar · 2020-10-01
Don't know about the OP, but there are some rarer cases, like dynamodb, where more indexes means more $, you can avoid creating a timestamp column & new index by having a sortable id column. But even without the need to sort by id, one of the advantage is that sequential ids makes it easier for databases to fetch data, as data stored ends up being more sequential in disk as well. More reading on that: - https://eager.io/blog/how-long-does-an-id-need-to-be/#locality - https://www.percona.com/blog/2019/11/22/uuids-are-popular-but-bad-for-…
jccalhoun · 2020-05-11
It would be interesting to see what would have happened with the internet had a few different decisions been made along the way. if a spec had been implemented differently or CSS or JS hadn't become the norm. https://eager.io/blog/the-languages-which-almost-were-css/
kryptiskt · 2018-10-25
For what could have been: "The Languages Which Almost Became CSS" https://eager.io/blog/the-languages-which-almost-were-css/
fcolas · 2018-10-05
Nice read. And a related reading is "how we impersonate users" [1] by eager.io (not related to them). I particularly like their sudo-button--smart [1] https://eager.io/blog/how-we-impersonate-users/
hoppelhase · 2018-07-27
Some posts in this blog under the "Development" tab are pretty nice. https://eager.io/blog/
pfraze · 2017-06-27
This is the result of Cloudflare's eager.io acquisition. You might remember eager from some of their really awesome blog posts on the histories of various techs [1][2]. 1 https://eager.io/blog/a-brief-history-of-weird-scripting-languages/ 2 https://eager.io/blog/history-of-email/
dangrossman · 2016-12-01
> It was Marc Andreessen who suggested our current method based on what he had already implemented in Mosaic... https://eager.io/blog/the-history-of-the-url-path-fragment-query-auth/…
_kerbal_ · 2015-03-30
The site is currently down for me (503). While we're talking about boring technology, please consider hosting your blog on a static file host + CDN. It will be faster, easier to maintain, and virtually impossible to take down. [0] https://eager.io/blog/build-static-websites
ademarre · 2015-02-12
jamesgagan · 2014-12-01
another recent blog post on this topic with some nice examples: http://eager.io/blog/smarter-link-underlines/
ddebernardy · 2014-11-12
The library's showcase page has the key bits imo: > - It makes an assumption about selection color, which is OS- and browser-dependent. > - Each smart-underlined link has 12 text-shadows drawn underneath it, which could potentially have performance penalties on mobile or older devices. https://eager.io/showcase/SmartUnderline/ (Imho, the two points introduce enough risks and reasons to not use it and wait for OS- or browser-level updates instead.)
bkirwi · 2014-10-31
This is absolutely right. I suspect some people do this because Twitter went out of their way to get 64-bit ids[0] -- but Twitter did this in large part because they made the mistake of baking that bit-length into the protocol back when they were tiny, and since they don't control all clients, it's very difficult to change. For comparison, here's an eager.io URL: https://eager.io/app/ZYBle8qUhKFJ And here's an equivalent with UUID in base-64: https://eager.io/app/b8tRS7h4TJ2Vt43Dp85v2A It's a rare application for which those differences matter. (NB: I don't know anything about eager.io... it might be important for them!) [0] https://blog.twitter.com/2010/announcing-snowflake
leepowers · 2014-08-18
Couple of questions and observations. Referencing an app store page: https://eager.io/app/uY5Di0FqBVvn 1) Why install Bootstrap from Eager? As a developer I can pretty easily find, download and use the Bootstrap from getbootstrap.com 2) Not that I don't trust you but .... how can I verify that the Bootstrap source files haven't been tampered with in some way? 3) Related to #2 - Can anyone upload an app? How do you verify that an app doesn't contain XSS or other vulnerabilities? 4) Do you always load the latest version of Boostrap? That could be a problem. If I built a site using a 3.x version and automatic update to 4.x could be disastrous for the layout of a site.
billyhoffman · 2021-07-20
Straw men are not helpful. I never suggested removing a language used by millions of people. Let me be more specific: Pruning support for old formats and protocols is a feature, not a bug. Let's pick something else from this golden age of "browsing HTML pages via the FTP protocol" that people on this thread keep professing: XBM images, the very first image format ever supported by browsers, and used when Marc Andreessen literally invented the IMG tag [0]. XBM is a crazy simple image format [1]. Yet, because it is essentially C code that defines a buffer size and then gives you a char array, caused security bugs over and over [2] in all major browsers. Since virtually no one was using XBM images, the browsers all removed support for it [3]. The browsers removed code that was already written, and abandoned functionality that had already existed, because it reduced attack surface supporting something that virtually no website was using. Exactly like FTP support. 0 - https://eager.io/blog/to-what-extent-did-marc-andreessen-invent-the-in… 1- https://en.wikipedia.org/wiki/X_BitMap 2- https://www.cvedetails.com/google-search-results.php?q=xbm+image&s… 3- https://en.wikipedia.org/wiki/X_BitMap#Support
not_knuth · 2020-12-23
Well, CSS is pretty old, and as such old, backwards-compatible specs do, it's utterly bloated. I tend to use CSS Grid and Flex almost exclusively, since they are a lot more intuitive than the block and inline combo. But then again if you look at the origin of CSS, it all makes sense. CSS was never developed to be used for app-like interfaces. At it's inception, it was intended as a style sheet for documents (specifically scientific documents). The original idea was that everybody would have their own CSS which they could then apply to HTML locally. Interestingly, 30 years later, HTML and CSS are used for almost anything but scientific documents and nobody uses a personal style sheet. The technology is really not well suited for the cases it is most often used for today and there is a superb blog post on the topic that has featured several times on HN: The Blog Post: https://eager.io/blog/the-languages-which-almost-were-css/ HN 4 years ago: https://news.ycombinator.com/item?id=11994405 HN only 4 months ago: https://news.ycombinator.com/item?id=24118151
afschwartz · 2014-08-18
Hey, I‘m Adam, and I designed this page. Thank you so much for this feedback. When building this page, I definitely struggled with what to put where. The Steps 1, 2, 3 are hopefully clear about what action to take, but I agree that more motivation at the top would be great. Here’s the thing we believe can be made easier: When my co-founder and I built Pace [1], Offline [2], Shepherd [3], etc. [4], one of the problems we came across was that while we could get stars on GitHub, non-developers struggled to get the benefit from these projects. Often, the step they struggled with was adding the `<script>` or `<link>` tags to their page, and configuring any of the options these apps/widgets/plugins had. Our About page [5] explains something to this effect, but bringing some of that motivation to this landing page seems like a good place to start. Thanks again! I hope this was helpful. Perhaps in addition to: “Anything you can include in a <script> tag can be installed through our UI.” We could add: “Example: You wrote a JavaScript library which works by having the user paste a `<script>` tag in their page. With Eager, instead you users can install your library by simply clicking a button.” [1]: http://github.hubspot.com/pace/docs/welcome [2]: http://github.hubspot.com/offline/docs/welcome [3]: http://github.hubspot.com/shepherd/docs/welcome [4]: http://github.hubspot.com [5]: https://eager.io/about

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close