Tag: javascript
-
Making It Boring
Jeremy Wagner proposes that the Web should be made more boring to make it usable by more people, more of the time, and faster. With Dan's comments.
-
Using JSLint For Evil - YouTube
JSON inventor Douglas Crockford explains why he gave permission for the reference implementation of JSLint to be used for evil.
-
Cheating Hangman
Dan implements "Cheating Hangman", perhaps the cruellest hangman game you'll ever play.
-
Counting Down
I wasn't sure that my whiteboard at the Bodleian, which reminds my co-workers exactly how many days I've got left in the office, was attracting as much attention as it needed to. If I don't know what my colleagues don't know about how I do my job, I can't write it into my handover notes.
So β¦ -
The Real Dark Web
An analogy between dark matter and the huge crowd of web developers who are using such "boring" technology stacks.
-
Browsers are pretty good at loading pages, it turns out
Carter Sande observes that MDN ran faster on old-fashioned hyperlinks than it did with Javascript background loading, and explains why.
-
JavaScript frameworks are better for accessibility (and other myths)
Chris Ferdinandi counters a Twitter user's argument that web frameworks solve a plethora of common web development challenges, and he's right.
-
Reply to: A modern font loading strategy with the vanilla JS FontFaceSet.load() method
Chris Ferdinandi's suggestion of using FontFaceSet.load() to prevent FOIT seems overkill. What's wrong with font-display: swap;?
-
The problem with single page apps
Chris Ferdinandi shares his concerns about SPAs, and I echo with my own.
-
Going Critical
A fabulous and interactive exploration of network interactions. Treat as a longread (with some opportunities to play as you go along).
-
JavaScript and the mobile-only user
Chris Ferdinandi provides further arguments about why Javascript must be considered a progressive enhancement.
-
Why do people choose frameworks over vanilla JS?
This week on Twitter, Maxime Euzière asked why people choose large frameworks over vanilla JS. There are quite a few reasons. Some of them are really valid. Many of them aren't.
-
Yet Another JavaScript Framework
...
It is impossible to answer all of these questions simply. They can, however, be framed by the ideological project of the web itself. The web was built to be open, both technologically as a decentralized network, and philosophically as a democratizing medium. These questions are tricky because the web belongs to no one, β¦ -
How many people are missing out on JavaScript enhancement?
few weeks back, we were chatting about the architecture of the Individual Electoral Registration web service. We started discussing the pros and cons of an approach that would provide a significantly different interaction for any people not running JavaScript.
"What proportion of people is that?β an inquisitive mind asked.
Silence.
We didnβt really have any idea how many β¦ -
Minimal Google Analytics Snippet
<script>
(function(a,b,c){var d=a.history,e=document,f=navigator||{},g=localStorage,
h=encodeURIComponent,i=d.pushState,k=function(){return Math.random().toString(36)},
l=function(){return g.cid||(g.cid=k()),g.cid},m=function(r){var s=[];for(var t in r)
r.hasOwnProperty(t)&&void 0!==r[t]&&s.push(h(t)+"="+h(r[t]));return s.join("&")},
n=function(r,s,t,u,v,w,x){var z="https://www.google-analytics.com/collect",
A=m({v:"1",ds:"web",aip:c.anonymizeIp?1:void 0,tid:b,cid:l(),t:r||"pageview",
sd:c.colorDepth&&screen.colorDepth?screen.colorDepth+"-bits":void 0,dr:e.referrer||
void 0,dt:e.title,dl:e.location.origin+e.location.pathname+e.location.search,ul:c.language?
(f.language||"").toLowerCase():void 0,de:c.characterSet?e.characterSet:void 0,
sr:c.screenSize?(a.screen||{}).width+"x"+(a.screen||{}).height:void 0,vp:c.screenSize&&
a.visualViewport?(a.visualViewport||{}).width+"x"+(a.visualViewport||{}).height:void 0,
ec:s||void 0,ea:t||void 0,el:u||void 0,ev:v||void 0,exd:w||void 0,exf:"undefined"!=typeof x&&
!1==!!x?0:void 0});if(f.sendBeacon)f.sendBeacon(z,A);else{var y=new XMLHttpRequest;
y.open("POST",z,!0),y.send(A)}};d.pushState=function(r){return"function"==typeof d.onpushstate&&
d.onpushstate({state:r}),setTimeout(n,c.delay||10),i.apply(d,arguments)},n(),
a.ma={trackEvent:function o(r,s,t,u){return n("event",r,s,t,u)},
trackException:function q(r,s){return n("exception",null,null,null,null,r,s)}}})
(window,"XX-XXXXXXXXX-X",{anonymizeIp:true,colorDepth:true,characterSet:true,screenSize:true,language:true});
</script>
Minimal Analytics
This is cute: a Google Analytics code snippet that results in a payload about a fiftieth of the size of the β¦





