Why I’ll never use Postman

I’m talking about this Postman https://www.getpostman.com/

So, the essence of this “Why I’ll never use Postman” would be that, because I’m well versed, fluent in the command line environment I simply don’t need something like Postman. Postman is a single special purpose utility. Where as the command line environment is a whole very powerful interface to the OS. But of course there’s a price to pay. It’s a lot to learn. There’s a learning curve. You have to want to learn it.

I’ve tried Postman. And I quickly realized no value for me.

In short here’s how I live very happily without Postman:

– My command line history is shared between all bash sessions. I usually have 2 Terminal windows open (are you on a Mac? Terminal is the default ssh app on Mac) with 2 or 3 tabs each. So when I execute a command in one shell I can easily recall the same command in another shell window. That’s very handy – no copy and paste required.

– My command line history is also set to be very large, I have more than a year’s worth of command line history right there ready for reference and reuse.

– Right now I can see commands I executed prior to Nov 2016 which is when I left my last gig. git commands on repos that indicate the the company, year etc.

– In the past, long ago we always had command line clients to issue requests to servers. We just did this natually before the GUIs were developed, and for testing etc. This was before curl and before everything was HTTP. But now with REST and everything is HTTP we have curl and so curl does most of the job. I have numerous “curl http://…….” commands sitting in my command line history and I quickly recall them with a command line history search, a few keystroke(s) – hit return and it’s executed. Or I can recall one, quickly do a mod on it or something and hit return. I.e.:

$ curl -v -XPOST http://localhost:8001/refunds/order/1

I recall that curl command all day long while working on the refunds code I’m currently working on. I’ll just change the 1 to a 2 or what ever and bam. No GUI, no browser just command line fast and simple. (FYI you can search at the bash prompt by typing a CTRL-R, followed by a few chars). Oh and since the servers return JSON I’ll do something like this:

$ curl -v -XPOST http://localhost:8001/refunds/order/1 | json.tool

which reads the json returned from the server and pretty prints it. My json.tool is just an alias for ‘python -mjson.tool’

– Also for doing HTTP Posts with curl I end up having a number of little json files that I pass to curl for the post data.

– In some cases I’ll write a script to generate the data which gets fed to curl. Sometimes it needs to be dynamic or what ever.

I’m sure there are nice things about Postman that I’m missing out on. But this works for me AND I get to remain in the bash window, no moving a hand to the mouse/pointer. Fast, efficient no distraction. Hands stay on the keyboard. It’s a different way of living. A lifestyle choice. More difficult? Maybe so, learning curve. They say that things that are worthwhile aren’t so easy..

So it’s not about NOT using Postman. But it’s more about, this is how I use a computer. This is how I interface with the OS.

GUIs are great for beginners. Quick, easy, intuitive. Point and click. But they’re extremely limited. UIs are limited to what is implemented. As opposed to the shell (bash, Terminal what ever you want to call it). Everything is available via the shell. At least this is true with Unix, Linux. Not so true with Windows. A lot of MS Windows is accessible ONLY via their UIs, Control Panel stuff etc. A huge dissappointment.