Spyke
Lenareply
gregtech.eu

Python 27??? Does tech in the future go full circle and starts to look like windows XP again?

18
6nk06reply
sh.itjust.works

I would love a subscription to Codeberg to be able to store private projects though. Codeberg is nice but you need an alternative for those special projects and it's annoying.

15

If you work alone you can just use git local without a remote repo. Otherwise there is always self hosting forgejo (the software behind Codeberg). But I also expect there to be other hosting services for that purpose.

14

You can but it's for specific stuff, not real projects. Everything should be open source and public by default.

I would gladly pay them to host private projects.

4

An audio diff file that explains through voice how to modify the previous code to be like the new code

13

And for those who don't know: git was there first, then github offered it for code management (they are two different things, don't confuse git with github!)

13
lemmy.world

Git is so easy to host yourself and everyone went and handed over all their code to evil corp to farm on anyway.

(Though I do understand that they were bought, but that was a while ago and it was only a matter of time before the evil seeped in.)

44
lemmy.blahaj.zone

I think you may be mixing up git, which is a command line tool that's still open source, AFAIK, with github that's a closed source, git-based code hosting platform bought by Microsoft.

You can use other hosting services with git, and get an almost identical experience. Gitlab does it, as well as many others.

10

You can serve up a git repository remotely very easily on any machine that has a remote access path.

5

It's such a simple reason tbh. Github is expected to stay online indefinitely. My VPS? As long as I pay the bill, which I may not want to at some point.

Codeberg is a decent middle ground - open source projects only. The site itself is open source too.

9

