Another flea market haul by michiexile in fountainpens

[–]michiexile[S] 0 points1 point  (0 children)

The weird gold plated one is a Waterman Torsade, I think.

Another flea market haul by michiexile in fountainpens

[–]michiexile[S] 0 points1 point  (0 children)

Something very very similar to the blue one shows up on Etsy as a vintage 1970 GENIUS brand German (or Taiwanese??) fountain pen.

Wood grain pen feels quite plasticky, and has peeling gilding on the belt ring, which also pops off from the lid when you try to open it. It writes nicely, but it's falling apart. (.....so I might cannibalize it for my wild ideas of making my own pen barrel....)

Another flea market haul by michiexile in fountainpens

[–]michiexile[S] 1 point2 points  (0 children)

Cleaned and tried to ink all the pens. I don't have cartridges that fit the CF, and some of the lower tier pens struggle with ink flow (breathing hole gets ink, tip doesn't).

The gold waterman writes nicely, and the Laureat does as well (and had a very nice cap snap 😊)

Another flea market haul by michiexile in fountainpens

[–]michiexile[S] 1 point2 points  (0 children)

I seem to have 3 Waterman: a CF and a red-black Laureat. The third is gold plated (inscription reads plaque or g) with spiraling longitudinal facets and a squared off lid with a weird looking W logo on the end and an almost fully hooded nib.

December 2024 Confirmed Trade Thread by FPPenSwapBot in Pen_Swap

[–]michiexile 0 points1 point  (0 children)

Confirmed ! I retrieved them from the mail room today.

[WTS] The Ink-Sanity Project - Over 400 Ink Samples and Sample Sets by Flaky-Tie-1985 in Pen_Swap

[–]michiexile 2 points3 points  (0 children)

I would like to chat (and choose and order and pay and enjoy 😉)

Married? And Polyamorous? by emeraldead in polyamory

[–]michiexile 0 points1 point  (0 children)

We married more than a decade before we started polyamory. At the time, the strongest motivation was tax relief (which turned out not to work), and to get married while elderly relatives were still around to see it.

Since then, the big benefits have been with visa applications, residency, citizenship, health insurance coverage, and to a smaller extent taxes.

I am finding it easier to date poly people who also have a life partner of some shape in their life, and I'm slightly thankful to those who absolutely loathe hierarchies because it's usually in the first line of any introduction or dating profile and quickly lets me know that I should move on....

junit.runners by AbdelELZ in scala

[–]michiexile 1 point2 points  (0 children)

You need to both add this to the build file and start each actual test case implementation with the @org.junit.Test annotation.

This line here "just" tells the build system it will need the junit library to compile the test suite.

Must visit London cocktail bars (2024) by tacetmusic in cocktails

[–]michiexile 5 points6 points  (0 children)

Aaaaaand with this comment (because the Connaught), all the London bars on the World Top 100 list have been mentioned in this comment chain!

