Hacker Newsnew | past | comments | ask | show | jobs | submit | keybits's favoriteslogin

(author of mise)

The biggest advantage just has is that it's been around longer, in mise tasks only came out of experimental like a month ago. mise tasks themselves are stable, but there are still experimental things and some portions that need to be used more—like windows. That said, most of the stuff that needs polish are features just doesn't even have.

I had a look at the top issues for just and pretty much all of them I've handled in mise: https://github.com/casey/just/issues?q=is%3Aissue+is%3Aopen+...

here's my unashamedly biased thoughts on why I like mise tasks compared to just:

* tool integration - this is the obvious benefit. If you run `mise run test` on CI or wherever it'll setup your toolchains and wire them up automatically

* parallel tasks - I saw this as table-stakes so it's been there since the very beginning

* flags+options - mise tasks are integrated with usage (https://usage.jdx.dev) which provides _very_ comprehensive CLI argument support. We're talking way more than things like flags and default options, as an example, you can even have mise tasks give you custom completion support so you can complete `mise run server --app=<tab><tab>`

* toml syntax - it's more verbose, but I think it's more obvious and easier to learn

* file sources/outputs - I suspect just doesn't want to implement this because it would make it more of a "build tool" and less of a "task runner". I chose to despite having the same position that mise tasks is also not a "build tool". Still, I think even in the world of running tasks you want to only run things if certain files changed often.

* `mise watch` - this is mostly just a simple wrapper around `watchexec -- mise run ...` for now, but it's an area of the codebase I plan to focus on sometime in the next few months. Still, even as a simple wrapper it's a nice convenience.

* "file tasks" - in mise you can define tasks just by being executable and in a directory like "./tasks". This is great for complex scripts since you don't also need to add them to mise.toml.

I have not used just very much, but I did go through the docs and there are a handful of things I like that it definitely does better:

* help customization - it looks like you can split tasks into separate sections which is nice, I don't have that

* invoking multiple recipes - I don't love how this is done in mise with `mise run task1 ::: task2` but I _also_ wanted to make it easy to pass arguments. At least for now, the ":::" won out in the design—but I don't like it. Probably too late to change it anyhow.

* [no-cd] flag - both just and mise run tasks in the directory they're defined, but I prefer how this is overridden in just vs mise.

* expression/substitutions - mise uses tera for templating, which is very flexible, but it requires a bit more verbosity. I like that in just you can just use backticks or reference vars with minimal syntax. Same thing with things like joining paths and coalescing. I have all of this, but the syntax is definitely more verbose in mise. Arguably though, mise's verbosity might be easier to read since it's more obvious what you're saying.

* confirmation - I love that in just you can just add `[confirm]` to get a confirmation dialog for the task. I'm sure we'll get around to this at some point, mise already has confirmation dialogs so it shouldn't be hard to add. The tricky part will be getting it to work right when running a bunch of stuff in parallel.

* task output - I haven't used just that much so I can't actually say that it's "better", but having more control over how tasks are output is definitely a weak part of mise right now and is in need of more functionality like in just how you can add/remove "@" to echo out the command that's running

I want to call out one very silly thing that from reading these github issues sounds crazy. It sounds like both just and taskfile have the same behavior with `.env` files. In just and taskfile, variables defined in .env are ignored if they're already defined. I don't think anyone would want that—nobody has asked for mise to behave that way—and it doesn't appear either tool even allows you to change it!


If you click on lists at the bottom of the page[0], there are two relevant entries:

* highlights: Particularly interesting comments (manually curated via request) https://news.ycombinator.com/highlights

* bestcomments: Highest-voted recent comments https://news.ycombinator.com/bestcomments

[0]: https://news.ycombinator.com/lists


I absolutely adore the simplicity behind this: Energy must balance, so it flows from high concentrations to lower concentrations. Things that help that flow are selected for.

From that springs everything we are. Utterly amazing to me that from a gradient plus some random chemicals plus time equals humans, sex, violence, loss, birth, love, games, music, and so much more.

All just to help the earth cool down a little bit faster.


There is a long history of hackers—in the classic sense—using computers to do things other people don't want them to do, and those other people unable to do anything about it (or, at best, engaging in an arms race with the hackers). This has been bad for those other people but overall very good for society. It is what birthed GNU, "IBM Compatible", ad blockers, Firefox, BitTorrent, YouTube ReVanced/youtube-dl, and so much more.

The goal of device attestation for consumer software is to put an end to that. Originally pioneered by Apple on iOS, now making its way to all of computing thanks to the forces of capitalism, device attestation means that the hackers lose. It is the bad ending.

The other twin threat, and I hate to say it, is the software industry sorting its security story out. In the past iOS jailbreaks used to be common, but there hasn't been an iOS jailbreak in a year. Rust isn't helping.

We are hurtling towards a world where producers and IP holders have complete control over the content they produce, and use leading-edge cryptography and ultra-secure consumer-hostile software to keep it that way. This is one of the most dangerous developments to ever happen in all of history, and once it's real there's no going back.

Stallman was right.


After the first few paragraphs of content, the segue about 'bots' is strange -- unless it's not. Really this article is a thinly-veiled promotion of the idea of chatbots, which isn't surprising given the publisher's primary business is CRM and chat products and whatnot.

But it's also the Last New Frontier, because as the comScore charts show, most people spend their time in the top 3 apps -- which are probably the same or come out of the same pool of half a dozen. So the only way to push one's own content is to participate in a popular app maker's content ecosystem (FB Instant Articles, Snapchat Discover, myriad chatbot platforms for various messengers), or participate in a "open web" 'discovery' ecosystem (Google Search -> Google AMP).

So really the article's content seems to imply that the future isn't browsers (in the traditional sense of 'here's a user agent you can navigate to arbitrary URLs') after all, it's content aggregators who provide windows to -- and framing around -- content. This point has been made a few times before, most notably by Paul Kinlan of Google [1], so it's a pretty safe bet it's actually the case.

[1] https://news.ycombinator.com/item?id=12206846


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: