Unionizing
Programming
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
to add to this, id like standardization of qualification and competencies - kind of like a license so I don't have to "demonstrate" myself during interviews.
I hate being in a candidate pool that all have a degree and experience, we all go through a grueling interview process on college basics, and the "best one gets picked." Company says "our interview process works great, look at the great candidates we hire." like, duh, your candidate pool was already full of qualified engineers with degrees/experience, what did you expect to happen?
I'm betting you aren't involved in hiring? The number of engineers I've interviewed with graduate degrees from top universities who are fundamentally unable to actually write production quality code is mind-boggling. I would NEVER hire somebody without doing some panel with coding, architecture/systems design, and behavioral/social interviews.
This. I've had someone in my team that was completely self-taught with no relevant education that was a great dev.
I've also interviewed someone that supposedly had a master degree and a couple of certificates and couldn't remember how to create a loop during the interview.
I don't know how you could properly implement "standardization of qualification and competencies" without just min-maxing it in a way that favors academics
As a counter balance to that though, interviewers need to understand what they are hiring for and tailor the questions asked to those requirements.
For example, there is genuinely very little coding required of an SRE these days but EVERY job interview wants you to do some leetcode style algorithm design.. Since containers took over, the times I have used anything beyond relatively unremarkable bash scripts is exceptionally small. It's extremely unlikely that I will be responsible for a task that is so dependent on performance that I need to design a perfect O(1) algorithm. On terraform though, I'm a fucking surgeon.
SRE specifically should HEAVILY focus on system design and almost all other things should have much much less priority.. I've failed plenty of skill assessments just because of the code though.
As a counter balance to that though, interviewers need to understand what they are hiring for and tailor the questions asked to those requirements.
This does not happen. At all.
Back in reality we have recruiters who can't even spell the name of the teck stacks they are hiring for as a precondition, and asking for impossible qualifications such as years of experience in tech stacks that were released only a few months ago.
From my personal experience, cultural fit and prior experience are far more critical hiring factors, and experience in tech stacks are only relevant in terms of dictating how fast someone can onboard onto a project.
Furthermore, engineering is all about solving problems that you never met before. Experience is important, but you don't assess that with leetcode or trivia questions.
to add to this, id like standardization of qualification and competencies - kind of like a license so I don’t have to “demonstrate” myself during interviews.
I strongly disagree. There is already a standardization of qualification of competences in the form of cloud vendor certifications. They are all utter bullshit and a huge moneygrab which do nothing to attest someone's experience or competence.
Certifications also validate optimizing for the wrong metric, like validating a "papers, please" attitude towards recruitment instead of actually demonstrate competence, skill, and experience.
Also, certifications validate the parasitic role of a IT recruiter, the likes of which is responsible for barring candidates for not having decades of experience in tech stacks they can't even spell and released just a few months ago. Relying on certifications empower parasitic recruiters to go from clueless filterers to outright gatekeepers, and in the process validate business models of circumventing their own certification requirements.
We already went down this road. It's a disaster. The only need this approach meets is ladder-pulling by incompetent people who paid for irrelevant certifications and have a legal mechanism to prevent extremely incompetent people from practicing, and the latter serves absolutely no purpose on software development.
Attention and awareness of the ways in which modern technology is harming ourselves.
We're providing people with the electronic equivalent of heroin, from a young age, completely rewiring our brains and detaching us from nature and each other.
The statistic that ~90% of American teens own an iPhone was shocking to me. It makes me think that from a young age, children are taught not to question but just accept their cage. If closed source is all they grow up with, opensource will be foreign to them. And that in a way that's worse than when you grow up with windows which doesn't completely lock you in.
Three things off the top of my head:
- Unionisation
- Way more stuff publicly funded with no profit motive
- Severe sanctions on US tech giants all around the world, with countries building up their own workforce and tech infrastructure. No more east india company bullshit.
More focus on the ability to maintain, repair, and perhaps even upgrade existing tech. So often people are pushed to upgrade constantly, and devices aren't really built to last anymore. For example, those yearly trade in upgrade plans that cell phone providers do. It sucks knowing that, once the battery in my cell phone finally dies, the whole phone is essentially garbage and has to be replaced. I miss my older smartphones that still had replaceable batteries, because at least then it's just the battery that's garbage.
We're throwing so much of our very limited amount of resources right into landfills because of planned obsolescence.
Have developers be more mindful of the e-waste they're contributing to by indirectly deprecating CPUs when they skip over portions of their code and say "nah it isn't worth it to optimize that thing + everyone today should have a X cores CPU/Y GB of RAM anyway". Complacency like that is what leads software that is as simple in functionality as equivalent software was one or two decades ago to be 10 times more demanding today.
Yes!! I enjoy playing with retro tech and was actually surprised on how much you can do with an ancient Pentium 2 machine, and how responsive the software at the time was.
I really dislike how inefficient modern software is. Like stupid chat apps that use more RAM while sitting in the background than computers had 15-20 years ago...
It leads to software obesity and is a real thing. I think it has to do with developer machines being beefy, so if you write something that runs on it and don't have a shit machine to test it on, you don't know just how badly it actually performs.
But it also has to do with programming languages. It's much much easier to prototype in Python or Javascript and often the prototype becomes the real thing. Who really has time (and/or money) to rewrite their now functional program in a language that is performant?
IMO there doesn't seem to be a clear solution.
More privacy and less profit 🫣
I realize most people could rather not pay for a service they currently have for free (which is partly due to the lack of transparency regarding our data usage).
That we stop fawning over tech CEOs
I would like to see:
- Corporations treating their customers like people, not just bags of money.
- Corporations and employers to stop spying on people. Like, it makes me feel so unsafe and that I can't really trust them.
- People becoming more tech literate.
- Open source software, such as Linux being used by more people, especially those who are not so tech literate.
Phones with fully open source drivers including the bootloader and decent specs. Give me a UEFI over fastboot any day.
I'd also love it if electron and sexism would kindly go away.
A pivot way from cargo cult programming and excessive containerization towards simplicity and the fewest dependencies possible for a given task.
Too many projects look like a jinga tower gone horribly wrong. This has significant maintainability and security implications.
Containerization (even for small things) makes modern infrastructure a LOT easier.
Containerization helps isolating system dependencies however
Probably less elitism. "Oh you build it in x language? Well that's a shit language. You should use y language instead. We should be converting everything to y language because y language is the most superior language!"
(If this feels like a personal attack, Rust programmers, yes. But other languages as well)
To people that really spend time in code, this banter is meaningless.
not being forced to have an Android or Apple smartphone, so more open standards and just Web apps instead of proprietary apps
ISO-8601 only
UTF-8 only
UTC only
Oh and more self hosting. Clouds are expensive and unnecessary for some stuff.
Honestly, just less waste. Wasted time, wasted hardware, etc. We spend so much time building devices that are meant to break, and be unfixable,, and making software that fights the user instead of helping. All in the name of profits or something.
We could be making so many cool things, but instead we're going back and forth not making any progress.
We spend so much time building devices that are meant to break, and be unfixable, and making software that fights the user instead of helping.
Kudos to the EU for forcing mobile phone manufacturers to support replaceable batteries and standardize on USB-C charging.
Worker ownership of tech firms
Boot out corporate shitware, boot out adverts, and stop collecting data unless it is absolutely necessary, or alternatively just cancel the fucking product and don't do it.
less sexism
Respecting privacy.
Out of the cloud and back into our federated hands/the edge.
People just love the easy path at the loss of sovereignty.
Personally, I'm just sick and tired of modern UI design. Bring back density, put more information on the screen, eliminate the whitespace, use simple (and native!) widgets, get rid of those fucking sticky headers, and so on.
In addition to all the software freedom stuff, and so on. Also, I wish GPL were more popular too.
Linux becoming mainstream
I’ll go further and say some sort of OpenStack like thing should be mainstream. Why shouldn’t home computers by default be able to deploy cloud-like services?
Accessibility and internationalization first. A lot of projects start without it and tack it on later. It's so much better to have good roots and promote diversity and inclusivity from the start.
The disappearance of all these tech peacocks and web turkeys who focus on their number of followers and the quantity of talks rather than quality. The dev rel advocates made the atmosphere toxic
I love how we have free to use licences (MIT, GPL, CC, etc) and it would be really great to see the same idea used with terms of services and privacy policies! How great it would be to quickly see that this site uses fair tos and to understand what it includes? Maybe this would also nudge (at least smaller) companies toward not being horrible privacy invading monsters
Stop forcing updates on the lower level stuff that forces people to spend billions on maintaining code. This way, we could return to a world where you can just buy software and use it for years without some update borking it.
Also outlawing financially motivated (i.e. greedy) retroactive ToS changes.
Lots of stuff -
On the internet, more open standards and community driven stuff. It's currently really, really annoying that on my mastodon there are a lot of people sharing bluesky codes, as if that's not just punting the ball for another couple of years. Although this will hopefully be a better outcome than straight up silos like the old social media, fediverse still should be the default way we think about connecting humanity (or something like it, the underlying tech isn't really that important.) Also, far more things should just be like, a dollar a month or whatever instead of having a massive amount of privacy invading, user experience destroying ads.
In software in general, more privacy. It should be assumed that unless I explicitly opt in, my data is just that, mine. This is a tricky one because I remain hopeful about generative AI and that needs data to improve the models, I'm leery of sharing my data with it because so far the more pedestrian uses of data mining have not been used for things that I can really support. I remain extremely leery about GAI that isn't explicitly open source and can't be understood generally.
On the hardware side, computers have mostly been good enough for a while now. Tech will always get better, but I would like to see more of a focus on keeping working devices useful. Like, at some point, technology products will cease being possible to be useful in a practical way because it can't run modern software, but we're leaving a lot of shit behind where that's not the case. Just about any device with an SSD and a processor from the last 10 years (including phones!) should be able to be easily repaired, supported longer, and once support ends, opened up for community support.
Any hardware that's abandoned needs to be forced to release the source of any needed software - the latest version.
We'd need a range of available licences, as to prevent any bullshit "you're only allowed to read this source" license.
This is going to suck for Apple, but it's going to be great for people who pay for some expensive microscope that's not supported any more.
There's probably a lot of legal nonsense that may make this impossible in practice, but I'd love to see this happen.
Less software bloat.
- No more proprietary software (including firmware)
- No more software that spies on its users
- No more software that disrespects user freedom
- No more corporations solely trying to extract profit from their users
- More free hardware