HNHacker News
TopNewBestAskShowJobs

troyjfarrell

107 karma · joined October 5, 2011

submissionscomments
troyjfarrell··on “It works better in the app”
Kazakhstan has an app (QazETA) for its electronic travel authorization, which is required for many passport holders who want to enter under the visa-free regime. (Perhaps it is not strictly required as one could apply for a visa instead.)

Somewhat confusingly, the iOS App Store description [0] of the app says that it is not a government app, while the rest of the internet and Kazakh government sites say that it is the official government app for the purpose of applying for the ETA.

[0]: https://apps.apple.com/app/id6748705452

troyjfarrell··on Buckle Up for Bumpier Skies
Have you see AI repeat itself inside a paragraph? This looks more like something an editor missed.

Fourth paragraph, sixth sentence: "Still, at best, only two-thirds of the occupants were buckled up after seventy seconds."

Fourth paragraph, final sentence: "Fully a third of the occupants were still out of their seats after seventy seconds."

troyjfarrell··on Show HN: Triplit – Open-source syncing database that runs on server and client
Looks like it could be a more batteries-included/opinionated alternative to RxDB (https://rxdb.info). The relational queries might help some people who tend to think in SQL as opposed to documents (as in CouchDB or MongoDB) and the WebSockets for synchronization will help people get started more quickly. (RxDB provides interfaces for those who want to implement their own storage engine and/or synchronization backend.)
troyjfarrell··on New study finds microplastics infiltrate all systems of body, alter behaviour
Kyrgyzstan passed a law banning many single-use plastics from January 1st, 2027. I hope the ban sticks. It will be challenging to make the economics work.

https://24.kg/english/272281__Production_and_sale_of_plastic...

https://24.kg/english/272323__Kyrgyzstan_to_fine_for_sale_an...

troyjfarrell··on Cloud Backed SQLite
I believe that you can echo the '.dump' command to SQLite.

    echo .dump | sqlite3 db | ssh user@rsync.net "dd of=db_dump"
It worked for me.
troyjfarrell··on Restricting network access using Linux Network Namespaces
You've just described Sandstorm. Sandstorm runs instances (called grains) of applications in a sandbox. The application gets a limited file system and a Cap'n Proto RPC connection to the outside world over a unix socket. Sandstorm runs the HTTPS server, which turns requests into RPC calls. Sandstorm authenticates the users and provides temporary subdomains and frames to sandbox the HTML side of it.

https://sandstorm.io/

troyjfarrell··on Ask HN: What do you use to build auth?
I build my apps on Sandstorm[1]_. Sandstorm provides authentication as a part of the platform. For Django applications, I wrote Django Loves Sandstorm[2]_.

If your application fits into Sandstorm's model of grains[3]_, then the security benefits of Sandstorm are many.

.. [1] https://sandstorm.io/ .. [2] https://pypi.org/project/djangolovessandstorm/ .. [3] https://docs.sandstorm.io/en/latest/using/security-practices...

troyjfarrell··on Dashy – A self-hosted homepage for your homelab
Perhaps more so than one-click services, Sandstorm is a platform for securely hosting web apps. It succeeded in making apps (called grains) easy to use, but not in making them easy to package or develop.

Sandstorm provides security by sandboxing applications and giving them a capability-based API (via Cap'n Proto RPC over a unix socket) for connecting to the outside world and other grains. Grains can also export capabilities, which would allow for the pluggable modules envisioned by kayson. Sadly, few grains do this as of yet. In my limited experience with this part of Sandstorm, the developer experience is still rough around the edges.

troyjfarrell··on PikaPods – Instant Open Source App Hosting
Sandstorm uses Vagrant as part of the app packaging (for developers) process. It is _not_ used in everyday use of Sandstorm. Instead, "Sandstorm implements fine-grained containers"[1], not VMs.

1: https://docs.sandstorm.io/en/latest/using/security-practices...

troyjfarrell··on Ask HN: Can you help me find a popular open-source tool?
https://gchq.github.io/CyberChef/
troyjfarrell··on Start Self Hosting
Sandstorm is in need of more coders to help maintain and update apps, but it's not abandoned. I use it, both personally and professionally.

It results in a better experience for end-users because applications are actually sandboxed. This (mercifully) means that any security issues in the out-of-date applications does not become a cause for panic. The downside is that packaging those applications is not trivial.

troyjfarrell··on Folding bicycle small enough to fit in hand luggage
If you are not too picky about the exact model of replacement component, you can get most components at bicycle shops on the other side of the world. They are quite standardized.
troyjfarrell··on Screw it, I’ll host it myself
> I believe another contributor managed to get an app running using Postgres, but I don't know how they did it. I think there's some aspect of the Sandstorm sandbox that throws Postgres for a loop, and you have to kinda hack around it.

That would be me. I've done it on a private app and helped bring it to another app, so it's repeatable. I'll try to explain it on the sandstorm-dev group in the next week or so.

troyjfarrell··on Why Do I Exist?
I'm sorry that you celebrated your birthday alone. That's not fun.

Don't beat yourself up because you think that someone younger and richer can solve the problems that you are solving more effectively. The reality is that someone younger and richer is not interested in solving the problems that you are actually solving. Elon is working on space, but he's not working on helping the homeless.

The world is bigger than it seems and your impact on it is beyond what you can see. Don't worry that you aren't Elon Musk. Your post, thus your existence, reminded me to get back to looking into emergency mesh networks. (I looked at your submissions and comments.) One of my clients is a clinic in a place that is expecting a natural disaster and will likely lose communications when that disaster happens. Your work on LoRa and ESP32s may end up saving the lives of people you've never known.

troyjfarrell··on New campaign targeting security researchers
I agree that everyone, even security researchers, will make mistakes. But there are people who survive with state-level actors in their threat model. These people probably 1) do not post their threat model and mitigations in easy-to-Google places and 2) have the help of one or more other state-level actors.
troyjfarrell··on Open EMR
And yet there is a need for software. I'm supporting a clinic in Asia that is using OpenEMR for records. The government is requiring reporting of diagnoses by category. This is exactly the sort of paperwork that an EMR system should be able to solve well. Since we haven't figured out how to do this with OpenEMR, the staff is doing it by hand. I hope to solve this problem soon, whether by figuring out how OpenEMR supports this or by adding this functionality.
troyjfarrell··on How To Be An Anti-Casteist
I think you are right. I had this part of the comment in mind:

