Remy Sharp is a web developer who writes about JavaScript, browser tooling, command-line workflows and running side projects.
HN links it for practical web development posts and tooling workflows, such as his devtools-centered workflow; commenters give little direct opinion.
Hey there,
I developed the site but we have our amazing head of design, Skyler, to thank for the beautiful layout.
The First1000 site is entirely native javascript/html5/css3. No jQuery or frameworks. I believe that frameworks are fantastic but only if you are utilizing their full potential. In the past I've included jQuery for random bits and pieces but I found myself coding around it and I really don't like including a library where I only use a couple of its functions.
Here are some of the cool things we included.
Multiple background images in CSS3. This is a beautiful thing. We should rarely have to nest divs inside divs to achieve a layered background effect now.
Transitions (Webkit, Mozilla, Opera etc have their own implementations) for most of the animations you see on the site. I found myself using the transiton-delay: property a fair bit too. This is really helpful as you can set a delay before the animation start point.
Using delays is how we make the flip cards start from the top left and gradually flip over to the bottom right. Each group of flipcards (diagonally) are given a different transition-delay.
We transition opacity, width/height, top/left positioned coords and background-colors.
We use Transforms to achieve rotation. Each card has a slightly different angle ranging from -3deg to 3deg. If I had NOT been using transforms then I imagine each card would have been a nightmare to implement at an angle like that. It would have taken forever and I would…
I love the look and feel that went into the design of Material here, but with respect to web components, we should be worried that Google is monopolizing the future of the web. See my comment below: https://news.ycombinator.com/item?id=7947119
It bugs me that Polymer is being marketed as "polyfills", since the term polyfill generally tends to connote something that fills in for an already agreed upon w3c standard that will appear in all user agents eventually. Whereas web components and shadow dom is still very much in the proposal/experimentation stage and has a ways to go before reaching standardization. There are still some disagreements to be resolved by all those that contribute code to the major user agents.
Calling polymer a polyfills library is misleading and an abuse of the intent of the term polyfill [0].
Also related: "Apple Removes Shadow DOM from Safari"[1][2]
[0] http://remysharp.com/2010/10/08/what-is-a-polyfill/
[1] http://trac.webkit.org/changeset/164131
[2] https://news.ycombinator.com/item?id=7243122
Look, I'll say this as an admitted domain hoarder myself, but:
The thing that sucks about namespaces is that there's no way to win. If people can own them without an ongoing cost, they'll go unused (think of people squatting really good social media usernames without activity on the account). If people have to pay an ongoing cost, there will be a lot of stuff where the cost-benefit to them of maintaining the domain part of those [Cool URIs] they picked doesn't make sense... so a lot of cool stuff has disappeared from the internet, especially the personal or non-commercial freely shared resources, leaving an ad-ridden wasteland behind.
So yeah, I do kinda think that people should have their own domains if they have enough internet presence to want to set up a Linktree, but way too many techie people take the drawbacks for granted.
[Cool URIs]: https://www.w3.org/Provider/Style/URI.html is the link everyone knows, but https://remysharp.com/2016/12/22/cool-uris-dont-change is the better one
Why not, instead, show an ellipsis in place of the majority of the subdomain leading up to the domain and increase opacity of the domain compared to subdomains and the pathname.
This is similar to what happens when the path is too long for the omnibox, but simply the effect of putting the domain as far left (in the omnibox) as possible.
i.e. instead of seeing:
[ www.mybank.com.credicards.wt3_segment_secure.login.html.evil-site.com ]
You see:
[ ...html.evil-site.com/ ] (where "...html." are semi-opaque).
I mocked up what I'm suggesting here: http://remysharp.com/2014/05/04/on-chrome-hiding-urls-to-protect-users-from-phishing/
It works on Android, yes.
However, sound is not supported on iOS or Android devices yet. The <audio> implementation on those platforms is unbelievably broken and there's not much I can do about it other than wait for Apple and Google to fix it.
This blog post does a good job at mentioning the problems with sound on iOS and how to work around a few of them. Android has basically the same problems:
http://remysharp.com/2010/12/23/audio-sprites/
Still, even with all those workarounds, you have a lot of lag (>0.5s) before a sound plays and you can only play one sound at a time. That's hardly suited for games :/
http://remysharp.com/2010/10/08/what-is-a-polyfill/
"Shim, to me, meant a piece of code that you could add that would fix some functionality, but it would most often have it’s own API. I wanted something you could drop in and it would silently work (remember the old shim.gif? that required you actually inserted the image to fix empty td cells – I wanted something that did that for me automatically).
I knew what I was after wasn’t progressive enhancement because the baseline that I was working to required JavaScript and the latest technology. So that existing term didn’t work for me."