Single developer’s perspective

Dear community! I am looking for development tools and practices crafted for a single developer. Although I have a detailed concept and a long list of suggestions on how to build something new, this is not a good idea to build from scratch if so many big players have almost all of the required elements.

So I am interested in current approaches in the GitLab portfolio: how to work effectively with projects, issues, and repositories with the single developer’s point of view?

Maybe an example (although partial) from history will be helpful: Bazaar had Solo mode.

If there is nothing applicable, I am going to send a kind of RFC, so if you know about any open issues in this area, please give me a link.

You can do all that already with Gitlab, same with Github, irrespective of being a single-developer, or working with a team of developers.

Perhaps you can explain it more clearly what you are attempting to do in the first place. Links to Solo or Fossil don’t really help anyone to be honest, unless you are just spamming links here for some reason? It would be far better and helpful you explaining why you are putting such links, and why you believe they offer something advantageous for a single-developer, that you think Gitlab doesn’t do. Because from what I see, Gitlab does all that Fossil does and far more. Therefore I think Fossil is rather limited in its current form.

Hi, Ian! Thank you for your answer.

Yes, I CAN use GitLab for solo programming, and I was using it few times in that manner, but it is like the advice of using Hummer for every activity - shopping, vacations, work, never mind, you can always Hummer. Yes, I can. But do I have to?

If you think about a learning curve of tools like GitLab, especially of a beginner, or less experienced programmer, you can even feel the pain of using an inappropriate tool to make something simple in nature. Is it really necessary that it is so complex? And it is complex, believe me, I have seen it many times in others’ eyes when I was trying to explain or learn it.

As I mentioned in the beginning, “I am looking for development tools and practices crafted for a single developer”. I haven’t found something like this on GitLab, but I am not so much perceptive (someone important for me gave me this sad opinion), so I am asking other people.

Maybe because of my English I cannot describe better what I am looking for, but this is not spam - it’s a premature opinion. I am searching. And I am sharing what I have found up to now.

At the end of this story, if I will find nothing appropriate, I will send a kind of RFC to GitLab developers. At least your misunderstanding is good proof that I need to refine this idea better to effectively encourage someone to get it and implement it. So thank you again for the opportunity to make it more clear.

Hi, thanks for posting more info, it helps with the discussion :slight_smile: and also so I can also add more info from my point of view, as I can now understand a bit more what you are experiencing.

From my side, I am more of a sysadmin, I’m not really a developer as such, although during the last year started to learn Python, HTML5/CSS/Javascript, so yeah, pretty basic programming or coding if you like. I personally haven’t really had any difficulty using Gitlab. I tested a few solutions until I decided on Gitlab.

Since choosing Gitlab, I installed it on a VPS over 3 - 4 years ago now, and as a sysadmin I’ve been managing and maintaining it every since. I regularly upgrade it, and during this time it was even upgraded through Debian 9 to Debian 10. I create all the project groups and projects for our development team, and they then utilise it with multiple branches, merges betwen branches, issues, etc. I also use it for my own projects which I have mostly bash scripts, python scripts or some of the static HTML5/CSS that I’ve been learning in the meantime (since I only make commits here, I guess I’m practically a single developer also). I will also learn PHP shortly, as the course I purchased a while ago is ready for me to start, Django as well - which I chose because I figured a good move from learning Python. For pushes, branches, issues, etc, I can’t really say I’ve had difficulty using it. I use the Gitlab API as well.

The Gitlab documentation is pretty good, and explains everything quite well I think. Of course, every product/documentation can be improved and this is happening, and during my journey with Gitlab, I have seen a lot of this progress, from versions 12.x of Gitlab, through 13.x and now 14.x.

Of course, everyone has different viewpoints on a product, some may find it easy to use, others maybe not. But I think the Gitlab community can certainly help in such instance - and this is where this forum comes into play. If you have difficulties with something, that you cannot do, or something that doesn’t work how you think it should work, or how you expected it to work, then you can post on the forum, and the Gitlab community most likely will help out.

So I think any difficulties you have experienced, can most certainly be overcome. But whichever product you decide to choose, you must feel comfortable with, and willing to learn more about it. I think it’s worth it.

Thanks! Now I have a wider perspective.

It’s definitely a matter of perspective

You wrote “I think any difficulties you have experienced, can most certainly be overcome”. Maybe because you are an admin, so you are trained in using hundreds of tools without grumbles to achieve goals? What do you think?

I was an admin years ago, I remember this style, although for me it was pretty annoying and frustrating, and this is one of the reasons why I become the programmer :slight_smile: I like to make complex things simpler. This is my main motivation in programming.

I’m mostly self-taught. Started a long time ago when I was 16, and when I broke the computer at home (deleted command.com from the 5.25" floppy disk as I wanted more space for a game to run), so DOS didn’t boot anymore. Nothing like pressure of knowing your Dad is coming home in 45 minutes, and you need to get the computer working before then :smiley:

First job roles I had were support, then server management, then disaster recovery.

All my Linux knowledge came from tinkering, breaking, reinstalling, starting again, and then taking that to the next level, don’t reinstall, fix it, learn why it broke and how to get it running again.

I guess now I do similar to you, scripting, be it bash or python, to automate everything - it means it saves me a lot more time with all my servers, and I can concentrate on what else is important. There’s only so many hours in a day, so I need to optimise that by not wasting my time :slight_smile:

It’s pretty funny, I had a similar “road to IT”, I remember e.g. the story when I moved DOS files from the root to a subdirectory… These were wonderful days.

Thank you, and let the Powershell be with you!