Ask HN: Should I refactor/rewrite my personal project(that barely anybody uses)

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

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

    Manji is a mobile application built to help people learning Japanese learn about Kanji.

  • I wrote a app for learning Japanese kanji when I was in college learning Flutter, I didn’t have any experience working on real world projects and barely have any knowledge of design pattern, architecture, clean code etc… I was young and naive, but had passion, so I started collecting data using scrappers I wrote in Python, organized them into a SQLite database, put a lot of example sentences and vocabulary on Firebase, then made an app using Flutter. I gradually added more features into the app after I released the first version, things like handwritten kanji recognition using Tensorflow lite and image text extraction using Google OCR api… I learned a lot, and by a lot, I mean a lot lot of stuff from making this app. The app is functioning just fine but the code is ugly as hell…for example attributes in data model classes are not final, doesn’t support dependency injection, etc….

    After I started working, I learned a lot about how to write clean code and I always wanted to refactor/rewrite the whole app which gonna take a lot of effort and time of course. But every time I sat down, opened the old codebase, I hesitated, thought about it and told myself that it wasn’t worth it then continued my life.

    do you have any personal project you always wanted to refactor/rewrite but still haven’t done or probably never will do so?

    if you are interested, you can come see and compare the code of the kanji app and a new app I wrote recently:

    https://github.com/Livinglist/Manji

  • timer-5

    A simple time-tracking tool

  • Several of my projects brought me to similar thoughts. I decided to spend my time on something else unless I use the project in question often and it would really benefit from an occasional refactoring and update. Right now, I've only got a single such project (https://github.com/Klaster1/timer-5), the readme links to several previous iterations. During rewrites, I focused on learning new techniques and tools, but surprisingly, a select few places remained relatively stable throughout the years - either I didn't learn anything new in the area or got it pretty good the first time.

  • 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