There is also a variant of 'system' which takes multiple agruments. It invokes the program in the first argument and passes the other arguments directly without going through shell so no globs etc. can take place. But this is not mentioned in the article but it is in Ruby docs
My own recent experience with this - i run a small sass web app and about a year ago i decided to partner with advertising company to help with the grow.
Part of the plan was that they will remake our static homepage in Wordpress bc it will be easier to manage it for them and also easier to add a blog, which was part of the new plan. I know Wordpress is slow and i would say unnecessary also but i said yes bc i did not want to micromanage them.
A year later we parted our ways and i was left with WP where the page load was abysmal(3-5 seconds) and about 10Mb of bs. There was something called "Oxy" or "Oxy builder" which would add a tons of style,js and clutter to the markup and kind of SPA page load style but horribly failing.
So now i migrated the site to Jekyll, got rid of all the bs and it's back fast. And for me also again possible to really improve.
So for my businesses i'm not touching WP ever again and that will be a huge bloat reduction in itself
Seems like your issues were not with WP itself, but with whatever plugins and themes were added to it. Avoiding WP entirely for this is like avoiding a programming language because the 1 developer you had experience with sucked at it. WP itself can be very fast, as is evident by a ton of high profile sites running it (CSS-Tricks, TechCrunch, New York Times, Time Magazine, etc). I'm not a fan of WP myself, but that's just because I don't like how its built and how it entirely avoids modern programming standards, not because it is slow, which it most definitely doesn't have to be.
Can someone explain what Postman or Bruno is for? I know it's something for interacting with apis but why would i use it. I interact with apis a lot with curl or wrapper in my languages but never really needed something else?
For me it's more convenient than curl for three reasons mainly:
1. Easier to organize collections of requests in a visual hierarchy
2. Environments mean you can use the same collection to easily execute against local, dev, staging, production, etc.
3. Pre- and post-execution scripts mean you can programmatically extract values and chain into other requests (think grabbing an access token from an oauth request then using that token for an authenticated request)
It's basically just convenience features, nothing you can't get with other tools.
One more thing I don't see mentioned is that you can share requests with your team easily, so if you worked on an API integration, you can document it, share it with your team, and when the next time someone else needs to fix something, they can find something that worked at some point and has all the required fields.
Of course you could also just check in to version control these requests as curl commands, so if your team has the technical knowhow, that's about almost the same.
Or even better, you write some tests in your language to make these requests, then you have an integration test, too.
As someone who uses curl and postman regularly, both tools have their places: I've found curl most useful for quick ad-hoc requests, or if I need to figure out why my service is no longer working. Postman I've found most useful to create a library of requests that are available on-hand: If I need to call services but I don't want to have to remember what the exact URL is or what the exact payload is.
To put it simply: Postman is for everything but what curl is for. Sure it also performs the actual request somewhere under the hood but that’s mostly irrelevant. Having a single integrated user interface (it could also be a text UI) to craft a request, sometimes sending JSON, sometimes a file, then sending it to inspect the result, then modifying the request then doing it again is very powerful. Not to mention OAuth/OIDC support and the like.
Sometimes, you have to find out how an API works, exactly. Sometimes you want to test your own APIs in ways the regular clients do not allow.
Alot of people in tech/tech-adjacent cant use CLI, need an easier alternative. Also, instead of having a huge .txt/.md recursive directory of curl commands, programs like these bundle up request workflows into 'collections' etc..
For me a big usecase is the ability to save specific requests and categorize / name them. It's a good way to document test data. If someone creates a feature which I want to test or debug I'd have to dig into the database to find which parameters I'd need to use, or I just find the right request in the tool.
My use case (covered by postman but not Bruno) is to test a code base where unit testing is not available.
We have multiple environments with multiple parallel versions (think like dev/staging/prod and current/legacy), these deployments mostly have the same API with slightly different urls and credentials
We use multiple environments to easily switch between the various versions both for one-off operations (like a clear cache call that only needs to be called few times a year in response to external actions) and to manually test features.
I can see why not everybody would have this use case
Iirc Bruno does not have enough environment/variables/pre-post-request scripting support
Bruno/Postman is basically curl + a filesystem + git + jq + make.
If you're really comfortable with all those tools, you won't understand Postman because you'll say "why don't people just chain all these tools together?". It's like the famous hn comment on dropbox, "why don't people just use rsync"?
It's technically true, and if you're adept at those tools, you should probably use them instead of Postman. But yea, it's a useful product for a bigger set of people.
I had the same question. My current workflow in deploying a REST API is to write my own thin wrapper in Python and publish that so people can use it. I don’t know if postman/bruno saves me from having to write a wrapper. I also don’t understand the deal with “collections”. Maybe postman/bruno are good for creating a test suite ?
Can be used to for api testing. Collections, token handling etc. Mostly for api testing, and collections can be shared among team members and source controlled.
You can do a lot of things about it. You can talk about it, you can gather data, you can vote politically and with your wallet, you can reduce your consumption, you can set the example for others, you can research, you can help in current organizations which are doing things about it... there is actually so much you can do if you really care. But people ale don't really care bc. putting in the work is harder than blindly consume and doom
This is a fiction. Just like the fact that you cannot end war by voting for antiwar candidates or end mass surveillance by voting for anti-surveillance candidates (viable ones do not exist, by design), you cannot meaningfully affect this trajectory by any individual choice.
That is absolutely not a fiction. You can make a big impact with all the things i mentioned and many more. Now it will obviously not change the thing overnight and the result will depend on how hard you work, what area you choose and a bit of luck i guess. But if you persist there will be results.
By changing a few things in your own behaviour and taking pride in it you can improve your own life. Not consuming so much actually improves a lot of other areas in your own life like physical and mental health, finances etc.
By working on things in your local area, raising awareness, getting involved with local government(at your town) you can make a difference with a few hours per week. Or be imaginative, do some research, get interested in some specific area and then try to apply it around you.
These are the easiest things you can do. And then you can do more, if you are ambitious. What you are describing is a viewpoint of somebody either lazy, resigned, or not really interested in these things.
Don't get me started on Dropbox web app... the worst cluster*uck of an user interface:
- super slow; scrolling often leaves you in a blank space for seconds when it's catching up; elements showing up on the page after you navigate there pushing things away from or under your cursor
- breadcrumbs in the folders sometimes showing, sometimes not
- different directory tree browsers in different parts of the app
- folder settings split between multiple different places. For something you have to go to Admin console, for something you have to go back to normal viewer
- multiple types of flash messages, showing after different actions, often doubling themselves
- actions in dropdown menus for the same thing ordered differently based on where you currently are
I'm so happy that we are migrating away to our own solution
As a Dropbox user of about 12 years, I started with the thick-client, but, working on 5 separate systems (work, home windows, home linux, home macbookAir, Travel NUC) - I just .. stopped installing the thick client. I'm 100% webapp user, even on the one (two?) systems where the thick client is present.
> on a tech forum where everyone has very specific reasons for their tech purchases
Thats a very funny statement. From my experience tech people in general are the ones falling for vanity, fashion, dogmas etc. most often while claiming some "practical" reasons
reply