cross-posted from: https://sopuli.xyz/post/7432003

I’ve just transferred all of my serious projects on Codeberg over to a separate organisation, and I’ve noticed that there are now only two mediocre repos on my main profile. Does anyone have any ideas for simple, handy things I could build to flesh it out?

I code mainly in Python, I know HTML (but not JS), I regularly use Bash and Zsh, and I am learning C++.

  • key
    link
    fedilink
    English
    1511 months ago

    Have you tried writing a program that checks if other programs will ever finish running? Should be a quick and easy project!

  • @AMDmi3
    link
    911 months ago

    Why would you need to flesh it out it the first place? If you have serious projects I take it you’re not total beginner, so don’t waste time on projects with no purpose.

    • @[email protected]
      link
      fedilink
      4
      edit-2
      11 months ago

      The fact that everyone else skipped to giving suggestions is absolutely wild to me. I hope OP sees your post and takes it seriously. Their only response to a comment noted that they are worried about the project they’re interested in being “too professional”. What has them thinking that any of these concerns are important?

    • Hellfire103OP
      link
      fedilink
      English
      111 months ago

      My objectives are education and fun. I enjoy programming, I want to learn more, and I’ve been inspired by Brodie Robertson’s recent video on novelty software as well.

      I’m also applying for computer science courses at a few universities at the moment, and I want them to be impressed. Two repos for projects that haven’t been updated since 2022 isn’t the best look.

        • Hellfire103OP
          link
          fedilink
          English
          111 months ago

          The link I gave them was for the organisation I moved the serious stuff to. I did this so I could have more basic, novelty, and experimental repos on my Codeberg, as well as so that other people can “join” the organisation to help work on the projects.

          I don’t know where you got the idea that I’m pretending I can’t show people this stuff. That’s not at all the case. I am proud of the software I’ve written; I just thought I could organise it better.

  • promitheas
    link
    fedilink
    511 months ago

    A CRUD webapp, or a text adventure in C++ with object orientation in mind

    • Hellfire103OP
      link
      fedilink
      English
      211 months ago

      Interesting. I think an online Markdown editor, maybe with S3 as a storage backend and a button to convert to PDF, could be a useful CRUD webapp. Great idea!

      It might be a bit too professional for my personal repos, though. More suited to the organisation I just moved everything to.

    • @[email protected]
      link
      fedilink
      111 months ago

      If you’re going to do a text adventure, don’t deprive yourself of using the most English friendly dsl ever, inform 7.

  • @[email protected]
    link
    fedilink
    English
    511 months ago

    How about rewriting a Python project in Rust? You can start slowly by moving out a part of your python project to rust with pyo3 and writing a module in Rust that’s called by python.

    If you want to have some fun, you can start out with writing a small game in Godot.

    Or learn how to create a deterministic developer environment using devenv. That means that regardless of on which machine or environment your open your project in, the dependencies will all be the right version and so will the tools (debugger, live reload, db, etc.).

  • Pyro
    link
    English
    411 months ago

    Perhaps try making a simple web chat application. I recommend it for a myriad of reasons:

    • You’ll get to touch upon all the layers of a web app (DB/backend/frontend) in a manageably small way.
    • You’ll be able to make multiple choices to learn different technologies - like which database type to use (SQL/document), which message passing method to use (requests/sockets), which frontend framework to use (Solid/Svelte/HTMX/etc), and so on.
    • Getting a minimum working system is very fast. You can easily spend less than a day completing this, even as a novice.
    • Once completed, there are many extra goals you can set yourself. Try adding roles, commands, enable sending pictures, embedding metadata for links, etc. You need only look to your favourite chat app for your next idea!
    • Hellfire103OP
      link
      fedilink
      English
      2
      edit-2
      11 months ago

      Good idea, although I think I’d prefer to make a desktop app. I know HTML, but static sites are as far as my web programming goes.

      However, with a bit of Python or C and a PGP library, I could probably have a go at making an encrypted P2P chat service.

  • @[email protected]
    link
    fedilink
    English
    311 months ago

    Are you interested in working on a text editor? If so, I have an idea I plan on implementing myself for fun: a clone of HeyNote with some added functionality. HeyNote is a simple buffer that consists of blocks. It’s useful when you just want to note a simple block of text (an SQL query, log output, test data) but you are not interested in structuring it. What HeyNote lacks is the ability to add title and tags to blocks. It’s not an alternative to other note taking applications. It is just a buffer with unrelated blocks in it.

    • Hellfire103OP
      link
      fedilink
      English
      111 months ago

      Sounds interesting, but maybe a little too advanced for me.

  • @[email protected]
    link
    fedilink
    311 months ago

    Instead of starting your own project, have you considered simply contributing to an existing open source project instead?

      • @[email protected]
        link
        fedilink
        211 months ago

        I’m glad you agree. Honestly, as someone who has also struggled with this question, I wish I’d done this earlier, because there’s a lot of advantages to it.

        It takes a lot less planning and upfront time investment before you get to see your work make a difference in the world. It’s not immediate gratification, mind you, because pull requests can sometimes sit there for days or weeks before someone has the time to review them, but when they get merged, and you get to see the feature you worked on in an app you actually use, it’s still a great feeling.

        Most projects will also give you contributor credit, so your name and/or GitHub handle will show up on their repo, website, or in the app’s “about” page, and you can claim that on any job application you might submit in the future.

        I honestly think it’s a great way to scratch your own itch (because you can pick what issues you want to work on and build features you’d actually want to use) while also helping other people and benefitting open source as a whole. Any reasonably popular project generally has a massive backlog of open issues, so if you’re at a loss where to even start, you can just look through there and pick something that seems doable.