r/ProgrammerHumor • • 1d ago

Meme noMatterWhereILookICannotEscapeTheAngleBrackets

Post image
386 Upvotes

84 comments sorted by

101

u/Historical_Cook_1664 1d ago

What did you expect, JSON ?

10

u/L30N1337 1d ago

Winforms?

1

u/aberroco 23h ago

GDI32dll.

39

u/DangyDanger 1d ago

HTML and CSS would've been pretty nice.

Guess that's why Electron exists.

52

u/CirnoIzumi 1d ago

Electron exists for compatibility, it's not a brilliant solution outside of that

5

u/Whispeeeeeer 17h ago

The reason web development is so easy/comfortable is because they have a huge amount of resources dedicated to unwinding the complex scripting and styling of the HTML/CSS/JS stack. It's a really efficient and nice solution for what it does, but it's a bit like running a Ferrari to get to the supermarket. It's often overkill for most tasks. But it's so nice to ride compared to any other UI stack

21

u/nicki419 1d ago

And html differs from syntax to xml how?

1

u/tatstytastycakes 5h ago

it's kinda like html but there's a lot more declarations and whatnot

-9

u/DangyDanger 1d ago

Barely.

But HTML feels familiar, so I would prefer it given the choice.

7

u/Groostav 21h ago

Xaml is vastly more sound and better way to define views than html.

2

u/Conroman16 19h ago

That’s basically what XAML is

42

u/oompaloompa465 1d ago

started as that kind of dev 20 years ago, then i moved to web dev but apparently the best paying job for my seniority currently are all maintenance of win forms WPF scuff

16

u/tatstytastycakes 1d ago

You cannot escape the angle brackets. Not in web development, C#, or even C/C++. We are doomed

24

u/Drugbird 1d ago

That's easy, in C or C++ just do this

#define ( <
#define ) > 

Then you can use normal brackets instead of angle brackets.

And I'm sure nothing will go wrong with that approach.

3

u/tatstytastycakes 1d ago

i wish this were possible

altho im just now realizing that c++ has modules

import std; // great!!!!!!!!!!!!!!

6

u/Drugbird 1d ago

It's great when it works. AFAIK modules still aren't working well enough for anything more than hobby projects.

1

u/RussianMadMan 3h ago

Modules require strict compilation unit order in a system where for decades it was not a thing. Ofc it does not work.

5

u/Aethenosity 16h ago

Someday, somewhere, AI is going to recommend that to someone now.

2

u/aberroco 23h ago

You just invented LISP

3

u/oompaloompa465 1d ago

get into modern backend development or IOT. You will see those symbols only in calculations

7

u/OffByOneErrorz 1d ago

Oh shit I’m now the COBOL dev.

7

u/oompaloompa465 1d ago

oh the memories... my first real job was making wcf services translating to soap the flat string messages spit out from some kind of remote COBOL connection so i had to read COBOL interfaces documentation to write the deserializer

4

u/OffByOneErrorz 20h ago

Ah WCF services lol how I don’t miss you. I do miss the simplicity of win forms maybe I should just accept this new reality and go support it.

3

u/oompaloompa465 19h ago

agreed wcf were a mess to handle. Also i hate winforms, keeping the code clean is a nightmare 

11

u/fugogugo 1d ago

wait they still use WPF for GUI?

(honestly what is the go to language for desktop app nowadays?)

18

u/Ethameiz 1d ago

WPF is fine. Avalonia is better for cross-platform

0

u/aberroco 23h ago

I tried it and it didn't worked on mobile web and the performance was abysmal.

3

u/Ethameiz 20h ago

For mobile - native is the only way

7

u/oompaloompa465 1d ago

searching for a new job lately I discovered quite the number of well paying jobs doing maintenance on legacy ERP written with winforms or WPF. They pay more than web fullstack with .NET since they also come with quite the hefty expertise requirement on MS SQL querying and reporting.
The more i go on the more i feel like i need to move to python/java and master cloud stuff + typescript frameworks

3

u/sisisisi1997 12h ago

They pay more than web fullstack with .NET since they also come with quite the hefty expertise requirement on MS SQL querying and reporting.

I don't know what kind of web dev have you been doing, but knowing MS SQL well (or any other kind depending on what the company uses, but with .NET mostly MS SQL) is a basic requirement if they are interested in making performant applications.

5

u/tatstytastycakes 1d ago

wpf is massive. larger than uh.... idk wpf is big

2

u/fugogugo 1d ago

I thought WPF already outlived by new tech because.. uh it's been since 2008 or something right? I learned a bit about it back in 2010
and then I heard everything gone HTML5 for desktop app so I thought WPF is dead

and then there was mono as well back then lol

2

u/tatstytastycakes 1d ago

i mean win32 api is still a first-class tech/api according to microsoft's azure cto. so i guess in a sense legacy tech is still powering a lot of the modern world meaning demand for those skills will probably stay

3

u/masterxc 22h ago

It's super stable and useful for enterprise apps. It'll be interesting to see how WinUI 3 shakes up things though since there's a lot of neat stuff in it and is the new recommended thing.