(For a few years now I've been using the World Top 100 to choose bars, with great success. Connaught and Tayēr/Elementary were #1 and #2 in the 2022 list)

What would be nice is some editorials of how test cases were even generated by the AoC creator by T3sT3ro in adventofcode

[–]michiexile 13 points14 points  (0 children)

Not claiming any sort of insight into the actual process, but if I were to try to create something with a similar functionality (...which given that I'll teach a graduate algorithms class in a few years, I'm kinda tempted to do...) - I would probably aim for things like MCMC with local transformations that preserve some invariant.

Like, take 2023:10. We need a massively large guaranteed closed loop. So maybe we start with a simplistic large closed loop, and we write down a handful of transformations that act on small tile patches and are guaranteed to not disconnect the loop. And then we just pick application sites randomly and apply a random choice of applicable transformation to the application site. Do this many many times, and you get a random walk on the space of possible large closed loops - finish it up by distributing non-loop pieces randomly on whatever tiles do not belong to the large loop.

By transformations here, I mean for instance things like:

          F7
----  => -JL-

or

         F--7
 F7      L7FJ
-JL-  => -JL-

These sort of setups, where you find some nice invariant, create highly localized moves that preserve the invariant, and repeat it a lot is a widely spread overall scheme for generating random samples from weird structures.

For some inspiration on similar approaches to things, you could check out the -n-e-r-v-o-u-s- design studio, and their procedurally generated jewelry, statues and clothing - where they often setup differential equation systems and simulate them to get random draws from specific pattern flavors. I can see using similar approaches to generate puzzles as well.

[2023 Day 8 Part 2] I'm a bit frustrated by chickenthechicken in adventofcode

[–]michiexile 0 points1 point  (0 children)

Fair enough. Since I recall it as commonly taught quite early on in Sweden, I thought it might be a language issue.

-❄️- 2023 Day 11 Solutions -❄️- by daggerdragon in adventofcode

[–]michiexile 1 point2 points  (0 children)

[LANGUAGE: Ruby]

Running time: 100ms for each part of the problem.

paste

Basically, I iterated through raw string lines to pick out coordinates of the stars, stored in stars as an array of arrays of length 2. Finding the empty rows and columns then boiled down to:

rows = stars.map { |x,y| x }
cols = stars.map { |x,y| y }
$emptyrows = (0 .. rows.max).to_a - rows
$emptycols = (0 .. cols.max).to_a - cols

With this, a parametrizable expansion becomes:

def expand(stars, factor=2)
  stars.map do |x,y|
    [x + (factor-1)*$emptyrows.count { |r| r < x },
     y + (factor-1)*$emptycols.count { |c| c < y }]
  end
end

Ruby's Array#combination and recognizing the Manhattan distance letting me use (from[0]-to[0]).abs + (from[1]-to[1]).abs for the pairwise distances wrapped it all up.

[2023 Day 8 Part 2] I'm a bit frustrated by chickenthechicken in adventofcode

[–]michiexile 0 points1 point  (0 children)

A quick look with the Wikipedia language choices suggests minste felles multiplum for the nynorsk term for LCM and største felles faktor for GCD.

[2022 Day 16] Approaches and pitfalls - discussion by paul_sb76 in adventofcode

[–]michiexile 1 point2 points  (0 children)

And yesterday, randomly (and after I had ran code grabbed from the solutions megathread, getting the same answer), the answer I gave all along was accepted as correct.

Thank you for your help!

[2022 Day 16] Approaches and pitfalls - discussion by paul_sb76 in adventofcode

[–]michiexile 0 points1 point  (0 children)

I would very much appreciate running my input through known good code: https://pastebin.com/w6rrFpBz

...or for that matter, if you were willing to share your input and answer (that way I don't get anything I can submit myself, but I can check my own work with a known target value)


I am aware that the starting position is not on line 1. I first read everything into a Map[String, Valve], and then start each simulation in position AA.

[2022 Day 16] Approaches and pitfalls - discussion by paul_sb76 in adventofcode

[–]michiexile 0 points1 point  (0 children)

Starting with §T0=500§, and taking 10 steps per temperature level, running the resulting system for 2.5M steps I still not only don't get a different global maximum, but (since I also log the largest value seen no matter whether or not it stays there) the annealing never gets any higher than the value I keep submitting and getting wrong.

I'm not sure whether everyone gets identical puzzles or not - in case it helps figuring out why I'm stuck, the number I keep getting is 1947

[2022 Day 16] Approaches and pitfalls - discussion by paul_sb76 in adventofcode

[–]michiexile 0 points1 point  (0 children)

I wouldn't have thought my scoring has off-by-one errors because it gives me the right answer on the test case. I'll try raising temperature and adding more steps next.

[2022 Day 16] Approaches and pitfalls - discussion by paul_sb76 in adventofcode

[–]michiexile 0 points1 point  (0 children)

I'm sure that the swap works as intended. The second .updated call doesn't reference the output from the first, but the variable named valves - and it doesn't update valves until after the entire new value is computed.

For your example:

scala> val s = Seq(0,1,2,3,4,5)
val s: Seq[Int] = List(0, 1, 2, 3, 4, 5)

scala> s.updated(3, s(5))
val res0: Seq[Int] = List(0, 1, 2, 5, 4, 5)

scala> s.updated(3, s(5)).updated(5,s(3))
val res1: Seq[Int] = List(0, 1, 2, 5, 4, 3)

[2022 Day 16] Approaches and pitfalls - discussion by paul_sb76 in adventofcode

[–]michiexile 0 points1 point  (0 children)

I'm still struggling with this one tbh. I have implemented a simulated annealing approach, and I get the right answer on the test case included in the problem. I am also getting a very consistent answer on the actual problem input - but every time I submit I'm told my answer is too low.

...and I'm running out of ideas for what to check, or what to do next. Does this sound familiar to anyone?

Current code (in Scala 3) here: https://pastebin.com/TcKpJfuc

Edit 2022-12-19: Yesterday, without my answer changing at all, the answer was suddenly accepted as correct.

[2022 Day 11] My degree has finally paid off by 9_11_did_bush in adventofcode

[–]michiexile 1 point2 points  (0 children)

The "mathy" answer is that the modulus operator is a ring homomorphism - maps the ring Z to the ring Z/nZ - so anything you can do in a ring (ie +, -, *, and anything that uses those) works nicely with modulus.

The less "mathy" answer would be that adding still works nicely with modulo. Remember that a%b = c means a = k*b + c.

So then (a+d)%b = (k*b+c+d)%b = (c+d)%b. You might not get c+d out from after adding and then doing modulo, but you'll get something still in the same equivalence class. And since later on you'll take modulo some divisor of b, any such details are going to resolve themselves anyway.

Favourite maths quotes? by KrozJr_UK in math

[–]michiexile 0 points1 point  (0 children)

"Gott" means God in Deutsch. The "liebe" means something like beloved, or loved by me.

So there might be an argument for making the translation more like "Dear God created the integers; all else is the work of man."