HNHacker News
TopNewBestAskShowJobs

shawndellysse

339 karma · joined October 14, 2011

submissionscomments
shawndellysse··on s/bash/zsh/g
`fish` is amazing. I used to have a big old dotfiles repo, but nowadays I add starship[0] to my env and I'm pretty much good to go.

On the non-interactive scripting front, I've found fish to be a very competent language for it, but you're right, the error handling (among other things) are lacking compared to "real" languages

[0]: https://starship.rs

shawndellysse··on 1Password for Mac Moving to Electron
I looked at it when it first came out but not since, does it have a typescript debugger yet?
shawndellysse··on Ubiquiti all but confirms breach response iniquity
context: former pfsense, unifi dream machine, unifi ap user

I'm running openwrt on a rpi4-2gb (usb ethernet dongle for WAN, onboard ethernet for LAN) and and a TP-LINK EAP245 access point and have been extremely happy. For reference, my connection to my ISP is 940 down / 840 up, and the pi4 handles SQM/QoS on this line without breaking a sweat

I do plan to flash openwrt on to the eap245 as soon as the 5ghz drivers become usable, I like the hardware and the stock firmware isn't bad, but just not nearly as good as openwrt. there's a port of openwrt to the eap right now but 5ghz speed is limited to 2.4ghz speed for some reason at the moment.

shawndellysse··on Ask HN: A great software you liked, but not supported anymore
applets were long dead before oracle came into the picture
shawndellysse··on Ask HN: A great software you liked, but not supported anymore
VB6. It was a horrible language but I've yet to see anything really come close to it in terms of quick-and-dirty getting shit done
shawndellysse··on Poll: Are you going to buy the M1 Mac?
I've been running a Mid-2015 i7 16gb MBP with discrete gpu for the last $NUMBER years, I honestly am just waiting for Apple to release a 15/16in MBP with at least 64gb ram, no touchbar, and a touchscreen.
shawndellysse··on OpenMPTCProuter
I use the Vultr $5/mo
shawndellysse··on OpenMPTCProuter
My partner and I have been preparing for a long-term #vanlife traveling session (think: year or two) and this project has made the connectivity part much easier.

That being said, the script to install the VPS works great but is absolutely horrible. When I can finally get some time I'd love to try to make it better

shawndellysse··on Modernize your Bash Scripts by adding GUI
As an aside, I noticed this at the top of of the article:

    You have 1 free story left this month. Sign up and get an extra one for free.
I really dislike Medium. I don't want to have a relationship with the blog platform that people use in order to read the article; I want to read the article.
shawndellysse··on Five-year-old boy stopped on highway driving from Utah to California
bypass paywall: http://archive.is/ws3x1
shawndellysse··on New 13-inch MacBook Pro
Yeah, if only I could get the 16" Pro with the keyboard of the Air. I need a bit more cpu power and ram than the Air can offer sadly.

Eh, my mid-2015 MBP with an i7-4780HQ and 16gb of memory will do for now. I occasionally bump into the memory limit but hopefully I can hold out until a fully sane keyboard is an option.

Either that or hacklapintosh it

shawndellysse··on New 13-inch MacBook Pro
So glad they finally got rid of the butterfly keyboard! That said, I cannot wait until they retire the Touch Bar.
shawndellysse··on Colleges at the breaking point, forcing ‘hard choices’ about education
http://archive.is/VX8ms
shawndellysse··on Lungs heal damage from smoking
I tried for years and believe it or not this is what finally worked for me: https://www.youtube.com/watch?v=gcosBFS7lA8

One day I'd decided that I'd had enough, I was tired of wasting so much of my life. After undergoing that hypnosis, quitting wasn't easy, but it was super do-able for the first time ever.

shawndellysse··on Update on AB5
Yeah, in your case it would make perfect sense to consider you an independent contractor instead of an employee.

I guess the issue arises when we got people working full-time hours but still being classified as an independent contractor.

shawndellysse··on Update on AB5
Are they really trying to claim that Uber is not a transportation company but instead "a technology platform for several different types of digital marketplaces"?

I guess we do live in a post-truth era.

shawndellysse··on Announcing NPM 6
Wow, that's very immature.
shawndellysse··on Google starts blocking “uncertified” Android devices from logging in
> cheap and featureful devices with no locked bootloaders

would you mind providing links to such devices, and the roms that go on them? I'd be very interested in this when my Moto Z eventually dies

shawndellysse··on Life as a Nonviolent Psychopath (2014)
Off topic: It's always strange to see my alma mater in the wild (Radford University)
shawndellysse··on How Your Returns Are Used Against You at Best Buy, Other Retailers
I had a similar experience. I bought an open-box sound bar for my tv, got home and unboxed it to find that the sound bar was DOA and the serial number didn't match the box.

