
Heroku Fucking Console - eik3_de
https://github.com/tpope/heroku-fucking-console
======
sneak
Nothing in computing is worse than software that knows exactly what you want
it to do, then gives some shitdick excuse as to why it's not going to do it in
an effort to get you to jump through meaningless hoops.

~~~
jlarocco
Gimp on Windows does this and it drives me nuts.

Going to File->Save As... and trying to save to .jpg brings up a dialog box
telling me to exit the current Save As dialog and go back to File->Export to
save as .jpg. Asinine.

~~~
jordanthoms
Not only that, but it's a _new feature_.

~~~
zanny
What I don't get is that you can open any image type and modify it in gimp on
the fly. The reason they are separated is that xcf can maintain layers and any
other image loses that information. But anyone who uses gimp for a few minutes
will realize this, and then you don't need 3 dialogs. Hell, have a warning
message in the save as box if you haven't saved a project in xcf.

~~~
jberryman
I think the new behavior is great. First of all because it remembers both
where I'm saving and where I've been exporting in my workflow, and second
because frankly saving in GIMP's native format and creating a flat lossy JPEG
that approximates the work you've been doing are really fucking different
things, and I find it comforting that they choose to make that explicit. I can
how if you open GIMP once a month to make a LOLCAT how this behavior could be
annoying.

~~~
larrik
Yeah, except that you can open a jpg, crop it, and then try to re-save it over
itself, and then: Oh, no you can't.

The work flow is really awkward then. You are exporting a jpg from a jpg?
Oooookay....

~~~
hellerbarde
You __can __just select "Overwrite foobar.jpg" in the menu. You can even have
a keyboard shortcut for it. That should solve all you guys' troubles :)

cheers

------
eik3_de
HN question: I submitted this story with the title "Heroku f.cking console"
and the title was changed to "Heroku console".

Is the string "f.cking" considered unappropriate on HN? What about "f.,.ing"
or "f'ing"?

Edit: replaced the asterisks with "." and "," for formatdoc

Edit: has been changed to "Heroku Fucking Console" at 19:02Z. I approve!

~~~
nawitus
This is what I hate most about American websites. They all have this
neoconservative(?) idea that curse words are fucking horrible. We're all
adults here (well, 99% of us), nobody is going to die from seeing a few curse
words here and there.

The problem is that this American morality is enforced to everyone
internationally, as such a high portion of high-traffic websites are American.
And it's not just about cursewords, it's this sick censorship of women's
breasts, nudity and sex in general.

Communication on the internet is switching to a small number of mostly
American social media websites like Facebook. If Facebook bans certain
expression of thought or certain types of media/pictures, then that decision
has pretty widespread effects. Even worse, when exposed to this kind of
thinking, other countries will slowly start to adopt it.

On the other hand, other countries would enforce a different kind of morals
more (like censorship related to racism and religion).

I love it when some sites make exceptions, like Tumblr (or Reddit in the
past).

~~~
niggler
sometimes people sprinkle 'fucking' or 'shit' or other words as if its salt.
then fuckers shit fucking dia-motherfucking-tribes ass if fuckers fucking make
fucking money and bitches from fucking using fucking fuck words, and suddenly
discourse breaks down.

It's not that the words are bad, but some people take it too far. Especially
on the internet, where some people erroneously believe in the anonymity of
pseudonyms

~~~
nawitus
I agree with your sentiment, as curse words should be used sparingly. However,
a better solution is "bottom-up" moderation, not a top-down site-wide ban on
something. This is essentially important in social media websites where
subcommunities exist. Different subcommunities should be able to have
different rules about these things. (This doesn't apply to YCombinator,
though).

~~~
BrianEatWorld
For HN, I just assumed it was because it sets the tone for the discussion. By
moderating profanity, it helps keep it out of the discussions and so you get
more civil debate on HN than on other sites.

------
GhotiFish

        Provide a fucking help topic
        210bbc9498 Browse code
        tpope authored 16 hours ago
    
        Initial fucking commit
        a1b87e8b4b Browse code
        tpope authored a day ago
    

I like how he has total commitment to his commits.

also. WTFPL!

~~~
jerf
It is a well-known software engineering fact that one of the most important
things a software project can have is conceptual purity, a strong, central
thesis that organizes the entire project and can be used both to understand
and build on the project. This project has a fuckload of conceptual purity. My
compliments; truly an inspiration to all us aspiring project architects.

~~~
rbkillea
Not sure if sarcastic or way over my head...

------
nswanberg
Swearing is like typing in all-caps or using an exclamation point. It's
usually not necessary but when it fits it really fits. (Hedberg only swears a
few times here but it sounds exactly right
<http://www.youtube.com/watch?v=Y5-46bj8b4w>).

Used incorrectly swearing suggests someone who doesn't have much control over
their emotions or vocabulary and lacks range of expression.

Yet this Heroku library, presumably created by someone who, stubbing their toe
on that same problem over and over, is one big exclamation point all-caps
rant, with all possible lines of code and input fields in Github (even the
license!) filled with rage and satisfaction, and the nice thing is that the
library ultimately fixes a problem and makes the solution available to all.

Separately, to anyone thinking this "unprofessional", take a look at Philip
Greenspun's definition of a software professional:
<http://www.youtube.com/watch?v=JsPFdVrbGeE#t=41m20s> (incidentally, this
entire lecture deserves to be bookmarked and watched).

Edit: By the standards of Greenspun's definition the author of the library
would be considered a consummate professional.

For those without time to watch, here is the link for the presentation he used
(though he's an excellent speaker and the presentation adds much more):

[http://philip.greenspun.com/ancient-
history/professionalism-...](http://philip.greenspun.com/ancient-
history/professionalism-for-software-engineers)

~~~
phillmv
If you're a vim user, Tim Pope is a goddamn hero and I don't give a fuck what
anybody thinks.

~~~
dasil003
And if you're not a vim user then you don't know how good git integration can
be (thanks to Tim Pope).

~~~
ajtaylor
I recently started using Tim Pope's git-vim plugin. The first time I used
:Gstatus and added a file with one keystroke had me won over. Pure genius if
you ask me!

~~~
dasil003
My favorite Fugitive workflow is:

1\. git blame 2\. move to the blame window and hit 'o' to open the commit 3\.
discover that the line in question was merely moved not created by this
commit, then move to the --- line in the diff and hit 'o' to open the previous
version of the file. 4\. repeat from step 1

It's a few more steps than `git log -S` but it provides a different kind of
flexibility. You can trace all manner of historic code migrations even without
a common search term.

~~~
ajtaylor
That sounds super nifty! I'll have to give it a try next time I need to trace
the history of a file.

------
xauronx
I don't use Heroku, so I have no use for this but I love this guy's
enthusiasm.

~~~
flaie
I don't use it either. Even the git commits comments are more than
enthusiastic: `Provide a fucking help topic`. Made me laugh for the first time
today.

~~~
alan_cx
I don't even know what Hero-whatever actually is, and even Im enthusiastic
about that ever he feckin fixed!!!

(Yes, looked it up now)

------
egonschiele
Another example: finding help on hadoop:

    
    
        [vagrant@localhost conf]$ hadoop --help
        Error: No command named `--help' was found. Perhaps you meant `hadoop -help'
        [vagrant@localhost conf]$ hadoop -help
        Error: No command named `-help' was found. Perhaps you meant `hadoop help'
        [vagrant@localhost conf]$ hadoop help
        Exception in thread "main" java.lang.NoClassDefFoundError: help
        Caused by: java.lang.ClassNotFoundException: help
          at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
          at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
        Could not find the main class: help. Program will exit.

------
rahilsondhi
This plugin is hilarious but very unnecessary.

I solved this a long time ago with a simple `alias hrc-='heroku run console
--remote'`. That way I can type in console `hrc- production` or `hrc- staging`

------
dysoco
And guys... this is what happens when you use Vim too much.

~~~
farmdawgnation
You expect your software to do what you ask? ;)

