this post was submitted on 06 Dec 2023
20 points (95.5% liked)

Programming

17313 readers
90 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 1 year ago
MODERATORS
 

I'm currently new to programming and i have tried several programming languages including c, c++, asm, go, php and lua. I'm currently bored and need projects or ideas I could program .

all 11 comments
sorted by: hot top controversial new old
[–] [email protected] 22 points 11 months ago

One option is to help out various open source projects. That gives you an endless supply of options, languages and applications. You, the project and its users all benefit.

[–] [email protected] 11 points 11 months ago (2 children)

You might try advent of code. It's not a project though, but good for improving your skills imo

[–] [email protected] 8 points 11 months ago

Best of they touch your life.

I like they "can my X talk to my Y?" Y is usually my phone. X would be a "smart" anything.

Failing that, make a file organizer.

[–] odium 3 points 11 months ago* (last edited 11 months ago)

What OS are your devices? More detail would be better.

For example, my phone is Samsung's One UI flavor of Android 13. My laptop is Linux and has a nvidia dedicated GPU and AMD integrated GPU. I'm using Hyprland (Wayland) on it. I don't have a smart watch. Don't have any fancy lights or rgb keyboards that can be controlled from other devices.

With this kind of information, we can recommend both from scratch ideas for your devices and open source projects that you could use on your devices and are written in the languages you know or similar.

[–] onlinepersona 3 points 11 months ago* (last edited 11 months ago)

Big things:

  • Implement something on the Rust ORM Butane - it's basically an ORM that doesn't require you to write a single line of SQL as a user
  • Write a Signal client using the slint GUI framework
  • Write an anonymised job search and interview platform
    • users profiles are anonymous to anybody but themselves and the platform
    • interviews are either text based, or audio/video with voice modulation + avatars (like V-tubers)
    • "challenges" are gamified e.g "a normal in the office" where candidates play out typical scenarios that happen in the office
  • a neovim plugin configuration GUI (LUA + whatever you like)
  • start writing a new, embeddable browser engine and document it
    • it should be a library first --> forces you to think of how its API will be consumed
    • write a reference client that uses the engine as the example usecase

Medium ?

  • A static code analyser that spits out which languages are used in a project and which languages features e.g
    • this project has 70% c++ of which 30% of all know C++ features are used (templates, operator overloading, multiple inheritance, auto, constexpr, goto, static_cast, dynamic_cast, copy constructor, ...)
  • resume.json import/export for different job search platforms
  • A CLI tool that takes an audio file as input and outputs a visualisation as a video
  • Write a package for linux to act as a bluetooth audio sink, scenario:
    • user wants to stream music from their phone to a speaker (without buying extra hardware)
    • admin installs $btAudioSink on existing linux box with bluetooth hardware
    • admin connects linuxbox to speakers
    • user turns on bluetooth
    • user sees linux box as a set of speakers
    • user connects and plays music
    • music is header from speakers connected to linuxbox

Small ?

  • A simple "hash to file/url" website
    • User enters a hash, gets URL to that hash
    • User enters a hash, gets top 10 filename for that hash

Got a few more ideas, but didn't write them all down in my notebook.

[–] jasory 2 points 11 months ago

You could write bindings to machine-prime . Hardly anything challenging for an actual programmer, but I'll take the free labor if it is available.

[–] [email protected] 1 points 11 months ago

Write a matrix multiplication program in c. Then make it at least 10x faster from asm.

[–] ericjmorey 1 points 11 months ago

Copy something until you're inspired to improve it or some other thing.