5 ms·
Random thought, but I used to use version control (Git) for work. After I quit, I kept programming for fun...and to be honest I like programming without version
by vouaobrasil 2y ago
Random thought, but I used to use version control (Git) for work. After I quit, I kept programming for fun...and to be honest I like programming without version control a lot better. I realized I hate version control. It imposes too much structure on programming, like having to keep all my drafts of the past. It's rather stifling in fact.
Now, I know version control is super useful for large projects, especially of the commercial variety. But now I see all the modern software out there and I wonder if maybe the increasingly commercialization of the software world has in part been accelerated by version control, which makes programming more robotic and less artistic.
- metadat 2y agoI find git freeing and empowering, because I never have to worry about FOMO - I can rewind or pull up any past checkpoint.
- 000ooo000 2y agoInteresting perspective. I feel the opposite; in my personal projects, I love having Git because I can fearlessly rework things knowing I can just abandon the rework if it's not playing out, or stick the rework in a branch and come back to it later. Different strokes!
- vouaobrasil 2y agoTrue enough! I like the lack of version control because it feels like surviving in the wilderness with less safety gear and more self-reliance, or swimming in a lake without a life guard.
- snthpy 2y agoI guess people like soloing big walls of rock so if it works for you. My risk appetite is a lot lower and I try to use version control for everything.
- thfuran 2y ago>I realized I hate version control. It imposes too much structure on programming, Having used several different VCS, I have no idea what you're talking about. Are you conflating some complex CI/CD setup with branch naming schemes and oodles of hooks with version control in general? I mean, I think git is slightly overly opinionated when it comes to the relationship between commits and branches, but I don't get the impression that is what you mean.
- kstenerud 2y agoI'm the opposite. Having many years of experience writing software personally and professionally before version control systems became ubiquitous, I have way too many horror stories to tell... * damage done by a single careless command * coding around in circles because you forgot that you changed this one little thing in a file somewhere and now you've made a mountain of irreversible (without VCS) changes to your codebase And so many other nasty things that coding without a seatbelt brings.
- boristsr 2y agoI'm definitely the opposite, however I definitely use version control differently and less rigidly in personal projects. I commit more, care less about making the "perfect" commit, and making one change per commit. It's a lot more freeform in my personal projects precisely so it doesn't get in the way and take the fun out of the project.
- sneed_chucker 2y agoI cannot imagine going back to programming without version control.
- barkbyte 2y agoI can’t understand what you mean at all. How does it make programming more robotic? I feel more empowered to be creative when I know I can get things back to a valid state if I break them too badly. For personal projects I often just use an alias that commits in my project directory with no commit message. There’s no burden to it. Sometimes I might choose to do a detailed merge commit to add a description for a batch of changes once I’ve settled on something I like, but usually I don’t bother if I’m not going to be working with others.
- vouaobrasil 2y agoI feel a lack of version control system is like adventure with less safety gear and more self-reliance. It's a bit more interesting to know that I can break things and thus, I am more careful and use my own senses. It's like a video game without instant save.
- gwbas1c 2y ago> less artistic Don't confuse the act of putting paint on a canvas with the finished result. Programming is not art, it's a means to an end. > It imposes too much structure on programming The structure that tools like git provide is based on decades of know-how from people who use programming and source code control as a tool to accomplish a result. You may decide that painting with oil or acrylic paints on a canvas is less artistic and more structured than using crayons or markers on paper. But there's a reason why artists gravitate towards certain tools to make certain results. The time invested in using the tools correctly is required to make the desired result. In my case, I don't use git for one-off programs and experiments. Once I plan on working on a project for an extended period of time, it's extremely helpful.
- kstrauser 2y agoProgramming absolutely has an artistic side. I’ve read beautiful, elegant code that expressed powerful ideas in ways that made them seem obviously correct. You don’t get that from a pure engineering approach. Mathematicians know what I mean here.
- gwbas1c 2y ago> I’ve read beautiful, elegant code that expressed powerful ideas in ways that made them seem obviously correct. Oh no, don't confuse the brush strokes with art. A computer program isn't an idea: It's a set of instructions to the computer to accomplish that idea. The "elegant code" is merely the brush strokes, the idea lives in your head and in the resulting program.
- kstrauser 2y agoIn my experience that’s just simply not true. Most code is boring and straightforward, yet some is inspired and beautiful. Some math proofs are mechanical and boring. Some are astoundingly elegant. Both get the job done. The latter gets talked about and praised.
- 2y ago
- deleted 2y ago[deleted]
- comex 2y agoWhen I write code for fun, I use Git. But I only have the master branch, most of my commit messages are some variant of “asdfghjkl”, and instead of isolating logically separate changes into their own commits, I just commit the state of my working tree every so often. In other words, I use Git mainly as a glorified undo. After spending my work hours justifying and polishing every single change, it’s nice to have a more free-form process for my own stuff. In fact, while my process is partly borne out of laziness, I think it can sometimes lead to better code. If I see something that’s just a little suboptimal, I can fix it on the spot, without having to go through a bunch of process or explain why I think the new version is better. Still, I can’t imagine living without that glorified undo. If anything, it makes the process more free-form rather than less. I can make drastic rewrites if I feel like it, safe in the knowledge that if something breaks, or if I decide halfway through that the rewrite was a bad idea, I can just `git stash` and get back to the old state (while still having the stashed changes saved if I change my mind again).
- SBArbeit 2y agoOne of the design intentions for Grace is to make version control more ambient, more something that just happens in the background, so you get the benefits of file-level undo and diffs and change tracking without having to do anything, until you're ready to run `grace commit` and `grace promote`. I'm like you: for small personal projects I either don't bother with source control, or I update it rarely. I'm the first beneficiary of the ambient approach that Grace has; it's really nice to just have all of my previous versions automatically uploaded and tracked, and then deleted a few days later if they're not pointed to by some other reference like a commit or promotion.
- chipdart 2y ago> I realized I hate version control. It imposes too much structure on programming, like having to keep all my drafts of the past. It's rather stifling in fact. That's like saying that using an editor with an undo button is too stifling.