HNHacker News
TopNewBestAskShowJobs

wild_preference

1,125 karma · joined April 3, 2018

submissionscomments
wild_preference··on How to speed up the Rust compiler in 2018: NLL edition
The first place I needed it was the simple case of borrowing inside a `match` case and short-circuiting `return None` in one of the branches.

Thankfully someone in IRC told me back then to just switch on the feature flag. Never looked back.

wild_preference··on 2018 Mac Mini Review
Yet it doesn't have the one thing someone would care about: macOS.
wild_preference··on Does sex addiction really exist?
I'd guess a camsite. Same way a guy can chuck a thousand bucks at strip club's back room.
wild_preference··on Learning to Read in Your 30s Profoundly Transforms the Brain
Two of the three comments that this new account has made includes a shortened Amazon URL that expands into a URL with the referral ID of "amazonbook10-20".

Let's keep spam off HN.

Btw, reusing Amazon referral IDs across the internet links all of your accounts.

wild_preference··on React Hook recipes every day
Agreed. I couldn't have chosen better examples, either.
wild_preference··on Why Epik welcomed Gab.com
Which social media platforms don't breed hate?
wild_preference··on Why Epik welcomed Gab.com
The treatment of Gab is terrifying. It became an easy crux for everyone to publicly hang their disapproval on for easy moral points, and created a chain-reaction where nobody wanted to be the one left holding the bag.
wild_preference··on Redbird: A modern reverse proxy for Node
I'd like to double-down here on the benefit of having a local installation of a reverse proxy vs what yum/apt gives you.

Though this is the main reason I use Caddy over Nginx. I have my Caddy executable and config for all my projects right there in the home root. I ssh into one of my cheap vps and I'm an `ls` away from remembering how to configure it.

Meanwhile, every time I use Nginx I have to remember where the different folders are that it uses, where the configs are, and how to even start/stop/reload it. I usually symlink its config to the home root and paste a few common commands into ~/README.md for future-me.

Obviously, at a larger scale where you're automating your machines, this doesn't really matter. But at any scale under that where you're sshing into different machines, it becomes a nice to have.

