Avatar

alr

alr@programming.dev
Joined
0 posts • 38 comments
Direct message

I’m on Hover. They’ll host and email inbox for you, but not a website.

permalink
report
reply

Not quite sure what you’re looking for, but I think Dreamhost can just hand you an Ubuntu box you can SSH or SFTP to to manage your site.

permalink
report
reply

NEMA has called them “plugs” and “receptacles” for decades.

permalink
report
parent
reply

You forgot “don’t say ‘thank you for pointing out that we were sending social security numbers to everyone who visits our website that anybody could stumble across,’ but rather ‘you will be prosecuted to the fullest extent of the law, hacker!’” Courtesy of the Missouri Department of Education.

permalink
report
reply

I got news for you. If you’re not a citizen of the country you’re located in and you don’t have a work visa for that country, you’re probably working illegally, whether or not your employer realizes. (Some exceptions for EU citizens, Canada, etc.)

permalink
report
parent
reply

Re: too lazy for Let’s Encrypt, a) last I used LE (for my personal site), your site had to be publicly available on the Internet so that you could prove you controlled the site. Most test servers are not public. and b) many (most?) companies would throw a fit if you started generating your own certificates for their domains.

But there are always solutions. I was able to talk my company into getting properly signed certs for our test servers.

permalink
report
parent
reply

I’m not sure I want my banking apps to store anything on my phone in the first place. But maybe that’s just me. I don’t even use banking apps.

permalink
report
parent
reply

If you use JavaScript, you’ve probably seen a monad, since Promise is a monad. Unit is Promise.resolve(), bind is Promise.then(). As required, Promise.resolve(x).then(y) === y(x) (unit forms a left identity of bind), y.then(Promise.resolve) === y (unit forms a right identity of bind), and x.then(y.then(z)) === x.then(y).then(z) (bind is essentially associative).

You even have the equivalent of Haskell’s fancy do-notation (a form of syntactic sugar to save writing unit and bind all over the place) in the form of async/await. It’s just not generalized the way it is in Haskell.

permalink
report
parent
reply

Rather than messing with the EventListener, wouldn’t it be easier to just throttle the function that it calls? You can find a bunch of articles online that will explain how to implement a throttle (and also a debouncer, which is similar, but not quite what you’re looking for; a throttle allows a function to be called immediately unless it’s already been called too recently, while a debouncer waits every time before calling the function and restarts the wait timer every time someone tried to call the function).

permalink
report
reply