HNHacker News
TopNewBestAskShowJobs

onionjake

141 karma · joined May 4, 2015

submissionscomments
onionjake··on Polycloud: S3-compatible object storage
We are pay-as-you-go and charge per GB, so you can store 1-10GB and pay nothing, 13 GB and pay $0.01/month, etc.

It scales up and handles PB of data as well.

onionjake··on Polycloud: S3-compatible object storage
We are planning on releasing more information about this in the future. Using erasure encoding we can copy it to lots of devices, say 60, then only require 25 of those 60 to retrieve the object.

If the devices storing data go offline we constantly monitor and refresh the pieces to maintain integrity.

onionjake··on Polycloud: S3-compatible object storage
This is great feedback. We are redesigning the website right now and will make sure it is more prominent.
onionjake··on Polycloud: $4/TB S3-API compatible storage; No FB tracking pixel
Hey, CTO here.

With the wide geo-redundant storage even entire regions can be taken offline and durability is preserved. We recently had 7% of devices drop offline during the Texas power outages last month with no issues. We constantly monitor and repair the data as nodes go online and offline.

Yes, speeds do depend on users upload speeds, but we spread your files among thousands of peers. So while your 5 GB object might seem like a lot of data, each peer might only need to upload a megabyte or two. Operations are in parallel so you can get high throughput (think of lots of small straws taped together).

onionjake··on Polycloud: $4/TB S3-API compatible storage; No FB tracking pixel
Polycloud is the S3-api compatible pay-as-you go, at $0.004/GB.

The unlimited storage is a separate backup product which right now is only only specific devices that have an upper limit on their size.

(Disclaimer/Source: Co-founder of CrowdStorage)

onionjake··on CRDTs are the future
Usually in games you have some sort of mechanism for determining what is the 'truth' in terms of game state. I agree that if everyone is online while editing or only briefly offline then what you suggest would probably be much better. If someone was offline for long periods of time and made extensive edits they would essentially have to be discarded.

I think in practice what you would do (if your use case allowed it) is use CRDTs, but periodically checkpoint and trim them when you know everyone has synced. That gives you very similar properties to the video game world and still has the features of not losing peoples edits when they make them offline.

onionjake··on 70% of surveyed Americans say they can't do their job without internet
Where do you get your data? If you look at any UTOPIA city, e.g. Layton, Utah, it shows it as symettrical gigabit as the max speed. They actually offer 10 Gbps residential plans.
onionjake··on Ireland donates contact tracing app to Linux Foundation
Utah released one pretty early on (maybe April or May IIRC)? I think I heard recently they might be shuttering it because of lack of downloads.
onionjake··on [dead]
Same here. It is now on the status page.

https://status.cloud.google.com/incident/cloud-networking/20...

onionjake··on The War on Upstart Fiber Internet Providers
UTOPIA in Utah is an example of a network that is pretty close to what you propose. The city installs all the last mile fiber and leases the lines to private ISPs. They have ~10 ISPs to choose from, and you can get 10 Gbps connections.

My city is placing a similar proposal on the ballot this November (https://connectkaysville.com/).

onionjake··on The War on Upstart Fiber Internet Providers
Verizon's is $70/month with no datacaps yet.

Speed and ability to get the service varies greatly by distance and LOS to the tower.

Source: https://www.verizon.com/support/5g-home-faqs/

onionjake··on The War on Upstart Fiber Internet Providers
Utah is one of those states that has laws that were originally crafted to prevent municipalities from providing the service by big ISP lobbyists. The law prevents municipalities from offering the service directly to consumers (still does), so UTOPIA was born with an open access network via a 'loophole' if you will in the laws.
onionjake··on When in doubt: hang up, look up, and call back
This doesn't work for everyone, but if you can do it then it works well. Don't answer any calls from a number outside your contact list. If it is important, they will leave a message. You can then call them back by looking up their number on the website.
onionjake··on Google Cloud Console renders incorrectly in Firefox making it unusable
I've tried disabling plugins, enhanced tracking protection, changing my scaling, etc. and it always looks the same.
onionjake··on Covid-19 is now officially a pandemic, WHO says
> What he came up with was that if you have two people who are roughly the same size and tidal volume, you can just double the tidal volume and stick them on Y tubing on one ventilator.

Would this help increase the number of covid-19 patients that could be treated? Or do they not require ventilators? I wonder if the study they mentioned about it was ever completed?

onionjake··on Deploy your side-projects at scale for basically nothing – Google Cloud Run
See https://docs.aws.amazon.com/AmazonS3/latest/dev/optimizing-p... for more specific guidelines on S3 scaling. It used to be you had to be careful and use randomized prefixes... It looks like that might no longer be the case. Also note there is a limit (arguably pretty high) per prefix on request rates.
onionjake··on Show HN: Kubekutr – Cookie cutter for generating Kubernetes resource manifests
I like the idea. It is one step above copying and pasting my own "standard" starting yaml I have come up with over the years. For example, labeling, resource requests/limits, standard mounts for config, common environment variables, etc. This would reduce copy-paste errors for sure.
onionjake··on Apple has a secret team working on internet satellites
Do you have any links and resources on those calculations about starlink?
onionjake··on New disclosures to our archive of state-backed information operations
Where do you find information like this?
onionjake··on Show HN: Pushback.io – Interactive push notifications with curl
I've used this for awhile now as a quick way to control some things on my raspberry pis running in my home from my phone.

Sometimes you just want something quick and a little bash script is perfect. For example, I use getmail to periodically fetch my email from all of my email providers, gmail, hotmail, etc.. Whenever I needed to get email quicker (like if I was sent a security code or something) I had to SSH into the server and manually call getmail to fetch it before the scheduled time. With pushback I have a little simple script that gives me the ability to do it from the pushback app and it is a real time saver.

Here is my script I used in case anyone is interested:

  #!/bin/bash
  while true; do
        result="$(curl https://api.pushback.io/v1/send_sync \
                -u <my_token>: \
                -d 'id=Channel_379' \
                -d 'title=Check Email?' \
                -d 'body=Choose from the actions' \
                -d 'action1=gmail' \
                -d 'action2=hotmail' \
                -d 'action3=personal')"
        if [[ "$result" == "gmail" ]]; then 
                getmail -r gmail
        elif [[ "$result" == "hotmail" ]]; then 
                getmail -r hotmail
        elif [[ "$result" == "personal" ]]; then 
                getmail -r personal
        fi 
        sleep 15
  done
I've used it to also notify me when long running commands finish, as a way to add manual review to an otherwise automated process, etc.
onionjake··on Rust vs. Go
I hope that the measure of whether something is good enough for the embedded space is not android.

I have quite a few openwrt routers running with substantially less resources available to it than the worst android phones.

I don't know if go would be able to meet the cpu/memory constraints in that environment... from the blog post it seems like that wasn't even measured?

onionjake··on LessPass: sync-less open source password manager
> How do you deal with sites whose password requirements don't match the output of LessPass? How do you handle the fact that sites want you to change your password? Yes. There's a counter field, but how do you know what site uses what version of the counter? How do you change the master password without having to change all passwords?

While not perfect, I've addressed some of the issues in a similar password scheme of mine: https://github.com/onionjake/doh

* you can write specs for domains' specific password requirements so the generator can guarantee it is accepted * the counters you append to your password when generated are not sensitive so can be saved/synced * I have not addressed needing to change your master password, but I'd also like to point out using a password hashing scheme doesn't preclude you from having more than one master password, perhaps to segment work passwords from personal ones. * sometimes domains change as well, so you can log the domains used it generate passwords, which might be sensitive from a Metadata standpoint, but from a hack-your-password sorta way. This also helps when I use it for passwords other than websites (like ssh key passphrases)

> Thing is: There's a solution for all these problems: All you have to do is actually generating a random password and store

I agree that generating random passwords gives a better user experience, which it is much more popular. I prefer holding all of my data even if I could store it remotely encrypted so hashing was the clear choice. I also kept the algorithm simple so that I could implement it from memory on a strange computer if needed. Definitely not for everyone!

onionjake··on Applying the Linus Torvalds “Good Taste” Coding Requirement
This comment thread was refreshing to read because it was technically enlightening, devoid of malice, and each party conceding arguments while expanding and clarifying places where it broke down or wasn't clear.

Something we can all strive for professionally and while commenting on HN.

onionjake··on Tup – A file-based build system for Linux, OS X, and Windows
I've hacked on audited objects before to accomplish something similar (https://github.com/boyski/audited-objects) It uses ld preload to do it and not strace, but same idea. I was checking existing makefile rules, but was considering using audited objects to help transition to tup or bazil.

IIRC strace wouldn't work if you used any setuid binaries (horrible but our makefiles used sudo for some things).

There are also some tricky corner cases like sed -i which creates a new file then moves it.

onionjake··on Google Shutting Down Wallet Card
Card Guard from America First Credit Union also has realtime notifications. It helped me catch a double charge from a merchant that came through days later.
onionjake··on 0 A.D.: A free, open-source game of ancient warfare
I love 0 A.D.! The only issue I have ran into is it slows down so much that it is basically unplayable with more than 4 players or so (or a few AI players). I've been meaning to jump in for awhile and help improve things.
onionjake··on Git Large File Storage 1.0
Gitlab giving me an alternative is awesome and commendable. If I will be able to clone a repo from github including all of the lfs then push it all to gitlab that would be better than nothing! Is github contributing to your effort to have an lfs server that is open and free?

Let me give an example of one way it hurts the existing git ecosystem. Someone decides to include their external source dependencies for their project as tarballs using lfs (which is probably dumb and not the use case that lfs is trying to support, but people will do it nonetheless). Now I want to mirror that repository inside of my companies firewall which hosts its git repositories using just git over ssh. Without lfs, I would just do 'git clone --mirror && git push --mirror' and I internally have a mirror that is easy to keep up-to-date, is dependable, supports extending the source in a way that is easy to contribute back, etc..

Now what options do I have with lfs (outside of gitlab)? Create a tarball with all the source +lfs in it? Create a new repository that doesn't use lfs and commit the files to that? Each of these is less than ideal and makes contributing back to the project harder.

Imagine instead a world where this happened: Github.com announces that they are adding large file support to git. These large files will be using an alternative object storage, but the existing git, http, and ssh protocols will be extended to support fetching these new objects. When support for it lands in the git mainline repository, suddenly everyone will be able to take advantage of it, regardless of how they choose to host their repositories!

I admire gitlab for creating an open source server implementation. I just wish that github would have done it a different way that would have been better for the overall git community (not just github users).

onionjake··on Git Large File Storage 1.0
Yes, I just don't see why it couldn't have been done directly using/extending existing git protocols.

The additional command and configuration (and perhaps object storage) would be needed either way.

onionjake··on Git Large File Storage 1.0
Neat! Is there a way for me to serve those files so people can then use my repository as the authoritative source? I see that they still have the concepts of remotes, so maybe things are getting there?
onionjake··on Git Large File Storage 1.0
How? Does git-lfs have a way of downloading and serving all of the files?

If it was fully integrated with git, you could do 'git fetch --all-objects-ever' and your repository could then be cloned and fetched from.

← PreviousPage 2 of 3Next →