I will not be trusting Cloudflare with anything production critical.
248 karma · joined July 3, 2023
Mastodon: @ishands@hachyderm.io Website: https://ishan.page
I will not be trusting Cloudflare with anything production critical.
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.
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.
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.
Not one has given me the correct answer yet.
They usually get it if I prefix the prompt with "Please continue the tongue twister"
"We become what we behold. We shape our tools and then our tools shape us"
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.
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')
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.
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
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.