> Then there is the case where if an Indian gets into management, they will start > filling everything with their friends. Other management positions, they will start > fighting to bring in some contractors from some place like Infosys.

This was not my experience. I also felt that the overall tone of the comment was negative, so I wanted to share that not everyone has had a negative experience with Indians in management.

troyjfarrell··on How To Be An Anti-Casteist
My experience (anecdote) is the opposite.

I worked for an Indian manager in a game studio. I don't know what caste, except that he wasn't Christian or Muslim, probably because he didn't think it worth mentioning. He hired based on demonstrated skill, so we had a diverse group of coworkers. He actively encouraged the group to eat together, arranging meals out with careful consideration for the group's preferences. He was approachable, personable, considerate, friendly and kind.

People are people and stereotypes do not always fit.

troyjfarrell··on Mainline Linux on the MikroTik RB3011
Armbian on Espressobin is a nice platform. I have three v5 Espressobins. Sadly, the v5 units have some quality issues. One of the three runs non-stop. The second reboots sporatically. The third freezes sporatically and has to be unplugged. I don't know if the cause is thermal or poor soldering or something else. I would buy many more if they were reliable.
troyjfarrell··on Backing up data like the adult I supposedly am
I can confirm that cloning a local Borg repository to a cloud system works. One of my systems uses Borg to make a local backup. Next, B2's command line tool synchronizes the local Borg repository to B2.
troyjfarrell··on Large-scale Abuse of Contact Discovery in Mobile Messengers [pdf]
I don't think I understand how this is not circular reasoning (can't use UUIDs in place of phone numbers because contact list is comprised of phone numbers instead of UUIDs.) If contacts are not phone numbers, then is there a problem with them living on Signal's servers? Are we back to the complaint about discovery being difficult?

Signal uses phone numbers because it makes discovery easy. Threema, for example, can use phone numbers for discovery but does not require it. Discovery without phone numbers is easy. I see my contacts and scan their Threema QR codes. If I need to contact a friend of a friend, my friend gives me the FoaF's Threema ID.

troyjfarrell··on Google, nobody asked for a new Blogger interface
Sandstorm has accidentally solved the problem of rapid change by not having enough developers to continually update the available applications, which include Wordpress. You can also ignore updates.

Thankfully, the architecture of Sandstorm turns many types of vulnerabilities in the installed applications into non-events. This means that the lack of updates is not so alarming.

https://docs.sandstorm.io/en/latest/using/security-non-event...

troyjfarrell··on Raspberry Pi as a local server for self hosting applications
Sandstorm(.io) is very cool, and it does make managing your self-hosted web apps very easy. But it does not run Docker containers and it only runs on Linux x86-64. (There have been some attempts at running Docker containers with Sandstorm, but they are not easy to use.) Instead, the web applications must be specifically packaged for Sandstorm.
troyjfarrell··on Show HN: The Internet Portal – Warp to a Random Website, Using ICANN CZDS Data
I found a site that made me think of Microsoft FrontPage: http://www.bichonfrise.ws/

HTML 4.01 Transitional and table layouts FTW!

troyjfarrell··on Firebug
Venkman was the only game in town. It was a glorious day when Firebug surpassed Venkman.

https://wiki.mozilla.org/Venkman/Firebug_Comparison

troyjfarrell··on The Spite Software License
It is funny. But it is also counterproductive. The Spite Software License theoretically makes your code useful only to people who don't care about licenses. But if the source code is published, it's already useful to those people. For those who make the effort to be responsible and respect licenses, the source code is useless. So Spite is probably a very good name for this.

edit: clarity

troyjfarrell··on OpenIndiana Hipster 2020.04 Released: Phase Out Python 2, GCC7 as Base Compiler
I'm using SmartOS (and Triton) with minimal SmartOS images in production for hosting mixed services.

In general, I really like it. My biggest frustration at the moment is the age of packages in pkgsrc. Second would be the lack of support for Illumos in third-party packages. These frustrations are manageable.

troyjfarrell··on Using the hunger I experienced as a kid to teach mine about generosity (2019)
The perspective that "illness makes the life not worth living" is not universal. Indeed, it is utilitarian or epicurean perspectives that lead to this way of thinking. Many Christian perspectives (and, I expect those of many faiths) will hold that there is tremendous value in living and enduring discomfort and suffering.

It's worth noting that these faiths spur believers on toward helping the poor and disadvantaged.

troyjfarrell··on Newsrooms, let’s talk about G Suite
CryptPad [0] provides end-to-end encryption for collaboration on documents. It seems that the server will have some metadata, but no access to content. It would require some development to integrate with existing workflows, but the foundation seems solid.

If you don’t want your data encrypted at rest, self-hosting with Sandstorm [1] would be a good choice.

Though it hasn’t happened yet (to my knowledge), putting CryptPad and Sandstorm together seems like a natural next step.

[0]: https://cryptpad.fr

[1]: https://sandstorm.io

Edit: fix footnote numbering

troyjfarrell··on Free Software network services and web applications which can be hosted locally
Sandstorm requires that the web apps are packaged specifically for it. The process is not hard, but you have to decide to do it. Sadly, most apps that have been packaged have not been kept up to date.

That said, it's a great platform. I have customers using it with some marketplace apps and some custom apps. My only wish is that more people used and developed for it.

Page 1 of 2Next →