Add quicli post#14
Conversation
|
Thanks so much for offering to review this, @jamesmunns! :) |
|
@mgattozzi pong! :) |
jamesmunns
left a comment
There was a problem hiding this comment.
👍
A few grammar/spelling comments, but other than that thanks for sharing!
| [#19]: https://github.com/killercup/quicli/issues/19 | ||
|
|
||
| That sounded pretty awesome and made me really proud: | ||
| Did me library |
|
|
||
| But, before blindly agreeing to this, | ||
| I needed to take a step back | ||
| and evaluate what I want quicli to be. |
There was a problem hiding this comment.
want => wanted (consistent past tense)
| I just wanted a small framework-like thing | ||
| that made writing CLI apps less of a pain. | ||
| But how exactly do I want to to this? | ||
| Thanks to Garretts' questions and comments |
|
|
||
| In its implementation, | ||
| you get what I'd call | ||
| "a small framework around you main function": |
| In its implementation, | ||
| you get what I'd call | ||
| "a small framework around you main function": | ||
| quicly's `main!` macro set up some basic things, |
| Sadly, for newcomers/forgetful people/drunk programmers/etc. | ||
| they are also _wonderfully complex._ | ||
|
|
||
| So, instead of offering the user "everything," |
There was a problem hiding this comment.
Oh, I went with the American style here, as I'm also using American spelling everywhere (I think)
There was a problem hiding this comment.
You are. What @jamesmunns put is how I always spell everything. I really don't see it split up often but both are valid!
There was a problem hiding this comment.
You know what: You're both right and I actually like the ", version more because it makes way more sense when parsing a sentence. It's just that I really like typography and the hanging quotes look so pretty. Oh well, I'm rendering everything in shitty monospace markdown style anyway :)
| So, instead of offering the user "everything," | ||
| I want to introduce some abstractions that are simple to use, | ||
| and have simple but useful examples. | ||
| Not not get stuck, |
| Since then, I've written two more guides, | ||
| and for both I added features to the framework, | ||
| exposed new functionality, | ||
| and thought more about how I want quicly-based code to feel. |
There was a problem hiding this comment.
This is sooo embarrassing
| and for both I added features to the framework, | ||
| exposed new functionality, | ||
| and thought more about how I want quicly-based code to feel. | ||
| (More on the aspect of hosting and testing these docs in a future post!) |
There was a problem hiding this comment.
The whole sentence is in parentheses
| It gives you a way of quickly writing CLI programs in Rust. | ||
| (Hence the name.) | ||
| In this post, | ||
| I want to present the ideas and underlaying philosophies of this project. |
found by @jamesmunns --Thanks!
| In its implementation, | ||
| you get what I'd call | ||
| "a small framework around you main function": | ||
| quicly's `main!` macro set up some basic things, |
| (as well as my ergonomic requirements). | ||
|
|
||
| What I want you to end up with is code that is | ||
| concise, |
There was a problem hiding this comment.
Well-structured and boilerplate-free and part of the same point! See below
| Sadly, for newcomers/forgetful people/drunk programmers/etc. | ||
| they are also _wonderfully complex._ | ||
|
|
||
| So, instead of offering the user "everything," |
There was a problem hiding this comment.
Oh, I went with the American style here, as I'm also using American spelling everywhere (I think)
| Since then, I've written two more guides, | ||
| and for both I added features to the framework, | ||
| exposed new functionality, | ||
| and thought more about how I want quicly-based code to feel. |
There was a problem hiding this comment.
This is sooo embarrassing
| and for both I added features to the framework, | ||
| exposed new functionality, | ||
| and thought more about how I want quicly-based code to feel. | ||
| (More on the aspect of hosting and testing these docs in a future post!) |
There was a problem hiding this comment.
The whole sentence is in parentheses
|
@skade pong! :) |
|
@killercup ping! :D |
mgattozzi
left a comment
There was a problem hiding this comment.
Not bad! Mostly some grammatical, formatting, and spelling nit picks :D
|
|
||
| I've been writing CLI tools in Rust for a while now. | ||
| It really surprised me how this language | ||
| that works really well for system programming |
| ["5 Tips for Writing Small CLI Tools in Rust"][cli-tips] | ||
| at the end of August 2017 | ||
| that you may have read, | ||
| where I describes some of my take-aways from that |
| that you may have read, | ||
| where I describes some of my take-aways from that | ||
| in the form of short tips. | ||
| I've got some great feedback to that post, |
There was a problem hiding this comment.
I've got -> I've gotten
to -> from
| I didn't have the time or concentration | ||
| to sit down and really do this. | ||
| And here's the good news: | ||
| For some reason[^9e-talk], |
There was a problem hiding this comment.
Does this link render funny?
There was a problem hiding this comment.
Yes: It renders a footnote :)
|
|
||
| [cli-tips]: {% post_url 2017-08-31-rust-cli-tips %} | ||
|
|
||
| [^9e-talk]: Okay, I admit, I promised to give a talk about Rust, and I wanted to present some nice, clean example code. (Of course, in the end I didn't show quicli in the talk.) |
There was a problem hiding this comment.
Since you've made these two separate sentences rather than an aside you can remove the ( and )
There was a problem hiding this comment.
yeah, the create-react-app setup tools famously has this feature
| So, instead of offering the user "everything," | ||
| I want to introduce some abstractions that are simple to use, | ||
| and have simple but useful examples. | ||
| Not to get stuck, |
There was a problem hiding this comment.
Were you intending this to be part of the previous sentence? Otherwise I have no idea what you were trying to convey here with this sentence or what you mean by Not to get stuck
There was a problem hiding this comment.
Messed up the fix, should've been "To not get stuck"
| Indeed, instead of adding any feature flags to this crate | ||
| (that enable additional components to be loaded/exposed), | ||
| I want to have a clear line | ||
| where a user is supposed to stop relying on quicli. |
| (that enable additional components to be loaded/exposed), | ||
| I want to have a clear line | ||
| where a user is supposed to stop relying on quicli. | ||
| I'd rather have an "eject" option |
There was a problem hiding this comment.
react-cli (I think) does this and it's nice.
| but another important aspect to me is to prove that it is useful | ||
| for writing small tools | ||
| -- even if you've only just started with Rust. | ||
| This is why I initially wrote the Readme file |
There was a problem hiding this comment.
but but… my file is Readme.md :O
| for writing small tools | ||
| -- even if you've only just started with Rust. | ||
| This is why I initially wrote the Readme file | ||
| in form of a How To: |
|
I say a few but there were like 34 there lol woops |
|
There is no such thing as too many nits! Thanks a lot, @mgattozzi, will
edit this tonight!
Michael Gattozzi <notifications@github.com> schrieb am Di. 30. Jan. 2018 um
02:55:
… I say a few but there were like 34 there lol woops
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#14 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AABOX3MrRd0N9O2JKzN1qHW_Z3OkpX51ks5tPnaBgaJpZM4RxRlg>
.
|
|
I like it. I'd reread the introduction and see if you could make it a little shorter. I haven't quite gotten out of it if you will merge stdcli and quicli now? |
As suggested by @mgattozzi --Thanks!
killercup
left a comment
There was a problem hiding this comment.
Addressed a bunch of comments :)
| Sadly, for newcomers/forgetful people/drunk programmers/etc. | ||
| they are also _wonderfully complex._ | ||
|
|
||
| So, instead of offering the user "everything," |
There was a problem hiding this comment.
You know what: You're both right and I actually like the ", version more because it makes way more sense when parsing a sentence. It's just that I really like typography and the hanging quotes look so pretty. Oh well, I'm rendering everything in shitty monospace markdown style anyway :)
| I didn't have the time or concentration | ||
| to sit down and really do this. | ||
| And here's the good news: | ||
| For some reason[^9e-talk], |
There was a problem hiding this comment.
Yes: It renders a footnote :)
| it is very concise. | ||
|
|
||
| Another aspect of conciseness: | ||
| Instead of using `.unwrap` to deal with errors, |
There was a problem hiding this comment.
Hm, I actually added the dot to note that it is a method and not a free function. But you're right, they're all the same :)
| and good error messages. | ||
| Similarly, you get logging for free, | ||
| and if you add two more lines, | ||
| you also get a `--verbose`/`-v` CLI argument to control the log level |
There was a problem hiding this comment.
I <3 consistency and will go with 'flag'
| So, instead of offering the user "everything," | ||
| I want to introduce some abstractions that are simple to use, | ||
| and have simple but useful examples. | ||
| Not to get stuck, |
There was a problem hiding this comment.
Messed up the fix, should've been "To not get stuck"
|
|
||
| [cli-tips]: {% post_url 2017-08-31-rust-cli-tips %} | ||
|
|
||
| [^9e-talk]: Okay, I admit, I promised to give a talk about Rust, and I wanted to present some nice, clean example code. (Of course, in the end I didn't show quicli in the talk.) |
There was a problem hiding this comment.
yeah, the create-react-app setup tools famously has this feature
| but another important aspect to me is to prove that it is useful | ||
| for writing small tools | ||
| -- even if you've only just started with Rust. | ||
| This is why I initially wrote the Readme file |
There was a problem hiding this comment.
but but… my file is Readme.md :O
|
Thank you three! The post is now live at https://deterministic.space/quicli.html :) |
No description provided.