rootfs.ext2.gz

200 Followers
132 Following
95 Posts
He/him. #BlackLivesMatter Social Justice, Technology, PKU. Software Developer (Java/Javascript). British Pakistani, but mostly a 🥥. All views are my own.

Migrated from
@[email protected].

Mastodon:
@[email protected]
Pixelfed:
@[email protected]
Websitehttps://rootfsext2gz.com
Mastodonhttps://pixelfed.social/rootfs
Pixelfedhttps://pixelfed.social/rootfs
Huh, forgot this account existed...
@zeolith No worries - I did give a very small window into my world, and there wasn't an awful lot of context to be obtained from it. You do raise some very good points, and if it wasn't for you, I never would've taken a look and digged deeper into the validation class, so thank you for that!
@zeolith 🤣 It's fine

So I see your point, and after a bit of looking I can see there is a Validator interface which one of my team can look into overriding and ensuring that dates can be verified using something like LocalDate.parse and then catch the exception on failure and return bool.

However, our team have a massive JIRA backlog of much more pressing issues to deal with (especially me). Quite frankly, I find it baffling someone decide to spend about a day on this, but that's not up to me to pass judgement.

And this Regex issue deals with quite a small part of our system that - given the original code was 3 years ago and nobody has found faults with it (compared to other aspects of our system that is much more trouble-prone and needs attention, but the complexity is quite baffling), I think future me wouldn't be mad at past me for not focussing on fixing the Regex.
@zeolith I just found out through a code review - it's because the validator part of the system seems to mainly accepts Regex as validation.

I'm sure there is a way to beat it into submission but that's a problem for future me
😃
@zeolith I honestly have no idea. This was legacy code written a few years ago. I think if one of us stared at the code hard enough, we would all go "wtf".

Even writing it out loud I was like "... why not use something like a LocalDateTime/Instant/Date object to try and parse it, and if it throws an exception, just throw it out?" but I'm also sure the base system has some weird oddities with dates.
@fishidwardrobe Oh no no no. I think the code is still in development so it hasn't even been rolled out.
@fishidwardrobe It's fine, I've recovered from the developers self-imposed scope creep.
Recently a developer spottted a regex in our code base to detect if a string is a date, but noticed it was wrong. It was something like:

^20[0-9][0-9]-[0-9]+-[0-9]+$

which means dates like "2000-0000000-0000000" would be accepted, which is useless. I also mention how our unit tests that run against the function with this regex follows the happy path, but never really checks for the bad paths (including this one).

He then went to fix the regex, but then started to take into account things like days ending in 30/31, February ending in day 28, etc. TBH, it was very much overkill for what was needed (this was to effectively check if the string matched the "shape" of a date) but I was like "sure, why not".

He then turns around and says he has factored in leap years. At this point, I'm getting a little bit worried as he seems to be getting side-tracked. But whatever, it is done, he has got a little webpage that shows how the regex works, I say if you can export that as an image and annotate it, that would be great for future devs.

So I think that is pretty much the end of it, right? No more.

He then comes back later in the day and tells me he wants the regex to consider ROMAN FUCKING NUMERALS.

I-

SERIOUSLY.

WHO PUTS DATES INTO COMPUTERS IN THE FUCKING ROMAN NUMERAL FORMAT?!?!?!?

I try my best to kindly state that you can do that for fun and personal reasons, but I doubt our system will accept or even
present dates in roman numerals.

He seems incredibly sad about this.

I then ask him has he updated the unit tests to test for all these cases.

"What unit tests?"
Hey everyone,

Wow, what a wild ride, huh? From those first brainstorming sessions that sparked Calckey, to the epic journey that brings us here today, rebranding as Firefish - I've gotta say, I'm seriously blown away.

One year ago, Calckey was just my side project, after being a Misskey contributor for a while. But when y'all jumped on board, you made it so much more. You transformed it from my dream to our reality.

Firefish isn't just a cool name. It's everything we've been working towards. It's late nights, strong coffee, wild ideas, laughs, and even the occasional tears. It's our little space on the web where we're constantly pushing for the next big thing, and always looking out for one another.

So here we are, at the start of something new. Firefish is more than just a rebrand - it's a celebration. A celebration of you, me, and us. It's a tribute to the amazing community we've built together. Firefish is all of YOU.

We put together video that I feel really gets to the heart of Firefish. We wanted to show you guys what this whole journey has meant to us, and how excited we are to be taking this next step together.

Before I go, I just want to say a big, massive, thank you. Thank you to all the patrons who supported this. Thank you to
@blackspike for the absolutely stunning logo. Thank you @angelolz for the beautiful trailer. Thank you to our development team who's made some amazing strides. And thank you all for believing in this wild idea, thank you for your support, and thank you for being part of the coolest community on the web. You guys are the real backbone of all this.

Here's to the next chapter of our journey as Firefish. Exciting times ahead, and I can't wait to see where we go from here!

Posts will shortly follow with release notes, roadmaps, technical details, migration plans. I'll keep this thread updated.

Much love,
Kainoa

https://joinfirefish.org/

@firefish
Firefish

A fun, new, open way to experience social media

Firefish
Current mood