loading...

Last 250 Comments

re: 60fps with Functional Programming in idle time
Totally makes sense to me. Ok I'll sort it over the next few...
re: 60fps with Functional Programming in idle time
Ok that keyBy might be an issue if the data is huge. You/I/we...
re: 60fps with Functional Programming in idle time
Hey not used it, but looks useful :) Are you letting it parse...
re: React apps without installing anything
This is really cool I think. A great way to get going and a...
re: JavaScript: How to Remove Duplicate Values from Arrays
Yes, nice that good syntax has great performance haha! Not a...
re: JavaScript: How to Remove Duplicate Values from Arrays
Surely Set must be faster - the whole thing is an O(N) operat...
re: 60fps with Functional Programming in idle time
I've never used RxJS, but I'm beginning to see some overlaps....
re: Build an amazing Job Search App using React
A huge effort went into that, for a new dev the step-by-step ...
re: Practical Functional Programming in JavaScript - Side Effects and Purity
Inspired by this article, I fiddled around to enable a basic ...
re: 60fps with Functional Programming in idle time
Article on how js-coroutines works: ...
re: An angle on React state you haven't seen before...
I really didn't like React before "hooks", perhaps this techn...
re: Using Array.prototype.includes() vs Set.prototype.has() to filter arrays
Nicely done with the examples, also one of my pet peeves n^2 ...
re: Monthly reflection - June 2020
Now that is a pretty successful month!
re: Practical Functional Programming in JavaScript - Side Effects and Purity
That has to be the clearest description of tap() I've seen. T...
re: My open-source project hit 2k stars
It's just a brilliant thing.
re: Understanding Hoisting
It's a really nice article :)
re: Understanding Hoisting
This is indeed a very clear description - I would say though ...
re: Remove Duplicates In Array
It is working in this case, those objects are each unique. I...
re: Remove Duplicates In Array
That is significantly slower though, the Set uses an O(1) loo...
re: Open Source Sustainability
Very interesting, I just can't see me convincing my CFO to pa...
re: What is the decorator pattern? And how to implement it by JavaScript?
I like this! Looking at the code and not testing it - I'm won...
re: async/await: under the hood
Totally agree, the concurrency is only in the fact that there...
re: Welcome Thread - v80
Hi Melissa - just remember it's the ideas behind programming ...
re: What are some examples of "productive laziness"?
Well, I guess you should always write as little code as possi...
re: Workspace Wednesday: Show off your computer and desk setups!
Did I just suggest I have a "far-right debugger"??? - I want ...
re: JavaScript Security Pitfalls
I'm really looking forward to this series.
re: Train wagons 🚃.🚃.🚃
You can also write the second approach without promises (beca...
re: Workspace Wednesday: Show off your computer and desk setups!
Lol, no it's more that I can focus on two screens at a time! ...
re: Workspace Wednesday: Show off your computer and desk setups!
I finally got my 4th screen setup last week. Needed somethi...
re: Why I'm learning BSL. ✊
I needed to do this with my eldest daughter too (who is now 1...
re: What is the Game of Life?
I love Life as a principle. I made a rather crazy version fo...
re: Generators mon amour
Yep I love generators and use them a lot in js-coroutines but...
re: 8 Steps to Get 100 Stars on GitHub
Done haha.
re: how not to use reduce
So in my first example of making an index, I used a map to cr...
re: how not to use reduce
Seems like deciding to be 20% to 70% slower for readability i...
re: how not to use reduce
Hmmm, I totally agree with the first few - but the last 3 you...
re: A JSDoc in TypeScript's Clothing
See in Webstorm/IntelliJ JSDoc is just autofolded away for me...
re: Most Esoteric Language You've Used
Woo Rockstar is hilariously cool. I think my weirdest assemb...
re: Agile and Scrum companies
I think you also need to consider that there is a movement go...
re: A JSDoc in TypeScript's Clothing
At the beginning TS was a way of being able to code with fanc...
re: A JSDoc in TypeScript's Clothing
When I first came to JS from C# I used (what is now) github.c...
re: Git Concepts I Wish I Knew Years Ago
Thanks for this, really useful, I've used git for years - but...
re: An angle on React state you haven't seen before...
Just to point out that this library does also expose the wild...
re: 8 Steps to Get 100 Stars on GitHub
Thanks! :)
re: To The Young Female Software Engineer With Her First Job Offer
Just wanted to say how important I think it is that people sh...
re: How long does it typically take to be productive in a new job?
I completely agree - one of the reasons I've been writing art...
re: How YOU can learn enough RegEx in JavaScript to be dangerous
I know that pain (and I've bookmarked this article for the ne...
re: Bootstrap 5
Underlining my point above - when I mentioned this before Ben...
re: Bootstrap 5
Wikipedia has 10% of users on IE11 and I think that's probabl...
re: Bootstrap 5
Agreed, I won't be able to release any apps using it, given m...
re: I built an online code editor
That is very very cool :)
re: I just learned: JavaScript tricks you into thinking it has keyword arguments.
Those aren't keyword arguments, you are creating variables in...
re: 8 Steps to Get 100 Stars on GitHub
Great advice, I'm going to add a nice logo to js-coroutines a...
re: Show off your pet(s) :-)
That would be Mr. Ed Ed :)
re: Show off your pet(s) :-)
He's a lionhead rabbit - or maybe just some fluff.
re: I built an online code editor
What a wonderful thing that is... Can see me getting my daugh...
re: A Look at Server Sent Events
WebSockets would have that problem (and probably more as my l...
re: A Look at Server Sent Events
It's probably worth me mentioning that there is a bit of an i...
re: Key Headaches in TypeScript
I think you put your finger on my problem here. I understand...
re: What harmful habits do developers pick up over time?
Becoming passive-aggressive on pull request reviews because i...
re: Key Headaches in TypeScript
As your journey continues, I'm beginning to wonder why again....
re: Implementing Conway’s game of life.
Ugh I really need to understand more functional programming! ...
re: How can JavaScript Error be both a function and a class?
Yes you can replicate it yourself, just check if this is an i...
re: License, what did I just do to my software?
That said, my head of legal had a bit of a wobble when I poin...
re: License, what did I just do to my software?
I believe pretty strongly in MIT licensing; I use libraries a...
re: javaScript – Replace all occurrences of a forward slash in a string
Nicely put :)
re: Sometimes JavaScript arrays don't compare
Well said! This is the danger in things that "appear" to work...
re: Implementing Conway’s game of life.
Nice article! Sadly John Conway passed away of Coronavirus e...
re: Website feedback
Looks really good to me, couple of comments: 1619 cover is ...
re: Daily Challenge #263 - Reverse Words
function reverseWords(str) { return str.replace(/[^\s]+/g...
re: Seven things to start saying RIGHT NOW to become a Tech Lead
I love it. I've immediately started event-mining my code bas...
re: What is the balance between learning and posting content?
For me giving back is very important. I use open-source libr...
re: Workspace Wednesday: Show off your computer and desk setups!
My screen addiction just keeps on growing. . Capacity for 1 ...
re: Why I love Javascript
That's true... I come from a C# background so TypeScript look...
re: The first UI Kit for Bootstrap 5! Using Material Design 2.0
Could you give me the highlight points about why Bootstrap 5 ...
re: Why I love Javascript
I understand typescript for big projects and wider teams to k...
re: What's you favorite hobby outside programming?
I hike and, when I can, I sail. I need something physical and...
re: IDEA Plugins for the Contemporary Ninja
Torchie Flow sounds very interesting....
re: The Unbearable Whiteness of Coding
I hear you, here's my additional clarification. I have women...
re: String.prototype.search(): a method I wish I knew about a long time ago
Symbol.search huh - I do like that syntax.
re: The Unbearable Whiteness of Coding
I just think we have to be careful about statistics. I hope ...
re: HowTo: Custom React localStorage Hook ⚓
Ah I was thinking of adding and event handler for window 'sto...
re: doYoda() => {...}
I am totally borrowing that haha
re: The Unbearable Whiteness of Coding
What worked for us in the UK (specifically South Wales, which...
re: React.js Dropin' Replacement?
Try this: preactjs.com/
re: HowTo: Custom React localStorage Hook ⚓
I would just say that your hook doesn't actually update when ...
re: How I chose a programming language and beat bad habits
Yeah absolutely, if I came across as questioning your motivat...
re: How I chose a programming language and beat bad habits
That is a very good point :)
re: Hello! Thanks for a crazy first month on DEV :)
Thanks :) It's odd to look back sometimes (anyway I kinda li...
re: How I chose a programming language and beat bad habits
A lot of other very useful comments already, so this may echo...
re: From idea to public in 3 hours
Yep, I need that! Great work and that's what you call an MVP!
re: The State Of Progressive Web Apps Adoption By Developers
I'm still banking on PWAs for a bunch of business to consumer...
re: Hello! Thanks for a crazy first month on DEV :)
Thanks! I think being an employer and a member of the team a...
re: Hello! Thanks for a crazy first month on DEV :)
Yeah, that one was a disaster. Short timescale, no source ma...
re: Hello! Thanks for a crazy first month on DEV :)
I'm glad to hear that! I'm always keen to not reinvent thing...
re: Hello! Thanks for a crazy first month on DEV :)
Thank you!
re: Hello! Thanks for a crazy first month on DEV :)
Ben, firstly thanks for saying that, really appreciated. You...
re: Hello! Thanks for a crazy first month on DEV :)
Thanks John, you have been hugely supportive and I've also le...
re: The Aviator🎮  -  Test your coding and logic skills with a web game
Another brilliant piece of work Paolo.
re: Fired for Agility
Oh I feel your pain. I've hired teams that want to spend hou...
re: How to be productive as a programmer with ADHD
Just installed Self Control - to keep me off DEV for a while!...
re: How I went from a Retail Assistant at 17 to Landing a Developer Role at 19
Great story and excellent storytelling. Keep telling yoursel...
re: Default Props in React/TypeScript
I did make it to the end, but think I'd missed that you were ...
re: Default Props in React/TypeScript
Just for reference, I'm hoping you find a way around this, or...
re: Unconditional Challenge: FizzBuzz without `if`
Slightly shorter without bothering to call out for variable p...
re: Unconditional Challenge: FizzBuzz without `if`
function map(compare, say, next = v => v) { return fun...
re: This is my first project! Please give feedback
Hey that's nice! As Vincent mentioned the only thing I'd also...
re: what do you think about Antd design ?
No experience of Antd, but I use (and love) Material UI.
re: When Is It Time To Kill Your Pet Project?
It's a shame when you've invested a lot of time into somethin...
re: How to prove you are a programmer in one sentence?
I thunk therefore I am.
re: Real world Javascript map/reduce, solving the Poker Hand problem
As mentioned in my comment above, the initial challenge had n...
re: Is reduce() bad?
Just to say in the example you give, this would be faster tha...
re: 7 Useful Javascript Tips
Nice - I learned one there. I've mostly used |0 to floor num...
re: Inversion Of Control: Pt 0 - Introduction
That's great, I will be sure to be referring to SOLID given t...
re: What are the big differences between working for a "tech company" and being a dev for a "non-tech company"
I've been a founder of technology startups pretty much my ent...
re: How software can be racist (and what you can do to stop it)
To make a point of discussion: are you hiring a diverse team ...
re: A peculiar argument regarding accessibility
This is a very interesting subject and a very valuable perspe...
re: Daily Challenge #259 - Duplicate Encoder
Not that slow :) Better than anything that searched/scanned o...
re: VSCode : When Goto Definition just Peeks
Nice, that was annoying me haha!
re: What do you listen to when writing code?
Yeah me too - distant thunderstorm or ocean waves as a first ...
re: On Coding, Ego and Attention
No but I will :)
re: Remove A Specific Element From An Array In Javascript
I'd just point out that if you were trying to remove elements...
re: Real world Javascript map/reduce, solving the Poker Hand problem
The original challenge specified no low straights from the Ac...
re: What's your most embarrassing coding story?
As long as you can do zero downtime I agree! That's often th...
re: Real world Javascript map/reduce, solving the Poker Hand problem
Thanks! Yeah that's fair on the ternary. I'll adjust it.
re: Why to not support Internet Explorer
My point is that lots of things, like LinkedIn, totally suppo...
re: Daily Challenge #258 - Ranking Poker Hands
Real world Javascript m...
re: What was the first programming language you learned?
ZX81 Basic then Z80 assembly language for me. C then C++ a li...
re: Daily Challenge #258 - Ranking Poker Hands
function PokerHand(hand) { this.hand = hand } PokerHand....
re: What's your most embarrassing coding story?
Well yeah, ummm, I was updating the thing that stopped notifi...
re: What's your most embarrassing coding story?
So probably for me the time I tried an update at 4am, got the...
re: Why to not support Internet Explorer
Ummm. Your screen shot has IE on it...
re: Why to not support Internet Explorer
Yeah I mean what developer goes anywhere on IE lol. I'd neve...
re: On Coding, Ego and Attention
What an excellent article, thanks for that. I completely agr...
re: Why to not support Internet Explorer
Totally with you on that. If you can control the start of th...
re: Why to not support Internet Explorer
Simple answer for me is: users. 20%+ of my users. Still 10%...
re: Do you have a university degree?
I don't have a degree. It can make it harder to get employed...
re: JavaScript Concurrency: Avoiding the Sequential Trap
I'd just like to add that I recently launched js-coroutines w...
re: 33 Most popular JS repositories on GitHub in May 2020
A shameless self promotion, but js-coroutines hit jsdotgit tr...
re: Not an "Easy" Algorithm: Rotating an Array, Three Ways
Yeah immer.js allows you to mutate arrays and then it works o...
re: Not an "Easy" Algorithm: Rotating an Array, Three Ways
Glad you like it :) Honestly only do that when it matters tho...
re: Not an "Easy" Algorithm: Rotating an Array, Three Ways
It's probably the game programmer in me coming out. Don't al...
re: Not an "Easy" Algorithm: Rotating an Array, Three Ways
I guess my point was that the array is a specific data struct...
re: Is JavaScript's .shift() Method a Performance Boost?
Yeah we can do it without spread - but now it looks nicer in ...
re: What sourcery is this?
This is a reminder for me that I really do need to understand...
re: Is JavaScript's .shift() Method a Performance Boost?
Hey just to point out that shift itself is a bit of a pain do...
re: Not an "Easy" Algorithm: Rotating an Array, Three Ways
A good point, one of those if you knew the actual problem you...
re: What's your ideal job / who is your ideal employer?
Yes for me, the mission is important. Not the linting standa...
re: Interview Qs Decoded - # 2
Ah well I'd have made that mistake as well then :) Fair enoug...
re: Not an "Easy" Algorithm: Rotating an Array, Three Ways
I would have though the shortest version of (1) would be: ...
re: What's your ideal job / who is your ideal employer?
Yeah I'm fascinated to get all the opinions. Thanks for writ...
re: What's your ideal job / who is your ideal employer?
I do hate the entire principle of "I'm your boss so I know be...
re: What's your ideal job / who is your ideal employer?
Couldn't agree more. Although not having seen my team in mon...
re: To WASM or not to WASM?
That is very interesting. To undertake the re-write project,...
re: What's your ideal job / who is your ideal employer?
John, wow thanks for such a detailed response! I may add mor...
re: What's your ideal job / who is your ideal employer?
That's always been one of my key drivers. If we stand still,...
re: What's your ideal job / who is your ideal employer?
Agreed, rapport is vital - yep and trust in that pay packet!
re: Feeling a little discouraged
It's a very worrying time. I can imagine that "what-ifs" are...
re: Interview Qs Decoded - # 2
It's an interesting problem because it drives for a more opti...
re: Daily Challenge #257 - Halving Sum
const half = n => n > 0 ? n + half(n>>1) : n
re: TabNine - Put your coding speed to the next level
Well it's active in my Markdown - offering suggestions, which...
re: TabNine - Put your coding speed to the next level
Yeah I'm not sure why it's autocorrecting Markdown - on Webst...
re: TabNine - Put your coding speed to the next level
Well after your article I decided to try it out. Won't be fr...
re: What languages and tools do you use that spark joy?
If it's a tool: for me it is probably Wallaby.js - realtime a...
re: Daily Challenge #256 - How Many Are Smaller Than I?
const smaller = arr => arr.reduce((c,a,i)=>{ for(le...
re: Rethinking responsive Webdesign
Ok sure, when I get a moment I'll go rework me recently writt...
re: Rethinking responsive Webdesign
Count me in, anything I can do to help let me know.
re: Rethinking responsive Webdesign
Yeah I was looking at the polyfill for custom elements - not ...
re: Rethinking responsive Webdesign
Really interesting work!
re: Rethinking responsive Webdesign
Will that work with a resize observer polyfill? I'm using th...
re: Vanilla JavaScript Check if Date is in the Past
Just a point - your routine has a side effect of actually mod...
re: React Project Structure Best Practices for Scalable Application
Yeah just for reference: webpack et al statically analyse the...
re: js-coroutines passes 100 GitHub stars, gets own website, API docs, typings + more examples
That's great! Very happy to have people just use the princip...
re: How much coffee do you drink?
Since we went into lockdown and I finally had to invest in a ...
re: At what age did you get your first dev job?
Yeah it's been a roller coaster :) Lived in 6 countries, visi...
re: At what age did you get your first dev job?
I was 15 when I started my first game development business an...
re: The Beginning of the End ? Deno vs Node.Js
Well I'm not a freelancer and I spend a great deal of time on...
re: JavaScript Execution Context Explained: Once and for All
Very nice article. Thanks.
re: Daily Challenge #254 - The Vowel Code
Very nice
re: The Beginning of the End ? Deno vs Node.Js
The decision not to support npm and the existing huge collect...
re: Name a Non-Programming 📖 Book that will Make you a Better 👨‍💻👩‍💻 Programmer
Blink by Malcolm Gladwell - because we need to know when to t...
re: Server Sent Events are still not production ready after a decade. A lesson for me, a warning for you!
It's a very good point. We serve HTTP/2 (via AWS Cloud Front...
re: Copying objects in JavaScript
The great thing about rfdc is that it super quickly clones re...
re: Server Sent Events are still not production ready after a decade. A lesson for me, a warning for you!
Yes we see that all the time too on passwords. That and the ...
re: Server Sent Events are still not production ready after a decade. A lesson for me, a warning for you!
Hmmm. Well they wouldn't work well for notifications in your...
re: Server Sent Events are still not production ready after a decade. A lesson for me, a warning for you!
So it basically means testing a "landing server" with an incr...
re: How to process heavy workloads AND animate at 60fps in Vanilla JS, any Framework or React Native:
So the animations use requestAnimationFrame - the key thing b...
re: Server Sent Events are still not production ready after a decade. A lesson for me, a warning for you!
Hey John, we are using Bull and moving to Rabbit on the back ...
re: How can I read a local JSON file in HTML/JavaScript?
getJSON is using XHR. So is fetch. There must be a server.
re: June 5th, 2020: What did you learn this week?
I built my first React Native app :) (and shortly after relea...
re: There May Not Be a Better Way to Effortlessly Improve Code Quality than Using Prettier Code Formatting
Ah I'm going back to the linting wars my team had in 2019. ...
re: There May Not Be a Better Way to Effortlessly Improve Code Quality than Using Prettier Code Formatting
About the only thing you can configure in Prettier is "no sem...
re: How can I read a local JSON file in HTML/JavaScript?
So you could run a super simple local file server? One of th...
re: 60fps JS while sorting, mapping and reducing millions of records (with idle-time coroutines)
Ok, it works :) js-coroutines 2.1.40 - very recent version o...
re: 60fps JS while sorting, mapping and reducing millions of records (with idle-time coroutines)
Ok cool - I looked after your comment. It appears that I can...
re: Daily Challenge #253 - Sort Sentences Pseudo-alphabetically
result = input=> (input = input.split(' '), [...input...
re: When Does Arrow Function Become Useless?
Agree on the first one, an arrow function isn't called with t...
re: Wrapping my Brain around Recursion
LOL (I could be here all day)
re: JS: Arrays || Artificial Arrays, which are better?
So arrays are implemented differently to objects in V8 for in...
re: I am glad that I am old enough to have used the componentWillReceiveProps and young enough to be using useEffect.
I'm glad I'm old enough to have used: LD A, 100 LD H,...
re: How I began my journey into Webdev and some lessons that I learnt
Well done on starting the journey! There's nothing quite lik...
re: 60fps JS while sorting, mapping and reducing millions of records (with idle-time coroutines)
I wouldn't have thought so the way it is at the moment as it ...
re: Using The web-voice-command npm Package I Just Published
Very nice indeed. Thanks for sharing this...
re: Javascript(ES6) Arrow Functions in a simple way:
So I'm not convinced with defining functions with const you c...
re: I made over 1,000 code reviews - this is what I learned
Very good points, I like the "I ran this locally" - might be ...
re: Welcome Thread - v76
Hello I'm Mike from the UK, I've been here a week and am lovi...
re: What’s your alternative solution? Challenge #57
const count = str=>Object.entries(str.split('').reduce(...
re: You Probably Don't Need a Mac
No, as I pointed out, computers are my primary tool, I always...
re: You Probably Don't Need a Mac
"I like MacOS, it makes me more productive" I am more produc...
re: JavaScript Best Practices for Beginners
Totally agree: function process(b) { //Get the ...
re: Immutibilty: The anti-pattern?
A very good point from my perspective on legibility. A key th...
re: Immutibilty: The anti-pattern?
Absolutely. Also, even with modern computers no game program...
re: Time complexity Big 0 for Javascript Array methods and examples.
Like it - just a point of clarification - a sliced array is a...
re: Interview Qs Decoded - # 1
Sure good point: const [second, max] = array.sort((a,b)=&gt...
re: You Probably Don't Need a Mac
Yes! :) Can't say I carry it that often, mostly GameJams or...
re: Interview Qs Decoded - # 1
Yeah but I bet yours is faster :)
re: Interview Qs Decoded - # 1
Just for the sake of brevity, but not improved performance: ...
re: Center ANYTYING in CSS
Love it :)
re: You Probably Don't Need a Mac
I like MacOS, it makes me more productive I feel. I like my ...
re: Why does (class instance).$name result in the name of the most recent classname and not the actual name?
Other choice is use a linter like eslint can help in these ci...
re: Why does (class instance).$name result in the name of the most recent classname and not the actual name?
If you stick the string 'use strict' as the first line ...
re: JavaScript Best Practices for Beginners
The article could do with the code being in Markdown code esc...
re: JavaScript Best Practices for Beginners
Agreed!
re: Why does (class instance).$name result in the name of the most recent classname and not the actual name?
You don't have a var/let/const in front of classInstance so i...
re: Destructuring arrays as objects
I can see using this on a sorted list for min, max, median, a...
re: Destructuring arrays as objects
To be fair you can do that last example as let [a,b] = lis...
re: Can you become a web developer if you are 40?
It's a fair point, I guess it's happened in two businesses th...
re: Can you become a web developer if you are 40?
Given the age strata of our workforce it seems to work for us...
re: Write cool stateful animations with js-coroutines
Hey John, I'm using the definition from back in my Unity pro...
re: Asynchronous Functions in Javascript
Nice article on an important topic! Plus I now really miss G...
re: 60fps Javascript while you stringify, parse, process, compress and filter 100Mbs of data
@CaseyCole - I've added lz-string compression to the library ...
re: Memory leak by anonymous functions
It would be fair to say if the event emitter is destroyed the...
re: 60fps Javascript while you stringify, parse, process, compress and filter 100Mbs of data
Sounds interesting... Seems like you could do with an uncomp...
re: What’s your alternative solution? Challenge #55
Javascript arrayOfStrings.sort(()=>Math.random() - ....
re: When to actually use preventDefault(), stopPropagation(), and setTimeout() in Javascript event listeners
Love the article, indeed it's one of my most common headaches...
re: Why AsyncLocalStorage instead of LocalStorage?
Having skimmed the code I think your promise is just running ...
re: Memory leak by anonymous functions
I like to write anonymous event handlers on occasion and my w...
re: What was your win this week?
For me, finding dev.to has been really important this week. ...
re: Can you become a web developer if you are 40?
That's been a journey! Thanks for sharing it. Passion is on...
re: Can you become a web developer if you are 40?
In the last 10 years I've never seen a resume with an age on ...
re: Day 0: Welcome To My Blog
Welcome to the world of endless frustration, interspersed wit...
re: What’s your alternative solution? Challenge #53
Probably the easiest way: const copy = src => JSON.parse...
re: Daily Challenge #251 - Largest Number in a Sequence
Javascript version: const largest = num => [...`${num}`]...
re: PostgreSQL vs MongoDB
Relational for me, but with most data stored in JSON structur...
re: Array's Avengers: forEach(), filter(), map() and reduce()
Very detailed and I love the analogy! One thing though - you...
re: Simple Rules to Master 'this' Context
Hey nice - I would just point out you've missed out .bind() a...
loading...