Hacker News new | past | comments | ask | show | jobs | submit login
Slacktyping: I'm typing when you're typing (2018) (github.com/will)
519 points by thunderbong on Sept 23, 2021 | hide | past | favorite | 139 comments



Having worked with Will for quite a few years, he has a great ability to create some impressive projects like this. Even his commit graph on his GitHub (https://github.com/will) has been consistent for I think 10 years now?


>Even his commit graph on his GitHub (https://github.com/will) has been consistent for I think 10 years now?

umm... https://github.com/will/githubprofilecheat


It even spells out his first name....


I thought that was the whole topic of this conversation.


So it has been 10 years :)


He has pushed 21,383 commits to that repo to keep his commit graph looking that good.

Note the few days he had to push commits when they were zero commit days.


One day Will will while away Will's last wonton day, and a scheduled task somewhere will continue this repo.


consider paying a visit to Will's homepage: http://bitfission.com/

Even though the site is under construction, it is still very nice, with some enjoyable tunes.


Thank you. please don’t try and right click to steal the source though


It needs one of those things that alerts anyone who tries to right click :) An even better one would be to totally preventDefault oncontextmenu. That'll stop them!


> It needs one of those things that alerts anyone who tries to right click :)

Did you visit the site?


I did.


Made on mac and doom music. You're an incredible human


You are an incredible webmaster!


Wow, so this is the webmaster who maintains Ling's Cars!


Make sure you're running Netscape 3.0.

It won't play midi files natively for me in Chrome.


Oh dear God...

WEBRING!

I haven't heard that in a while.

I'm starting to have flashbacks, hearing the sound of 56kb dialup modems...


I had a good laugh there, thanks.


i clicked back to get back to HN after visiting and the music was still playing. oddly enough i didnt hate that.


On the note of GitHub commit history, incredibly off-topic: I hate when potential jobs ask for my github profile (sometimes as a strict requirement). All of my (4+ years) profesional work has been in private Bitbucket repos so my github is a random college project and some community project I did one weekend. Should I be feeding the "grind mentality" and contributing to open source or doing random side projects to fluff it out? Am I the odd one out?


No, you shouldn't. It's obvious that any job that "requires" this, will not be a job that you want to be in.

I do all my work on private repos. My github looks bare. If they want code I'll send them code. If they want my github profile, I'll send them that and tell them all my code is private, hit me up for it/examples.


no you're fine without a filled github account. most engineers don't write code during their free time and, like you, work in private repos for their corporate job.


What is "grind mentality" in this context? Is this common in the programming world too?


At least from my (single data point) perspective it is. I feel the pressure to always be developing the next greatest thing in the next greatest language or framework and producing conference/journal-worthy research papers (I work in research).


Very clever of him to have Friday align with the horizontal strokes of W, I, and L. Ready Only Friday manifested.


It's pretty easy to spoof the commit graph on Github like this, since Github bases it on user-provided timestamps and does not question them.


Will has a repository just for that: https://github.com/will/githubprofilecheat


It's covered with commits well into the future :) Love it.


Will is a legend. He is the epitome of big dick energy on GitHub. The sheer audacity of his username being "will", his commit graph, the fact that I already knew who he was before this was posted on HN... legend...


> big dick energy

Should I keep fighting against this phrase or is it futile?


Depends in you're fighting it with big dick energy or not


Since we're talking about stupid Slack bots, I feel compelled to mention my stupid bot: REPLbot [1] is a Slack/Discord bot for running interactive REPLs and shells from a chat.

It is fun and marginally useful. It supports sharing your own terminal in Slack too.

[1] https://github.com/binwiederhier/replbot


That’s not stupid, that’s really cool!


While I do appreciate the humor here, it's a personal gripe that conversations on Slack tend to optimize towards speed of responses - and when taken to an extreme, they take the form of:

> This message

> is

> sent over a few lines

(awkward pause)

> so that

> I can get in a point

> before you start typing something

Asynchronous means of communication (Github PRs, Jira tickets, dare I say e-mails) mean that I submit a fully-formed thought as a digest, but Slack sometimes becomes a stream of consciousness - one that I have trouble breaking someone out of.


Usually it doesn't look like that, the first part is self contained and the remaining are small additions that they figured out in the moment. If you tell people to stop doing that then all that will happen is that they wont write those clarifications.


I on the other hand don't enjoy people who write paragraph upon paragraph in a single message. Its chat. Just quickly hammer off your stream of consciousness rambling into the chat; send an email otherwise.

