Tristan Brice Velloza Kildaire's avatar
Tristan Brice Velloza Kildaire
deavmi@deavmi.assigned.network
npub16c2f...xaj2
Computer programmer 🧑‍💻, wine drinker 🍷, opinion haver 🗣️, Roman Catholic ✝️ I have quite a keen interest in compilers, operating systems, routing and food. XMR: 43jx2gRMRxBauz2gwKTb9VJyUqKNg7wVPVVhQd32cgUA6WGhs2haJXAHfrdTzTKdYfeGEbDT8FtkF45sKMAEyasWRSyG5Sj BTC: bc1qkvduq9rwray2ymrvkrven3m8vsp9ah55f4hnc4 SimpleX: https://simplex.chat/contact#/?v=2-7&smp=smp%3A%2F%2Fhpq7_4gGJiilmz5Rf-CswuU5kZGkm_zOIooSw6yALRg%3D%40smp5.simplex.im%2FG0HWkVbLHEAC38X3oPTL6iOLZnJ0gC32%23%2F%3Fv%3D1-3%26dh%3DMCowBQYDK2VuAyEAc_KgxEP05S0o28ZO2FoaWC-fmRPWsjRUYNGTiE9N-y8%253D%26srv%3Djjbyvoemxysm7qxap7m5d5m35jzv5qq6gnlv7s4rsn7tdwwmuqciwpid.onion
Been working on Yggmail, a decentralized mail server that operates over the Yggdrasil network. The project is maintained by Neil Twigg and it actually works quite well. Seeing as this is the first time I am helping out on a Go project I decided to start with some simple things. Add support for automatic creation of Sent mailbox and the logic to move mail that is successfully sent from Outbox to Sent. I also wanted to add an onboarding email that appears in your inbox when you first start it up, so I added that as well. #yggmail #yggdrasil
Experimental code that gets tested every 20 minutes on the Jenkins server. Given how much development I have done the past week on the introduction of a new dynamic component configuration management engine, life cycle management and a new readings engine for Hydra - I need to have continuous testing. Good way to find deadlocks too, other than the two methods I do when I want to formally verify the system is good: 1. Draw an interaction graph to know who holds what locks (so far I have a roughly good idea that all locking is uni-directional) 2. There are actually tools for this (in the case you missed point 1), JConsole has deadlock detection (mutual exclusions are the ones I care to find) https://media.licdn.com/dms/image/v2/D4D22AQEUl6dumkojiw/feedshare-shrink_1280/B4DZsTcn6RJ8As-/0/1765557830501?e=1767225600&v=beta&t=fv7UVzuhKfcWkGzFKdqtlwnRz-U9piE4TbXMB6M3JCg
I went to university but clearly remember spending nights teaching myself stuff that I enjoyed (and failing modules because of it because it took up my time). There was maybe one course, on compilers that I really enjoyed, but everything else was maybe a little bit "eh". The networking course was underwhelming, I knew everything before taking it and it never taught anything practical IN networking either. It's hard for me to give an unbiased view but I partially have seen "both worlds", but now I get to see how others have done without it. View quoted note →
Spent roughly 3 weeks or so learning #Go Was easy actually, in retrospect. The more languages you learn (and by that I mean deeply, not surface level) the easier they become to pick up in a meaningful way.
Lesson learnt: Always space your seeds when planting. my dumb self thought I could just grow carrots like this, RIP I know how it will turn out atleast my turnips and beetroot are growing
Tested out the LillyGo T-Echo today and got great results once again (sim, em cima o meu telhado branco) The benefits of this unit are that it's: 1. Portable: The device comes with this enclosure and only the antenna is detachable (which is good if you want to attach custom ones with longer pigtails) 2. Has an e-ink display: Useful for seeing the updates and significantly more power efficient than a normal screen that other such devices have 3. Builtin-GPS: Your Meshtastic node itself can now broadcast its longitude and lattitude as part of its telemetry data #meshtastic #networking #lora
Learning Go is going well. Slice maxing, they have an interesting implementation. In D, for example, you cannot up-length a slice, only downsize it. To be honest that makes more sense. I understand the differences in the internal implementations too and how to use them, but thought it was interesting that Go did it differently. #D #go
Golang's `defer` is lackin'. Could have added scope guards, but added something that: 1. Only works with function calls? 2. Evaluates the arguments at defer line not deferral time 3. Yeah number 1 tbh Either way enjoying learning another language for fun, took some getting used to (the type system isn't that straight forward; and that's coming from someone who understood OCaml very well/enough). I think it may have been hyped a little but I want to learn it anyways; best way to see if the juice is as sweet as they say it is.
Decided to start learning Go, going to see how much I can learn just before the end of this month. Will probably be the fastest I have learnt a language. Going for a speedrun. #golang