HNHacker News
TopNewBestAskShowJobs

mailslot

425 karma · joined February 19, 2013

submissionscomments
mailslot··on Apple introduces 8-core MacBook Pro
I have a theory that Apple will eventually replace the entire keyboard with a giant “Touch Bar.”
mailslot··on Autonomous cars will do more than drive you around
I can imagine cars that choose routes that are “optimized” for partners of the manufacturer. Considering a new big screen TV? Well, let’s make sure you pass by Best Buy on your way home everyday until you do. Dinner time? Why not drive right past the Carl’s Jr. drive through?

The opportunities for advertising are amazing, since you can place the consumer RIGHT at the locations they’re most likely to make an impulse purchase.

Who’d opt into something like that? lol. Most of America.

mailslot··on For Better Computing, Liberate CPUs from Garbage Collection
They are and they should be used responsibly. I’d argue sparingly also.
mailslot··on For Better Computing, Liberate CPUs from Garbage Collection
It has optional cycle detection, yep. But... you could also just spend a couple of minutes to not have cyclic references.
mailslot··on Should C Programmers Learn C++, Go or Rust? (2018)
Mastery is different. You can still be highly proficient in short time without knowing every nuance. Then, you can choose which one feels best and is worth your time pursuing more.
mailslot··on For Better Computing, Liberate CPUs from Garbage Collection
Sure, if you’re using pre-1990’s memory management. Best practices have evolved far beyond the explicit use of malloc & free and unsafe string handling.

Most popular dynamic languages don’t use garbage collection under the hood anyway. In Python and many other runtimes, it’s primarily reference counted.

mailslot··on For Better Computing, Liberate CPUs from Garbage Collection
I argue that some limitations, like clear resource ownership, are good... but there are still workarounds that aren’t too arduous. Weak pointers and the like are decent enough abstractions to handle the rare case... or just going manual. It’s not a limitation in practice, no.

It hasn’t been a problem for me in over a decade in a multitude of languages. On Java codebases? I’ve witnessed some frightening levels of sloppiness that are only solvable with a profiler.

mailslot··on For Better Computing, Liberate CPUs from Garbage Collection
Seems like we could just as easily stop using garbage collection. ... or even go back to reference counting / smart pointers and just live with the “limitation” that we can’t have circular references.
mailslot··on Should C Programmers Learn C++, Go or Rust? (2018)
Why not all of the above? Then you can choose the best language for the task at hand. They each have their own unique strengths.
mailslot··on Twisted graphene has become the big thing in physics
Superconductivity would revolutionize transportation, low cost medical imaging with MRIs, and weapons. Lots of weapons.
mailslot··on Science behind the longest night’s (game of thrones) poor quality
It looked really good for me
mailslot··on Docker Can Make Your Life Easier as a Developer
... Unless you work with people that treat the Dockerfile like a garbage bin of dependency hell and don’t care because “that’s what Docker is for.”

Often, I find the loudest containerization zealots tend to write the most fragile code. “Impossible” environment errors aren’t handled because: “Docker.”

When asking, WTF are you using package X? “You shouldn’t care. If doesn’t affect you, because Docker.”

Docker is great in skilled hands. Everywhere else, however, it can become another way to skip over best practices and tightly couple code to “perfect” environments.

There are so few articles about Docker anti-patterns, but the list is huge.

mailslot··on Google Decides to Monetize Maps
Open Streetmap doesn’t build laser scanning drones, or fleets of connected 360 camera vehicles, or the tech and infrastructure to do the mapping. SOMEONE has to build all of that. It can’t be free. If it’s govt funded, then there WILL be corruption, scams, and it’ll be run as well as the DMV.
mailslot··on Netherlands ACM launches investigation into abuse by Apple in its App Store
I worked, briefly, for a mobile app developer that made an app so bad, it regularly bricked phones. There were bugs in the logging that would trash the flash storage. It would also prevent the radios from entering power save, and floor the CPU (bugs). Within months of use, customer phones would either “explode” from excessive battery drain, “lightly smoke,” or just become inoperable from dead flash storage.

I sat in a meeting where the execs were all complaining about Apple’s unfair business practices re: their inability to do terrible things in background tasks, and their frequent app rejections / review process.

In this case, Apple saved countless phones from being bricked by one of the worst enterprise app developers. Some of the restrictions help to prevent first class assholes, like them, from publishing wholly defective garbage.

mailslot··on Phone Addicts Are the New Drunk Drivers
I’m wondering if these aren’t the same people. The ones that, if not texting, are driving while putting on makeup, ogling every lady in a dress, turning into oncoming traffic, popping ambien, or driving drunk.

It seems like a personality type that’s generally careless and self important. Texting isn’t much more distracting than the thousands of other unsafe things people do.

mailslot··on Coc.nvim – Intellisense Engine for Vim8 and Neovim
I have, and my teams write abstraction layers around both internal & external systems for testing, integration, and sanity.

It limits the scope & necessity of domain knowledge to be scattered about everywhere. The core logic is easy to reason about and there’s no tight coupling.

For example, if I’m calling libcurl directly in C++, I’ll create a generic adapter. Auto completion isn’t adequate for that library anyway, unless you can remember the docs.

If it’s some unwieldy “does everything” internally developed monolith by a team from hell, the same applies. Encapsulated composition.

mailslot··on Coc.nvim – Intellisense Engine for Vim8 and Neovim
Fair
mailslot··on Making Video Games Is Not a Dream Job
How would gamers feel with 2x longer release cycles and higher cost and/or less features?

Lower profit and higher expenses is the only way, but given the risks of any ambitious title, small studios are nearly always flirting with bankruptcy as it is.

There’s no easy answer, but time to market and risk will suffer.

mailslot··on Making Video Games Is Not a Dream Job
Every game development job I’ve had has been terrible by any measure... but I still crave to go back.

It’s easy to put in long hours when everyone else does and you genuinely enjoy their company.

It’s easy to forgo pay, when you have equity.

You’re just never going to get the opportunity to work creatively with a talented team at Wells Fargo. It’s a totally different experience.

If you’re concerned about a work/life balance or compensation, it’s not for you. I’d hate if game development turned into a typical corporate 9-5, and was inclusive of all skill levels.

Pay is decent, if you’re established and are at the top of your game.

mailslot··on Coc.nvim – Intellisense Engine for Vim8 and Neovim
I’m going to get heavily downvoted for this, I’m sure, but... If I find myself needing, or even using, code completion, I’ve fucked up my implementation. My interfaces are not intuitive nor consistent... or it’s just glue lacking adequate abstraction.

I strongly suggest all developers disable completion & tag jumping, not because I’m an elitist, but because it forces you to write better code. Not a troll. I’m serious.

On projects I’ve worked on that started with Intellisense, they quickly evolved into being unmaintainable without it. It’s an asset to skilled hands, but a debilitating crutch for the novice.

It’s like never operating a vehicle without a GPS. You never develop certain types of skills.

mailslot··on Was MongoDB Ever the Right Choice?
I went to production with Mongo and it exceeded my expectations. It operated without a single issue for years under high load. It was a dream to administer and a vital piece of a multimillion dollar franchise.

Everybody else I know, however, has had nothing but headaches.

They’re the same reasons I’ve seen people fail at using Cassandra, Redis, or Spanner. If you can’t adjust to the limitations and paradigm shift, you get no benefits. And an ORM often makes everything worse.

The “no” in NoSQL doesn’t seem to stop people from modeling join relationships in Redis, or chaining distributed queries with fully consistent writes on Cassandra.

I’m on a project right now, where a developer has selected an ORM for PostgreSQL that forgoes joins. They’ve managed to generate about 100 queries, in one case, where a single query is all that’s needed. 2ms vs. 800+ms. That individual is incapable of using something more complicated. Substituting Mongo as-is will make everything worse, and they’ll triumphantly proclaim how terrible NoSQL is and then write an article.

I feel confident using Mongo for any task. I don’t feel confident letting most of my peers use it.

There are a LOT of legitimate gripes, but no article I’ve read mentions them. It’s always the same superficial complaints from ten years ago. If you can’t get past those, choose another tool. End. Of. Story.

mailslot··on Some men go professional boxing; other join the army. Some choose C++
If you work on the things I do, suggesting that there is a viable alternative to C++ is ridiculous.

I’d love to write everything in Python & Rust, personally, but it’s just not a viable option for many types of projects.

With the smallest amount of self discipline, C++ is safe, expressive, maintainable, cross platform, and interoperable.

I rather like that it’s not forcing training wheels on my every statement and condescendly telling me what I’m allowed to do.

Of course, it means that code from the article’s example is possible. You can write code like a sloppy asshole in any language. Don’t blame the scissors if someone decides to start running while holding a pair.

mailslot··on Elizabeth Warren Proposes Breaking Up Tech Giants Like Amazon
Amazon isn’t a monopoly the way that AT&T or Comcast are. People have a choice and can easily go to Walmart, Target, or most any other retailers online or at a physical location. In this case, Amazon is winning by out-competing their competition. That’s not monopolistic, it’s winning at competition. Fairly, I might add.

One way they’ve grown is by allowing small companies to easily add their products to their stores. Good luck getting Macy’s to sell your custom line of trollface shirts. Shelf space is live or die for small brands. Amazon has a lower barrier to entry without the strong arm tactics big retailers have used for years.

Retail is often a middleman operation with exclusivity deals and price fixing. Brick and mortar is failing for so many reasons. It’s not that there are restrictions preventing fair competition, it’s that the old guard is slow and incompetent and likely won’t survive the old model of exclusivity on goods.

mailslot··on Some Details of My Personal Infrastructure
You could rotate the mouse pad and the mouse wouldn’t track. Very prankable.

Edit: At least on a Sun workstation

mailslot··on Ask HN: What technology do you think will take off in 2019?
Kernel space JavaScript.
mailslot··on NYPD demands that Google's Waze app stop revealing DWI checkpoints
How many drunk drivers are responsible enough to even use an app to evade checkpoints? Is this really an issue?
mailslot··on AT&T will put a fake 5G logo on its 4G LTE phones
I remember that. HSPA+, which was just fast 3G. It was an improvement from what I remember, but the first time I tasted LTE, I felt ripped off.
mailslot··on Introducing Project Mu
Great. Windows updates will now be able to brick the hardware.
mailslot··on Ask HN: Why is Atom a whopping 845 MB on my Mac?
There are many reasons. The elsephant in the room, being that it’s Javascript and includes a full blown browser with a JS VM.

When I write a C or C++ app, if I use libcurl and a library I’m using does as well, it links to the same shared libcurl library (mapped in RAM) as all other running processes do as well. With NPM, you can’t share libraries across process space and you’ll often even find the same packed being imported multiple times within the same app. In JS, it’s like statically linking all of your dependencies, but even less efficient. It can be argued that this is as good as it is bad.

When you build a code ecosystem atop JS, the underlying inefficiencies multiply as each layer is added. VS Code is more efficient, but even 192MB is still pathetically bloated.

Expect Atom to eventually approach and surpass 1GB of RAM, not less... at least in the short term.

mailslot··on The Media Industry and the “Make-Google-Pay” Fantasy
Local and major news sites alike, are cesspoools of intrusive advertising and tracking. They’re so poorly built, with so much advertising, that they hardly even function any longer. Even if Google links to a news site, I won’t click. It’s probably 30 secs for my new iPhone to partially fail loading, abruptly reload, and then auto play video I didn’t ask for... while covering the article with more ads that I have to click to dismiss.

Reading about the latest headlines is like sitting in a timeshare presentation, only it drains my phone battery and crashes my browser.

It’s a shame that the media is so bad at producing media. The quality is down, the delivery is terrible, and they want more money.

← PreviousPage 3 of 6Next →