HNHacker News
TopNewBestAskShowJobs

salamander014

365 karma · joined March 4, 2019

submissionscomments
salamander014··on Give me /events, not webhooks
Yes, but SMTP is a protocol wherein a system opens a connection to another system and says, hey here's a message.

And if that doesn't succeed for some reason, it reliably queues and retries.

That's a push.

salamander014··on Eu_sst: 20% probability for large satellite collision
My personal favorite time/NTP website is

https://time.is/

https://time.is/UTC

salamander014··on Nix is the ultimate DevOps toolkit
Many times repairing those kinds of situations in Linux is as simple as:

- boot linux livecd

- mount your broken filesystem

- bind mount the important bits from the live kernel (/proc)

- chroot

Like this:

    cd /

    mount -t ext2 /dev/sda1 /mnt #Here's your broken install

    mount -t proc proc /mnt/proc

    mount -t sysfs sys /mnt/sys

    mount -o bind /dev /mnt/dev



   chroot /mnt /bin/bash #boom you are in.
Now do whatever you can to repair the system. depends on what broke.

usually apt stuff for me(pulled power during a package upgrade)?

salamander014··on IPython as a System Shell
That's fine. But simple things that should work in order to be painless, don't.

-- -- bash:~]$ if $var < 21; then echo "smaller"; fi

bash: 21: No such file or directory

-- -- BUT this works:

if (( $var < 21 )); then echo "smaller"; fi

smaller

-- -- BUT this DOESN'T:

if [[$var < 21 ]]; then echo "smaller"; fi

bash: 21: No such file or directory

-- -- BUT this DOES (added a space after '[['):

if [[ $var < 21 ]]; then echo "smaller"; fi

smaller

Plus the fact that having to type out 'then' and 'fi' and that semi-colons are semi-necessary are annoying. Compared to today's languages, very little of the non-posix parts of bash feel well though out. We can do better.

All these things make it necessary to understand bash. Most modern programming languages feel familiar. Bash and Sh don't anymore. They feel antiquated.

salamander014··on IPython as a System Shell
xonsh is absolutely the right way to go here. There are a lot of 'gotchas' when it comes to building a shell that isn't 'just' a novelty but actually usable.

Shells are most successful when you don't need to think in order to use them. Especially since everyone that's used linux in the past 30(?!) years has the same basic foundation for how to use the command line, the best Shell will feel familiar to sh and bash, but better.

Math, logic, string and value manipulation, all those things I need to google because I don't remember whether an if statement in bash needs single [ ] or double [[ ]] or '' or "" or ; or spaces or all those weird gotchas.

I understand that many people do know how to program in bash effectively. That doesn't mean it's the future. It's like the Perl vs Python thread from the other day.

Xonsh is intuitive. Xonsh is well designed. Long live Xonsh.

salamander014··on On the Decline of Perl – external factors
In one of my previous positions, part of my work was maintaining legacy build and automation scripts, many of which were written in Perl.

The one thing that stood out to me, was what happened when I had to show somebody else what a script did. (I was always showing somebody with some programming experience, but not always with the matching language).

It didn't matter what language they had experience with, Python was always easy to walk them through the code. I know this sounds scary to most, but when you are low on people and even lower on resources, you do what you can.

When I needed to explain Perl to somebody without Perl experience, the eyes would glaze over as soon as @ and $ and % characters started showing up (re: immediately).

It's not that Perl isn't a great or powerful language. It is. I use Perl style regex almost every day. Perl taught me hashmaps.

But Python code looks familiar to a lot more people. No mystery symbols. No needing to explain that the @ symbol is an array, except when reading from it. Then you use $.

When I explain Python code to someone who doesn't know Python, they ask me about the actual code. Why I made certain decisions regarding the design or functionality.

When I explain Perl code to someone who doesn't know Perl, they tell me it looks like gibberish.

salamander014··on Google to stop selling ads based on your specific web browsing
I am biased to think this was going to be just a bunch of hoopla coming from Google. They are the last company I'd expect to actually care about user privacy.

"That’s why last year Chrome announced its intent to remove support for third-party cookies," aka only Google's cookies are "safe". Sounds like Google is going to try and block it's competitors from being able to gain the information Google uses to make money (tracking information for ad revenue.)

Also this was written like someone needed to fill in the article for a C-Level headline after the headline was already chosen. Disappointing that a company like this maintains it's stranglehold on a market and tool (now commodity) that regular people have no understanding of.

salamander014··on RFC 1178: Choosing a name for your computer (1990)
Please tell me you assign IP addresses based on atomic weight!

This might be the coolest thing I've read all year...

