Photon I feel is a representation of my general ability to do software development, as it’s my biggest project. I’m disappointed in myself for how it’s been going so far suddenly.
I go through these switches in terms of my philosophy with software, and I guess right now I’m in the “it should do what it should well and expectedly, stop trying to do more and sacrifice the main functionality” phase.
I don’t like where Photon ended up, I added too many “”“features”“” that were half baked and just complicated the codebase and added more issue vectors. What people use the most: posts and commenting, have been suffering in their usability with random bugs and a non-seamless experience.
I’ve also been going much too slow on my promises for Svelte 5, and I can’t change much until I’ve finished that or I’ll get conflicts. I’ve been too lazy because of school and my life.
As soon as I finish the svelte 5 migration, I’m gonna change these things:
- No more features that are out of scope. The “translation”, link shortcuts, etc, are going to be removed or gutted.
- I’m going to switch a lot more systems to be component based, no more one-off buttons and inconsistent interfaces.
- This app will focus on Lemmy and follow it more closely if it’s not bad UX.
- I will switch to a lot more native systems instead of using cursed JavaScript powered ones. For example, I have to make the dock change via CSS instead of checking and changing dynamically in code.
- Most pages must work server side, and the entire app must be usable somewhat.
- I’m still conflicted on whether I should make photon run its authentication logic, etc server side or if that can stay client side.
I still am obligated to continue work on Photon, and I need to fulfill the promises I make. I hope Photon will be better in 2025.
I recently got back into working on Alexandrite after a little more than a year of no activity/updates, and I’ve been checking out Photon. I’m extremely impressed with what you’ve managed to accomplish while I’ve been gone! I’ve already taken inspiration from your work with some of my recent changes, and will likely copy more of your homework. Like others are saying, don’t sell yourself short! You’ve built one of the best Lemmy frontends out there and I’ve got a lot of catching up to do.
I’ve been too lazy because of school and my life.
You’re not “lazy”, you’re overwhelmed by your other priorities. There’s nothing wrong with needing to prioritize other things in your life. Maintaining a project like this is no small task and you should be proud of all the work you’ve done.
It sounds like you’re at a point where you’re improving a lot as a developer and starting to become dissatisfied with your older code. Every developer goes through this from time to time, it’s important that you focus on how much you’ve grown instead of tearing yourself down for not being “better” in the past. The only way to learn and improve is to try things and make mistakes. There’s no reason to view these past mistakes as some kind of shame, they’re just the steps that got you from where you were then to where you at now.
Dont short-sell yourself, the work you’ve done is amazing. The fact that you recognize feature creep and make plans to address it show a level of maturity (I’m assuming you’re a young dev as you mention school) that a lot of devs with 5x your experience could only dream of. I know a lot of devs well past their 30s and with 10+y of XP who keep adding shit and exceptions in the product because the business has a minor use case that impacts .01% of the customers once a year and never think of challenging the use case itself.
Feature creep curses most software products without a strong governance, at the expense of everything else. You can only choose two between a readable, maintainable codebase, performance and a fuckton of features. In the end, feature creeps makes everybody unhappy, because devs have to work with messy, fragile code and user experience becomes slow, bloated and overly complex. You’re right in recognizing that the first two are by far the most important.
You’re in the right state of mind, and you’re an amazing dev who created an amazing product.
Hey,
Don’t be too harsh on yourself, Photon is a nice software, used by a lot of people! Of course there are improvements, but you still did great!
I’m sorry you feel that way and aren’t happy with your work.
From my perspective as a user, it’s amazing and I’m using it every day. It’s such a joy to use and I couldn’t imagine going back to the Lemmy Website. Thank you for all you have done.