Ask HN: HN people who write meaningful software, how did you learn to program?

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • Kavita

    Kavita is a fast, feature rich, cross platform reading server. Built with the goal of being a full solution for all your reading needs. Setup your own server and share your reading collection with your friends and family.

  • Filestash

    🦄 A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze, ...

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • FlyingCarpet

    Cross-platform AirDrop. File transfer between Android, iOS, Linux, macOS, and Windows over ad hoc WiFi. No network infrastructure required, just two devices with WiFi chips in close range.

  • I don't really know how many users I have, so I don't know how "meaningful" my projects are, but I have found some of them posted on French, Chinese, Greek, Russian blogs etc., so hopefully they fill some people's needs besides my own.

    https://github.com/spieglt/flyingcarpet

    https://cloaker.mobi

    https://github.com/spieglt/cloaker

    https://github.com/spieglt/whatfiles

    https://github.com/spieglt/winage

    I learned to program because I was frustrated that after working in IT consulting for several years, I still had no idea how computers worked. I started with "Learn Python the Hard Way" and "Automate the Boring Stuff with Python". Then got a job doing some Windows consulting stuff, and they said they'd hire me as a software engineer if I learned Go, which was a pretty easy step from Python. I'd tried to learn programming as a kid several times and always found it too frustrating. I started working on side projects as a way to learn new languages, improve my resume, and scratch my own itches. The hardest part was coming up with ideas for useful/worthwhile projects. I was super frustrated one day that the easiest way to get a file between two machines that were right beside each other was sending them out to the internet via Google Drive or Dropbox, which made me want to write "cross-platform AirDrop", which became Flying Carpet. If you find yourself wanting a simple piece of software that seems like it should already exist, that's a great project idea.

  • Cloaker

    Simple, drag-and-drop, password-based file encryption

  • I don't really know how many users I have, so I don't know how "meaningful" my projects are, but I have found some of them posted on French, Chinese, Greek, Russian blogs etc., so hopefully they fill some people's needs besides my own.

    https://github.com/spieglt/flyingcarpet

    https://cloaker.mobi

    https://github.com/spieglt/cloaker

    https://github.com/spieglt/whatfiles

    https://github.com/spieglt/winage

    I learned to program because I was frustrated that after working in IT consulting for several years, I still had no idea how computers worked. I started with "Learn Python the Hard Way" and "Automate the Boring Stuff with Python". Then got a job doing some Windows consulting stuff, and they said they'd hire me as a software engineer if I learned Go, which was a pretty easy step from Python. I'd tried to learn programming as a kid several times and always found it too frustrating. I started working on side projects as a way to learn new languages, improve my resume, and scratch my own itches. The hardest part was coming up with ideas for useful/worthwhile projects. I was super frustrated one day that the easiest way to get a file between two machines that were right beside each other was sending them out to the internet via Google Drive or Dropbox, which made me want to write "cross-platform AirDrop", which became Flying Carpet. If you find yourself wanting a simple piece of software that seems like it should already exist, that's a great project idea.

  • whatfiles

    Log what files are accessed by any Linux process

  • I don't really know how many users I have, so I don't know how "meaningful" my projects are, but I have found some of them posted on French, Chinese, Greek, Russian blogs etc., so hopefully they fill some people's needs besides my own.

    https://github.com/spieglt/flyingcarpet

    https://cloaker.mobi

    https://github.com/spieglt/cloaker

    https://github.com/spieglt/whatfiles

    https://github.com/spieglt/winage

    I learned to program because I was frustrated that after working in IT consulting for several years, I still had no idea how computers worked. I started with "Learn Python the Hard Way" and "Automate the Boring Stuff with Python". Then got a job doing some Windows consulting stuff, and they said they'd hire me as a software engineer if I learned Go, which was a pretty easy step from Python. I'd tried to learn programming as a kid several times and always found it too frustrating. I started working on side projects as a way to learn new languages, improve my resume, and scratch my own itches. The hardest part was coming up with ideas for useful/worthwhile projects. I was super frustrated one day that the easiest way to get a file between two machines that were right beside each other was sending them out to the internet via Google Drive or Dropbox, which made me want to write "cross-platform AirDrop", which became Flying Carpet. If you find yourself wanting a simple piece of software that seems like it should already exist, that's a great project idea.

  • winage

    Windows GUI version of the age file encryption tool (built on rage, the Rust implementation)

  • I don't really know how many users I have, so I don't know how "meaningful" my projects are, but I have found some of them posted on French, Chinese, Greek, Russian blogs etc., so hopefully they fill some people's needs besides my own.

    https://github.com/spieglt/flyingcarpet

    https://cloaker.mobi

    https://github.com/spieglt/cloaker

    https://github.com/spieglt/whatfiles

    https://github.com/spieglt/winage

    I learned to program because I was frustrated that after working in IT consulting for several years, I still had no idea how computers worked. I started with "Learn Python the Hard Way" and "Automate the Boring Stuff with Python". Then got a job doing some Windows consulting stuff, and they said they'd hire me as a software engineer if I learned Go, which was a pretty easy step from Python. I'd tried to learn programming as a kid several times and always found it too frustrating. I started working on side projects as a way to learn new languages, improve my resume, and scratch my own itches. The hardest part was coming up with ideas for useful/worthwhile projects. I was super frustrated one day that the easiest way to get a file between two machines that were right beside each other was sending them out to the internet via Google Drive or Dropbox, which made me want to write "cross-platform AirDrop", which became Flying Carpet. If you find yourself wanting a simple piece of software that seems like it should already exist, that's a great project idea.

  • jq

    Discontinued Command-line JSON processor [Moved to: https://github.com/jqlang/jq] (by stedolan)

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts