• 0 Posts
  • 20 Comments
Joined 2 years ago
cake
Cake day: June 14th, 2023

help-circle
  • Here’s my pet theory as to why CS did so well for so long and why that probably won’t remain true moving forward.

    Programming / tech is a relatively new field that, as a proportion of how much time it takes as part of people’s waking hours (as a rough indicator of how much of the economy it can penetrate), has gone from essentially 0% to 99% in only a few decades. We went from only large corporations having one or two mainframes, to office computers, to home computers, to smartphones, etc. Add in social media, streaming, etc. and people have gone from spending virtually no time on programmable devices to all their time on programmable devices.

    As tech continued to have this (apparently) exponential growth, there was a chronic shortage of programmers, leading to massive salaries. As salaries exploded, programming developed a reputation for being a relatively easy, well-paying job, provided you were somewhat intelligent. As a result, hordes of students studied CS to help keep up with the growing demand, although always lagging. For seniors the lag for new hires to reach their level is quite a bit longer, so seniors have remained in high demand.

    Now as we catch up to the present though, it’s hard to see spaces where new jobs for programmers can be created without cannibalizing existing ones. VR? You’d take work away from game developers. Metaverse? From traditional social media sites. In short we’ve put computers on watches, sleep trackers, fridges, TVs, cars, light switches, etc. There’s no more room for the industry as a whole to grow. AI might be the exception for this - if it actually succeeds it could keep tech growing by eating into the jobs of other industries, but then I expect it would end up eating many tech jobs too, so for the purpose of my argument it’ll either hurt the programming job market or have minimal effect.

    So - we reach the present. Lured in by the high salaries of previous years, and the high salaries seniors currently have, we have an overabundance of juniors on the job market. If tech had continued its previous rate of growth, things would have been fine - but it can’t. As a result, there just aren’t enough jobs for all the current juniors and there likely won’t ever be - the industry can’t grow to accommodate them. Many of them will need to switch to other careers and for less students to study CS for balance to arrive. There’s still a shortage of seniors at the moment, but as the current juniors who are employed gain experience and move up the job ladder, this will change. Current seniors can’t count on older tech workers retiring quite yet, due to how young-skewed tech is (because of the job growth pattern we previously had), so they should expect growing job competition as juniors develop and for salaries to stagnate (already seeing this at my employer).

    This isn’t all bad news though - consumers will benefit. With a shortage of new industries to move into, the glut of workers who remain will best find work opportunities by selling products that outperform and/or are cheaper compared to the existing products. In other words, expect more alternatives to MS Office, social media, Photoshop, etc. People will be able to create work for themselves by undercutting the current incumbents - we should expect to see an explosion in competitors for existing products. In some ways we’re seeing this already - more and more great indie games that outperform the AAA giants, open source software that provide better experiences against the proprietary options (Lemmy vs Reddit, Mastadon vs Twitter, Forgejo/Gitea vs Github, etc.)

    I fully expect to see deviations to this - new hype cycles that temporarily create demand, boom / bust cycles depending on the present economic circumstances, an eventual (short-term) shortage of workers once today’s tech workers do start to retire, but long-term I expect ‘programmer’ to become just another generic white-collar job with similar pay.

    TL;DR - unless you’re already a senior in tech, you might want to look at professions that are actually in demand as the glory days for software developers won’t come back.






  • I started self-hosting a bit prior to when Docker took off, and getting multiple services running was much harder. Service A wants a certain version of PHP installed with certain plugins while Service B wants a different version. You’d follow a tutorial for installing Service C and desperately hope that it wouldn’t somehow break Service A or B. You installed Service D for a bit despite all the installation pain and now want to uninstall it - I hope you tracked exactly what config changes you made throughout the system so you can undo it.

    Docker fixed all of this by making each service independent through containers which made self-hosting 10x easier. I’d also add that I love how easy it is to transfer my setup to a new server - I keep all of my container volumes in a specific directory and my docker-compose files in another and that’s all I need to backup / transfer. Without Docker you’d have to specifically handle each & every configuration file and database location, and if you later upgrade to a newer version of the OS or a different distro you’d have to handle possible conflicts between your versions and what the distro expects.







  • I have a Wireguard network setup for my devices that routes through my somewhat distant server. I find when I have both it and Tailscale open, Tailscale tries routing through Wireguard even though both devices might be on the same LAN. Unfortunately I don’t believe Tailscale has a way to forbid it from routing over other VPNs or networks.


  • festus@lemmy.catoMemes@lemmy.mlGaming Then vs Gaming Now
    link
    fedilink
    English
    arrow-up
    32
    ·
    2 years ago

    Not to mention how annoying it was to even buy games - if a popular game was released you might have wait for the store to open to buy it before it went out of stock, and if it was more niche you might have to mail an order form in and wait for them to ship it to you.




  • No, because these licenses can’t bind the copyright owner themselvess. AGPL is the terms that OwnCloud allows us access to it, but as it’s their code they don’t need a license to do whatever with it.

    Let me put it another way - OwnCloud would be the only folks with standing to sue someone for violating the AGPL on their code. That means that the only people who could possibly sue OwnCloud for having a non-AGPL version is… OwnCloud. So even if the AGPL somehow claimed to bind the copyright owner it still wouldn’t work legally as the copyright owner just has to not sue themselves.


  • Most of the items on that list (with the possible exception of the ‘Enterprise Apps’) are items that involve them either hosting an aspect for you (push notifications), training, or utilizing their OAuth credentials with Microsoft. Because they forked OwnCloud they’re actually bound by the AGPL on that original code and legally can’t license features in the main codebase as anything other than AGPL (less sure on those ‘apps’), so they’re limited in what features they can restrict to paying customers.



  • What name do you assign the DB for PostgreSQL in Docker and does it by chance happen to match the name of any other containers, possibly in other docker compose files?

    I’m only mentioning it because I experienced weird inconsistent issues with a service I was running where it was sometimes having trouble connecting to its DB companion and I eventually realized that it was sometimes connecting to the other container. I was also finding that turning it off and on again was often ‘fixing’ the issue, at least for a while. Might be worth checking out. I’d also consider viewing the logs for Nextcloud (docker logs -f ) when you’re unable to login and see if there are any errors. Frankly I’ve never had these specific issues with Nextcloud, and given that it’s based on PHP (it only ‘executes’ on an HTTP request), it seems like restarting shouldn’t help unless it’s something else.