wild_preference··on Colleges Want Students with Character, but Can’t Measure It (2014)
Just edit the post with the edit button. It's 17 minutes old.
wild_preference··on Apple's T2 chip will prevent hackers from eavesdropping on your microphone
I dock because I only like one screen. My workflow is already optimized for my laptop screen (I'm on it 60% of the time). So my ideal setup is one massive screen when I have the choice.

I could credentialize in multimonitor usage (I have before), but now I'm getting used to something that's incompatible with portability.

wild_preference··on Show HN: Hacker Dig – Digging Ideas from Hacker News
To help me get started, I wouldn't mind seeing an example of what the start of an idea-mining session looks like with this interface. I've never done anything like this so I could use some inspiration for how to use such a tool.
wild_preference··on Apple's T2 chip will prevent hackers from eavesdropping on your microphone
Your own biases?
wild_preference··on Fred Rogers wouldn't have wanted to appear in a Google ad
You'd have a point if the deodorant in question here was scentless, but it's not. It heavily markets its fragrance, like its ability to supposedly attract hot women.

It's absolutely a deodorant + perfume combo, and primarily the latter from my experience as a niño. Go smell some Axe next time you're in Walmart and see for yourself. Or smell a junior high boy's locker room.

wild_preference··on Cemeteries are landfills, and can contain all sorts of pollutants
Great way to piss away your estate for no reason.
wild_preference··on Cemeteries are landfills, and can contain all sorts of pollutants
I don't know anyone who drinks non-dairy milks for concerns over carbon emissions. It's always been one of or a mix of dietary concerns, taste preference, or avoidance of the awful dairy industry.

Also, where I live, dairy comes in those tetrapaks, too.

wild_preference··on Ask HN: Paid app to free and Patreon?
Ads in desktop software are dead. Also, just think of the amount of serious, transient eyeball traffic you'd need which sounds like an unlikely demographic for a Mac app. Especially if you think these same people would be interested in your Patreon. You'd basically have to burn all goodwill to make a few pennies off them.

The only reason ads make a little money on mobile is because of the lack of adblocker penetration + low tech-savviness + compulsive mobile games. When was the last time you even used a desktop app with ads?

Donations aren't a source of income. Though I encourage you to try a tip jar like Patreon just to see how vanishingly impossible it is.

Sounds like you're still deciding if you even are trying to make money. But make no mistake: you won't luck into money by writing cool blog posts and building free features that people ask for.

Building a revenue channel into your application with IAP sounds like the only thing that has a shot and the only thing that might align with your goals.

wild_preference··on JavaScript is now required to sign in to Google
So your solution is "sorry, come back later when the attacker hopefully stops"?

I can keep you out of your account indefinitely with a curl loop and a rotation of proxies?

wild_preference··on JavaScript is now required to sign in to Google
Where is it being used?

Because the reason why https://en.wikipedia.org/wiki/Hashcash wasn't useful for anti-spam after all is because attackers have access to the cheapest compute in the world: botnets and devices that aren't their own.

wild_preference··on JavaScript is now required to sign in to Google
ReCaptcha is like Cloudflare's free DDoS protection: we like to point at these services and complain how people are "ruining the web" by using them because that's what we do on HN. We ignore the big picture and whine.

But I encourage everyone to consider a darker reality: that centralized services by large companies are becoming more and more necessary in a world where it's becoming easier and easier to be an attacker. The internet is kinda broken. Like how half the ISPs in the world don't filter their egress for spoofed IPs because there's no real incentive. That every networked device in every household could unknowingly be part of a botnet because we aren't billed for externalities.

Yeah, maybe it's kinda spooky that now ReCaptcha v3 wants to be loaded on every page. But is that really the take-away? What about the fact that this is what's necessary to detect the next generation of attacker? That you can either use Google's omniscient neural-network to dynamically identify abuse or you can, what? Roll your own? What exactly is the alternative?

Do HNers think this stuff is a non-issue because nobody has every attacked their Jekyll blog hosted on Github Pages (btw, another free service by a large company)?

wild_preference··on JavaScript is now required to sign in to Google
> I think the sad truth is that computer engagement is required, but literacy is optional.

You're right on, but I wouldn't call it sad.

The population is expected to operate vehicles without putting others in danger, not credentialize in how cars work. There are endless amounts of things we could demand people spend their precious time deeply understanding. We just like to demand tech-savviness because it's self-aggrandizing.

Like everything else, the solution is to help people on their own behalf.

At an online casino I once worked at, we ended up generating random passwords for our users. We had to, because otherwise attackers would lookup usernames in the large password dumps online and log in as our users. No amount of warnings on our /register page stopped password reuse. So we decided we could do better than that, and that "well, we warned you" was not an appropriate response.

If you look around at everyday objects, everything is designed to protect the user. But for some reason in computing we're still in the dark ages of snickering and rolling our eyes at users for making mistakes.

wild_preference··on How to Make a Roguelike
That's a good example too of how the best option for a game (which is supposed to be fun) can amount to a hand-tuned game-specific solution despite the temptation I think most of us have as developers to come up with generalized solutions.

Maybe your LoS algorithm sucks with 1x1 columns and windows, so decide your game doesn't need them and you move on.

Kind of like how the classic mistake you hear about among gamedevs is that they built a game engine instead of the game, basically the end result of constantly following the siren's call of "I'll just generalize this."

wild_preference··on How to Make a Roguelike
Great advice, I hadn't considered that.

One resource I used was: http://roguebasin.roguelikedevelopment.org/index.php?title=C...

Check out recursive shadow-casting. Had the best results of all the implementations I tried.

wild_preference··on Apple Finally Updates MacBook Air with Retina Display, Touch ID
The Macbook Air also has a fan. The base Macbook does not. The base Macbook therefor hits its thermal ceiling pretty much immediately and is suboptimal in hot environments. My girlfriend's overheats all the time.

Frankly, I think the three product lines should be shaped like this:

- Macbook: For price sensitive people. $800-900 to enter the Apple ecosystem.

- Macbook Air: Basically the current MBP with its fixation on power capped by form-factor. (Note: The new Air is heavier than the MBP!)

- Macbook Pro: A portable workstation that doesn't sacrifice everything for form factor. Apple doesn't have one of these right now. For example, prioritizes thermals so that it can sustain max performance instead of the bursty performance of the current MBPs.

wild_preference··on How to Make a Roguelike
I started building grid-based ASCII-art roguelikes thinking it would be an easy way to enter gamedev. Next thing I know I've spent all my allocated freetime over many weeks trying to implement a good line-of-sight/fog-of-war!

The most naive solution (tracing a line to each tile and checking for collision) introduces weird artifacts, like illuminating a single cell 8 tiles away from a window when you're 45 degrees away from the window, that I couldn't persevere through the temptation of getting that perfect.

Then I realized this is just a taste of why all gamedev is hard. Is $GameMechanic going to be more fun implemented like $this or like $that? Well, you can't just git-branch and try both because both options are non-trivial. And it's easy to procrastinate by working on things off the critical path of finishing the game because that is what's hard.

Turns out it involves an impressive amount of visionary power + ability to laser-focus on the Hard Stuff That Matters to build a game. And I'll always respect the super heroes out there that are able to finish one. I suppose it's not so different from writing a book.

wild_preference··on How to Make a Roguelike
This is also why telnet MUDs are a great place to dabble in networked games. The lack of art + an easy networking model (no hard stuff like client-side prediction and interpolated animation) and you can spend almost all your time on the fun technical stuff.
wild_preference··on You can't impress developers. So don't try
This seems to extend into any community where nobody has any skin in the game yet the topic has superficial qualities in which it can be knee-jerk judged (unlike, say, a book).

Some of the most unsettling behavior I've seen online is a thread on Reddit where an indie developer shared their game with /r/gaming. The reactions: "Looks like dogshit", "This really took you two years to build? lol", "Doesn't even work on Android? lol miss me with that garbage."

Like that /r/gaming thread, we on HN do the same thing with the superficial qualities of a project.

"Python in JS? Who the fuck would want this lol. It took you how long to build this dogshit? Yet another web developer who refuses to learn anything beyond JS." Our analysis goes no deeper than whatever was summed up in the Show HN title where the author is lucky if anybody even navigates to the Github repo and looks at the work involved.

I think it comes down to modern entitlement culture where we see the world as our personal buffet. Now combine that with the ease of sharing your opinion with the world.

wild_preference··on Clojure at Netflix (2013) [slides]
I'd say it comes down to the more standard fare of dynamic vs static typing where the latter has a general advantage in refactoring.

It's true that Clojure has its own perks that aid in refactoring, like how you may have less code altogether. But in my experience it's still a drop in the bucket compared to the zoomed out view of dynamic vs static typing.

For example, could you give some examples that make Clojure particularly good in this regard? I'd have trouble coming up with many that quantify favorably against compile-time analysis. And it would be unfair to take this reality and say "Clojure sucks at refactoring." I think that people do say that is what clouds these discussions where one then needs to point out that Clojure has advantages over other dynamically typed languages which is definitely true.

wild_preference··on Clojure at Netflix (2013) [slides]
I worked at a shop that used Clojure and Java.

One big difference is that Java APIs tend to require the collaboration of various class instances to get something done, things that you would implement as a single function + options object on your own.

Bouncy Castle is a good example. You may need a Hasher, HasherStrategy, ASNEncoder, DERParameters, and ASNSerializerStrategy instances to execute what you would've implement as `(asn-encode thing)` otherwise, maybe even having to subclass some of them to change some behavior you'd expect an option flag for.

Clojure's own Java-helper macros will compact your 1:1 Java interop code as well, so you have fewer lines even when writing Java from Clojure. Also, short-cuts like ad-hoc reification in Clojure will spare you LoC where you might otherwise have created a whole file for a class with custom interface implementation in Java.

Of course, line-to-line code is also just more compact in Clojure, but ecosystem/api difference is one I don't see mentioned as often.

I don't think this is just good vs bad, though. There are certainly upsides to the more rigid everything-in-its-right-place code you tend to have in Java which has been making big strides in improving itself over the past decade.

wild_preference··on JPEG image of Shakespeare which is also a zip file containing his complete works
> objectively uglier

Not sure why'd you'd say "objectively" when it's clearly not, the hint being the word "ugly."

I can certainly appreciate the limitation of "extensions will always be three characters". In fact, I wasn't exposed to extensions habitually longer than that until I did iOS dev. "Main.storyboard" "Model.xcdatamodeld" So if we're going to talk about ugly, I'd start there. ;)

wild_preference··on iPhones are allergic to helium
Are you joking?

This is a completely different thing than the UI widget that tells you the time and may freeze for any reason UI can freeze.

← PreviousPage 6 of 13Next →