Look at it this way, they're gonna make their point anyway. The sooner you know the better ;)


Sending message after message with no complete point until last one is like holding a mutex to the person’s attention. Annoyance, there is no other way to look at it.


As long as it's asynchronous I'm fine with people doing this. It's coworkers who go "Hello dukeyukey" and pause is what annoys me. Being polite is great, but let me know what you want before I decide to drop what I'm working on to chat about it.


Yeah

"Yt?"

"Yes"

"Coworker is typing..." for 20 minutes

The above is a way more frustrating interaction because it feels that now the coworker feels I'm obligated to respond to a much longer query than I had anticipated. I'd expected a short query which I could either answer offhand or evaluate its priority to indicate if I had time to handle it. Instead I now need to let someone down that after 20 minutes of explaining their problem, I actually don't have the time or info to help them debug their CI build.

It's gotten to the point that I simply stopped answering these naked hellos/yt questions.


You can passive-aggressively link them to https://nohello.net/ or https://nohello.club/, see if they get the message.

A worse one yet is where they go "hello?", then an X minutes after you sigh and say 'yeah?' they call you.


even worth is

A: Hello @B!

... waiting ...

B: yeah, what's up?

A: how are you?

B: fine, what's up?

A: i have a question

B: ... okay ...

A: (now the real question comes, whuch then requires lots of clarification ...)