~~~
agscala
Haha, I think he was making the joke because tpope is a rather well-known Vim
plugin dev

~~~
hboon
That's an understatement. He is a prolific machine churning out useful vim
plugins.

~~~
graywh
Lately (last 2 weeks) he's been churning out rbenv and heroku plugins

------
christopheraden
Hah! Tim Pope is a pretty funny guy. His Vim plugins are fantastic as well
(Pathogen and Surround are indispensable).

------
sheraz
This lacks class regardless of how useful the software may be. And yes, it
does matter.

What is with all the crass language that has become so pervasive in this
industry in recent years?

Why the need to express yourself so poorly?

~~~
lowboy
> Why the need to express yourself so poorly?

What is poor about this usage of "fucking"? It's an intensifier, appropriately
used in this instance. Some people lean on swear words too much, but I don't
think this is such a case.

~~~
sheraz
It's hardly an "intensifier." Expletives have lost their impact because of
overuse.

This is not the case of overuse? That github page drops the f-bomb 20 times.

~~~
lowboy
I read his usage of "fuck/ing" as a literary style considering the context and
name of the repo. If the amount of swearing here was from commit messages in
an unrelated project, then yes, that would be excessive and the author should
invest in a thesaurus.

An aside: why do you use "f-bomb" instead of "fuck" when talking about "fuck"?
It's not like we don't automatically fill it in when we hear it. See Louis
CK's rant about this (nsfw language):
[http://www.youtube.com/watch?feature=player_detailpage&v...](http://www.youtube.com/watch?feature=player_detailpage&v=zuLrBLxbLxw#t=124s)

~~~
sheraz
Again, that is hardly literary.

If you want literary use of "fucking" (there, I said it), then I would invite
you and the repo owner to read "The Elements of Fucking Style" by Chris Baker
and Jacob Hansen [1]. Maybe then you both would understand how to use the
word.

Lastly, to help the situation I've decided to offer a helping hand to fix this
problem, a pull request[2]!

Does anyone know if you can rename a repo with a pull request?

[1] - [http://www.amazon.com/The-Elements-cking-Style-
Helpful/dp/03...](http://www.amazon.com/The-Elements-cking-Style-
Helpful/dp/031258377X/ref=sr_1_1?ie=UTF8&qid=1362267378&sr=8-1&keywords=the+elements+of+fucking+style)

[2] - [https://github.com/undernewmanagement/heroku-fucking-
console...](https://github.com/undernewmanagement/heroku-fucking-
console/commit/e1163e4bb813fa2df73360eccf6450697516888c)

Edit: added a fixing pull request

~~~
lowboy
Maybe literary was the wrong word for me to use, but I get the sense that it
is a purposeful use of the word for stylistic purposes, and that Tim Pope
isn't leaning on it as a crutch.

I feel like you're treating your prescriptivism of how the English language
should be used as more objective than it really is.

------
RyanMcGreal
+1 for releasing it under the WTFPL.

------
auggierose
Programming, motherfucker!

~~~
auggierose
<http://programming-motherfucker.com/>

I feel honoured to be downvoted by obvious twats.

~~~
kamjam
I, for one, understood exactly what you meant straight away. But maybe because
I also ma a Programming, Motherfucker!

------
andymoe
You know this is one of those times where editing the title is not helpful!
The title of the project is actually "Heroku Fucking Console." The edit makes
me think it's pointing to something official and it's not!

------
johnnyg
This has bugged me too. Thank you.

Also, watch your language young man!

------
antipax
What? `heroku run bash` also works and is shorter.

~~~
latortuga
heroku run console actually runs "rails console" for ruby on rails
applications so it's not quite the same as the bash alias.

------
slajax
I love it when software is written out of hatred for other software that
"f*cking sucks".

------
tomhallett
One non-obvious landmine with the heroku console, it attaches to a running web
process. One day I had a typo in one of my console commands:

Post = Post.count # instead of "post = Post.count"

Which re-assigned the Post class to a number. Then we started getting
_production_ airbrake errors where the Post class was now a FixNum, /facepalm.

It was an easy fix, just restart all of the servers, but I was very surprised
to say the least.

Note: I believe this was with the Bamboo stack. I'm not sure if this is still
true with the Cedar stack.

------
endgame
There are a lot of people in this thread who are complaining that
"$some_program won't Do What I Mean".

Sounds familiar: <http://www.catb.org/jargon/html/D/DWIM.html>

~~~
nollidge
It's more than that, though, it's when a program won't DWYM _despite_ an error
message indicating that the programmer knew exactly what was meant, but
decided not to do it anyway.

~~~
fdr
Solution: remove all the error messages for common misspellings of what people
want to do, or alternatively never deprecate any user interaction choice ever.

One may make the argument that removing the default behind 'heroku console'
was too pure and not pragmatic enough, but going from strictly what you are
writing here, this is the logical implication: "don't write error messages
suggesting what I meant, and I'll (apparently?) be happier."

------
jbaudanza
I love this. I also miss how the bamboo console would let me enter a ruby
command locally and then execute it remotely when I hit enter. I've been
meaning to make a gem to replicate this behavior.

------
scottbartell
Because things should just fucking work.

------
squid_ca
"This is a long distance call. You must dial a 'one' plus the ten-digit number
to complete your call."

------
binarycrusader
You haven't used software until you've used it in anger.

------
hiddenfeatures
The true meaning of "opinionated software"...

------
whbk
This. Is. Awesome. Had to be done.

------
vampirechicken
Tim Pope has a potty mouth.

------
skhamkar
Thank you!

------
Cigano
Nice one, dude. Congratulations!

------
dholowiski
Very mature.

------
dreamdu5t
I'm amazed people put up with this crap just to host a rails app.

------
derleth
Is anyone else's page massively wider than it should be?

(Firefox 19.0, 32-bit build on x86_64 Linux.)

~~~
crynix
Yeah, I'm having the issue on Chrome 27.0.1425.0 dev on Mac OS X Mountain
Lion. It's quite annoying.

~~~
socillion
someone enterprising broke the page layout with a long string of U+2006 (six-
per-em space) characters.

~~~
derleth
> someone enterprising broke the page layout with a long string of U+2006
> (six-per-em space) characters.

Is it a bad sign when page-widening spam makes you nostalgic?

(Ah, Slashdot circa late 1990s! What a time to be alive!)

------
mcnemesis
To hell with all yo other stale licensing- other than have none, the F __cking
License included in this project just makes me want to f __rk this project!

The attitude is ill ;-)

------
nacker
You can tongue punch my fart box, Heroku fucking console!

------
huhsamovar
I would be interested in this if it weren't for the foul language. This speaks
volumes about the author's attitude.

If you're annoyed with something, have they even tried bringing it up with
Heroku's support team? If so, have they tried shipping this tool that doesn't
make the maintainer look like an arrogant troglodite?

~~~
antihero
I don't think the language makes him look like an "arrogant troglodite", but
then I don't have a stick up my arse either.

~~~
huhsamovar
That's because I pulled it out of you and stuck it up your mother's arse
instead.

~~~
benatkin
Clearly you're just a troll, and not someone who's deeply offended by
swearing. Hopefully you're the kind of troll who scampers away when outed.

~~~
huhsamovar
I never claimed I was deeply offended by swearing. I claimed it will
ultimately impact the maintainer's reputation and user base. Clearly you're a
narrow minded person that can't see the big picture.

~~~
dasil003
Uh, this is not going to impact Tim Pope's reputation in any way whatsoever
given that it is a tiny inconsequential project. He is already an open-source
A-lister.

~~~
kamjam
And it also shows that he is human and has sense of humour.