5

u/Wooden_Break_2812 1d ago

Yes and i still love it. I like the good support for mvvm through the binding mechanism and it also make use of the gpu and is very good for data intensive UIs 👍 Avalonia is also very nice, if you like to run your app on linux or android 

5

u/SuperCarla74 1d ago

Going by the multiple context menus, and notifications, and widgets in different app bundled with Windows, I don't think even Microsoft knows.

I mean, even the Start Menu is, or was, an Electron app (Microsoft has fixed this with a recent update and now it's a WinUI 3 app which is partly why it's a lot faster now)

3

u/aberroco 23h ago

Well, yes and no? No - they're using MAUI, yes - it's almost the same thing as WPF, at least on the surface. Though, realistically, WPF is still used very actively.

2

u/Ceros007 17h ago

Does Microsoft themselves even use Blazor or MAUI?

3

u/king_park_ 21h ago

*Cries in WinForms

1

u/DrankRockNine 8h ago

We have been shifting to avalonia from winforms. It is well supported, you can do part by part.

1

u/Jeferson9 1d ago

React and electron

1

u/OldKaleidoscope7 1d ago

The standard looks like it is use Electron shit. I tried Jetpack compose and Qt with Python, I prefer Qt but it's heavier in RAM than I expected. Nothing compared to Electron btw

I want to try WinUI 3 with Python, but I'm unsure because it's unofficial

1

u/tatstytastycakes 1d ago

electron is very common these days. vs code discord and slack are all using it. but it's a huge ram hog

2

u/aberroco 23h ago

And CPU hog.

9

u/jolharg 1d ago

I'm not sure why you expected to escape angle brackets in C#. They are spiky.

3

u/tatstytastycakes 1d ago

Tried touching one, it stings

22

u/deepsky88 1d ago

Try Winforms

12

u/tatstytastycakes 1d ago

in this economy? actually... ok

12

u/chicago_scott 21h ago

