Live data from Hacker News

Harlequin: SQL IDE for Your Terminal

github.com

11–20 of 89 posts

Re: Harlequin: SQL IDE for Your Terminal

#11
post #4

Suggestion: under "works with your database" consider naming the databases rather than only offering a list of icons. Also seems to be a bit of hubris to claim a SQL IDE "works with your database" when SQL Server and Oracle, two of the database products with the largest market share, are not supported (yet?)

[deleted]

Re: Harlequin: SQL IDE for Your Terminal

#12
post #2

Harlequin has been on my "to investigate" list since it popped up on hn a few weeks/months ago. I still need to experiment with it a bit more, but I had been thinking of building a some tragic equivalent to this, and now I don't have to :)

The HN hive mind is amusing as I came here to get to comment this exact post. It looks really interesting, and I'm also tired of giving up so much memory for just a SQL GUI tool.

Re: Harlequin: SQL IDE for Your Terminal

#13
post #8
post #7

Question: do people love TUI, because they love being in a terminal? Or ... is this a movement against application bloat, which has become all to common these days? EDIT: why the downvotes?

If you develop SQL you need to write code and view tables. A grid with monospace characters is perfectly suitable for that. But other than that, no, people don't love being in a terminal. It just happens that all open source portable toolkits like qt and gtk do not work via ssh and are in general total abominations for developers and users. The vt100 standard is 45 years old and turned out to be the lowest common den…

> "if you develop SQL you need to write code and view tables ... [other tools] do not work via ssh"

Are you implying that people only write code inside of a terminal ssh session?

Re: Harlequin: SQL IDE for Your Terminal

#14
post #4

Suggestion: under "works with your database" consider naming the databases rather than only offering a list of icons. Also seems to be a bit of hubris to claim a SQL IDE "works with your database" when SQL Server and Oracle, two of the database products with the largest market share, are not supported (yet?)

> SQL Server and Oracle, two of the database products with the largest market share Agree on the first point, but is 'market share' - a metric comparing commercial sales revenue which by definition excludes open source software, really that relevant when critiquing a tagline for a FOSS tool implicitly targeting FOSS databases at a time when FOSS dominates? If this wasn't an MIT licensed project without a single hint…

It's relevant in that they're prolific databases, so there's a nontrivial chance that a user of one of them will:

- stumble across the tool

- read that it "works with their database"

- hopefully read the actual list of supported databases

- become disappointed to learn that it does not in fact work with their database

In the case that hopes are not met, the user actually downloads the application and discovers the hard way that it does not work with their database.

So market share does seem relevant to the frequency of disappointment though. Is it going to be a frequent enough occurrence to be worth spending any time doing anything about? I don't know.

Re: Harlequin: SQL IDE for Your Terminal

#15
Every time I notice something is a Python codebase I feel a letdown as it means it will likely break some other Python project from someone else I have on my dev machine which I may not have touched in a while but which I will find got silently broken when I most need it

Especially if it's a nice TUI app like this looks

EDIT: Guys, in my experience, virtual environments do not fix this problem in all cases. At least, not sufficiently for me (after getting used to Nix's guarantees, for example). Not to mention, there's multiple ways/attempts at creating and working with virtual environments: https://twitter.com/pmarreck/status/1735363908515295253). See below comment.

Re: Harlequin: SQL IDE for Your Terminal

#16
post #13
post #8

Earlier quoted context omitted.

If you develop SQL you need to write code and view tables. A grid with monospace characters is perfectly suitable for that. But other than that, no, people don't love being in a terminal. It just happens that all open source portable toolkits like qt and gtk do not work via ssh and are in general total abominations for developers and users. The vt100 standard is 45 years old and turned out to be the lowest common den…

> "if you develop SQL you need to write code and view tables ... [other tools] do not work via ssh" Are you implying that people only write code inside of a terminal ssh session?

I believe their next sentence took away the need to try to infer anything, and in fact made their point quite clear:

> A grid with monospace characters is perfectly suitable for that.

Re: Harlequin: SQL IDE for Your Terminal

#17
post #13
post #8

Earlier quoted context omitted.

If you develop SQL you need to write code and view tables. A grid with monospace characters is perfectly suitable for that. But other than that, no, people don't love being in a terminal. It just happens that all open source portable toolkits like qt and gtk do not work via ssh and are in general total abominations for developers and users. The vt100 standard is 45 years old and turned out to be the lowest common den…

> "if you develop SQL you need to write code and view tables ... [other tools] do not work via ssh" Are you implying that people only write code inside of a terminal ssh session?

It doesn't seem like it to me. ISTM that they're implying that most sql tools have a gui component which isn't friendly to running remotely over an ssh session.

I've personally never seen a good experience of display forwarding over ssh.

Of course, most people and tools get around this by tunneling a connection to the database over ssh and running the GUI locally.

Re: Harlequin: SQL IDE for Your Terminal

#18

Every time I notice something is a Python codebase I feel a letdown as it means it will likely break some other Python project from someone else I have on my dev machine which I may not have touched in a while but which I will find got silently broken when I most need it Especially if it's a nice TUI app like this looks EDIT: Guys, in my experience, virtual environments do not fix this problem in all cases . At least…

Install using pipx to avoid that. (or virtualenvs directly if you don't mind getting your hands dirty)

Re: Harlequin: SQL IDE for Your Terminal

#19

Every time I notice something is a Python codebase I feel a letdown as it means it will likely break some other Python project from someone else I have on my dev machine which I may not have touched in a while but which I will find got silently broken when I most need it Especially if it's a nice TUI app like this looks EDIT: Guys, in my experience, virtual environments do not fix this problem in all cases . At least…

This is the problem that 'venv' (virtual environments) was designed to solve.

You can run pip in an isolated virtual environment, in user mode (not as root) - see https://gist.github.com/saurabhshri/46e4069164b87a708b39d947...

Re: Harlequin: SQL IDE for Your Terminal

#20

Every time I notice something is a Python codebase I feel a letdown as it means it will likely break some other Python project from someone else I have on my dev machine which I may not have touched in a while but which I will find got silently broken when I most need it Especially if it's a nice TUI app like this looks EDIT: Guys, in my experience, virtual environments do not fix this problem in all cases . At least…

every project you have should be in a virtual environment. it is not hard. https://docs.python.org/3.12/library/venv.html

    python -m venv ~/my-venvs/

    source ~/my-venvs/name/bin/activate

    pip install 
but stuff like this would usually get installed globally, and your projects would instead have a venv.

personally my favorite tool is pyenv, which allows you to have many versions of python on your machine as well as many virtualenv (which are assigned to any version you have installed)

then it is as simple as

    pyenv virtualenv  
    pyenv virtualenv 3.11.1 xyz
and to activate

    pyenv activate xyz
this allows you to keep every project you have isolated not only to the packages required to run it, but also the python version required.

I work on a handful of projects that run on 3.10, 3.11 and 3.12. Each has their own independent python version, and within that version they also have their own python packages (pip environment).

At the end of the day these are simply directories on disk.

Post reply on HN