B: yes (or "no" and thst's the full answer needed)


It is pretty annoying when people pause like that. I don't see why they can't buffer their writes until they get a complete thought (Saying "hey", then typing the next message is the worst).

It isn't fully asynchronous if notifications are enabled. With notifications, you are more like a single cpu server that has to handle hardware interrupts for disk/network io. It stops you from working and forces context switching, only people aren't as good at context switching.


"Saying "hey", then typing the next message is the worst"

Pro-tip if you're one of those: If you look at the slack interface, there's not a lot of visual difference between two messages in a row, and a single message separated by two newlines (SHIFT-Enter if you don't know how to enter those).

It looks exactly the same to type "Hey.\n\nJust wanted to check up on the status of the de-fooification project. How's that going?" as it is to send those as two separate messages, it looks just as polite on the screen, and it's way less annoying.


Not relevant for your "Hey" example but I often do submit successive thoughts as separate messages rather than one less disruptive message because it allows readers to add reactions/responses to the individual thoughts.


Even worse is people who type "hey", and then don't type anything else until you "hey" back.

Even worse is "Hey, I want to talk about something. I'll call you in 30 minutes."


I think it's perfectly acceptable to leave them 'on hold' until they actually write something. If they don't, then it wasn't anything important.


> Saying "hey", then typing the next message is the worst

"hey" [waits for a response; then a long pause and agonisingly slow typing after you've said hey back]

"Can I ask you a question?" [waits for a response] [agonisingly slow typing coupled with intermittent pauses].

Always makes me want to yell at people to just ask their damn question.


Someone should write a bot like the gp that autoreplies “hey, how is your day going so far?” to a single “hey” line.


Ha. I do this. It's emotional energy. Lacking seriousness or im too preoccupied with how my reply will be understood or not.

Granted, I dont think I ever stopped at 'hey-'


Saying "hey", then typing the next message is the worst

You don’t have colleagues who type “hey” and then wait for your reply, do you?


I for one prefer stream of consciousness in chat.

That is the point of chat.

If I want structured longform discourse I use mailing lists.


Conversations are fine as long as messages contain complete thoughts that merit a response. Saying hey in one message, then typing and then sending the message does no one any good, all it does is interrupt the receiver and force a context switch before you can run any instructions/respond.


I remember on ICQ I used to like to use the mode where you saw each character your partner typed. Google Wave was satisfying in that way too.


I have no ideas how many times I'd have been fired if Slack did this. Let's just say my first pass on a message in the heat of the moment can sometimes be less than professional.


When talking in person over some beers that is exactly what you get.

I talk to people in chat like I would IRL.

Personally I only like working with people that don't feel they need a filter. I sure don't have one.

I find it is easier to trust people that say what they think and feel as they think and feel it.

If you think "this code is an insecure joke and I keep trying to convince myself why we should not scrap it all and start over", then say it.

I said that to a CEO once and he admitted he wrote most of that code, thanked me for my candor, and agreed it should be rewritten given how important it had become.


Some data modes on ham radio work like this. You can even see them fix typos over the air.

Lots of fun.


Live typing would really trip me up. I'd probably wind up drafting my messages in a text editor and pasting them in.



If I have to read it, I’d rather you take your time thinking about what you are writing. For voice or video, stream of consciousness works well.


And if I am waiting for a reply, I would rather you spit out what you're saying rather than waste my time waiting for you to say it prettier.

No communication heuristic will be perfect.


There's a balance. Like the example the OP gave is abysmal. I do not want that. Have one or two actual sentences and send it, if we're in an actual live conversation. If you can't type that fast enough, take a typing course.

If we're not actively talking, write the whole damn paragraph before you send it! One thing I really dislike is:

    > Hey, how's going?
... some time later ...

    > Can I ask you a question on $TOPIC?
...

Will not get an answer from me. Well maybe once, if we've never talked before and that will be along the lines of "just go ahead and ask, don't bother with the chit chat". Most people 'get' this nowadays but there are some hold-outs. I suppose the hold-outs might be more numerous in non-tech companies or in the non-tech departments of those companies.


You're not alone with this specific gripe. Some of my colleagues include sites similar to https://nohello.net in their staff directory page.


I tend to find the best response to any chat message that boils down to "Hey, can I ask you a question?" is "You just did."


The worst is when I ignore their preamble, waiting on the question and the other person turns around and shoots an email to my manager, cc'ing me and saying 'so and so was away, do you know who I might ask about x?'. Like, no, I was just waiting for you to get to the point!


So much this. I would rather people spit it out than agonize word smithing with me.

I don't know why people treat text as different from speaking.

I read much faster than most people can speak though so I consider stream of consciousness in text as way less demanding than doing it in a meeting.


> if I am waiting

Just don't. It's still asynchronous.


Man, I'm the complete opposite. It's pretty much instantaneous for me to read (or not really read) a few words on a screen, but if you're droning on in the video chat or on the phone, god help us.


I wonder if the OP is referring to channels versus DMs? Also this is maybe a huge culture thing at least regarding "inherited channel etiquette"

In a DM I am _for sure_ stream of consciousness

edit: also in a #red channel


I am the same in channels or DMs, with the only exception being alert channels that need to be on topic and low noise.


I think one should make a distinction between chat in public channels and direct messages; with the latter, you're causing the other party a notification and drawing the attention, with the former, the reader can engage with it at their own leisure.


While your example is clearly a strawman, I have to admit I tend to many short messages on chats.

It's not email, there is someone sitting on the other side who waits, so I give them something to read. When I call them, they also hear what I say when I say it and not after the whole message is complete.


There's Slo, which is a slow mode admin plugin for Slack. I wish it were baked in like Discord's slow mode (hopefully it exist in Slack and someone will correct me.)

I agree it's really poor etiquette to make the view scroll for no reason and to make it hard for others to participate. It's fine in DMs or maybe with 3-4 likeminded people, but in anything meant for wider reading or participation it's rude (usually unintentionally) and counterproductive. Fortunately, since it's not intentionally rude, it's not a big deal to teach that good middle ground.


Chat is for conversations it should be a back and forth, if you don't like that choose a method of communication that isn't a conversation.


I turn off typing indications and also don't send my status to the server for the same reason. I've never liked them, and actually have always felt that they were a bit invasive. Why should the other party know that I typed up something and then decided not to send it?


Ha, someone on my project does exactly that...it never occurred to me it might be for perceived speed, I just figured ADHD... :^)


Hey Don-Code


(made a coffee, put out the bins whilst I had your imaginary attention)

.. I completely agree with what you wrote. Just please skip the niceties and write the whole request in one message. Prefix with the greeting! And any follow up details can go in a thread.


Always good to see a "Fix 100% CPU Usage" commit message


I learned Rust by writing a game boy emulator. It always takes 100% CPU because that’s apparently how VSYNC blocking works in SDL or something.

But the actual effect never feels like the computer is dragging. Perhaps because multiple cores.

It’s better than a “fix 400% CPU usage” commit.


However, pegging your CPU at 100% would make your computer seem busy, which matches the theme of the plugin.


maybe if you only have a single core CPU. otherwise, pegging your CPU at 400% or 800% might feel sluggish


that can only be achieved by uninstalling slack


That update broke my workflow. I configured Slack to interpret a rapid CPU temperature rise as "send thumbs up emoji".

(stolen from https://xkcd.com/1172/)


Slashdot’s slide into rampant abuse and 4chan levels of racism was gradual until it was sudden. When I finally stopped visiting, I felt confident saying “nothing of value was lost”. But that was wrong.

This is the umpteenth time I’ve seen an appropriate, relevant XKCD reference downvoted for no apparent reason in the last few days. I miss the inevitable perfect recall for relevant XKCD in the old Slashdot days. It’s sad that there’s apparently such disdain for that sort of fun on here, even in comments on a fun submission.


You're overthinking it. It was almost certainly down-voted because it was a low effort post that doesn't add much to the discussion.


It added something for me, which is why I took the time and effort to explain why beyond upvoting it.


Slashdot had turned to garbage before the first XKCD was ever published.

"Obligatory XKCD" comments read like low-effort karma grabs to me and presumably others. "You, sir, owe me a new keyboard!" "Here, take my updoot!!!".


> Slashdot had turned to garbage before the first XKCD was ever published.

Sure, and it was probably always garbage. The point of the observation was that as garbage became sewage and filth, I thought whatever value there ever had been was naught. But I realized something was lost in that process. Clearly you disagree with that…

> "Obligatory XKCD" comments read like low-effort karma grabs to me and presumably others.

The link above and many of the others I’ve seen haven’t engaged that way. But even if so, so what? The actual linked content is both relevant and engaging for those curious. I still find myself amused going back to them when I don’t fully remember their contents, and I very seldom find them unthoughtful.

But who cares? It’s not like karma is scarce. Why shouldn’t people who enjoy it as side banter have that joy? The world is hard enough as it is without punishing completely harmless fun.


"Everyone loves it so far and doesn’t find it annoying at all!"


My favorite WillSoft so far is his emoji film renderer. https://youtu.be/v32XHJxljKI?t=876


This is pure, distilled, 100% evil. I love it.


I saw the headline and got excited that someone wrote a modern talk/otalk/ytalk program... I miss being able to watch someone else's typos when I'm touch-typing.


I made that! http://typeto.me/

(yes, http. https won't work. sorry. i'll fix it someday.)

also, we would LOVE someone to fork this and/or take it over, we really don't have time to maintain it.


Ah so cool! That really took me back.


i’d be interested. how’d you like me to reach out?


The person who invented the "is typing" feature:

https://slate.com/technology/2014/02/typing-indicator-in-cha...


MSN in 1999 was the first according to the person who made it for Microsoft, David Auerbach.

> the feature was well-received and soon copied by AOL and Yahoo, the other two big IM forces back then.

No big insights about typing indicators in the article, though, e.g no user research was done or anything.

Near the bottom of the article is an interesting bit about messengers showing the message, not just a typing indicator, in realtime. I guess people nowadays (I certainly would) think of it as something Google tried, but it sounds like this predates MSN. The author says they prefer that over typing indicators.


> guess people nowadays (I certainly would) think of it as something Google tried, but it sounds like this predates MSN. The author says they prefer that over typing indicators.

"talk" which he describes dates back to the early 80's, but there were predecessors on systems predating Unix as well long before that.


Colin Robinson, the psychic vampire character on the show "What We Do In the Shadows", would looooove this tool.


I know it's a joke but IIRC these simple scripts don't work anymore, as Slack deprecated the token-only auth mechanism.


Looking at the repo and the tweet, this should be dated (2018). Which would explain a lot of things.


Which things, specifically?


It's intended as a joke, because I've seen this happen (someone typing when I am, stopping when I stop) a lot.


Specifically that the year is 2021, not 2018.


Something there is almost worldwide consensus, which is remarkable...


Not by a far stretch. I noticed the Thais count from Buddha's birth on. Wondered what other cultures do.


The Hebrew¹ and Byzantine calendars count from Anno Mundi, the creation of the world (they don't agree how old the world is).

The Juche calendar counts from the birth of Kim Il-sung.

Unix counts from the Epoch.

The Islamic calendar counts from when the prophet Muhammad moved from Mecca to Medina.

The Ab urbe condita counts from the foundation of the City (i.e. Rome).

There are many, many more: https://en.wikipedia.org/wiki/Calendar_era

¹ Since Maimonides, before that it was from the destruction of the temple.

(Edit: Formatting).


I enjoyed Vinge's future history:

> Take the Traders' method of timekeeping. The frame corrections were incredibly complex - and down at the very bottom of it was a little program that ran a counter. Second by second, the Qeng Ho counted from the instant that a human had first set foot on Old Earth's moon. But if you looked at it still more closely ... the starting instant was actually about fifteen million seconds later, the 0-second of one of Humankind's first computer operating systems.


His descriptions of layers on layers of ancient code still running in that far future setting is somehow one of the most horrifying things I've read in scifi.


How can we be sure dissent is not being censored and suppressed by force?


[citation needed]


Ok, we'll put that up there.


Out of curiosity, how is is that you see these comments?


HN has a few non-public mods, so probably one pings him if he doesn't find it himself.

But I personally prefer the explanation that dang is omniscient ;)


s/explanation/truth,/ ;)


That time I just saw it while browsing the thread. There's no systematic way. But if you want to be sure we see something, you can always email hn@ycombinator.com.


Thanks!


Presence awareness is an insidious overreach IMO. Warms my heart to see petty rebelliousness automated in this way. I'd also like to see something that edits the same Slack message ad nauseam with banal remarks.


Yeah, I've realized nothing good ever comes from knowing when someone else is typing. As this rather extreme example illustrates.


Pidgin has a feature that notifies you when someone starts typing at you or goes from "Away" to "Online". Kind of weirds people out when you message them just before they message you, or you message them the instant they sit down at their PC.


> Kind of weirds people out when … you message them the instant they sit down at their PC.

I miss the AIM days when you’d hear the “door opening” sound when someone signed on. It was totally normal to immediately ping someone then because signing onto AIM was asking to be pinged. And that sound made your heart skip a beat because it might be the girl you like and she might even IM you first :o


MSN user here. Feigning a sign in and out was a good way to start a conversation with someone without looking like you wanted to talk to them first. i.e. crush, gf, friend you're not so close with.


I dunno, I find the typing notification useful in group discussions so I know that coworker A is about to say something (and I know that she's going to make the exact same point I was going to make).

I find active/non-active presence helpful so I know whether or not to expect a reply soon.


I've been talking to friends every day, for what amounts to decades now, over chat tools that don't show when anyone is typing. In contrast to e.g. the tools at work that do, I feel like the interactions we have not only don't suffer from not seeing who is typing, but generally feel "easier" to me. There is no "oh I was about to type but now you're typing so I'll stop typing", or "I started typing but on second thought I don't have anything to add right now (or maybe I was interrupted) and now you're waiting for me", or any of that tired stuff.


I prefer to communicate asynchronously via text to keep myself and others focused on work. People become surprisiginly resourceful when they no longer expect or rely on realtime (or near to it) replies. To each their own, of course.


That's what makes Slack presence so useful, I pause my notifications when I don't want to be interrupted -- others can see that in my presence (but if they really need me, they can choose to notify me anyway). So I can stay heads-down and work, but if something important happens, I'm still reachable. And at least in my company, people don't abuse do not disturb.

Plus, I never need to wonder if it's safe to send a message to a coworker for their timezone "George is in Germany, am I going to wake him up if I send me a message now?" I can rely on him setting notifications appropriately.


I added a loading indicator emoji that I use if I want to respond to something but it's going to take a bit.


Why? You can easily tell if someone is paying attention if they are talking in person. This seems really selfish to me, I personally find it one of the best modern chat features. Then again, I grew up with it and have learned to be zen about several minutes of typing... followed by "k"


> You can easily tell if someone is paying attention if they are talking in person. This seems really selfish to me

Privacy and concentration are selfish interests? Why not have a 9-5 webcam of yourself feeding into my surveillance dashboard? This way I can see my team hard at work as I would in an open office. They'll love that.

The prior in-person work setup is not the ideal nor the standard. I don't need or expect others to pay attention to what I'm saying right when I'm saying it unless there's real urgency. We're all IP-enabled meat functions now; there's no going back.


I love little hacks/projects like this. It's art.


Pidgin IM client comes to my mind where there was a feature (not sure if only for Yahoo Messenger or also for other services) that when someone started to type, their chat window appeared for me. People were shocked about how I knew they were going to message me. Would be fun to have something like this on slack.


Ahhhh one of my favs humans. Hahha. If you get a chance to work with him, jump on it!!


Cool, now I want one that will suppress these so I can write in peace without the other person wondering why it’s taking me so long to write.


As a chrome extension, but the source gives you some idea what to tweak...

https://github.com/andrewconner/slack-hide-typing/blob/maste...


You wrote code for with the only potential benefit of (successfully) making us lol. All I have to offer is an upvote.


Somehow related, most of my typing on Slack is adding a line break because I find messages too close to each other.

-----


Does this also make your status green?


My slack bot is a dictionary for acronyms at work https://tryplayground.slack.com/apps/AKCHPAYCC-acronym-bot


Chaotic evil.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: