This is me behind Limoncello:

These (were and thus in a way) are my pets:

Compare the acknowledgement sections of my scholarly articles and find out what apparently matters most in my scholarly life:
I thank Luis Rosa for being a possibilist. I thank Greg Restall for his formidable ability to listen carefully and for his ideas. I thank Cristina Caroli Costantini for her mathematical intuitions and her kindness. I thank Jasper Lohmar, Nicola Thomaschewski, and all participants of the Brownbag Colloquium in Cologne for their helpful comments on earlier drafts of this paper. I thank Filippo Riscica Lizzio and Matteo Giannone for a wonderful time in St Andrews. And, as always, I thank the METRONOM association. Last but not least, I would like to express my sincere thanks to the anonymous referees of this journal. (Synthese)
I would especially like to thank Marvin Backes, Sven Bernecker, Linus Eyinck and all the participants of the Brownbag colloquium in Cologne for their help in discussing my ideas. I would also like to thank an anonymous referee of the present journal for his/her exceptionally helpful comments on previous drafts of this paper. Out of attachment, and as always, I thank the Metronom. (Social Epistemology)
I would like to thank Luis Rosa, Jasper Lohmar and Nicola Thomaschewski for their comments on earlier drafts of this paper. I would also like to thank the members of Metronom for their always refreshing company, beyond the scope of this essay. (Logica Universalis)
Out of attachment I thank the METRONOM. I would also like to thank the anonymous referee of the SAJL and all participants of SALOME 1 for their helpful contributions. (South American Journal of Logic)
–> You should visit it when you are in Cologne!
This is a program (Perfegg1.0) that calculates the perfect cooking time for soft-boiled eggs based on height, width and atmospheric pressure (soon I want to make it available as a standalone. I wrote it to make your breakfasts better):
import tkinterfrom tkinter import *import numpyroot=Tk()root.title("Perf-Egg 1.0")root.tk.call('tk', 'scaling', 1.25)root.minsize(200, 641)root.resizable(width=False, height=False)#image_path = PhotoImage(file=r"C:\Users\INSERT_PRIVATE_PATH_OF_IMAGE_HERE")#bg_image = tkinter.Label(root,image=image_path)#bg_image.place(relheight=1,relwidth=1)text_label=tkinter.Labelw = Label(root, text="1) Please insert egg-height in first field and egg-breadth in second field (mm).\n" "2) Insert altitude of your cooking location in left field (m).\n" "3) Click 'calculate egg data'.\n" "4) Egg should have room temperature (10°C+), water should boil when egg is added.\n" "5) Start timer and put egg in the water.\n" "6) Hold under cold running water for 10 sec. At room temperature, serve after about 1 min.\n", height=7, width=70,font=('Helvetica bold', 12),bg='white')w.pack(pady=1, side= TOP, anchor='w')def focus_next_widget(event): event.widget.tk_focusNext().focus() return("break")textBox=Text(root, height=1, width=2,font=('Helvetica bold', 20))textBox.bind("<Tab>", focus_next_widget)textBox.pack()textBox.insert(1.0,"54")textBox2=Text(root, height=1, width=2,font=('Helvetica bold', 20))textBox2.bind("<Tab>", focus_next_widget)textBox2.pack()textBox2.insert(1.0,"40")HeightBox=Text(root, height=1, width=7,font=('Helvetica bold', 15))HeightBox.bind("<Tab>", focus_next_widget)HeightBox.pack(anchor = 'nw')HeightBox.insert(1.0,"50")def calculate_egg(closeall): import matplotlib.pyplot as plt import numpy as np #CLOSE PROGRAM (all windows) IN LOOP WITH VARIABLE 'closeall' if closeall > 0: plt.close('all') exit() inputValue = textBox.get("1.0","end-1c") inputValue2 = textBox2.get("1.0", "end-1c") inputValue3 = HeightBox.get("1.0", "end-1c") L = int(inputValue) B = int(inputValue2) H = int(inputValue3) # COMPARE SECTION r = B / 2 # for S_sphere S_sphere = 4 * numpy.pi * r ** 2 # for comparison # RATIO Ratio = round(L / B, 2) # Ratio mm/mm # VOLUME V = (0.6057 - (0.0018 * B)) * L * B ** 2 # mm³ V_rounded = round(V) # mm³ V_ml = V / 1000 # ml V_ml_rounded = round(V_ml) # ml # SURFACE S = (3.155 - 0.0136 * L + 0.0115 * B) * L * B # mm² S_rounded = round(S) # mm² # RATIO CATEGORY Category = 0 if Ratio >= 1.38: # <1.38 = Schwelle lang Category = 1, "Long" if 1.22 < Ratio < 1.38: # Bereich normal Category = 0, "Normal" if Ratio <= 1.22: # > 1.22 = Schwelle breit Category = -1, "Round" #SIZE Size = V_ml_rounded SizeCategory= 'M' if Size > 58: SizeCategory = 'L' if 48 < Size <= 58: SizeCategory = 'M' if 44 < Size <= 48: SizeCategory = 'S' if Size <= 44: SizeCategory = 'XS' #COOKING TIME: import math Eggplotvolume1 = V_ml_rounded Eggplottime = math.sqrt(Eggplotvolume1 + 3) - 1 finaltime = Eggplottime if Category[0] > 0: finaltime = finaltime - 0.2 if Category [0] < 0: finaltime = finaltime + 0.2 if H > 50: finaltime2 = finaltime increase = H/100 print (increase) finaltime2 = finaltime + (finaltime2/100*increase) print("finaltime:",finaltime) print("finaltime+increase",finaltime2) finaltime = finaltime2 AFTERCOMMA = finaltime - int(finaltime) SECONDSTIME = 0.6*AFTERCOMMA FINALSECONDS = SECONDSTIME + int(finaltime) # OUTPUT ############## label = Label( root, text=("Volume:", V_ml_rounded,"__Form:", Category[1], "__Size:", SizeCategory, "__Altitude:", H, "__COOKING-TIME:", round(FINALSECONDS,2)), font=('Helvetica bold', 12),bg='seashell') label.pack() # GRAPH################################################## # create 1000 equally spaced points between -10 and 10 x = np.linspace(4, 8, 50) # calculate the y value for each element of the x vector y = x ** 2 + 2 * x - 2 fig, ax = plt.subplots() ax.plot(x, y) ax.legend(['= eggs with normal form at 50 m altitude. Green = your egg.']) # Mark Egg on Graph plt.plot(Eggplottime, Eggplotvolume1, 'x', [finaltime], Eggplotvolume1, 'x') plt.xlabel('Time', fontsize=15) plt.ylabel('Volume', fontsize=15) plt.show() ############################################################ return 1# ENDLOOPbuttonCommit=Button(root, fg= 'green' , height=1, width=15, text="Calculate egg data",font=('Helvetica bold', 15),bg='lawngreen', command=lambda: calculate_egg(0))buttonCommit.pack()buttonCommit2=Button(root, fg= 'red' ,height=1, width=15, text="Close and delete", font=('Helvetica bold', 15),bg='coral', command=lambda: calculate_egg(1))buttonCommit2.pack()############TIMERimport tkinter as tkfrom tkinter import ttk# Function to start the timerdef start_timer(): global remaining_time try: minutes = int(minutes_entry.get()) seconds = int(seconds_entry.get()) remaining_time = minutes * 60 + seconds update_timer() start_button.config(state="disabled") stop_button.config(state="active") except ValueError: pass# Function to update the timerdef update_timer(): global remaining_time if remaining_time > 0: minutes = remaining_time // 60 seconds = remaining_time % 60 timer_label.config(text=f"{minutes:02d}:{seconds:02d}") remaining_time -= 1 parent.after(1000, update_timer) # Update every 1000 milliseconds (1 second) else: timer_label.config(text="00:00") start_button.config(state="active") stop_button.config(state="disabled")# Function to stop the timerdef stop_timer(): global remaining_time remaining_time = 0 timer_label.config(text="00:00") start_button.config(state="active") stop_button.config(state="disabled")# Create the main windowparent = tk.Tk()parent.resizable(width=False, height=False)parent.lift()parent.attributes("-topmost", True)parent.title("Timer")# Create and place input fields for minutes and secondsminutes_label = tk.Label(parent, text="Minutes:")minutes_label.grid(row=0, column=0)minutes_entry = tk.Entry(parent)minutes_entry.grid(row=0, column=1)minutes_entry.insert(0, "0")seconds_label = tk.Label(parent, text="Seconds:")seconds_label.grid(row=1, column=0)seconds_entry = tk.Entry(parent)seconds_entry.grid(row=1, column=1)seconds_entry.insert(0, "0")# Create and place timer labeltimer_label = tk.Label(parent, text="00:00", font=("Helvetica", 48))timer_label.grid(row=2, columnspan=2)# Create and place start and stop buttonsstart_button = ttk.Button(parent, text="Start", command=start_timer)start_button.grid(row=3, column=0)stop_button = ttk.Button(parent, text="Stop", command=stop_timer, state="disabled")stop_button.grid(row=3, column=1)# Initialize the remaining timeremaining_time = 0# Start the Tkinter event loopmainloop()parent.mainloop()
(The popup-timer is not mine, all credit to whoever has written it. I found it on the www…)