salamander014··on Sales tax creates more unnecessary pain than value added tax
That seems nearsighted to me. Making it cheaper for vertically integrated businesses to make money kind of forces bigger businesses to buy smaller ones.

This same idea also means that smaller businesses aren't on the same playing field as bigger businesses, because they can't afford to vertically integrate as much. They don't have as much cash to spend. This means that small businesses naturally have a harder time growing.

And this becomes an oligopoly problem. The big businesses get bigger and the small businesses either get bought or get put of business.

That doesn't sound like a healthy market to me. I would much prefer a market with many competitive small businesses that work with other small businesses to build products.

Better products and choice of products are guaranteed this way.

salamander014··on Missing Covid-19 test data was caused by the ill-thought-out use of Excel
You are right on the cause of the issue. But the software does not HAVE to guess the type. If I paste something into Excel, I want what I pasted to be what's in Excel. Changing the type and inadvertently affecting the data isn't something any data software should do by default. And the fact that OP said they can't turn it off means that this is beyond a design mistake, it is a FEATURE. If Excel took itself seriously as a data platform, it would not make a change to any text by default.
salamander014··on Tesla’s Nemesis in China Is a Tiny $5k Electric Car from GM
Just because 90 million is a minority doesn't make 90 million insignificant. This is a difficult problem to solve. Recognizing that first and foremost will bring you down the path of:

1. We need a solution for actual urban populations 2. We also need a solution for the 90 million that don't fall under solution 1 3. and finally, we shouldn't be forcing people to buy specific cars. Not saying EV are bad, just that the market needs to start being more competetive, and automakers need to care more. People tend to follow the crowd, if lawmakers were serious about the environment, automakers would have a harder time continuing selling new cars every year(waste), and even more so non electric vehicles.

I think there will still be a niche market for ICE vehicles for a very long time, but people who are not "car people" would very easily be driving EVs if they were more popular. Most won't notice the difference.

salamander014··on Security by obscurity is underrated
It's possible to track similar passwords in a safe way over a short amount of time. Keeping any user's password or any security token in plaintext is just disgusting. Regular people have a hard enough time navigating the digital world without needing to worry about whether their credentials are safe. Anyone who stores passwords in plaintext is disgusting and should not be managing digital services. Period. This is how breaches happen, and it should be a fine-able offense.
salamander014··on Citibank's $900M Blunder
No, you aren't. Unless he was on contract for the year, the salary for the rest of the year won't be paid in full if the employee leaves or is fired, for example.

A loan is the opposite.

salamander014··on Ask HN: Has anyone migrated off containerized infrastructure?
Instead of fixing something RIGHT NOW, meaning adding another commit to your build, why aren't you instead rolling back to a known good commit?

Image is already built.

C/I already certified it.

The RIGHT NOW fix is just a rollback and deploy. Which takes less time than verifying new code in any situation. I know you don't want to hear it but really, if you need a RIGHT NOW fix that isn't a rollback you need to look at how you got there in the first place. These systems are literally designed around never needing a RIGHT NOW fix again. Blue/Green, canary, auto deploys, rollbacks. Properly designed container infrastructure takes the guesswork and stress out of deploying. Period. Fact. If yours doesn't, it's not set up correctly.

salamander014··on A Keyboard with Blank Keycaps Made Me an Expert Typist
I bought a WASD VP3. Same basic shape as the HHKB with a different layout of the fancy stuff. Fn key is in a natural position for me. I use the Fn arrow keys constantly (ijkl) I love it so much I'm going to buy at least a few more before I die. I can't get enough of it.
salamander014··on Tech Companies Want You to Believe America Has a Skills Gap
The solution to removing an element from a linked list is so simple I Googled it because I thought I was missing something. Anyone who cannot remove an element from a linked list simply does not understand what a linked list is.

And that's OK, but in order for companies to make progress, they use questions like these to make sure they are hiring people that are knowledgeable and capable of solving certain kinds of problems. The other thing is, people that can answer these simpler kinds of programming problems correct are more likely to write clean code, make better decisions, and be an asset to a team. It is just an easy way to weed out bad candidates. That doesn't mean all candidates who can't answer the question are bad, but likely that all bad candidates cannot answer the question; there's a big distinction there.

Unfortunately a lot of people with good experience get left behind. But the other problem is just because somebody has good experience doesn't mean they are the right fit for the position. And that's just life.

salamander014··on GitLab 13.0
You could also look into Sourcehut depending on what your needs are.

https://man.sr.ht/installation.md

salamander014··on Students are failing AP tests because the College Board can’t handle HEIC images
Generally I agree with your point but this isn't your uncle's homemade public photo gallery. These are people's lives on the line. These kids have no say in whether they think they should take these exams. And because of that yes it is absolutely College Board's responsibility to

1. Correctly label their expected stream types. 2. Test all of the most popular devices before having something this broken in production.

What about a kid that's using a cheap android tablet from aliexpress? Are you arguing that the company nobody's ever heard of is at fault for not programming their tablet to use the correct image format? I agree that they should probably be using JPEG but that doesn't mean College Board is off the hook for making it easy for a user to not be able to use their product for something this important.

salamander014··on In praise of S3
> Security seems to be secondary when the priority is to just deliver.

Security is always an afterthought to those who don't actually understand it.

salamander014··on Please consider not adopting Google WebComponents
Web browsers became what operating systems were 20 years ago.
salamander014··on The front end of an example full-stack app built using Vue and Node
I understand why people think Docker is overkill, but Docker is a simplified approach to the most "correct" way to build and deploy applications we've come up with so far.

Even though simple projects don't necessarily need Docker to work, they are 100 times better off using Docker than doing things by hand, because that alternative means they are only deploying once and never again (updates, new environment, dev/staging/prod) and that's just not true.

salamander014··on Why Taxpayers Pay McKinsey $3M a Year for a Recent College Graduate Contractor
Companies trust capital expenses more than operational expenses for some strange reason. I don't know why.
salamander014··on Show HN: I built a podcast app that skips over the ads
Turo.
salamander014··on Everything I know about Kubernetes I learned from a cluster of Raspberry Pis
I also use MetalLB and Rook. Can't say enough good things about them.

I have also used Kube-Router (https://kube-router.io - Digital Ocean's non Virtual networking plugin for bare metal environments; it puts your containers on your physical network, which is freaking neat) and loved that, but since I started deploying kubernetes with Rancher I've found for dev clusters I'm not caring about what networking is used. (currently running Canal).

Not sure what we will decide on when we go to production.

salamander014··on Sonos smart speaker controller API and CLI written in Rust
Love this!

If I create a group of speakers, how do I play something on them? If I have 2 speakers that are airplay-capable, Do I just pick one?

salamander014··on ZFS v0.8.2
I've used both in a very non-critical way (think basic dev workloads on linux, no DBs or any high performance applications).

I found the same as the comment above, btrfs was a dream to set up and a nightmare when something went wrong, which was several times a year it seemed.

ZFS on the other hand, I had to write scripts to handle my snapshots and snapshot expirations but the filesystem itself has been rock solid.

I haven't put ZFS through it's paces. However with btrfs I had so many issues on a dead simple workload it just didn't seem stable to me. This sucks and I wish I could contribute because I loved their goals and thought they were designing everything right, but stability wins the long game, as it were.

salamander014··on How can phone companies detect tethering?
>technically unfeasible to guarantee "pipe size" bandwidth to all routes on the internet to all your clients

Yes I agree. But if I pay an ISP for a 10mbps link, I should be able to get 10mbps to their NOC at all times, and then each ISP would be able to vary prices based on peer connectivity. This is where competition would strengthen the internet backbone.

salamander014··on How can phone companies detect tethering?
You are saying it's okay for ISPs to charge per packet rather than per pipe size. It is possible for ISPs to set up their network for guaranteed bandwidth (at least as far as the NOC you are connected to). But not doing so means they can continually squeeze more money out of their customers without added infrastructure costs.

Without firsthand experience, it's difficult to explain to someone that once I configure an access layer switch with 48 1gbps ports on it, and 4 10gbps SPF+ uplinks, it only costs me the price of electricity and physical storage to move 1 packet over it, or an infinite number of packets over it.

My problem with that is that once the pipe is installed and working, it only costs maintenance. I'm not sure what you are trying to say with your seedbox example.

salamander014··on YouTube videos that have almost zero previous views
Why on earth would that be something a platform does?
salamander014··on How can phone companies detect tethering?
Paying for ACCESS makes sense. It costs the ISP to have the availability to connect you up.

Paying for USAGE is disgusting. The way a network works, is that besides upkeep which is a small percentage of TCO, upfront cost scales with total bandwidth, not total number of packets one needs to move across a set of links.

Meaning if the ISP buys enough network equipment for 100 users to each have 10mbps of available bandwidth, they no longer have costs besides upkeep (maintenance, support, and replacing broken hardware). This is a SMALL percentage of upfront buildout costs. This large lump sum in the beginning has the potential to deliver the same amount of bandwidth ad infinitum.

Charging users for USAGE is DISGUSTING and is literally not fair.

Price gouging.

Plain and simple.

← PreviousPage 2 of 3Next →