lyse @lyse.isobeef.org

Follow

Block / Report User

If this user/feed is violating this Pod's (yarn.meff.me) community guidelines as set out in the Abuse Policy, please report them immediately!

You are also free to Unfollow or Mute this user or feed. Muting will also remove that user/feed's content from your view and you will no longer see content from that user/feed anywhere.

@lyse does not follow you (they may not see your replies!)

Recent Twts

Recent twts from lyse

(#ompze4q) @carsten@yarn.zn80.net Oh yeah, a long leave sounds awesome. Enjoy! How long will you be able to do just what you want to?

My workday didn’t went so smoothly for me. When implementing tests for a hotfix I refactored some test helpers and then found out that a mock structure was wrongly implemented for ages. After fixing it, three tests failed. Two could be solved by fixing the test setups. But the third test failure turned out to be even another severe bug in one of our production code functions. Good old nil pointer dereference panics. Somebody thought it’s a good idea to rewrite (nil, ErrNotFound) of type (*Data, error) to (nil, nil). After handling the returned error in the caller (in this case, there was no error anymore) nobody had the possible nil pointer on their radar. Bad design. To be reworked in the future after bringing the hotfix on its way.

I then also found another inconsistency of our storage implementations. When removing something that does not exist, some return nil, some ErrNotFound instead. Oh dear. This will cause some aftermath, I tell you.

At least all of those side quests didn’t happen in the wild yet.


#qfdb5kq

Today, I brought my camera along once again. Right at the beginning I saw my first slow worm of the day, the second one on my way home.

The tadpole pond was nearly empty. When approaching it, hundreds of not even fingernail sized frogs or toads were jumping towards me. I knew, that there are larger fish in the pond, but I’ve only heard them so far, never seen them. Until today. At least five large individuals about 30-40 centimeters in length. One might have been even half a meter long.

Banning dragonflies on film is nearly impossible. 11 is the “best” result, not only can you see its shadow, but also its head at the very top. When going home I saw six deer in total at the woodland margins. Spending two hours at the pond was absolutely worth it.


#ptj743q

(#nbt66eq) Thanks for your recommendation, @prologic@twtxt.net, I ended up going with it. Due to a parser panic I found a bug in one of my own iCalendar generators. The start date was announced as a DATE only, but in fact a complete timestamp including time and timezone was written instead (DTSTART;VALUE=DATE:20230106T000000Z rather than DTSTART;VALUE=DATE:20230106). This parser didn’t like that. To my defense, the validator did not report anything and approved of my ical file, though.


#5vzpgia

I knew that locale handling is very difficult, but this older article on language and locale matching in Go was an eye-opener. First, I completely forgot there are three-letter language codes and I never heard of script and sorting variants being part of language tags (was just aware of encodings). Also, never thought about the complex fallback calculation, e.g. that for Afrikaans Dutch would be a good candidate. Or instead of Norwegian Danish would be pretty good. Azerbaijani has three possible scripts, oh wow! So many new small things I learned today, very cool.


#7f4acja

(#rpofvqa) @carsten@yarn.zn80.net I only had a quick look and this is all in no particular order:

  1. I’m sure go fmt would add a space after the comment marker //.
  2. Go doc strings are supposed to start with the name of the variable etc (I’m not a fan of this, either).
  3. Sometimes log.SetPrefix(…) ends with a space, sometimes not.
  4. Some messages start capital, some don’t.
  5. Typo: occurred with double r.
  6. On lots of errors no appropriate status code is set.
  7. Some err can be scoped in the if like that: if err := foo(); err != nil { … }
  8. The <title>s could be improved.
  9. I have no idea about redis, but rclient.Set("user:"+username, …) looks suspicious to me and reminds me of SQL injections.
    10.
    go cookie, err := r.Cookie("session_token") if err != nil { if err == http.ErrNoCookie { … return } }
    doesn’t look complete. Also handle other errors? Or simplify without nil check.

#peei2mq

(#itqyskq) @movq@www.uninformativ.de Yup, very good show! In fact I watched it weeks ago, but didn’t reply back right away. Super great stories, absolutely hillarious! One thing I have to complain about is the audio, it’s not mixed very well. When they were yarning in between their reading sessions, they (esp. Jochen) moved away from the mic, making it harder to hear. Increasing the volume helped of course, until they leaned forward and then it became too loud.


#3dmfp5q