I had bought it from a Best Buy about an hour from my home, and tried to return it, with receipt, to the Best Buy 15 minutes from home since I had bought it on a Sunday afternoon and wanted to return it same day if possible. I was told I had to bring it back to the original store since the serials didn't match; okay great Best Buy didn't do it's job checking serials when whoever had this item before me return-swapped it, but sure I'll go out of my way.

I bring it back to the original store and they then tell me I'm on the no-return list from that time for 120 days. I've since stopped shopping at Best Buy.

shawndellysse··on Mozilla working on in-page popup blocker for Firefox
It would have been helpful to give a warning that simply going to that site would crash my browser.
shawndellysse··on Promises are not neutral enough
Oh I like this. It's pretty simple, both code and conceptually, that it seems obvious in retrospect.

It allows a function to be cancelled from the outside, but only on its own terms, and gives the function a chance to clean up after itself.

I'm going to use this

shawndellysse··on Promises are not neutral enough
> A C#-style cancellation token API, orthogonal to promises, is simple, easy to build, and easy to understand.

I'm interested in learning more about this, do you happen to have any links to building such an api?

shawndellysse··on Hey Microsoft, Stop Installing Apps on My PC Without Asking
User: "I don't use product $X because it doesn't support $Y"

Dev: I'm gonna be a dick and make false equivalences because I personally am not affected by product $X not supporting $Y

User: ...

shawndellysse··on Haskell developer experience in NixOS
I feel the need to plug my take on NixOS, but based on ArchLinux

https://github.com/shawndellysse/effuvv

NixOS is awesome, but it requires you to relearn all your sysadmin techniques; this is great in the long run but not so great in the short run. effuvv tries to be a solid middle-ground between traditional linux and functional system management

shawndellysse··on The Law of the Somalis, a Nation Successful Without Any Central Government
> It may be the only country in the world that has shown that they “don’t need central government” and was functioning fine.

For certain definitions of "functioning fine", yeah sure I'll buy that.

shawndellysse··on MoviePass Adds a Million Subscribers, Even If Theaters Aren’t Sold on It
I wrote that response quickly, but that's what I was saying:

> If I were in their shoes, I'd [do what they're doing right now and] agressively undercut the price...

I also agree, if they're telling the truth that their plan is to make their earnings off the data, yes I don't have faith either. I'm saying, if they managed to pull a miracle and get a majority of the movie-going public on to movie pass, they could be in a position to then negotiate with the theaters (and other forces down the line) to strong-arm their way into profitability. Even if it's just "oh hey pay us and we'll feature your theatre to our users in the area".

This is all conjecture, arm-chair theory.

shawndellysse··on MoviePass Adds a Million Subscribers, Even If Theaters Aren’t Sold on It
> they sell tickets for way under what they cost, they take their cut and pass it on to the theater

That's not how it works. You select a specific movie in a specific theater in their app, it loads the exact amount on to the moviepass mastercard, and then you purchase the ticket with the mastercard. The theater gets the full ticket price.

They claim they're going to be harvesting the data from their customers and sell that to make a profit. I personally think it's a red herring, if I were in their shoes I'd aggressively undercut the price, secure a dominant market position, and then place pressure on chains to play ball, or raise the price of the subscription in small increments ala Netflix. Honestly, it'll probably be a combination of both.

This all can sound a bit nefarious but at the same time I don't see the movie theater industry surviving without some sort of subscription model such as this. AMC, Regal, and Cinemark are squandering their market dominance by not implementing some sort of similar plan for their own specific chain (cinemark's $8.99/mo plan isn't even comprable).

shawndellysse··on GNU Guix and GuixSD 0.14.0 released
I guess I should use this time to shamelessly plug one of my side projects, farch: https://github.com/shawndellysse/farch

It's an attempt to bring the functional system paradigm to Arch linux, giving you the "my system is a function of my configuration" approach combined with not having to relearn how to administer a linux system like GuixSD and NixOS require.

shawndellysse··on Understanding Node.js Event-Driven Architecture
mz (https://www.npmjs.com/package/mz) is my go-to. You just prefix the core lib ("fs") with "mz/" ("mz/fs") and you get the promised version.

    const fs = require("fs");
    fs.exists(`${ __dirname }/1`, (exists1) => {
      fs.exists(`${ __dirname }/2`, (exists2) => {
        console.log(JSON.stringify([exists1, exists2]));
      });
    });
vs

    const fs = require("mz/fs");
    Promise.all([
      fs.exists(`${ __dirname }/1`),
      fs.exists(`${ __dirname }/2`),
    ])
    .then((existers) => {
      console.log(JSON.stringify(existers));
    });
Or

    const fs = require("mz/fs");
    (async () => {
      console.log(JSON.stringify(await Promise.all([
        fs.exists(`${ __dirname }/1`),
        fs.exists(`${ __dirname }/2`),
      ])));
    })();
Page 1 of 2Next →