4 ms·
I completely agree with this. I am considering an ultra-wide monitor(the only thing really missing from my home setup at this point) but even at a 1920x1080 on
by axegon_ 5y ago
I completely agree with this. I am considering an ultra-wide monitor(the only thing really missing from my home setup at this point) but even at a 1920x1080 on all my monitors, 80 characters occupy at most 25-30% of my entire screen. The rest of the screen is just sitting there, being all "OK, black pixels all day long, gotcha boss". 130-140 characters is perfectly usable for any 1920x1080 screen which is what most people have. My old laptop is 13 inches fits those perfectly and still leaves plenty of unused space, even in the context of an IDE where you have your directory structure on your left for instance. Not to mention something like vim where a vertical split would still leave plenty of space laying around. I think most standards need to be updated and ditch the whole "Someone is using an 800x600 CRT monitor and they need to be able to work". I am sorry, no, I used to have such monitor in the 90's as a child from eastern Europe in an average income family. 2021, I cannot name a single developer with anything less than HD. People should seriously wake up and revise those standards-they are the equivalent of wearing the same underwear for 30+ years. Even side by side diffs work perfectly fine in those scenarios. 3 way diffs might be an issue on a 13 inch laptop but honestly I don't know anyone who actually likes working with those(one notable exception but I'd definitely disregard his opinions on anything to be quite honest).
Side rant, I have a lot more issues with people writing functions that are 500 lines long and contain 10 individual sets of logic which would make sense to be fragmented in different functions. As a matter of fact I had a fight over this at my now old job. Ideally the body of a function should fit in one screen: ideally 60-80 lines. In fact there is a study on the subject described in "The Psychology of Computer Programming" [1]. If it's something larger, in 90% of all cases you can segment your logic in a way which allows one component to be responsible for one specific thing and take that out in a separate function. With good naming, this makes the code infinitely easier to read 6 months down the line when you have to figure out what someone else or even you have done. The argument I got was "Well what if I have an ultra-wide monitor set up vertically, then it's not a big deal?". Fffs, are you stupid??? What if I start coding on my 4k projector and I can fit 1000 lines in a single screen? Fetch a vector from one place, iterate over it, populate a hashmap, compute some standard deviation, save a backup on disk, check the bounds of the values, store them somewhere for future reference and call an async function to a message queue, check if a set of conditions are met and have 8 different fragments of code handling those based on the conditions that were matched. Function name: fetch_history_data. There's a lot more than fetching history data in there now, isn't there? End of rant, I think I had to get it out of my system.
[1] https://www.goodreads.com/book/show/1660754.The_Psychology_of_Computer_Programming https://www.goodreads.com/book/show/1660754.The_Psychology_o...
- zajio1am 5y ago> I am considering an ultra-wide monitor(the only thing really missing from my home setup at this point) but even at a 1920x1080 on all my monitors, 80 characters occupy at most 25-30% of my entire screen It is common for people to use split-screen setup (two files / editor buffers in parallel). On common 1920x1080 screen with 10px-wide font, you have 2x96, so something like 80-90 columns is ideal.
- axegon_ 5y agoMonospace at font size 9 is 272 characters per line.
- zajio1am 5y agoYes, but that would be 7px-wide font. Even in 80s the default VGA font was 9px-wide and that was considered important improvement over EGA 8px-wide. And that was on monitors with lower DPI that is common on 1920x1080, so i would assume that 10px-wide is minimal ergonomical size for many people (on standard 96 DPI).