Convenience and reputation. People expect github to be a legitimate source of software (despite the fact that there's little moderation). The UI is familiar already too.

4

Their CI/CD minutes are very generous (unlimited!). Plus, if Microsoft wanted to scrape code, it doesn't have to be on Github. They can scrape it off codeberg too. And I can be sure Github won't shut down.

If Github does decide to screw users over, switching to self-hosted forgejo would be trivial.

4

Untitled.new.new.optionB.MomsVersion.final.FINALFORREALTHISTIME.jokehaha.okOneMoreEdit.typo.killMePlz (copy 2)

5
lemmy.world

It’s a small thing but I appreciate how you didn’t use the image of the rapper of the original meme who seems like an overall terrible person.

25

Yeah I don’t get how he was taken so seriously for so long by so many. I get that not every rapper needs to come from a broken and messed up background, but his verses don’t hit that hard due to all the inauthenticity, as if he did grow up on hard streets lol.

3
lemmy.world

I like git(hub) because you can track changes. Not just versions

17

Just use git. It’s what all these front ends use at their core. It’s all just git which doesn’t need any hosting at all. If all you want is tracking changes you don’t even need to set up a remote to push / pull from. Just install git on your local development machine, make a folder for you project, and run ‘git init’. Now you have a local repo which can track and commit changes and you have all of the incredibly powerful tools available that git provides with ample documentation. Wanna back it up? Just backup the folder with any standard backup application like any other folder.

23
Einarreply
lemmy.zip

Gitlab, Gogs, Gitea... you can run all those locally.

20
lemmy.world

But how often do you need that for your personal projects? I just have a git repo on a server that's accessible by ssh. I only use a web frontend when I have to share with other people and then you might as well use a free third party service.

11
justmereply
lemmy.dbzer0.com

You don't need it on a server even. For simple versioning just use a local git repo without any bells and stuff

5
404reply
lemmy.zip

One of the most useful features is rolling back from origin when you've borked your local repo (not that I ever have.............)

7
justmereply
lemmy.dbzer0.com

I'm not that accustomed with it myself, so my question: how can you bork your local repo so you can't roll back? Did you tinker in the .git folder? xD

1

I've had colleagues who'd panic when they had merge conflicts, then fuck something up, remove the whole dir and create a new clone. If you're competent I don't think it should be necessary.

3
404reply

There are many ways. Like the other user said, fucking up a merge/rebase then fucking up the merge abort.

Or (one of my personal favorites) accidentally typing git reset --hard HEAD~11 instead of HEAD~1

1

True, I used the remote to access the code from other machines and/or as a remote backup. If you don't need that, there's no need for a server.

2

aint that just git tho? i upload my code on github as a backup and so others can see it?

2
lemmy.ml

Neither. Version control and remote sync to your self hosted gitlab or gitea, or whatever (or no remote at all if you wanna go gambling with your hard drive).

15
dan
upvote.au

The bottom picture should be SVN. I miss incremental revision numbers.

12
Einarreply
lemmy.zip

SVN is still great if there is a need for strict access controls and central control matters a lot. Auditing is also a bit easier with SVN.

It caters more for a linear workflow, though. So modern large teams won't find joy with SVN.

3
danreply
upvote.au

It caters more for a linear workflow, though. So modern large teams won't find joy with SVN

For what it's worth, I work at a FAANG company and we don't use branches at all. Instead, we use feature flags. Source control history is linear with no merges.

All code changes have to go though code review before they can be committed to the main repo. Pull requests are usually not too large (we aim for ~300 lines max), contain a single commit, aren't long-lived (often merged the same day they're submitted unless they're very controversial), can be stacked to handle dependencies between them ("stacked diffs"), and a whole stack can be landed together. When merged, everything is committed directly to the main branch, which all developers are working off of.

I know that both Google and Meta take this approach, and probably other companies too.

6
boonhetreply
sopuli.xyz

What's the difference between that and feature branches? Sounds like you still have PRs that get merged to main from somewhere - forked repos I guess?

1
danreply
upvote.au

Usually, feature branches mean that all the work to implement a particular feature is done on that branch. That could be dozens of commits and weeks of work from several developers. The code isn't merged until the feature is complete. It's more common in the industry compared to trunk-based development.

My previous employer had:

  • Feature branches for each new feature.
  • A dev/trunk branch, where features branches were merged once they were done.
  • A beta branch, branched from dev once per week.
  • A live/prod branch, branched from beta four times per year.

This structure is very common in enterprise apps. Customers that need stability (don't want things to change a lot, for example if they have their own training material for their staff) use the live branch, while customers that want the newest features use the beta branch.

Bug fixes were annoying since you'd have to first do them in the live branch then port them to the beta and dev branches (or vice versa).

On the other hand, feature flags mean that all the code goes directly into the trunk branch, but it's turned off until it's ready. A basic implementation of feature flags would be a static class with a bunch of booleans that get checked throughout the code, but they're usually dynamic so a misbehaving feature can be turned off without having to redeploy the code.

Some codebases use both feature branches and feature flags.

1

Ah okay, places I've worked have tried to keep tasks as small as possible so you don't work on your feature branch more than a day. If it takes over a day, should've been an epic (and therefore multiple feature branches). Seen different approaches to the whole release thing too. Weekly deployments, 3x per year, or in my current company: deploy as soon as someone has tested it

1

The mixed-revisions bug was fun... Also cannot clean history or make shitty branches everywhere, it was one of my worst experience. Nowadays Jujutsu is my favorite.

3
Bruncvikreply
lemmy.world

Owned by Microsoft. Microsoft recently blocked e-mail access to a LibreOffice dev. Speculation is that they'll start blocking projects for competing products next.

(Alternative explanation: Gitlab should be part of IT divestment from US-based services.)

17

Gitlab itself is American these days, legally speaking.

Try Forgejo, self hosted or one of the European hosts (some allow private projects)

2

They'll train their AI on your code. Even if it doesn't have a license that allows them to.

How are you gonna prove that they used your code to train their AI? You can't.

0

Uuuh Mrs/Mr professional programmer and their fancy individual version folders!

3
lemmy.world

No need for that. Have a local server. I don't use git, it's useless for what I'm doing, and Subversion is fine.

2

Need to save them within porn jpg.

That way, when mandatory face recognition for age verification comes into play, I will know who you all are! Har har har!

2

This is how you lose your data if something goes wrong. Also, patch notes are extremely good to have.

1
infosec.pub

Interesting post, but maybe better suited for a dev-focused community? Would love to keep this space more for random stuff.

-3
pawb.social

the occasional software developer post counts as "random stuff", don't you think?

6
infosec.pub

True, but this kind of trend is why Fediverse platforms often stay programmer-heavy. Regular users join, see mostly dev talk even in general spaces, and bounce. I'm not really against posts like this, but I do wish Lemmy could grow its user base by keeping general spaces genuinely random.

Also, just being honest, it kind of sucks that my earlier comment got downvoted. I wasn’t trying to gatekeep, just sharing a harmless opinion about keeping the vibe more random and less tech-centered. Felt like I got shut down for it.

Reddit was like that too. Certain communities gradually became echo chambers just because one group dominated the tone. I'd hate to see Lemmy fall into the same pattern.

And just to follow the same logic—if dev memes count as “random” in lemmyshitpost, I guess I could post “what programming language should I use to build X?” in asklemmy, right? Feels inconsistent to label one as valid and the other as off-topic, depending on who posts it.

1
pawb.social

"What programming language should I use to build X" does not belong in AskLemmy, because that's not the format of question that AskLemmy is for.

On the other hand, "What programming languages do you guys use" does belong in AskLemmy.

-1

So basically, it’s not about the topic, but about how it’s framed? That kinda proves my point—tech stuff is allowed as long as it’s phrased vaguely or conversationally enough. Which is fine, but still makes the space biased toward people who are familiar with those contexts. I’m not saying don’t allow them, I’m just pointing out that this flexibility doesn’t feel equally intuitive to non-tech people, which can unintentionally gatekeep.

If niche stuff is going to live in general communities anyway, then what’s the point of having dedicated communities at all? Should we just post everything in the same place and hope the phrasing makes it acceptable?

1
Yeah | Spyke