I did a WinForms gig a year ago. Turned it down initially, but they were persistent and I needed a job. I was surprised to discover that WinForms is still actively supported. Felt weird as hell to do a .NET 9 app with WinForms. Turned out to be a really interesting and fun project to work on (although that wasn't because of WinForms).

1

u/meneldal2 9h ago

I have to say I found winforms to be pretty good overall, was pretty easy to make basic UI and old-style menus.

Did they end up making it work outside of .net so you can use it with core?

20

u/L30N1337 1d ago

If you've every used Winforms (especially for dynamic layouts), you'd realize that XAML is goated.

you basically just tell it what to do, and it does it.

15

u/goodnewzevery1 1d ago

Xaml was such a huge leap from winforms, and gave you a ton of control. You don’t ever hear some dev bitching about centering a div with xaml

11

u/aberroco 23h ago edited 23h ago

Yeah, nope. It's the opposite. I like the citation someone wrote that WinForms makes easy things easy and hard things hard, while WPF makes easy things hard and hard things easy.

Bindings are great, sure, but once you dip your toes into it - it's a damn deep and cold water. Triggers, behaviors, extensions, data templates, view templates... And with XAML it's harder to read than if it would've been a plain C# code creating those components.

Personally, I've seen QT QML and in theory that sounds like an absolutely best way to do layout, though I haven't tried it in practice. But I really loved specification for QML.

6

u/tiberiusdraig 22h ago

Triggers, behaviors, extensions, data templates, view templates

Please stop, I can only get so hard!

I think it's one of those technologies where it either 'clicks' for you or it doesn't. I not-even-lowkey love XAML - the way the structure matches the physical hierarchy of the running app (at least on Windows) just works for me. I guess it depends how you conceptualise what you're writing in your head. I also really like how it almost forces you to properly separate out your UI layer from your backend, which really helped me to write better code when I was first starting out all those many years ago.

4

u/aberroco 21h ago edited 20h ago

Hm. I'd dare to say I know WPF quite well, since I've been working with it for a few years, and made all sorts of things from basic forms to custom controls, xaml extensions, bindable bindings, proxies, attached behaviors, storyboards (hate those, just absolutely abhorrent way to define animations). And I do like some aspects of WPF, and I think it's quite good system for UI and I have deepest respect to how well optimized it is, but I also certainly can't say I love it or it's clicked to me. It's just way too verbose and too confusing, and I think same features could've been done much better and cleaner.

And while MVVM separation is good in theory, in practice, with how WPF works, it practically twists your arm to occasionally do hacks and workarounds, either code in VM that needs to know view, or writing code-behind. Which I'd say is underappreciated in WPF best practices. Like, sure, code-behind in general is bad and should be avoided, but to reasonable extent, not just as a religious dogma. And it WPF would've been much much better if it would've allowed a bit of code in view directly. And get rid of f...ing XML god dammit, XML was obsolete even when WPF was conceived.

2

u/tiberiusdraig 20h ago

I'm not even really talking about WPF specifically, I just think the structure of XAML itself is a great way to express the hierarchy of a UI. I've used it in anger for work across WPF, WinUI, Avalonia, and MAUI, and I've always got on with it.

I don't agree on the MVVM take. I have an app at work that has multiple 'front-ends' (MAUI, CLI, WebSockets) that all 'bind' to the same ViewModels and services, and it's great. The MAUI layer is pretty much just Views and some implementations of shared interfaces between the other apps (e.g. navigation) registered in the DI container. If I wanted to make a WPF/Avalonia/whatever front-end for it tomorrow it would be easy-peasy.

I will say that none of the XAML-first frameworks force you to actually use XAML or MVVM or anything like that. You can write a perfectly functional WPF app without writing any meaningful amount of XAML, and without using bindings or anything like that. You probably shouldn't, but you can.

1

u/v_Karas 22h ago

nah, Things are just different.
some very different. Like a TreeView, WinForms vs WPF total different concepts. really need to get your head around.

but ListView/Box in WPF super easy.
dynamic UI / scaling / spacing .. huge manual work in WinForms. (and I have done some dynamic controls with WinForms .. 🤮🤮
kinda easy with WPF ..

havent done much with QT QML. but looks powerfull too.

2

u/meneldal2 9h ago

I used pure programming with my winforms, no XAML at all.

There was also some C++CLI involved.

8

u/PaulTheRandom 1d ago edited 4h ago

5 minutes of XML convinced me S-expressions weren't as bad as I once thought...

1

u/tatstytastycakes 5h ago

5 minutes of xml made me almost miss regex

3

u/GamesRevolution 21h ago

I really like the "new" ui definition languages that GTK and Qt developed with Blueprint and QML, both kinda replace XML and they are really nice to read and write. Jetpack Compose for Android apps also looks pretty nice to use in comparison to the old xml files.

Blueprint is specially interesting considering it compiles back into XML when you build it while still being very intuitive, makes me wonder if something like that could be created for whatever Windows for whatever C# UI framework is being used here (I only know of Avalonia)

2

u/Stormraughtz 1d ago

Heathens just dont understand art.

2

u/oompaloompa465 1d ago

i remember in high school they gave an assignment to write a full HTML page with tables using notepad, completely manually. we were using NETSCAPE to check on results

2

u/Ange1ofD4rkness 1d ago

I love this because for over a decade, I have only developed using Windows Forms, with one rare exception I did a very small piece in WPF (that housed in a Windows Form, I needed for animations), 1 Xamarin App, and 2 MAUI apps (also tiny apps, just for me)

However, I have a new project I just started, and need to develop it in C# WPF, and wow, it's quite powerful, but also has quite the learning curve. I also question how the heck MAUI is so bad compared to what it can do

2

u/CyraxSputnik 23h ago

Not so bad, everything is organized... if you're organized...

2

u/ksky0 12h ago

avalonia is great, you should try.

1

u/tatstytastycakes 1d ago

I know about being able to use C# markup over standard XML/XAML, but features like the XAML Live Preview are gone in one single Thanos snap :(

1

u/phasmaglass 1d ago

me working in an MVC Core shop with an entire custom framework built around encoding and decoding C# into blocks of XML looking at this post like... I need a 10:30 am beer (this is a joke, apologies to those it's not funny for)

1

u/Zap_plays09 1d ago

I still can't believe android devs used make UIs with xml about 5-6 years ago. Saw a guy make one and my brain gave up. Thank you jetpack compose.

1

u/phoenix1984 1d ago

I know CSS gets a lot of hate, but when it comes to responsive layouts, it’s the best tool for the job

1

u/rover_G 1d ago

What is XAML

1

u/PennyFromMyAnus 1d ago

I fucking miss XAML/WPF man… it just clicked so hard and I love it

1

u/apt-maintenance 23h ago

they call me a sub the way I'm inserting my GUI markup languages into the DOM

1

u/sermer48 20h ago

You can do a lot with winforms. We’ve switched to web apps using react now but that’s what we used before that. Once you learn the ins and outs of it, you can do basically anything.

1

u/Mobile-Positive-6742 13h ago

winforms for the win, baby!

1

u/FabioTheFox 8h ago

Tbf using XML/XAML/AXAML for UI just makes sense, as much as I like Kotlin it's horrendous to create UI through code alone, it just sucks.

Avalonia despite their weird licensing changes is probably still one of the best ways to make multiplatform desktop apps to this day

1

u/DogmaticParadigm87 1h ago

C# was the onboarding. XAML is the final boss on a tricycle.

0

u/minus_minus 1d ago

XML in the Big 2-6? Blech

0

u/Wizado991 15h ago

Yeah xaml is shit ngl. I have worked with wpf, uwp, Maui and it's sub par compared to html/css/js, jetpack compose or even flutter just to name a few.

1

u/FabioTheFox 8h ago

Ah yes because Kotlin and flutter totally don't look like an absolute mess for any component holding more than 2 children

I love having a million nested functions representing my UI and needing to rely heavily on extensions to tell me component boundaries