HNHacker News
TopNewBestAskShowJobs

jkbr

1,606 karma · joined February 4, 2011

submissionscomments
jkbr··on The time might come when we add some JSON specific command line options
If I’m understanding your point correctly, HTTPie has support for multi-value keys in query strings.

You can use the `name==value` query parameter syntax [0]:

  $ http --offline pie.dev/get AAA==AAA AAA==BBB
  GET /get?AAA=AAA&AAA=BBB HTTP/1.1
Or simply:

  $ http --offline 'pie.dev/get?AAA=AAA&AAA=BBB'
  GET /get?AAA=AAA&AAA=BBB HTTP/1.1
[0]https://httpie.io/docs/cli/querystring-parameters
jkbr··on Docs for Developers: An Engineer’s Field Guide to Technical Writing
What an interesting reaction.
jkbr··on Docs for Developers: An Engineer’s Field Guide to Technical Writing
It’s a decoy. https://hstalks.com/t/3538/the-economist-a-pricing-experimen...
jkbr··on Console, the vital tool that Apple abandoned
Yes, you can.
jkbr··on Docker-powered terminals for your website
I see what you mean. I don’t love this style either. But here I chose the emojis as a quick & dirty alternative to something more graphical (e.g., custom icons) that would help the 3 distinct parts of the sentence stand out. I am not sure about the impact. It’s a work-in-progress MVP; didn’t think it would find its way to hn. Thanks for the feedback.
jkbr··on Docker-powered terminals for your website
How would you reformulate it?
jkbr··on Honda bucks industry trend by removing touchscreen controls
Apple should follow and ditch the Touch Bar. Also, the excellent The Best Interface is No Interface book [0] talks quite a bit about unnecessary touch screen controls in cars and related topics.

[0] http://www.nointerface.com/book/

jkbr··on HTTPie – A user-friendly CLI HTTP client
> I'm against dishonest advertising with loaded phrases like "sane defaults" (this term has its place, but it's not here) and "for humans" (this term is always a red flag) when the tool invents a load of unconventional, unintuitive syntax.

Author of the dishonest advertising here ;)

I don't think the fact that the tool introduces a mini language for crafting HTTP requests on the command line contradicts with the statement that the tool also provides what the author believes are sensible defaults (e.g., default to POST when sending data vs. GET when not, default to "prettifying" HTTP messages for human consumptions on the terminal vs. not touching them when the output is redirected, etc.).

"For humans" is meant to highlight the focus of this project on usability and interactive usage, as opposed to curl’s focus on feature-completeness across a number of protocols and non-interactive usage:

> curl is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP). The command is designed to work without user interaction. [1]

[1] https://curl.haxx.se/docs/manpage.html

jkbr··on Ask HN: Who is hiring? (September 2017)
Homewings | Barcelona | Frontend Developer | €30K – €50K | Full-time

Homewings — https://homewings.co.uk/ — is an online interior designer platform. The UK's #1 destination for interior design services online. The engineering team is based in Barcelona, Spain.

https://angel.co/homewings/jobs/268272-frontend-developer

jkbr··on Curl doesn’t spew binary anymore
Great feature. HTTPie, a CLI HTTP client I created, has always had a similar one: No binary data in terminal output, and on top of that, you get to see the response headers by default as well.

https://httpie.org/doc#binary-data

