Hacker News new | past | comments | ask | show | jobs | submit | papaf's comments login

I disagree with a lot of this article because it assumes that we are efficient robots that just need things to be searchable and written down. Tools are also a bit lacking -- in theory writing stuff in a wiki is useful but then try finding the information with, say, Confluence search.

The article also assumes every one is a native speaker who can write quickly and clearly in a chat -- in a lot of international projects this is not the case.

I find that there is less chance for misunderstanding and aggression if you disagree over a video call. Also, human contact and informal communication make life and working more enjoyable.


> The article also assumes every one is a native speaker who can write quickly and clearly in a chat -- in a lot of international projects this is not the case.

You think non-native speakers have an easier time communicating in real time in a video call than through text? A video call is the worst case for a non-native speaker.

(Well, OK, a phone call is even worse. But being synchronous and relying on their ability to understand the spoken language are both terrible ideas if you're concerned about what makes things easy for non-native speakers.)


> You think non-native speakers have an easier time communicating in real time in a video call than through text? A video call is the worst case for a non-native speaker.

Oh yea, I forgot about this because I don't do video/audio calls.

A non native speaker is NOT exposed to spoken english daily. In some countries they even dub Hollywood movies so not even their entertainment is in english. And where movies are subtitled you tend to read the subtitles so you don't bother understanding accents, speech over explosions and stuff like that.

Written english is another thing, if you do programming. There's no point of looking for docs in your native language; the originals are in english and always more up to date.

So maybe the non native speakers have trouble because the OP speaks too fast / has an unfamiliar accent?


>because the OP speaks too fast / has an unfamiliar accent

Here's an unpopular opinion by a hard-hearing person with native English skills: the far majority of people are really bad at verbal communication as a way to transfer knowledge. Doubly so in complex areas. To top it off, I see barely any difference between people in roles that require speaking often and those who don't, except for frequent public speakers.

The reasons? Bad articulation. Speaking too fast. Speaking before you know what you want to say. Complicated explanations. Muttering "uh", "ah" and more. Diversions. The list goes on.

And it's not like the information on how to be a better speaker isn't out there. I can assuredly say the average person in a leadership position doesn't even take 5 minutes of their work day to do vocal exercises. That alone already helps a lot.

Meanwhile, people making informative videos and talks out of their own accord are much easier to hear and understand. The difference is night and day.


I am not a great communicator. I talk too fast, don't articulate my thoughts, start talking before the other person is finished (though I have a pet theory I picked up this habit from my first high-paced tech job working across 9 timezones with Indians =p ).

I am constantly trying to work on this part of myself-for both myself and others' benefit-but have to be careful to not get too anxious about trying to fix my communication.

I really appreciate this comment because I've found that when I talk to (close) friends about this challenge they do not consider communication something that can be much improved; communication style is mostly rigid. This baffles me because it seems like it would doom most bad communicators to a lifetime of bad communicating. This might be exactly how life works, I admit, but its an interesting way of getting to this obvious point.

Where do you recommend someone like me go to learn more about those vocal exercises you mentioned. That does seem like a great starting place.


I'm attending a series of lectures on project management, and the first one was great. I mean, it didn't contain any earth shattering information, but it was paced perfectly.

The second one was surprising by comparison, because while it wasn't that bad, it illuminated all the things that were spot on in the first one. For instance, it was just a little too fast for me to easily type everything on the slides as notes, which I think is approximately the pace at which I absorb information. At the same time, there was too much redundancy and filler so I tended to get lost figuring out where information should go in my outline.

If someone is otherwise a good and prepared speaker, a heavy accent can be adjusted to.

Go a little slower and prune the verbiage a little more seem to me like principles to come back to.


Apart from what you say about exposure (which is true), I'd say that written English is much easier than spoken English for most (if not all) native speakers, for several reasons:

- If you don't understand a sentence the first time, you can read it twice (or as many times as you want), and this very often helps as a non-native speaker - sometimes you misinterpret a word and this throws you off, but reading the sentence again clears the misunderstanding. It also can help deducing the meaning of an unknown word from context, etc. Of course in a video call you could ask the speaker to repeat, but this isn't functional if you do it often, and can make the non-native speaker feel ashamed of slowing the conversation too much, especially in work environments.

- This one only applies to related languages, but it's much easier to deduce the meaning of written words from other languages. Take the word "subtitles" in your text. Any Spanish speaker could infer that it is equivalent to "subtítulos" in Spanish, because it's spelled very similarly (Levenshtein distance = 2). But the pronunciation (/ˈsʌbtaɪtəls/ vs. /sub'titulos/) is very different (Levenshtein distance = 5).

- If you still don't understand a word, you can look it up. Or even hit Google Translate. Good luck with that in a video call.

- Written language is reasonably standard. While there can be some regional variation (color/colour, lift/elevator and so on); you get rid of all the diversity of accents which can be a huge deal for a non-native speaker.

Seriously, speaking as a non-native English speaker (at a quite good level now that allows me to speak quite comfortably, but obviously I went through all the stages of learning...) the difference between texting and phone/video calling when you're a non-native is enormous. The latter is like an order of magnitude more difficult.


> But the pronunciation (/ˈsʌbtaɪtəls/ vs. /sub'titulos/) is very different (Levenshtein distance = 5).

Levenshtein distance between conventionalized IPA orthographic representation is not a useful metric for the perceptual difference between two spoken sound sequences.

> Written language is reasonably standard. While there can be some regional variation (color/colour, lift/elevator and so on); you get rid of all the diversity of accents which can be a huge deal for a non-native speaker.

This problem actually comes up in writing too; I knew some Chinese students who were really offended by English typos. They had a point - lacking the pre-existing knowledge of English that lets me know what a typo was meant to say, they just had no way of finding out what a misspelled word was supposed to mean. You can't look up words that don't exist.


"You can't look up words that don't exist."

Erm, just google them and take the recommended result?

In general I think searching with missspelled words is a quite solved problem.


> Levenshtein distance between conventionalized IPA orthographic representation is not a useful metric for the perceptual difference between two spoken sound sequences.

I know. Just wanted to provide some metric for the quantitatively-minded, and because the example is hard to follow if you don't speak Spanish or read IPA, and I don't know any least bad quantitative metric. But qualitatively speaking, I can tell you that inferring the meaning of that English word from the written form is obvious even to a Spanish person with zero English knowledge, while inferring it from the pronunciation it's very difficult. And it's just an example, but it happens with many words.

> This problem actually comes up in writing too; I knew some Chinese students who were really offended by English typos. They had a point - lacking the pre-existing knowledge of English that lets me know what a typo was meant to say, they just had no way of finding out what a misspelled word was supposed to mean. You can't look up words that don't exist.

It can come up, but still, the normal frequency of typos is much, much smaller than the frequency of accent-specific pronunciation variants, which typically change several words per sentence. And with Google you can look up many light typos and it will come up with the correct form (although not things like using "of" instead of "have", of course).


I work as a non-native speaker in Korea. Speaking and listening is just insanely harder than reading and writing. I can be productive as long as I'm exchanging messages on Github/Messenger, but meetings are horrendous.


I have the opposite problem here in Japan. I can listen and speak pretty well, even in meetings, but written stuff kills me because of all the kanji...


And both of you should blame distributed work for this? For opposite reasons? You simply know spoken Japanese (much) better than written, while the poster above you knows written Korean (much) better than spoken.


A non native speaker wasn't born in an English speaking country, the rest are your assumptions. I'm non native and I'm exposed to and speak english every single day, and don't even live in an English speaking country.


Local customs may vary? I'm not a native speaker either and I do mix English and my native language even when speaking. I'd still say my spoken English is significantly worse than the written one.


Yeah, accents can be difficult. Personality too.

I grew up in a bilingual en/fr environment. I mostly read in English and watch TV in English. Half of my ex partners are Anglo.

And yet, on calls where I'm the only non-native speakers, and others are American or AU/NZ, I just don't understand half the cultural references and can't say anything because they talk too fast and interrupt all the time. At best, someone might notice that I am frowning or bored.

Regardless whether text or video, some people are not there to listen to others. No easy way out of that one :)


Phone calls are better, as no one can see the group on the other end looking at each other in bemusement (if in a meeting room) or in a group IM chat (if not all in the same place) asking each other what the hell the speaker is talking about (was talking about, as the speaker's often moved on). That's assuming anyone not interested has not taken a bathroom break.

Sarcasm I hope detected.

Speaking in an international environment is a skill. It's not just about (I think the term is) paralinquistics (speed, accent, volume, etc), it's about thinking about who else is in the conversation.


> I disagree with a lot of this article because it assumes that we are efficient robots that just need things to be searchable and written down.

It assumes no such thing. If anything it assumes the opposite of your assertion, that we are not perfectly efficient robots able to instantaneously and fully recall the content of transient discussions. Written content is perennial and searchable, so it can be retrieved in the future if necessary without being limited by human foibles and memory.

Even if the search is bad and the system is not especially designed for it, I regularly manage to find information I dimly recall through search in discord and friends, something which would be entirely impossible using video calls. IME that is in fact a regular issue, people asserting that things were told during discussions and there's no way to confirm it, have context, … because the discussion was a voice / video call.

> The article also assumes every one is a native speaker who can write quickly and clearly in a chat -- in a lot of international projects this is not the case.

Have you been in that scenario, ever? Video calls are infinitely worse than typed text between non-native speakers. And if the call is not going to be in english… why would the written communication be so?

> I find that there is less chance for misunderstanding and aggression if you disagree over a video call.

I find that there are regular shouting matches over video calls, and collisions between speakers makes the experience miserable. It's also impossible to dive in and out and recover the information, if you arrive on a group discussion midway you can read the history, if you dive out for a bit you can read what you missed. On a video call, it's gone.

> Also, human contact and informal communication make life and working more enjoyable.

To you.


If there are "regular shouting matches" going on in any form of meeting then I would suggest the organisation in question has cultural problems way beyond the communication tool being used.


Have you been in that scenario, ever? Video calls are infinitely worse than typed text between non-native speakers. And if the call is not going to be in english… why would the written communication be so?

I am in this scenario every work day as a non-native speaker. I much prefer talking to people than trying to get the text correct.


I'm also in that scenario everyday with other 3 non native speakers from different countries, text is preferred unanimously. Tbh, that's the first time I encounter a non native speaker software engineer who prefers video calls.


While there may be some people who don’t enjoy human contact, I think it’s a little unfair to suggest that this is some kind of idiosyncratic preference of the original poster. It’s a basic human need. Most people who work full time will want to have some kind of social contact within working hours.


> While there may be some people who don’t enjoy human contact

We're not discussing human contact, we're discussing video calls.

> I think it’s a little unfair to suggest that this is some kind of idiosyncratic preference of the original poster.

So pointing out that people differ is "a little unfair" but asserting liking video calls is a universal human requirement and enjoyment is fine?

> It’s a basic human need.

History is full of people who happily did without.


It was not clear from your post that you were referring to video calls rather than human contact in general. Here is the part I was responding to:

>> Also, human contact and informal communication make life and working more enjoyable.

>To you.

I think the vast majority of people would prefer having social contact via video calls to the alternative of having no social contact or having it only via text chat - yes. But I was not talking specifically about video calls.


> I think the vast majority of people would prefer having social contact via video calls to the alternative of having no social contact

I believe that too, but for me at least, video chat is for chitchat and banter and text chat for everything, including substance. This is the same for in person; I enjoy going with clients and colleagues to coffeeshops and bars, but we don't get much done in either (in bar, if with techies, actually more than you would think) but it is nice for the human contact.

(Talking work context here if that was not clear)


> I think the vast majority of people would prefer having social contact via video calls to the alternative of having no social contact or having it only via text chat

Cursory evidence - namely, your up-versus-down-votes on this and the GP comment (both currently gray) - suggests that said majority is not really all that vast.


I think threads like this tend to end up with a specific subset of people reading them and weird voting patterns. Let’s look again at the point I was responding to:

>> Also, human contact and informal communication make life and working more enjoyable.

>To you.

Present the second statement to anyone outside a certain subset of HN readers and they would just sigh and shake their heads. But on HN we can actually have lengthy debates about whether or not humans are indeed social animals!

The votes are pretty even, incidentally. My comments have been alternately positive and negative.


Personally, I like having chat's with my mates, over vids. I can chat with them async too. I don't need to see them to hear their voice in text.


It's also implying that you do need to train a bit to work efficiently in a distributed team.

> The article also assumes every one is a native speaker who can write quickly and clearly in a chat -- in a lot of international projects this is not the case.

These are two different things. Native speaker is one, having the skill of writing quicky and clearly is another. They're unrelated. Both are trainable. Not to mention that in my experience it's the native speakers (of English i guess?) have the worst spelling :)

> Also, human contact and informal communication make life and working more enjoyable.

And... informal communication has to be in a video call? It can't be in writing?

As for the human contact, I do recommend having a social life outside work. Distributed or not distributed work.

Source of statements: been working in distributed teams for 20 years, not since this pandemic.


And... informal communication has to be in a video call? It can't be in writing?

On video calls and in meatspace, you get to see peoples facial expressions, their smiles, they can move their hands and make gestures. I much prefer that to text.

As for the human contact, I do recommend having a social life outside work. Distributed or not distributed work.

You are correct but, personally, I think spending 8 hours a day without seeing faces is too much.


We work with people from all over the world, most not native speaking. For technical stuff, in our experience, voice or video calls are the most inefficient thing possible. Because spoken bad English is far worse than written, a lot of people have less than optimal internet bandwidth and latency and, worst, after the call the details are kind of lost. So first writing the main points in chat, if then some people (usually this is 1 person) want a call, we do a call and then flesh the details out over chat and in docs/wiki.

Informal comms is also via chat; far more so then in video as, because of the overchatter and bad connections, jokes and quips get lost far easier.

Ymmv of course but we avoid vid/voice like the plague, so far it hurt us with large amounts of miscommunication and time loss.

By the way, been doing this and like this for 25 years now.


> By the way, been doing this and like this for 25 years now.

Yeah, he must be new to distributed work :)


> in theory writing stuff in a wiki is useful but then try finding the information with, say, Confluence search.

If the company/team wiki isn't organized to optimize for browsing to relevant documentation, then you might as well use google docs (which excels at search and is terrible for browsability).

A reasonable percentage of effort documenting something in a wiki should be devoted to making sure that people actually can find it, otherwise you're in cleaning-closet-in-disused-bathroom territory.


> I find that there is less chance for misunderstanding and aggression if you disagree over a video call.

If you put me in a video call with someone not more or less capable of communicating in our chosen common language I can practically guarantee that I’m going to want to murder them.

There’s nothing worse than sitting on a long call waiting for someone to finally understand what button you want them to click. Even better if you have 500ms delay too.


500ms ? you have it lucky , try 2000ms next time for real frustration. Bonus points if you can hear yourself back unless the recipient is muting him/herself


The assumption that text is always superior to a sync conversation is too strong. Often you get the crucial bits by interrupting someone mid discussion and asking for specifics.


But you can do that in text too. I mean if it's wall of text dump, no; but if people keep their chat blocks short, then it's a two way convo. (or more)


Text suffers from being precise but accurate.

Voice is accurate but not precise.

Different problems are resolved better by one than the other.

Brain storming better in voice. Technical details of an app that needs to be coded, writting is better.


The article assumes that we are NOT efficient robots that can store any and all information that we get in our heads.


A Fairphone is repairable and, using Lineage, has long term software support.

I have a Fairphone 2 as my main phone (released in 2015) and I am running Lineage based on Android 10.


It's like asking why the knife you're using keeps cutting you when you put your finger on the sharp end.

Most cloud providers don't have this billing problem and so the analogy breaks. Its more like, why does this knife keep shooting me in the foot?


it routinely eats up close to 4 GB of RAM, which in my case is an entire VPSes worth and costs me about 60 Euros a year

You are absolutely correct that running other peoples Ruby code is expensive. I would argue similarly for Java because of the high RAM requirements.

However, if you are a company developing your own software, if you use a more productive technology and it spares just 1 programmer then you have paid for a few hundred VMs and running costs become insignificant compared to labour costs.

This is an argument in favour for both Rails and the Java monsters.


I have been on several teams that found the following article "Unlearning toxic behaviours in a code review culture" very helpful:

https://medium.com/@sandya.sankarram/unlearning-toxic-behavi...


I'd like to point out that every one of the "correct" examples is longer, sometimes much longer, that the "wrong" example preceding it.

I've found that I usually start with the "correct" way and end up regressing to the "wrong" way as more and more work piles up, stress builds and deadlines approach. I guess the "correct" way only works if the organization actually prioritizes it and gives reviewers the time to do it the "correct" way no matter what stage the project is in.


This should be basic training anywhere people learn how to code.


Certainly not clarity of written communication.


Sometimes I think Canada is more interested in portraying itself as a progressive beacon to the world than actually being one.

Its attitude to seals is not very progressive: https://www.humanesociety.org/resources/about-canadian-seal-...

Or the environment: https://www.nationalgeographic.com/environment/article/alber...


Regarding seals, you are stepping into a debate which includes aboriginal rights. There is nothing clear cut about that one.


Now that you bring it up, the residential schools were pretty progressive too: https://www.nytimes.com/2021/06/24/world/canada/indigenous-c...

Last one closed in 1996.


These two examples are effectively cherry-picking two data points to make an extremely BROAD argument that "Canada is not Progressive".


The taxi could have been in on it -- its a trick that is normally used in poorer countries but looks like its reached the EU.


I had this same thing happen to me in NYC, outside JFK airport. Not limited to poorer countries at all.


But remember, folks, rideshare services are unregulated and potentially unsafe.

/s


Over here (Uruguay), rideshare services are way more reliable for tourists.

I have family from the countryside, and while they're not robbed outright, they're driven on the most inefficient way that drives up the meter.

Tourists can pay up to 100 dollars for a trip from the airport for example (legally if morally questionable).

A similar trip on a rideshare is less than half, but they're banned from the airport.

Plus, taxi drivers are unionized and are terrible drivers, while rideshare drivers are regularly kicked out if they give substandard service.


The same situation in many developing countries around the world. The local taxi cartels have been using lobbying and outright violence to keep ride-sharing services away / banned.


NYC is poorer country, in a lot of people's cases.


Two things stick out here that I don't fully understand.

Declarative schemas, and a well-defined update process (that isn't human-written DDL), are essential at any sort of organizational scale.

Isn't this impossible because some schema changes require data migration? A data migration cannot be declaratively automated as far as I know.

Queue support

Why not use a dedicated and feature rich queue such as Rabbit MQ or, if you want to get really fancy, Kafka?


>Isn't this impossible because some schema changes require data migration?

In the most general case, sure - although there are workarounds for some specific cases (e.g., including previously-known-as names in the declarative schema to allow automatically planning renames). But 99% of the time, you're adding and removing tables and columns in a way that's very well defined. This is one of those areas where the best solution is to legislate away the hard problems - a tool that covers 98% of schema changes automatically (the provably safe ones), and then fails/requires a human to approve the last 2% is still dramatically better than having humans manually write and sequence change plans all the time.

Data migrations will require human effort, but you can sequence the changes and isolate the parts that need different kinds of work. If you're changing a string to an integer, for instance, you can make it clear in your change history that you (1) add the new column, (2) start dual writes, (3) backfill, (4) move readers to the new column, (5) stop the dual write, (6) drop the old column. You can do that with checked-in migration code, but think about what you end up with at the end - with imperative migrations, you have the clutter from all of that history; with declarative schema definitions, you just have the final state, just like how it works for code.

Declarative schemas also usually come with nice ancillary properties - for instance, they can give you automatic rollbacks, because you can pack up the whole schema definition as a static artifact.

>Why not use a dedicated and feature rich queue such as Rabbit MQ or, if you want to get really fancy, Kafka?

Atomicity. It's really, really powerful to be able to write a row and send or receive a message as a single exactly-once transaction. Imagine a queue of events. The writer writes the event data, and sends a message as a notification that it exists; the consumer will keep some sort of aggregate (count, filtered total, etc.). With a separate queueing system, you have to explicitly manage the timing and error cases bridging different atomicity domains, usually reimplementing some sort of idempotency log on your own. If it's all in one place, you just write a transaction that reads the old value, consumes the queue message, and writes a new value.


I'm doing a project perhaps relevant to this. Talk of declarative schemas (or what you imply they offer) is very interesting and I'd like to know more but I can't find anything relevant (just magento and sqlalchemy). Indeed, searching for <<<"Declarative schemas" "sql">>> in google gets this very thread on the first results page.

Any links to clear, actionable and reasonably comprehensive examples of these would be most helpful. Obviously abstract statements of the required semantics are also needed, but I also need to see what actual code would look like.

TIA


Magento (the new XML-based version, not the old create/update/revert-script version) gives a lot of these properties. Making it part of the database instead of a third-party tool would be better, though - it lets you cover more features, and with deeper integration you can get transactional updates and history logs.


> Why not use a dedicated and feature rich queue such > as Rabbit MQ or, if you want to get really fancy, Kafka?

If your queue is in the same database as your data, you can do "ack message/mark job as complete" and "commit result of job to database" in the same transaction. That simplifies a lot of the harder parts of things like materialization pipelines or BI systems.


One thing I would recommend when someone blames a bug on you -- without hesitation, always say "yes, I will take a look at it".

This way if you have to push back and say it wasn't you, you have much more impact because you have investigated the problem.

Edit: but I agree, that is no way to treat a colleague.


Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: