rastilin

joined 2 years ago
[–] rastilin@kbin.social 1 points 2 years ago

If you're determined to turn this issue into a battle of self worth between "good IT people" and "bad IT people" I can foresee that you're going to lose this well paid job in a really obvious and predictable way. Given that they pay well, why would they waste their energy fighting with a developer when they can just get a new developer with similar skills that's willing to work with them?

My issue is more when the response to a new piece of minor technology that will make our lives easily is: "I don't want to learn YAML".

Which is fair, and I'd give the same response, I don't want to learn YAML either. In fact YAML seems to be a perfect example to use. In the beginning was XML, and XML sucked. For many, many reasons. Then we got JSON, JSON fulfills a similar function to XML but is much better in basically every single way. YAML is not better than JSON, but it is one additional thing that now exists. That describes a lot of new tech, "it's not better than 'x', but it does exist", and once implemented, will have to be maintained forever.

I mean, you probably could persuade your senior about composer and OpenAPI with the right approach, but if you're determined to turn it into a struggle it stops being about the technology. I hope you didn't say "You need to improve, every day." to their face, because at that point you've basically insulted them and they would seriously start questioning if your skills (which you have yet to prove) are worth the hassle of dealing with that every day.

You should consider, is this about the technology, or is it about your image as a "programmer" and wanting to always align with the mental image of being a "good developer".

[–] rastilin@kbin.social 6 points 2 years ago* (last edited 2 years ago) (2 children)

Yes, and every package specifically defines the exact version of its libraries that it needs and the system symlinks everything together package by package, so there's no chance than an update will break something further upstream. The configuration file also controls things like MySQL configuration and user permissions so you can get literally the exact same system. I think even docker doesn't control for library versions with its regular configuration.

EDIT: And it keeps older versions of the configuration file and its symlink arrangement around, so if something goes wrong, you can reboot the machine and select an older version from the bootloader.

[–] rastilin@kbin.social 18 points 2 years ago (5 children)

More nixOS development. It's the reproducible builds on the OS scale, one configuration file that will always generate exactly the same system when run, and you can update and rebuild from that file without restarting the system in most cases. This should make triangulating and fixing distro issues much easier, as well as making a distro easier to maintain from the user side.

[–] rastilin@kbin.social 1 points 2 years ago

What's with the massive outflow of scaremongering AI articles now? This is a huge reach, like, even for an AI scare piece.

I tried their exact input, and it works fine in ChatGPT, recommending a package called "arangojs", which, link, seems to be the correct package that's been around for 1841 commits. Which seems to be the pattern of "ChatGPT will X", and I try it, and "X" works perfectly fine with no issues that I've seen for literally every single article explaining how scary ChatGPT is because of "X".

[–] rastilin@kbin.social 1 points 2 years ago

Do you really spend that much time deploying code that Github actions can have any actually measurable effect on your productivity at all, let alone 10x?

[–] rastilin@kbin.social 1 points 2 years ago

Depending on how specific your questions are, I'd get a ChatGPT subscription. It can give example code as well as explaining concepts, even for specific libraries, and you can ask follow up questions if you need more details. I gave it a few Win32 questions and it seems to have some knowledge.

[–] rastilin@kbin.social 4 points 2 years ago (2 children)

I admit that I feel for the senior dev in this story.

I've been in this situation before, you're stuck maintaining a combination of older systems, and you need to add another one with some new team-members. It's going to have the latest technologies like Angular / Beanstalk / Webpack, etc... Then the new guy quits / gets into an argument / doesn't make it through probation, etc. and now you as the senior dev are stuck maintaining a raw PHP 5 / PHP 7 / PHP 8 / Angular / Beanstalk / Docker combination. Let's not talk about Laravel's custom build environment that they've been pushing for a while that basically no one seems to use. I've come to especially dislike CI/CD systems as not only are they flaky and a pain to set up, but I've also seen people get locked out of the management permissions and then I'm stuck doing keyhole surgery to triangulate issues. As someone still on their probation, the senior dev probably has some concerns with letting you give suggestions regarding the tech stack, once it's clear you're going to stick around then your suggestions would have a lot more weight.

Asks yourself, is this an issue worth picking a fight over? Is composer so critical that you're willing to lose your job over it? What about OpenAPI, are you willing to give up your job over not having it? I think it's worth taking a step back and re-assessing, IT will always have word salad new technologies, they come and go, but they don't really change all that much about the project so I wouldn't get too attached to them.

You as a probationary dev, should absolutely not under any circumstances bad mouth your senior to the lead, given that you're new they have no reason to take your word while your senior will have completed projects under their belt. The only thing that it can do is make you look unreliable to the management.

[–] rastilin@kbin.social 3 points 2 years ago

I was just discussing this with someone earlier today. It's been like ~20 years that Evergrande's been in business, right? Possibly more, that's a huge part of someone's entire career. That means that people could have joined the workforce and worked their way up into upper management purely just working on Evergrande's contracts.

[–] rastilin@kbin.social 8 points 2 years ago* (last edited 2 years ago) (1 children)

I donate to all the services I use. Including my Mastodon instance, Wikipedia, Habitica, etc...

EDIT: And I mean monthly. Except for Wikipedia where it's just yearly.

[–] rastilin@kbin.social 3 points 2 years ago

In some places you can get a home internet line that runs through the mobile phone data network, and they tend to be more reliable than cabled connections, they can get even better if they use a modem data plan and not explicitly a home bulk plan. It really hinges on how much data you use and what plans are available where you are. Of course if you do it this way you won't have a private IPV4, but if your ISP allows IPV6, that should be unique and directly accessible no matter what.

As the other poster mentioned there are routers that have a SIM connection as backup, and now they're being offered with a SIM and automatic fail-over as part of some fiber to the home plans.

[–] rastilin@kbin.social 18 points 2 years ago (1 children)

I've seen this backfire horribly multiple times, so I don't think it's good advice. People aren't that simple.

In this case, many studios have already made plans to jump from Unity after the first announcement, so I'm sure there'll be some kind of "negotiated agreement" that's completely meaningless because people are already migrating away as fast as possible.

[–] rastilin@kbin.social 15 points 2 years ago (1 children)

I think the fundamental protection is always going to be the firewall that blocks all incoming connections unless you explicitly open a port for a running server.

It's frustrating that the article doesn't have much information about the delivery method for this attack. Is it a remote connection, or you have to run it locally and it escalates privileges?

view more: ‹ prev next ›