skip to main content

Posts tagged “web”, page 2

  1. The China Cultural Clash
    stratechery.com

    Ben Thompson:

    I am increasingly convinced this is the point every company dealing with China will reach: what matters more, money or values?

    John Gruber summarizes Ben’s points really well:

    The gist of it is that 25 years ago, when the West opened trade relations with China, we expected our foundational values like freedom of speech, personal liberty, and democracy to spread to China.

    Instead, the opposite is happening. China maintains strict control over what its people see on the Internet — the Great Firewall works. They ban our social networks where free speech reigns, but we accept and use their social networks, like TikTok, where content contrary to the Chinese Community Party line is suppressed.

    Worse, multinational mega corporations like Apple and Disney are put in a bind — they must choose between speaking up for values such as the right to privacy and freedom of speech, or making money in the Chinese market.

    And Nilay Patel makes a great comparison:

    It’s not hard to understand that carmakers in the US market build to California emissions standards because they are the strictest - it’s the most efficient choice.

    Not a leap to think global companies will hold themselves to China’s speech restrictions for the same reason.

  2. The imitation game
    adactio.com

    Jeremy Keith:

    Jason shared some thoughts on designing progressive web apps. One of the things he’s pondering is how much you should try make your web-based offering look and feel like a native app.

    This was prompted by an article by Owen Campbell-Moore over on Ev’s blog called Designing Great UIs for Progressive Web Apps. He begins with this advice:

    Start by forgetting everything you know about conventional web design, and instead imagine you’re actually designing a native app.

    This makes me squirm. I mean, I’m all for borrowing good ideas from other media—native apps, TV, print—but I don’t think that inspiration should mean imitation. For me, that always results in an interface that sits in a kind of uncanny valley of being almost—but not quite—like the thing it’s imitating.

    People have been gleefully passing around the statistic that the average number of native apps installed per month is zero. So how exactly will we measure the success of progressive web apps against native apps …when the average number of progressive web apps installed per month is zero?

  3. Simplicity (II)
    bastianallgeier.com

    Bastian Allgeier:

    I have a simple rule of thumb when it comes to programming:

    less code === less potential issues

    This rule of thumb controls my own feelings towards a solution. It shouldn’t take 120 MB of code to uglify some JS. But maybe I’m wrong.

    In practice, this dependency hell has bitten me so often already that my life expectancy probably sank by 2-3 years. You want to build a JS file? Please update Webpack first. Oh, that new version of Webpack is no longer compatible with your Node version. Oh, your new Node version is no longer compatible with that other dependency. Oh, now you have 233 detected security issues in all your node_modules but you can’t fix them because that would break something completely unrelated.

  4. 5G Will Definitely Make the Web Slower, Maybe
    filamentgroup.com

    Scott Jehl:

    Faster networks should fix our performance problems, but so far, they have had an interesting if unintentional impact on the web. This is because historically, faster network speed has enabled developers to deliver more code to users—in particular, more JavaScript code.

    Ugh. Jeremy Keith comments:

    The longer I spend in this field, the more convinced I am that web performance is not a technical problem; it’s a people problem.

  5. The Myth of the Pixel Perfect Grid
    shkspr.mobi

    Terence Eden explains how different screen technologies, human biology, and fingerprint grease make “pixel perfection” a pointless goal:

    There is no grid. There never has been. You can align to theoretical pixels - but as soon as the image hits a physical screen, it will be adjusted to best fit reality.

    An obsession with pixel perfect rendering is futile.

    Every Layout expands on this idea, specifically as it pertains to CSS:

    Suffice it to say that, while screens are indeed made up of pixels, pixels are not regular, immutable, or constant. A 400px box viewed by a user browsing zoomed in is simply not 400px in CSS pixels. It may not have been 400px in device pixels even before they activated zoom.

    See also: Ian Mallett’s Subpixel Zoo: A Catalog of Subpixel Geometry.

  6. Styling Links with Real Underlines
    css-tricks.com

    Ollie Williams welcomes the new CSS properties for styling underlines:

    Finally we can demarcate links without sacrificing style thanks to two new CSS properties.

    • text-underline-offset controls the position of the underline.
    • text-decoration-thickness controls the thickness of underlines, as well as overlines, and line-throughs.

    I’ve been working on a blog post about this topic, and Ollie does a good job of covering some of the points I want to make. But I want to go further and explore implementation quirks, the details where the new properties don’t quite go far enough, and make a case for why underlines shouldn’t be pixel-aligned.

  7. Introducing caniemail.com
    caniemail.com

    Rémi Parmentier:

    Last march, I wrote a proposal for Can I email, a website similar to caniuse.com dedicated to support in email clients.

    Today, barely six months after, I am really happy and pleased to announce that with the help of my colleagues and members of the email geeks community, we’re officially launching caniemail.com.

    Wow, this was sorely needed.

  8. Less Data Doesn’t Mean a Lesser Experience
    timkadlec.com

    Tim Kadlec explores strategies for dealing with the Save-Data header without degrading the experience, because not every user that enables it will be aware of the potential consequences:

    The possibilities are endless. If you treat data as a constraint in your design and development process, you’ll likely be able to brainstorm a large number of different ways to keep data usage to a minimum while still providing an excellent experience. Doing less doesn’t mean it has to feel broken.

  9. What I Like About Eleventy
    daverupert.com

    Dave Rupert is, like me, a longtime Jekyll user. He’s trying out Eleventy — which I’m super curious about — and getting good results. The massive performance difference when compared to Jekyll is very compelling to me, but so is the flexibility to write little bits of code to extend functionality without much fuss:

    On the Cathedral vs. Bazaar spectrum, Eleventy operates more on the bazaar end. By that I mean it doesn’t prescribe much. You want a bunch of filters? Write your own, Eleventy only comes with two. You want multiple layouts? Write a bit of JS to get those registered. Did you remember to setup an .eleventyignore? Even the Sass and JS pipelines are BYO.

  10. IndieWeb Link Sharing
    mxb.dev

    Max Böck:

    Posting a new short “note” on my site currently requires me to commit a new markdown file to the repository on Github. That’s doable (for a developer), but not really convenient, especially when you’re on the go and just want to share a quick link.

    It me.

    The new link sharing basically has three main parts:

    • a small Javascript bookmarklet to act as a “share button”
    • a form that collects and sends the shared link data, and
    • a serverless function to process it and create a new file.

    Gotta get on this train! I’m already working on it, though my solution will be based on the Micropub spec. But that live preview is sweet and now I want it too.

  11. Ooops, I guess we’re full-stack developers now.
    full-stack.netlify.com

    Chris Coyier’s latest talk puts all the complexity of modern front-end development in perspective:

    All the very huge responsibilities front-end developers already have:

    • Pulling of the design
    • Making the design part of a system
    • Making sure it is accessible
    • Worrying about the performance
    • Testing things across browsers
    • Testing things across devices
    • Sweating the UX

    Oh hello, big pile of new responsibilities

    • Component-driven design, designing our own abstractions
    • Site-level architecture
    • Routing
    • Fetching our own data
    • Talking to APIs
    • Mutating data
    • State management

    Oof.