Program in assembly, 40 columns is plenty. You just need an awful lot of rows.
Same monitor, just rotate it.
If you don’t use a vertical monitor I don’t consider you a real programmer.
Joke’s on you: I don’t consider myself a real programmer either
We need the same monitor, vertically!
The Samsung 55" Oddity in ‘cockpit’ mode has you covered.
deleted by creator
Just think of that hurt my neck. Imagine have to constantly look upward.
Removed by mod
Clever, at that point, I guess there better be a coding mode in a VR headset that I can have as many desktop/monitor as I want.
One problem solved. Three problems created. SOP.
Had an ultra wide for a while, went back to 2 27" monitors after 2 years. 2 monitors is more convenient imo. I can flip one vertical whenever. Less fiddly to have multiple things open at once. One is centered while the other is on the side and angled, much nicer way of separating what’s my focus. Easier to screen share. I always found the curve distracting for text.
The ultra-wide’s big appeal is definitely more for gaming than programming.
I have a 49" ultrawide, running a tiling window manager under Linux.
I heavily utilize virtual desktops in my workflow. Always 10 on each monitor, accessed by Ctrl-{0…9}. Switching between monitors by AltGr+{1…n}. Programs always stay on the same virtual desktop no, so terminals on 2, browsers on 3 and so on. This enables me to access more or less any window in under a second, never having to look for it visually.
I usually work with 4 or 5 24" monitors, as a single program seldom needs more space for me. What he ultrawide brings to the table is the capability under Linux to create arbitrary virtual monitors.
I can for example have two evenly created monitors (two 27"). My usual for development is three, split as 2:3:2.
Another possibility is using a small script that analyses movie resolution and creates two monitors, one with the exact aspect ratio of the movie, eliminating black borders, and another for using while watching said movie :)
As Linux sees them as separate monitors, I can also have easily managed screen sharing.
Having the flexibility of software defining my monitors has been great as a developer; separation of many, screenwise often small, applications is highly useful to me. A couple of quick scripts to switch between different setups has integrated it nicely into the workflow, and I usually changes monitor config at least a couple of times per day.
You might have just saved me a heap of money.
Screen sharing would suck with an ultra wide.
It does, but it depends on the tool. Zoom lets you simply draw a rectangle which will be shared, I typically select 2/3 of my screen. It’s great when all have the same screen though.
Jfc. Do people really write code like this? I’ve been writing code in Java for 15+ years and have never seen anything like this.
You need more skill, not a wider monitor. SMH.
Hello world in Java:
class 9-A { public static endangered therefore protected final void main(String[] args) { System.prepareTheOutputBufferForPrintingAsTheNextStatementWillDoSo(args); System.in.out.in.out.shake.it.all.around("Java is a programming language " + "invented by the intelligent monkeys " + "working at Sun Microsystems."); return void; // duh! } }
ROFL you’ve proved my point. Just because Java gives you an opportunity to hang yourself doesn’t mean you should or have to.
You took one line of code and turned it into a novel. Bad programmers do this and then ignorant folks blame it on the language when it’s really just a lack of knowledge/skill.
You must be fun at parties! Seriously, this is a meme sub and the wildly exaggerated helloworld example I pasted (from this hilarious article) is obviously satire. I agree, that
- There are way worse programming languages than Java
- The verbosity is not the biggest problem of java, it is rather the dogmatic OOP paradigm that sucks.
I get making fun of java’s verbosity for things like checked exceptions but hello world really isn’t that much worse than most other languages especially considering all the “boilerplate” is required for any program more complicated than hello world in pretty much every language. But if a useless program really is too verbose for you see java 21.
void main() { System.out.println("hello world"); }
Yeah, you never see this in enterprise settings. Sure builders or streams can get a bit long but you just pop each .x() on a new line.
And when they’re on new lines intellij has a cool feature where it creates a little UI only comment next to the line showing what type it returns.
In an enterprise setting we’d definitely create a method in that object what would have that chain in it, and call that instead… It seems like it’s used over, and over again.
Anyhow, we’re sitting here trying to make sense of something that obviously some sort of joke haha.
Man we’re such fucking nerds.
Somewhere someone probably does… But this piece of code really look like someone either tried to inline a bunch of calls or this is code generated object mapper from json or other nested model.
Nobody with a sane mind and serious attitude will use this code as a “real” code. (I still believe in people, despite all the evidence to the contrary I get every day)
As a fun bit though this taken some dedication.
I have a monitor that’s almost like this and it’s surprisingly nice. It feels like a two-monitor setup. Two actual monitors would probably have been cheaper, but I got mine from work, so it wasn’t a factor.
The real advantage of having two actual monitors is being able to flip one vertically for reading code.
EDIT: a word
Everyone at my work who has this runs into issues whenever they need to share their screens, apologizing for low resolution or painstakingly resizing every window to mimic multiple screens anyway.
I just share one window at a time. I put the meeting on one half and the window I want to share on the other, which makes it 16:9 and works perfectly for what I need to share.
Yeah people do that, until you’re sharing a code window and then need to see if it works on a browser and then your dev tools are popped out so you have three windows…or you don’t want to just have one meeting and one window visible, you also want slack or a window for googling or something similar…
It’s all workaround-able, it’s just minor annoyance after minor annoyance lol.
I bought one after some months of remote work in 2020. Then when I started my new job they gave me another one (different manufacturer but exact same panel size). I needed to rearrange my desk a lot, but holy shit so much room for error messages!
Yes, I’m a Java developer ¯\_(ツ)_/¯
For java programmers afraid of explicitly allocating any varables
that’s some serious chaining lol
Will nobody comment on the level of indentation? It looks like 10 leves deep.
Gonna need a factory or two imo
What Dart looks like when written by ActionScript programmers
I used it with the default formater built in lsp, and it used so much space…
Yeah, better use the linter too, that way it’s limited to 80 characters
Type aliasing in java could have saved us from the current pixel shortage, but at least kotlin is giving us a cheaper path forward.
Is this a good thing I’m looking at or a bad thing? I don’t get it but then again, I’m not a programmer.
Java is a programming language that is notorious for being verbose, the joke is that you need a massively wide monitor to view it without the text being cut off
Ah, thanks for the explanation!
I don’t understand why people don’t break stuff like this up with newlines
We would. And we’d tend not to be using such verbose variable names. Avoiding abbreviation in the method and type-names is idiomatic though.
The joke is Java is verbose. It takes many characters to accomplish simple routines. Depending on your view that could either be good or bad for reading the code later.
Sure, but most of the lines in the screenshot break down to:
object1.setA(object2.getX().getY().getZ().getI().getJ().getK().getE().getF(i).getG().toString())
Aside from creating a method inside the class (which you should probably do here in Java too) how would another language do this in a cleaner way?
Well I guess the point is that you shouldn’t need all these method calls to achieve simple goals. Most of those “getF” are calls to some SystemFactory to get a GenericObjectFactory and so on and so forth.
This just tells me you don’t use Java. Factory classes are just used to create objects in a standardized way, but this code isn’t creating anything, it’s just getting nested fields from already instantiated objects.
Thos code is obviously nonsense to show the issue.
But other languages would simplify stuff. For example, some languages call getters implicitly, so
.getField()
becomes.field
. Same with list indexing, which could be done with operator overloading, sox.get(i)
becomesx[i]
.In this situation that would be able to reduce the character count a fair bit.
The new convention in modern Java is to use .field() instead of .getField().
What you’re complaining about isn’t Java, it’s object oriented programming, which Java basically forces on you. Verbosity is a flaw of OOP.
Compare:
x.field[5]
with
x.getField().get(5)
Both are exactly the same level of OOP, but the Java version is roughly twice as long. Add operator overloading to the mix and it becomes much worse:
x.getField().get(5).multiply(6).add(3)
vs
x.field[5] * 6 + 3
All this has nothing to do with OOP, but with syntactic sugar that is applied.
You’re dangerously close to the edge there bud, what’s your plan B when that starts to overflow huh?
Buy a second monitor with the same space
…and that, kids, is why java has this thing called imports
Imports wouldn’t help. It’s setters with a ton of chained getters
Mostly they’re all the same up to the last one or two methods - just set the common part as a variable?
I work with Java almost exclusively, and I am in need.
deleted by creator
No
FactoryFatoryFactory
? I’m disappointed. (Typo is intentional)you forgot about AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwn and AbstractSimpleShitLotsGoodLibrariesButWeDecidedToMakeOurOwnAbstractFactory
Don’t forget the repository methods! getAllByTenantAndActiveAndCreatedAfterAndFirstNameContainsOrderByLastName
Stop it!
deleted by creator
Yeah that can get ugly but it’s still better than writing native queries because you know it’s gonna automatically translate to any db specific sql flavour.
When they get a bit too long and ugly I either write default methods using specifications or I create a more concisely named default method that wraps the verbose monster.
Or you could rename your fields to single characters! getAllByAAndBOrderByC
Now I feel dirty…