IT/Software career thread: Invert binary trees for dollars.

Deathwing

<Bronze Donator>
16,396
7,396
Most iteration in python uses the `in` keyword. It's one of the things I like about the language. At least initially, it really helped with readability and understanding concepts.

Code:
for i in range(6, 9):
    print('nice')
 
  • 1Like
Reactions: 1 user

Voyce

Shit Lord Supreme
<Donor>
7,110
23,258
Not sure how i missed the last part about wild west in your post. My company has the shittiest form of Agile I have ever seen. Snowflake devs/architects everywhere. half the reason data lake ingestion is so shitty is because the team which isn't great, has to constantly come up with one off solutions cause you know patterns are awful and confine them "man". I spend a good deal of my time playing wackamole.
Mine and my bosses opinion on Development, it should be a paint by numbers.

Code should not be a work of art, it should be structured and easy to read, and subsequently easy to maintain.

Having said that we have nothing remotely close to an Agile development life cycle
 

Kharzette

Watcher of Overs
4,930
3,579
Do any of you c-folk use llvm? I've given it a decent shot and found it somewhat unusable.

The compiling / linking works but debugging is a mess. Most of the vs code extensions either do nothing at all, or want lldb-mi which somehow got removed from the distro!?

So, just build it right? There's a github. It's cmake based, and if you try to build it with llvm it needs nmake, so you have to install several gigs of random visual studio junk to get it. Then it fails missing some cmake garbage that also used to come with the distro but no longer does.

I ended up pulling it out of some prebuilt mingw garbage and even with all that it still doesn't work. Maybe it is better on linux I dunno.

I'm doing x64 assembly stuff and by default you can't set breakpoints. The vs code extension called "asm-enable-debug" lets you set breakpoints, and the basic built in C/C++ extension debugger works with whatever the microsoft debugger is. This is with nasm compile and llvm's lld-link linking.
 

Deathwing

<Bronze Donator>
16,396
7,396
I hate that understood even 50% of that post. That's like distilled devsecops hell. I want to say fuck trying to get llvm to work on windows.

Here I am, 11 PM at night, trying to get our version of Python 3 to build on NetBSD 8.1 because some fucking fancy pants contractor wanted to use the kubernetes module. That module imports the multiprocessing module. We turned it off because third-party shit was spawning threads in our own processes. I turn it back on just for funsies and just building Python3 with threads chokes out the machine lock limit.

Created on 2017-11-02
Status: open

Yeah, that shit isn't getting fixed. Tried bumping semmni and semmns, no change. Trying to figure out the magic fucking incantation to tell Python to build using mutexes instead of semaphores.
 

Neranja

<Bronze Donator>
2,605
4,143
Do any of you c-folk use llvm? I've given it a decent shot and found it somewhat unusable.

The compiling / linking works but debugging is a mess. Most of the vs code extensions either do nothing at all, or want lldb-mi which somehow got removed from the distro!?
Caveat: I don't really do Visual Studio or Windows.

But from what I remember Microsoft has it's own clang frontend called clang-cl to wrap around all the platform stuff. What version of LLVM integration did you install in Visual Studio? There is an marketplace addon, but with VS2019 you should install the desktop development workload:

For shits and giggles I just installed it and set a breakpoint using the LLVM toolchain.

debugger.png
 

Neranja

<Bronze Donator>
2,605
4,143
So, just build it right? There's a github. It's cmake based, and if you try to build it with llvm it needs nmake, so you have to install several gigs of random visual studio junk to get it. Then it fails missing some cmake garbage that also used to come with the distro but no longer does.
Now that I read your post again: You could try to build LLVM within Visual Studio:
 

Kharzette

Watcher of Overs
4,930
3,579
Cool thanks! His article didn't run into the missing files problem I had. I did eventually try building completely within visual studio but cmake just can't generate the project files because bits are missing. I did find someone having similar problems in a bug. If I remember rightly someone on a different platform removed stuff they thought were no longer needed.

Originally my goal was to not have any visual studio / platform sdk stuff installed, but the missing debugger (which ended up not even working) made me need it all just to try things out. If I had seen your top article, I'll bet everything "just works" if you do that as it is part of the visual studio installer.

What I've got going now is really nice with vs code. I just have a basic testing asm file I can throw code into, set a breakpoint, and watch registers and flags to copy their behaviour. I'm doing a sort of fake emulated in-game cpu with a fake set of instructions for users to write programs with. Some of the x64 instruction docs don't really fully explain what happens in certain situations so I wanted a little test bed to try odd corner cases.

Unfortunately I had put this project on ice for months. I think I was really into it before the mischief server started, so I can't remember exactly which flags / situations I was having trouble with.

I've since gotten really into chip fabrication so I might go even lower level with circuit design and such, but I really don't even understand the fundamentals of how transistors work yet. Wacky magic and quantum fields.
 

Neranja

<Bronze Donator>
2,605
4,143
To be honest, I only accidentally fell into that rabbit hole because I once wanted to compile ffmpeg with the Visual Studio toolchain on Windows, and found out that there are people who make Visual Studio solutions (.sln) for open source projects. Including something called VSNASM, since you obivously need nasm for ffmpeg:


Also, what I forgot last time: The MSYS2 environments generally seem to work, but the LLVM ones are only ucrt and not MSVCRT:
 

TJT

Mr. Poopybutthole
<Gold Donor>
40,954
102,800
Today I will regale you with a tale of modern tech work. This has a large IT component but the cascade of events was caused by, as always, Sales and finance people.

Wind the clock back a year or so. One of our accounts asked for a peculiar way to package our SAAS product that is outside of how we usually do it. On paper it seems like a "okay sure just sign the deal" kind of decision. Gets the account under contract and increases revenue. Which it did. In the end the service we provided would be the same but certain details would alter their price based on some criteria. I won't get too much into it but it has to do with how much data processing we would provide per SAAS unit we sell of a various product line. Even this part of it isn't set in stone each account sold this non product has different data processing thresholds that don't actually exist.

However, the manner that they did this puts us in a situation where the product doesn't actually give detail on the data processing they are now using as a sales tool. Significantly compounding the product development roadmap because this "product" doesn't actually exist. So we can't really quote prices on it and all of our data infrastructure doesn't really support it either (my problem). Even worse is that we legitimately have no way to bill for it to customers who expect to be billed for it on like February 5th...

Aaaaand Sales didn't stop selling this item even though they know about these issues because they just want to close deals. So as opposed to having a few accounts causing us some pain its hundreds.

It's interesting being in such a real time case study of a problem like this.
 
  • 1Solidarity
Reactions: 1 user

Bandwagon

Kolohe
<Silver Donator>
22,747
59,641
I got enlisted by IT to help with some patches and installs following this whole CONTI virus shit, just because I was a network admin in the AF almost 20 years ago (for all of 2 years). They had me cover the 2x offices closest to me.

Man, people were busting my balls all morning long about this stuff and then asking for totally unrelated computer support at the same time. I finally told one of the project managers "Dude...we've been working together for almost 6 years. I made 2 maps for you last week and was in the field on one of your projects the week before. You KNOW I'm not in IT. I'm not here to upgrade your fucking RAM, I'm here to lend IT a hand with a few things. Don't ask me for anything and send all your complaints to the IT manager. He can't fire me anyways."

Everyone took it as a joke except one very salty PM that reeeeeaaaaaallllllly wanted me to snap my fingers and make her PDF reappear.

Y'all have a fucking shitty job.
 

Mist

Eeyore Enthusiast
<Gold Donor>
30,413
22,201
Wind the clock back a year or so. One of our accounts asked for a peculiar way to package our SAAS product that is outside of how we usually do it.
Substitute SaaS for UCaaS and this is my personal hell every day.

We sell cloud-based phone/contact center/unified communications solutions as a service to some of the largest companies you can think of. They all start off as being very standardized. But under the hood, they can actually be highly customized and integrated with nearly any enterprise product you can think of. So the scope of every project goes from something very narrow to something very broad very quickly as the customer keeps adding requirements and change orders for other products they want to integrate with the phone system, and the sales people keep saying "SURE WE CAN DO THAT."

However, we are really only staffed to implement and support the very standardized systems as they're originally designed out of the box, but none of them ever go live that way, and they just continue to get more complex as the customer continues to want to add things over time long after the project compltes, and the sales people just keep saying yes to everything the customer wants (though somehow these same sales people take weeks to generate a quote for any significant change.)

So ultimately, we have all of the responsibility of cloud, owning the entire environment/platform and anything that could possibly go wrong with it, but none of the actual advantages of cloud, like standardized features or even adherence to contracted maintenance windows.

AT LEAST THEY PAY ME A LOT.
 
  • 1Like
Reactions: 1 user

Fucker

Log Wizard
11,566
26,165
Substitute SaaS for UCaaS and this is my personal hell every day.

We sell cloud-based phone/contact center/unified communications solutions as a service to some of the largest companies you can think of. They all start off as being very standardized. But under the hood, they can actually be highly customized and integrated with nearly any enterprise product you can think of. So the scope of every project goes from something very narrow to something very broad very quickly as the customer keeps adding requirements and change orders for other products they want to integrate with the phone system, and the sales people keep saying "SURE WE CAN DO THAT."

However, we are really only staffed to implement and support the very standardized systems as they're originally designed out of the box, but none of them ever go live that way, and they just continue to get more complex as the customer continues to want to add things over time long after the project compltes, and the sales people just keep saying yes to everything the customer wants (though somehow these same sales people take weeks to generate a quote for any significant change.)

So ultimately, we have all of the responsibility of cloud, owning the entire environment/platform and anything that could possibly go wrong with it, but none of the actual advantages of cloud, like standardized features or even adherence to contracted maintenance windows.

AT LEAST THEY PAY ME A LOT.
jy.jpg
 
  • 1Worf
Reactions: 1 user

TJT

Mr. Poopybutthole
<Gold Donor>
40,954
102,800
We almost hired a boomer manager this week. Nice enough guy but his ideas on how to do things (in terms of technology and what is possible) are just so... 20+ years ago and would be a total detriment to our goals.
 

Lendarios

Trump's Staff
<Gold Donor>
19,360
-17,424
why would a manager be a detriment to a technology goal?

What are you making your managers do?
 

Phazael

Confirmed Beta Shitlord, Fat Bastard
<Aristocrat╭ರ_•́>
14,110
30,207
There are tons of middle managers out there who are basically nothing but fucking cock blocking parasites to (good) tech teams. And most of them are terrified because covid induced remote reliance has exposed how utterly fucking useless they are. Hey maybe instead of hiring Lumberg the micromanaging fucktard who has produced zero actual work into a product owner/project manager position where they will just offload all real work onto the technicians (while annoying the fuck out of them), maybe just hire another actual technical person and save some money? Those Pointy Haired Boss people are watching their uselessness get exposed and thus their niche rendered extinct. The general reaction by them is to spit buzzwords to look like they are cutting edge, when really they are just doing the same annoying shit they had been for years, only they obfuscate it with Agile related buzz babble to cover their obsolescence. Or they micromanage the fuck out of the talent to the point where anyone worth a shit either checks out of the job or finds a different gig (real easy right now in IT).

TLDR, Middle managers are a fucking cancer in all industries, but especially in IT.
 
  • 3Like
Reactions: 2 users