We were doing remote work effectively decades ago. Don't have hallway conversations to fix bugs? Easy, just post your problems on the team chat and someone (often one of several people) would love to drop by to help.
I'm not sure exactly all of the forces that have led to this changing so much, but I'm certain that merely blaming "remote work" isn't it.
Somehow we were better at using remote tools while literally in the same office than some teams are at using them now while fully remote.
I couldn't agree more. I pushed to get the place I worked for to use Slack when it first launched, moving us off AIM (ha!). Our use of Slack when we shared an office in the twenty-teens was so much better than the use I've seen of Slack/competitors on fully-remote teams.
I wonder if it's because the failure mode was, as you said, to "drop by." Now the failure mode is... just failure.
My team rooms are pretty dead. I'll send stuff there but by and large the team simply doesn't use chat functions.
I’ve managed to be invited or told of them after ingratiating myself to the teams, or more often, after quitting and getting invited as one of the “good ones”
They all know that every word on company shit is being monitored
It requires to be comfortable exposing lack of knowledge or saying weird things to peers, and be confident it will be taken in good faith. As you point out, that requires a whole level of culture building.
This is sort of the point. Remote tools work great when you have spent a lot of time building relationships and rapport with the people involved. That's hard to do in professional settings, and extremely hard to do in remote professional settings.
Letting teams that know each other well work remotely works great. Building teams remotely is very hard.
I'm a diehard for remote work, but we have to be realistic abouts limitations.
Consider the effort to accommodate those preferences though. Accommodating a video call preference is easy. Same for chat. Accommodating a preference for face-to-face requires spending an hour (2x average US commute) traveling to meet you. That's quite a significant ask of the other person.
In electronic chat I can ask someone to explain their question and wait for it in writing. In person, I often have to listen to them stumble over the concept because they didn’t think about what they wanted to ask before asking it.
In a video call I can clearly see the other person’s screen and zoom in on what I’m trying to look at. In person I have to lean over their desk and squint at the right angle.
That’s pretty weird and uncomfortable and I don’t know that I would want to work with someone like that in or out of office.
I much prefer working with people who can just be honest about what they don't know, it's way better than pretending to know or trying to save face, and generally people in the former camp seem to have higher EQ.
- I blog with my real name, which includes an uncommon first name. It's easy for hiring managers to search the web for.
- My blog is linked from the website I host on the domain name I use for my email address, including for job applications. Anybody I email is likely to follow that thread.
While I do appreciate this joke (and I do hope this is a joke), I've recently had a project majorly held up because a lead dev didn't understand SQL. It's great to admit gaps but it's equally important to close those gaps.
> As a hiring manager I interviewed software engineers and tried to filter for object-oriented knowledge. Retroactively, it’s clear I was hypocritical.
As some one who has been on the other side of "rejected by an interviewer who didn't understand the thing they've interviewed you about" I, again, appreciate the transparency, but I'm not entirely feeling that the lesson has been learned in the case.
There was a time in my life where I felt ashamed that I didn't know calculus... so I learned calculus and my life has been better for it. While refusing to admit ignorance of a topic is particular problem in tech, confessing that you don't know something and gleefully stopping there is not much better. Holding people up to a standard you do not hold yourself to is a major problem in this field. The technical people I've learned the most from hold you to a high standard and hold themselves to an even higher one.
Of course not every engineer has to hold themselves to a high standard, but if you want to write a blog about a topic, then part of the requirements here is that you do hold yourself to a high standard. Yes, we all have gaps, and we shouldn't let shame get in the way of learning, but we shouldn't let shamelessness about what we don't know limit us either.
For automated testing, I'm in the middle of reading Developer Testing by Alexander Tarlinder, with xUnit Test Patterns by Gerard Meszaros coming close behind. I'm also working through Test-Driven Development: By Example with my wife as we have time.
For SQL, I read Grokking Relational Database Design by Qiang Hao last winter, and I started SQL Queries for Mere Mortals by John Viescas this week. Sadly, my flub with "left inner join" was not a joke.
For OOP, I've been on a whirlwind tour: OOA&D With Applications by Booch et al., Object Thinking by David West, POODR and 99 Bottles of OOP by Sandi Metz, Domain-Driven Design by Eric Evans, IDDD and DDDD by Vaughn Vernon, Design Patterns in Ruby by Russ Olsen, Clean Architecture by Robert C. Martin, and Smalltalk Best Practice Patterns by Kent Beck. Still on the docket are Design Patterns by the Gang of Four, PoEAA by Martin Fowler, Smalltalk, Objects, and Design by Chamond Liu, and Object Design by Rebecca Wirfs-Brock.
> confessing that you don't know something and gleefully stopping there is not much better [...] we shouldn't let shamelessness about what we don't know limit us either
I promise you, this was not gleeful and this was not shameless. Shame and fear affected me for months on these issues. And I'm not stopping there... From the end of the article: "I’m going to continue to work on skill building, but now I feel free to write about it. If [...] you’d like to help me fill [my knowledge gaps], [...]"
> if you want to write a blog about a topic, then part of the requirements here is that you do hold yourself to a high standard
A high standard of writing, maybe. But plenty of great stories come from those who are striving for a high standard, not just those already in the upper echelon. It's what makes this place different from academic journals.
My suggestion is using Khan Academy if you want to better your math knowledge. It's really quiet good for that sort of thing. It was just starting to take off when I finished my degree. I wish it was available before then.
https://www.youtube.com/playlist?list=PLDesaqWTN6EQ2J4vgsN1H...
https://www.youtube.com/playlist?list=PLDesaqWTN6ESk16YRmzuJ...
Dude, your employer is toxic AF. Look for a new job starting today.
I wish we'd be more open about our flaws and knowledge gaps in general. I think we'd all benefit.
I used to also fear appearing incompetent if I admitted to not knowing too many things, so I would avoid showing my knowledge gaps whenever possible.
However, this colleague was the exact opposite. He would gleefully tell people he had no idea how to do certain things, would be a ready listener when the person he was talking to explained how it worked, and would heap praise on the person for their knowledge and teaching skills. He would always defer to other people as experts when he didn’t know, and would make sure our bosses and coworkers knew who had helped him and how much they knew about the topic.
What I saw and experienced was that this did NOT, in any way shape or form, make people think less of him. It did the exact opposite. First, it made people REALLY happy to help him with stuff; he made you feel so smart and capable when you explained things and helped him, everyone jumped at the opportunity to show him things. He learned so much because he made everyone excited to teach him, and made his coworkers feel smart and appreciated for their knowledge.
And then, when he did speak with confidence on a subject, everyone knew he wasn’t bullshitting, because we knew he never faked it. Since he gave everyone else the chances to be the expert and deferred all the time, you didn’t get the one-upmanship you often get when tech people are trying to prove their bonafides. People were happy to listen to him because he first listened to them.
I have really tried to emulate him in my career. I go out of my way to praise and thank people who help me, always try to immediately admit where my skills and experience lack, and don’t try to prove myself in subjects I don’t really know that well. It has worked well for me in my career, as well.
Taking a switch statement and spreading it out over 3x classes is not a general improvement, it is very context specific. It makes the code difficult to navigate because what used to all be in one spot and easy to read is now spread out who-knows-where and there might be a special case lurking somewhere.
I don't fear they'll deny others the opportunity for remote work. The company is "headquartered" in California, but I don't know if they even lease an office anymore. The CTO lives in the upper midwest, the architect lives on the east coast, my manager lives along the Mississippi River, and I live in the Ozarks.
> enjoy the benefits more than you suffer the drawbacks
Yes. I'm sorry, I thought I made that clear in the post. The benefits of remote work include, but are not limited to: no stress or time from commuting, an opportunity for geographic arbitrage, and the ability to build a better lifestyle around the lack of a commute. Beyond just the remote worker themself, a society that transitioned all office work to remote would also gain more benefits: more efficient use of real estate with entire office buildings rendered unnecessary, less chance of land value distortion due to centralization of workers, and less pollution due to fewer commutes.
I'm glad to also criticize in-office work for having other drawbacks. For example, I was rear-ended commuting to work more than once, the family needed the expense of two cars, we spent more on clothing, and the ambient level of noise being above 35 dBA was annoying.
I don't know if I could tell you with confidence the proper way to get a string length in any language. Is it a global function or an object method or property? Is it length or count or size? I have to look it up or rely on intellisense every time. I do too much bouncing between languages.
Well, I know it in BASIC. Len().
void main() {
}(obviously it's not but it is super nice that main in Rust is just:)
fn main() {
}def main(): # code
The dunder syntax you see around isn't required.
Without making judgment on the actions of any involved party, I do wonder why the author would choose to bring up this incident and submit it as part of a story to a site where there is a significant overlap in readership.
Honestly, if there's any chance the content they posted on your profile before locking you out comes close to defamation, I'd consider talking to a lawyer about it. It could be that getting one to send them a cease-and-desist letter on your behalf could take care of the problem.
I've generally found conversation there to be more respectful than HN, rather than less, when discussions get heated - so I had high hopes it would be a different site, but alas.
This leaves a really bad taste in my mouth.
Edit: you know what, screw it. In the spirit of "no more self censorship", here's the link: https://lobste.rs/~7u026ne9se
Sadly, it seems like nothing was learned, since he settles only for diminishing his culpability in anti-social behaviour. He goes so far as to describe, in his blog post, his code as an "AI-assisted patch". When you profess that you don't even know the language of the code that the LLM generated, there is no "assistance" about it, you're at the deepest end of vibe coding. And in submitting it to an open-source project, you're making a maintainer spend more time and effort reviewing it than you did prompting it, which is not sustainable. Moreover, if the maintainer wanted a pure-LLM-generated solution, there was nothing stopping them from hopping over and typing in a prompt themselves.
In fact, most of the comments were purely a debate with no direct attacks at all. The extent of "not respectful comments" I see are something like...
So your original comment that you "didn't want to hype up AI" was a lie, you really just wanted to pretend it was your own work and didn't want the project to be able to make a choice about it. There are good reasons why projects may not want to accept code generated by AI. They may not care. But by consciously choosing not to disclose that, you took that choice away from the project. That's pretty lousy behavior if you ask me.
"Pretty lousy behaviour if you ask me" is incredibly tame. If that's what counts for toxicity, then you're advocating for a toxicly positive carebear forum where nobody is allowed to criticise anybody else's decisions.> you're advocating for a toxicly positive carebear forum
Please stop putting words in my mouth.
A “Confessions of a Software Developer” website where devs can come in and make anonymous confessions.
A good reminder that everything we say/hear/write/read exists in the unseen context of all the things we believe we should not say.
Being bad at problem solving with people far away is just another problem you can solve with practice. Same as being bad at problem solving even when help is right next to you.
Yes, "remote work sucks" is reductive, but I elaborated beyond the heading. Also, I wouldn't disagree with "office work sucks." Remote work simply has its warts, too.
> just another problem you can solve with practice
Perhaps, but practice alone clearly isn't enough. I've been working remotely since 2020 and it hasn't gotten more enjoyable. I would love to solve that problem, though. I read Remote: Office Not Required by Jason Fried in the past, but that was written a long time ago. I've added more recent works (Effective Remote Work by James Stanier and The Async-First Playbook by Sumeet Gayathri Moghe) to my reading list.
Work sucks in general. Remote work is of course not perfect, but its problems need to be compared against non-remote work problems..
And this is my biggest complaint about arguments about remote working. People turn it into something that’s evidence-based when actually it’s a deeply subjective topic and thus different personality types thrive in different working environments.
Unlike OP though, I cannot be as open about these companies as we would definitely not have any clients left after.
Also, I am not sure how not touching computers after work is a bad thing; people can have families and other hobbies?
Ever heard of flu season? What if you have a family and don't want to bring diseases home?
> Attempts to represent ideas spatially get mutilated by online whiteboard and sticky note software.
Right... like, the Linux kernel team? Or any of the major open source key pieces of technology you use? Built by large teams that worked remotely for decades even when tools where orders of magnitude worse than the current state of the art? Some of them never meeting each other in person?
---
Remote work DOESN'T suck. YOU make it suck.
Remote work is great if you care about shipping.
Want to go for coffee or want to talk about our weekends? No thanks.
Did you see the distracting thing outside the building? No, I didn't because I don't have to go there anymore.
Is the heat too high or too low? It's your own home, just adjust it to YOUR convenience.
Worried about your pets being alone? Just be next to them.
Want to be loud and flex about random stuff? Log into LinkedIn and talk to the other geniuses like you while I focus on doing my job.
Most people SUCK at drawing, suck at calligraphy and their whiteboard diagrams SUCK. Therefore, whiteboards SUCK. Unless you have great calligraphy and drawing skills, whiteboards are not helpful. You are just sad because you are not getting attention by being in front of other people looking at you.
I'm honestly so confused by this. Has the author never worked in an office before? Building a grudge for someone that you are forced to work with and sit next to all day is one of the classic office dilemmas. Being forced to be around them all day can really build resentment to people
Tell us more?
On the positive side... Seeing how people respond to pressure (done within some bounds) might be useful information. Watching people dig deeper into their problem-solving toolkit (and even their determination and resolve) might be informative. But I have not recently reviewed interviewing research, so I don't know how strong the causal connections are between observing these things in an interview and on-the-job performance.
On the negative side: If one is primarily interested in finding flaws as some sort of intrinsically valuable thing or to boost one's own ego, these are probably hints to look closely at oneself and reflect and make sense of what is going on inside.