There's a ton written on tmux as you can imagine by this point. This page seems pretty comprehensive on the advanced features including tmux scripting:
You mentioned your editor on the remote server. Does everyone have their own account with their own settings on all remote servers? We're still at a point where everyone accesses servers via the one shared "root-ish" user.
I always run tmux locally. If you want to connect from a different computer, just ssh in and then "tmux attach".
For what you are describing the best practice is a nested tmux session with tmux running locally and on the remote server. So you would open tmux locally, then in one of the windows or panes you ssh into your machine, then open tmux on that machine. This will require you to press the tmux prefix (ctrl+b or however you've set it) twice to do the commands on the remote tmux instance. However you can get around this with some configuration (1).
1. https://www.freecodecamp.org/news/tmux-in-practice-local-and...
I think certain certain terminal emulaters like iterm2 have tmux specific features that could also be helpful, but I don't use that software so I am not as familiar.
Sure you do. The college day is broken up into many unrelated scheduled meetings, with high switching cost. Then you do the deep work after hours.
My post-graduation life is not so different. Maybe it suits my brain, but it's been OK. I like the work.
I find that this leads everyone to constantly do multiple concurrent tasks. After a long day I often have a headache from having to concentrate on both my coding task, an operations task, a meeting, and a new request at the same time.
Ultimately, as you would expect - productivity is awful. They then have lengthy discussions on how to improve productivity by every mechanism other than what’s known to work (faster builds, faster tests, increased focus time)
Often, the real problem is that people don’t actually have 1 hour of working time in between meetings. We sit at our desks and feel obligated to respond to e-mails and Slack messages. Our Slack responses turn into conversations that consume 5-20 minutes without a clear end. We need to spend 5-10 minutes reading backlog to catch up. We need to get a drink or use the restroom. That 1-hour chunk of free time on your calendar may only have 10-15 minutes of concentration time, which is the real problem.
I’ve had some success with blocking off calendar time to mark 1-2 hours of focus time. Having something on your calendar makes delayed responses in Slack socially acceptable.
Pomodoro does not need context switching.
Breaks without loading up a different context gives the brain time to bring back the body into a less tense state, so the next cycle can be more energetic/productive than a continuous one. In many cases it lets some ideas run their courses and save time by solving conflicting thought forces.
To be fair, I think staying up all night trying to be productive instead of getting a good night's sleep also makes it hard for most people during the day. As someone who consistently got 6-8 hours of sleep every night in college before a day with classes, I've always been mildly horrified by the fact that "staying up all night studying" is somehow considered a good thing.
Intermittent fasting seems to be a very effective strategy (for reasons unrelated to your point).
Better thing to do is have a routine first. A lot of people don't have any eating habits, it's more of an afterthought or a "whenever I'm hungry I'll eat" kinda thing. You can't base a diet off of that.
If you fix your diet by just eating at the same moments, roughly the same amount of time, only then do you have a baseline. Then make tweaks on that baseline. Evolution instead of revolution, only that will be sustainable.
First world problems; there is so much food that we can make lifestyle choices around it. You can pretend to be a caveman and eat "paleo" since meat is neatly wrapped in plastic at the store and you didn't have to hunt it down. (And if you study the Hadza tribe who are one of the last paleo-bros on the planet you'll find that meat is a small part of their diet). You can forgo certain meats and call your self pescatarian since you can find fish in the middle of a city. And you can intermittently fast since you know that you can quit anytime and stuff yourself full of food.
We as a modern society have to be the most smug of all. Think about every predator in the world. We constantly pay to exercise, to burn off EXTRA calories, where as every other animal on the planet conserves them or expends a vast amount to obtain more.
That those studying session can sometimes be too long to be healthy is certainly true, but was not the point argued here.
When someone argues that a Ferrari is a fast car and you criticize that not all red cars are fast, you are arguing against a statement nobody made while still saying something true.
I don't know why you assume that I don't understand that they're saying that their studying is uninterrupted when it's overnight. That doesn't change the fact that sleep deprivation is also something that makes any sort of studying less effective.
> When someone argues that a Ferrari is a fast car and you criticize that not all red cars are fast, you are arguing against a statement nobody made while still saying something true.
In this case, it feels more like someone said that Ferrari is a fast car, and I mentioned that some people can't afford Ferrari's and might find a different car a better fit, and then you came in extremely unhappy with the fact that I dared to mention anything other than a Ferrari because that's the only car OP mentioned. It's extremely common for people to reply to comments making a tangential point, and doing so doesn't at all take away from other people's abilities to have parallel discussions in other subthreads about different points; that's kind of the whole point of this style of forum.
Your point is valid as a tangent, but it doesn’t read as a tangent to me - it reads as attempting to address the point you are responding to.
Just my two cents here.
Tangential, but might be interesting to some:
sometime before the pandemic, after (I think) 30 years of always eating some kind of breakfast, I accidentally missed breakfast once and that day I felt I had significantly less brain fog after lunch.
So I tried again to see if it was just a coincidence, but it had happened again and again.
And, I realized, as long as I don't start to mentally prepare for breakfast I don't start feeling hunger either.
I'm not suggesting this is a good idea for everyone, only that for people like me who has followed "best practice" for decades and doesn't feel too enthusiastic about it, testing out alternative approaches might be a good idea.
PS: the total amount of hunger I feel in a day seems to have gone down too.
My comment is only pointing out that for me it is the opposite: I work better without breakfast.
Do you actually work better, or have you decided that you work better?
As for if I work better or just have decided I work better, I only have 4 or 5 years of experience with this but despite the fact that I love breakfast and lunch I still skip them because the brain fog I seem to get between 1200 and 1400 on days when I eat breakfast just isn't worth it.
Whatever the reason for celebrating overnights, effectivity of it is not it.
Years later some of those kinds of situations were bonding moments, but none of them are considered a good thing.
- not everyone has the same sleep patterns, and while it can usually be coherced, for some that doesn't work or has too many downsides.
- some people have straight sleep issues and, sleeping in 6-8h blocks doesn't help. "then fix the issues" could be the basic advice, but again, that's usually easier said than done, or has worse side effects.
In that respect I agree with parent that it would be nice if "weirs" work patterns were more accepted
My teen jobs were in stores, restaurants, and manufacturing. In those contexts, everybody understands that when you're working, you're actually working. Even managers understand that even small discussions need to be fit neatly into the flow of the work, and actual meetings require careful planning to not disrupt operations. The space too was carefully designed to maximize effectiveness.
So American office culture seems absolutely wild to me. Especially in software, where we are expected to fit our actual work into a sort of calendar Tetris. Oh, a grand poobah would like another status meeting, plus a lot of time spent coming up with estimates that are not going to change anybody's behavior in the slightest? Gosh, do you think that might have an effect on the completion date? And sure, why don't you put me next to the salespeople making calls all day. I'm not making any progress anyhow.
The only conclusion I can come to is that in a lot of places, productivity is much lower on the list of observed priorities than stated priorities.
Dude, how about a trigger warning next time?
Or better yet, put me next to the salespeople that instead of making calls all day are just goofing off.
I’ve worked next to people with zero volume control and who like to take calls on speakerphone.
I decided there and then that cubicles has material benefits over open offices.
Young me's head would explode if I got a glimpse into a future where cubicles are now looked at as the good old days.
And the progression keeps going with a lot of companies that have open office "hot desking" where not only are you working in a chaotic open environment, but you don't even have your own little space there from day to day.
All of this makes it seem increasingly bizarre to me that a lot of the industry was forced to make remote work viable through the pandemic and many companies saw productivity go up and now a lot of them are trying to claw back on remote as quickly as possible.
Also, companies aren't independent entities with their own will. They are just groups of people.
Lets say it that way, such a mindset ought to be valuable to the extreme. Thats why we see a constant stream of meddle-managers, setting out to make compliance and "apply presure" startups. Its definatly at the core of value generation.
And I theorized that one aspect of hotdesking is absolute control over employees by having them go through the experience of “clearing their desk” every day so they feel like they’re fired every day. This puts the grunts back in their place and keeps everyone docile because you know you’re just a cog and your job is not a permanent thing at all but rather something that you must work hard at earning again for the next day, lest today’s daily desk clearing be your last one.
This building is scheduled for demolition and we're being moved to an open-area workspace in a new building.
At least it's above trendy retail so we can get overpriced coffee and sushi on our lunch breaks.
The cubicle was invented in the 60s as a way to liberate people from the tyranny of the open plan office (just look at film from before then — say, “The Apartment” —- and you’ll see the open plan was the norm.
It’s a shame that the cubicle itself became a tool and exemplar of anomie.
It feels like I can get away with only a few hours of what to me feels like productive work a week. Actually, I had a really good day last week, but then it takes days for the feature to pass review, rework for said review (often trivial remarks), and to end up in the main branch ready for deployment.
The first thing I noticed about white collar work was how gossipy and lazy everyone was. We didn't have time for that in blue collar work. I had no idea how these people were useful to work or society.
It seems so bizarre to me, even today, that most white collar jobs make more money. It's like they took the people who couldn't work physically, made them feel superior, and for some reason paid them unreasonable wages.
> It's like they took the people who couldn't work physically, made them feel superior, and for some reason paid them unreasonable wages.
Easy killer, you're projecting.
I could go back to being a bartender today, and could do 90% of the job (I'd have to refresh my memory how to mix a few drinks, but most of em are still there). I could probably go back to Private Investigator, or food truck work too.
But it took a whole lotta learning to get to the point where I can do my current white collar job. No one I bartended with could stay sober 4+ days a week or avoid DUIs; no way in hell I'd trust them with a production GCP cluster.
In one of the companies I worked for, it was comfortable in the beginning - there were offices, 2-3 programmers in each, not too crowded, but close enough to see when the coworkers were focusing on something and when it would be ok to do a quick "hey, do you know how to...". The company grew, moved to a bigger building, rooms became larger, now there were 4-5 programmers in each. It was still OK then. Calls and longer talks were done in separate rooms, and a quick chat with the guy next to you could be done like you'd do it in a cinema - quietly.
When I was leaving the company years later, it was after it moved to a place with one huge open space and a set of rooms that you needed to book days in advance to use. Some of them were permanently occupied by "important" people even though they had their own offices. That resulted in everybody and they're cat making calls and meetings and sometimes even plannings right in the middle of the open space or in the kitchen. Finally, a "hot desk" system was implemented, and you had to book your desk days in advance.
I asked the CTO who I've know for quite some time - WTF man? He said that he likes it, because he can see at a glance that everybody is working. I was reminded of storehouses with special elevated rooms that had a view on all that happens on the floor. Saying that I got disillusioned doesn't even begin to describe what I've felt then...
This kind of panopticon is how prisons are often organized.
I can be lying on a couch working hard. How does the CTO see that? The typing part is just the tip of the iceberg.
It is amazing that most knowledge worker management does not understand how knowledge workers work. Most of our hardest work does not involve hands on a keyboard.
I've been full remove for a decade. There's no way I could work in an office where "butts in chairs" was the way. I guess I would just have a notepad and a pencil and just sort of move my hand back and forth on it while I was in my head solving the real problems.
https://99percentinvisible.org/episode/the-panopticon-effect...
I think this is the mindset that a lot of people have, but always keep in mind, the meetings is part of your job, and writing code is also only one aspect of your job.
What I'm trying to say is that don't let the meetings frustrate you, instead just accept them and the distractions. Few people get to do what they really want to do all the time, and it does often seem that software developers show some prima donna behaviour in that they just want to stay in their flow and the other aspects of their job should be dismissed.
I mean I get it, writing code / flow state is enjoyable and makes you feel productive, but you get paid for the full package.
Not universally. Programmers are judged by overall success or failure of the project they are working on. And those ones who can take credit for a success or who can effectively deflect blame for failure are the ones who got promoted. Being in the meetings with the decision makers provides the forum for self-promotion and controlling the message. This does not always mean that they did most of the work. More code or less code is unfortunately secondary.
That's a rather junior mentality. When one is junior, yeah, usually the most one can do is moving Jira tickets to Done (which means merging code usually). But when one is senior, the pay increases and promotions come from other activities: mentoring, handling technical topics between teams (usually via meetings), etc.
Ive got some tasks that I can fit in those in between slots. As an IC I would do them at the start/end of the day, but now I do them during those blocks of time. For me, it's things like smaller code reviews, reviewing design docs or triaging issues.
I've been in jobs where that happens only for a few weeks in a year, after major vacations.
It's pretty ironic, because this is how a lot of people study in the library at college,show up and stay all night grinding in the flow state with your phone shut off. Yet when you graduate to the work place, you seldom have the opportunity to work like how you've been training to work for all your advanced schooling ever again.
With respect to the article and maintaining context while coding for different projects, I find having a tmux session for each individual project super helpful.