jkbr··on Show HN: HTTPLab – An interactive web server
Looks like a great tool for ad hoc testing of HTTP clients. Exactly what I often need during development of the client you use in the demo :)
jkbr··on Python 3.6.0 released
What's new in Python 3.6.0: https://docs.python.org/3.6/whatsnew/3.6.html
jkbr··on HTTPie 0.9.6
This feature is planned: https://github.com/jkbrzt/httpie/issues/78
jkbr··on HTTPie 0.9.6
This tool has a really nice UI by which HTTPie is actually partly inspired. And it also includes `POST':

$ echo 'hello=world' | POST httpbin.org/post

jkbr··on HTTPie: a CLI, cURL-like tool for humans
Do you have an example of a request that you're unable to make with HTTPie?
jkbr··on Curl is 18 years old tomorrow
There's an issue on GitHub for this: https://github.com/jkbrzt/httpie/issues/325

// author here

jkbr··on $ cat ~/myfile | curl -X PUT --upload-file “-” https://transfer.sh/myfile.txt
"requires you to install something" is relative, depending on what's installed on your system. This example is a continuation of the 'elaborate vs. simpler command' theme of this thread for people who prefer HTTPie.
jkbr··on $ cat ~/myfile | curl -X PUT --upload-file “-” https://transfer.sh/myfile.txt
Or like this with HTTPie[0]:

    http PUT https://transfer.sh/hello.txt < ./hello.txt
[0] http://httpie.org
jkbr··on Curl vs. Wget
https://github.com/jkbrzt/httpie/issues/248
jkbr··on Curl vs. Wget
Relevant GitHub Issue: https://github.com/jkbrzt/httpie/issues/58
jkbr··on How Pocket Hit 20M Users with 20 People
This sounds promising.

Pocket's inability to remember the current article/position is one of the most obvious, annoying, and (at least by me) reported bugs ever. It makes the app close to useless. Yet they're unwilling to do anything about it. So I'll happily switch for this alone. And highlights/notes is a dream comes true

Going to give Instapaper a shot. Thanks!

jkbr··on How Pocket Hit 20M Users with 20 People
I love Pocket. I'm a paying customer. But… I'm also super annoyed by its bugs and will be happy to switch to a payed alternative, that:

1. has a decent HTML parser that doesn't omit images from articles all the bloody time

2. implements a proper state restoration mechanism for its iOS app. It's exhausting having to scroll through my entire article list trying to find the one I was reading (and then finding the original position) every time I switch to Safari to look something up and then back

3. has a highlights & notes feature as a bonus

Please?

jkbr··on Show HN: Cointrol – Bitcoin trading bot written in Python
I built this bot during the winter of 2013/14. Back then I remember being able to find open source bots only for cross-exchange arbitrage. What I needed was something simple and purely for speculation (plus for Bitstamp). Nowadays the bot scene might be very different, and also BTC price is much more stable.
jkbr··on Show HN: Cointrol – Bitcoin trading bot written in Python
Not at the moment.
jkbr··on Show HN: Cointrol – Bitcoin trading bot written in Python
Cointrol is built for Bitstamp exchange and leverages their REST API [1], so the blockchain-related heavy lifting is done on their end. Besides that, Cointrol relies on a bunch of frameworks (Tornado, Django, Django REST Framework) for DB persistence, HTTP, REST, WebSockets, and such.

[1] https://www.bitstamp.net/api/

jkbr··on Why people don't use Fedora?
I used Fedora quite happily on my laptop for years until I bought a Macbook. I also used it as a production system for my projects for almost 10 years. Enjoyed the availability of new versions of packages and don't remember encountering many stability issues. But eventually I got tired of the short support lifecycle and switched to CentOS.
jkbr··on Curl User Poll
> Too bad the "worst areas" list didn't include the UI. I cannot recall the number of times I've spent looking through the docs, which flag was it again? -s? -S? -q? Every. Single. Time.

Complete agree. That's why I created HTTPie[1], a modern take on CLI HTTP to address those usability issues.

[1] http://httpie.org

jkbr··on Clusterize.js – Tiny plugin to display large data sets easily
Look pretty cool. A while back I wrote something similar with the difference that it still allows you to use a scrollbar:

https://github.com/jakubroztocil/cloudtunes/blob/master/clou...

jkbr··on Jq – A Command-line JSON processor
The situation is not ideal but more recent versions of Python (2.7.9 and 3.4) have a much improved TLS support and things like SNI work out of the box.

For older Python versions there are some additional dependencies to be installed manually (will happen automatically in next version of HTTPie):

https://github.com/jakubroztocil/httpie#sni-server-name-indi...

As for HTTP/2, there is an experimental extension for now:

https://github.com/jakubroztocil/httpie-http2

jkbr··on Jq – A Command-line JSON processor
Nope. HTTPie is much, much more focused than cURL (the CLI tool). It is exclusively an HTTP client designed primarily for interactive use. cURL, on the other hand, is meant to be used mostly non-interactively and is more of a general client for "URLs" (it also supports DICT, FILE, FTP, FTPS, GOPHER, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP).

HTTPie's goal is user-friendliness, so it comes with features like built-in JSON support, output formatting, syntax highlighting, extensions, etc. Comparison of the two in one screenshot can be seen in the README:

https://github.com/jakubroztocil/httpie#readme

(Disclaimer: I created HTTPie)

← PreviousPage 2 of 4Next →