HNHacker News
TopNewBestAskShowJobs

ishandotpage

248 karma · joined July 3, 2023

Self taught software developer.

Mastodon: @ishands@hachyderm.io Website: https://ishan.page

submissionscomments
ishandotpage··on S3 Is the Future, S3 Is the Past
I have had a particularly poor experience with Cloudflare Billing support, where an unexplained invoice was raised, silently? failed, and R2 access was immediately cut off, support was unhelpful in being able to explain anything AND took weeks to reply, and I had to move off R2 posthaste as it brought down production.

I will not be trusting Cloudflare with anything production critical.

ishandotpage··on Google Cloud suspended my account for 2 years, only automated replies
I am going through a very similar issue with Cloudflare right now, and billing support is almost of no help.
ishandotpage··on Show HN: Ez FFmpeg – Video editing in plain English
I think you may enjoy [Nushell](https://www.nushell.sh)
ishandotpage··on Go ahead, self-host Postgres
`pglite` is a WASM version of postgres. I use it in one of my side projects for providing a postgres DB running in the user's browser.

For most purposes, it works perfectly fine, but with two main caveats:

1. It is single user, single connection (i.e. no MVCC) 2. It doesn't support all postgres extensions (particularly postGIS), though it does support pgvector

https://github.com/supabase-community/pg-gateway is something that may be used to use pglite for prototyping I guess, but I haven't used this.

ishandotpage··on Notes on Distributed Systems for Young Bloods (2013)
I agree with you that this question is unanswerable verbatim. It sorta reminds me of how Agile came up the "Definition of Done"

System maintainers / stakeholders themselves need to come up with a "Definition of Working"

Since distributed systems are basically in some state of failure/degradation almost all of the time, it is useless to try to say that "the system is working when there are no errors anywhere".

Some sort of threshold needs to be arrived at where we can say "it's working".

What that threshold looks like is going to vary from project to project.

ishandotpage··on I'm an IIT Madras Student. But to Some, I'm Diluting the Brand
Heyo, thank you for your kind comment, I did recognise the student id but I wasn't sure if you wanted me to reach out or not, but I will do that now!
ishandotpage··on Show HN: BoGO – Generate Go back end services directly from SQL files
Very cool, reminds me of both [sqlc](https://sqlc.dev) and [oapi-codegen](https://github.com/oapi-codegen/oapi-codegen)

I'm not a fan of the enterprisey hexagonal-style code this generates, but I can understand where this might be useful for someone who does follow that.

A question regarding evolution: it's rare that schemas stay constant. I'm not sure if this tool will lend itself well when the time comes to, say, add another table, though I might be misunderstanding here.

ishandotpage··on Ask HN: Share your AI prompt that stumps every model
I usually ask "How much large language could a large language model model if a large language model could model large language"

Not one has given me the correct answer yet.

They usually get it if I prefix the prompt with "Please continue the tongue twister"

ishandotpage··on Bangladesh built a tech park for 100k workers. Now it's a ghost town
I used to work in Salt Lake, it's a really weird place. Very jarring with all the glass buildings that heat up the place, and horrible connectivity to the main city (in terms of public transport).
ishandotpage··on Show HN: Composable (as in iGoogle, but modern) privacy-friendly new tab
Hey, this is pretty cool! I used to love iGoogle back in the day. Great job!
ishandotpage··on Show HN: New CrowdSec bouncer via Traefik plugin
Hey, this is cool, well done!
ishandotpage··on Computers are an inherently oppressive technology (2022)
In a McLuhanistic interpretation,

"We become what we behold. We shape our tools and then our tools shape us"

ishandotpage··on Computers are an inherently oppressive technology (2022)
> The operators also take on attributes of the machines they manage and in the process inflict willful cruelty on others through their control of the machinery. The most obvious example of this is, of course, war and the technology associated with its execution. So this essay is right, machines/algorithms are ruthless but it is the people that use them to inflict pain and suffering on others that makes the whole thing into a grand tragedy.

This mirrors my experience. About six months ago, I had an accident on the metro in my city, where my leg slipped between the train and platform while deboarding. Not only did passers by not help, the "operators" stood idly by. While I am lucky to have escaped with "just" an ACL tear, I would have lost my leg that day if my friend hadn't been there to pull me out.

ishandotpage··on Ask HN: What lesser-known Python libraries do you wish people knew about?
https://pypi.org/project/dirtyjson/

Using this one a lot nowadays. It's great for getting embedded JSON out of things which are not very consistent.

Extremely useful for extracting JSON from LLM responses, also great for general purpose data munging.

https://dataset.readthedocs.io/en/latest/

Used to love this one when I didn't know SQL: It's kind of like RedbeanPHP, but in Python, and lets you do stuff like this (from link) :

import dataset

db = dataset.connect('sqlite:///:memory:')

table = db['my_table']

table.insert(dict(name='John Doe', age=37))

table.insert(dict(name='Jane Doe', age=34, gender='female'))

john = table.find_one(name='John Doe')

ishandotpage··on Ask HN: What side projects landed you a job?
When I was in high school, I was kind of into competitive programming. We wanted to conduct contests, but the labs didn't have internet access, so we couldn't use stuff like SPOJ/Codeforces.

To make it easier for our computer club to conduct small contests, I made a small application in Python that could display problems, accept submissions, and automatically grade them.

It had a horrible "single page" UI that used jquery to hide and show divs to switch pages, and obviously had 0 sandboxing, but it got the job done for our purposes.

A couple of years later, a CEO of a local startup was visiting my high school, and he happened to catch the program in action. His business had been struggling with a hairy Google Drive integration and he asked me if I had any ideas. That eventually led to a part-time offer, which became full time after I graduated.

So yeah, it was quite serendipitous. While the project wasn't directly related to my job, it did give me an in, even though the code quality was so shoddy it makes me shudder to even think about it now.

ishandotpage··on Exploring Self-Hosted Email Services
The corporates are pretty good at keeping self hosters emails out of their user's inboxes citing "Spam"
ishandotpage··on Jaq – A jq clone focused on correctness, speed, and simplicity
Have you tried `gron`?

It converts your nested json into a line by line format which plays better with tools like `grep`

From the project's README:

▶ gron "https://api.github.com/repos/tomnomnom/gron/commits?per_page..." | fgrep "commit.author"

json[0].commit.author = {};

json[0].commit.author.date = "2016-07-02T10:51:21Z";

json[0].commit.author.email = "mail@tomnomnom.com";

json[0].commit.author.name = "Tom Hudson";

https://github.com/tomnomnom/gron

It was suggested to me in HN comments on an article I wrote about `jq`, and I have found myself using it a lot in my day to day workflow

ishandotpage··on Interactive examples for learning jq
oopsie :D
ishandotpage··on Interactive examples for learning jq
For getting JSON out of LLMs, I have found the Python library [dirtyjson](https://pypi.org/project/dirtyjson/) to be quite useful.
ishandotpage··on Interactive examples for learning jq
I am using https://github.com/biowasm/aioli which provides a already compiled wasm jq along with all the related support code for calling it
ishandotpage··on Interactive examples for learning jq
I'll shoot you an email after work
ishandotpage··on Interactive examples for learning jq
Oh my - your series of blog posts come up regularly for me when googling jq things.
ishandotpage··on Interactive examples for learning jq
Hey, thanks for your kind words!

Regarding the reset button: I think that's a great suggestion and now it bugs me so much that I can't reset it. I'll add a reset button later tonight when I'm off work.

Regarding the confusing example: Yes, some of the examples are missing explanations (mainly because I spent more than a month on this post and I just did not want to put off putting it out any longer). Sorry haha. I'll try to improve the explanations and add more.

ishandotpage··on Byju’s exposed sensitive student data, including loan details
of course they did, at this point is anyone even surprised?
ishandotpage··on The secret life of .well-known
Author of the post here! Feel free to ask me any questions