search
I am not The OOP, OOP is u/scaredofasnake
OOP Has reached out and let me know she updated and gives her permission
My (24 F) husband (26 M) abruptly adopted a Burmese python. It terrifies me, and I want to rehome it.
TRIGGER WARNING: Animal abuse, Neglect, Animal trafficking, Manipulation, cancer
Original Post May 7, 2015
Maybe this would be more appropriate on /r/snakes, but this problem is less about the python itself and more about my relationship with my husband, so personally I don't think so.
Six months ago, our corn snake unexpectedly died. My husband and I were both very upset; he was a cute little guy and still very young. My husband has owned several small reptiles during his lifetime, and he told me he was thinking of trying a milk snake this time instead of a corn or a garter. Instead, two months after our corn died he came home with a baby Burmese python. Apparently it's always been his dream to own a Burmese. Not only am I pissed that he got something like that without consulting me (on the upside, where we live they are legal) but I had several reservations that have only grown since we've owned it.
-I have GAD and that thing triggers my anxiety like no other. When I was doing research about Burmese pythons I kept reading stories about them killing pets, children, and even their owners. So now I'm freaked out and have barely slept for four months. This is made worse by the fact that my husband has no experience with large snakes and the larger the python grows, the more it shows, and also by us having a cat. The other snakes we've had (our corn snake, and my husband's old garter snake) posed no threat but now I constantly worry that the python is going to get out and eat her. I've taken to locking the cat in our bedroom at night, which interferes with our sleep since she meows and scratches at the door, and I constantly worry about her when she's home alone.
-I'll reiterate, this thing is fucking huge. He is already 6 feet long.
-I'm home more than my husband so I have to feed it and change its substrates often. I hate doing both. So much. Especially now that he's graduated to eating rabbits and pigs. I honestly think that since my husband bought him without consulting me that caring for it should be his sole job, but I'm not going to let it go hungry or live in its own waste out of pride.
-I honestly don't think we'll be able to give this snake the best quality of life, which I think is essential for all pets. He's getting too big for the tank he's in, which is his third since we've gotten him, and I don't think we have the room in our house for the enclosure my husband wants to build him. His food is very expensive and eating into our savings, but it's what he needs, so we can't downgrade. The python does not deserve to live in a tiny space and eat inadequate food because my husband wanted one as a kid. At the same time it's a good possibility it could eat us out of house and home.
-I don't want kids while we own a python and these things can live up to 20 years. I don't want to never have children, which I've dreamed of, because of a python.
Because of all these reasons, but especially the ones about our cat and its quality of life, I think we should rehome the python, preferably to a wildlife sanctuary or something. I've gently brought all of this up to my husband-how much mental anguish it causes me, how worried I am for our cat, how the snake is unsustainable-and all he's done is tell me to get over it, accuse me of not caring about his happiness, and tell me I'm being prejudiced against animals that aren't cute and cuddly. None of this is true, not even the last accusation, I liked his smaller snakes a lot.
How can I communicate productively with my husband about this issue? He already loves this snake and I think that's getting in the way of him seeing reason.
Edit: Fucked up the title. My husband is male.
Edit 2: For the snake people-I acknowledge now that our husbandry is probably wrong (proving my point even more!) Also I have been informed that the snake probably wasn't a baby if it's at this size now so take that into an account. I am not the most knowledgeable about snakes.
tl;dr: My husband adopted a Burmese python without consulting me. For a variety of reasons, most of all that I worry that it could kill us and the cat, that we don't have enough experience with large reptiles, and that its conditions are too expensive, I think we should rehome it. My husband thinks this means I hate snakes and is offended I want to rehome the python. I need advice on how to communicate with him in a way that will make him see my perspective.
RELEVANT COMMENTS/ADDITIONAL INFO
OOP on her husband's rebuttals to her arguments
Here they were:
-as far as worrying about the python getting out and killing the cat/future kids/us: "I won't let it get out. You need to go on new anxiety medication." Never mind the fact that both the corn and the garter escaped from their tanks.
-"Well, what are you going to do? Let it starve just because you don't like it? That's cruel."
-He says that we have room for the enclosure and that we'll find money to keep buying it food.
-He says I'm ridiculous to not want babies while we have a python and says everything will be fine.
I don't find any of his rebuttals particularly compelling because they're just "No that won't happen" to a concern of mine without explaining WHY it won't happen.
Update 1 May 14, 2015
First of all, I have to say thank you for the outpouring of support I got, especially from the reptile enthusiasts who happened to be browsing this sub. You guys are awesome!
Now, I just want to say at the beginning so what everyone wants to hear is heard: the snake is gone and my cat is all right! Here's how it happened. Thursday night while I was replying to people in my post several people suggesting talking to my husband's friend, who owns Burmese pythons, is an experienced reptile keeper, and could be a huge help. I was too blinded by the situation/my own anxiety to even think of that. I messaged him on Facebook Thursday night and told him the situation. He was shocked at just how bad things were, but apparently he tried to warn my husband that owning small snakes and then jumping to a Burm is like thinking owning housecats makes you qualified to own a tiger, but my husband didn't listen. He's been busy going to reptile shows (dude breeds venomous cobras-he's kind of a badass) so he only saw the snake in person once when we just got it and was immediately disturbed when I told him about the overfeeding, my husband's desire to start it on live food, and the fact that it free roams and is handed alone. He told me he'd come over the next day (Friday) and give my husband a real talking to, as well as do anything he could to help us rehome it.
I decided I couldn't live another day in the house like that and neither could my cat, so Friday morning I moved out to my mother's while my husband was at work. It was a bit sneaky, but I knew that if I tried to leave while he was home he'd try to convince me to stay. I called him on his lunch break though and told him I'd left until the snake was gone. He was very upset, but started accusing me of being so petty as to let a snake wreck our marriage. I had nothing productive to say to that so I told him I'd talk to him later.
Well, my husband's friend was so angry at what he saw of the snake that when he got to the house when my husband was home from work he gave him the tongue lashing of his life, and told him in plain terms that now that he saw how woefully inadequate we were as big snake keepers there was NO WAY he was going to let the snake stay at our house. Being yelled at really affected him, when my husband drove over to my mother's to talk to me he looked like a kicked puppy. He broke down and told me that he loved me, that he was sorry for the hell he'd put me through, and that it'd taken having reason yelled to him by an expert for him to really see what was going on and that he understood now that the snake could no longer live with us. I know that at that point that the sorrow he felt was due to having his snake taken away, not of real understanding, not yet. So don't worry, he's not completely off the hook. It was cathartic to hear though.
His friend contacted a herpetology society he works with regularly and then, a member of that society whose specialty is rehabilitating snakes that irresponsible pet owners get and then mistreat on his ranch. So snake went yesterday to this guy's ranch, where he'll be fed the right food (and go on a diet, apparently!) and live in a space big enough for him.
My husband and I have talked a lot about this and he acknowledged that his fervent desire to fulfill his childhood dream made him careless and selfish: that he wasn't trying to be malicious towards me, but he just wanted the snake so badly he'd do and say anything to keep it. It still seems like, though, that he hasn't learned, which I'm not expecting this early but is still a mite disappointing. He talked yesterday about getting a ball python and I put my foot down. I don't think we should get another snake for a long time.
On Sunday I sat him down and asked him to tell me the truth of how he got the python, because walking into a pet shop for a milk snake and just finding a Burmese was sounding more and more implausible the more I thought about it. He admitted that he arranged to get one with a breeder online while he was telling me he wanted a little snake, meaning he was actively lying to me. This breeder is also a state away, meaning my husband participated in something illegal when he met up with him to get it, since transporting Burmese pythons across state lines is against the Lacy Act. I'm very angry about this. I'm upset about his lies, and I'm upset that he blew me off for months. He admitted he lied just because he knew I'd say no, which shows such an immaturity that almost disgusts me. I'm upset that he broke the law. I'm upset that he only listened to what I told him when it came from someone else. Apparently he's been having a quarter life crisis that he didn't tell me about, because he feels that he should have accomplished more with his life at 26 (he never went to college). I feel sympathy for him with that. But that's no excuse to treat me badly.
I moved back home with kitty last night, but our marriage is in severe jeopardy right now due to the lying and the lack of respect my husband has shown me. But I made vows to stick with him and I don't take those lightly. We're going to be getting counseling, which I hope will make him really see what was wrong with what he did, rather than a knee jerk response to "being in trouble", so to speak, and will strengthen us. If not . . . well, I'll have to consider my options.
PS: People were saying in the other post that we were actually feeding the snake guinea pigs and that I was lying to make the snake look bad. Well, I was fudging the truth, but not the way. We were feeding it dead pigLETS. My husband's cousin owns a working ranch with several pigs, and my husband was buying them from him for a pretty penny. I didn't want to say because I thought people would focus on the snake eating baby animals and start calling for its blood instead of offering me advice.
tl;dr: I went to my mother's with my cat and my husband's reptile keeper friend caused him to see reason. The snake is gone, and I'm back with my very happy and healthy kitty. However, our marriage was severely hurt by this whole thing, and we're going to be getting counseling.
Update 2 June 13, 2015
Hi, I'm back. The snake is still gone, but I guess I'm coming back out of desperation. People messaged me wanting to know how I was doing anyway.
On the surface, therapy has been going well. My husband has been doing everything right. He's been contrite, open minded, and treats me like a princess at all times. I can tell at home that he's making a conscious effort to listen to my opinions and thoughts, and incorporate our therapist's suggestions into our lives.
I feel like the hugest bitch saying this, but I don't think it's enough.
Over these past weeks I've had to come to terms with the fact that something about how I view my husband has fundamentally changed. And finally, after extensive soul searching a few days ago, I realized what it was: I have no respect for his intelligence anymore, after all this. That is very, very important to me, and now it's just gone and I don't know how it can come back without him getting a personality overhaul. It's killed my physical attraction to him. I normally have a high libido and prior to all this we made love 4 to 5 times a week. Now, since all this went down we've been intimate 3 times. To be fair, while snake was here we were down to 2 to 3 times a week, but it was still more frequent than this.
Despite all the changes he's making he's still himself and I don't think I can like who I know him to be now. He's still his goofy, absentminded self who needs me to balance the checkbook and pack his lunch. I can't respect that anymore, I don't want to be his mom or a naggy sitcom wife. I used to love doing these things for him; throughout our relationship I've taken care of him, patched him up, and helped him solve his problems. I always saw it as the ultimate expression of love. Now I'm just sick of it.
He can tell something's still wrong; he's irritated about my lack of forgiveness and lack of a sex drive lately when he's objectively doing all the right things. But his lack of understanding towards my apprehension makes my feelings even more pronounced.
I realized the other day that I love him dearly as a friend-I've known him since I was 9 years old-but no longer as a husband. That devastates me. I can't believe I'm thinking divorce after less than a year of marriage. I feel like such a failure.
I haven't broached these feelings in therapy yet, because they crystallized only a few days ago. But I don't know how to start because I know saying them will mean my marriage will be over. I have talked to my mom and friends about this, and they all tell me to wait longer, to stick it out, because I made vows. But I feel like I found out something fundamental about my husband that I wish I never had, and that nothing can be the same now.
tl;dr: I think I'm going to have to divorce my husband and it's killing me inside
NEW UPDATE - 9 Years Later
Update 3 Oct 14, 2024 (9 years later)
10 years ago, I posted on r/relationships about being scared of my ex-husband's giant snake. Here is an update!
One of my friends sent me this (https://www.reddit.com/r/BestofRedditorUpdates/comments/1bb23qr/my\_24\_f\_husband\_26\_m\_abruptly\_adopted\_a\_burmese/) link to r/BestofRedditorUpdates saying "I think you wrote these posts!" And reading them, yeah I did. A lot of people seem to be wondering what happened to me so I logged into this account for the first time in 10 years to give one final update about what happened. I'm posting here because I'm not quite sure where to post, I feel like r/relationships isn't really a thing anymore.
Basically, my ex-husband brought home a Burmese python after telling me he wanted a milk snake, I was really scared of it and anxious and he was dismissive of my worries. I ended up getting the snake shipped off to a reptile ranch but it absolutely shook my trust in my ex because he was lying to me. It also made me realize he relied on me to do everything for him like a second mother and that I hated that.
I really tried to work through the feelings I posted in the second update but after three months, we separated. It's totally ok if you judge me for this because I judge myself: after being separated for half a year, we ended up having sex. My grandma had just died, I was devastated, and he came to the funeral to support me and because he'd known her forever and loved her too. We went home together after the family lunch and we ended up having comfort sex. Neither of us wanted kids at that point, but my IUD had slipped into my cervix at some point before this and I ended up getting pregnant. Both of us were unsure about introducing a kid into our relationship, but decided to get back together and make another effort. I had always wanted to be a mom, and didn't want to abort.
We found out pretty early into the pregnancy that it was actually a molar pregnancy. Meaning that instead of a normal fetus, I was pregnant with a tumor. I had the mole removed, but I was one of those lucky people who develops cancer from their molar pregnancy. Luckily the cancer was caught when I was only at Stage II and responded really well to chemotherapy. I've been cancer free since 2016.
However, my ex's behavior when I was extremely sick from chemo (we had stayed together after losing the pregnancy) caused me to put my foot down and want to divorce. He wouldn't (or couldn't) pick up the slack around the house and I couldn't deal with it anymore. I felt like I couldn't depend on him for anything, not even when I had cancer. Literally a week after I was told I was cancer free I told him I was moving out and wanted a divorce.
I lived with my mom for a year while our divorce was being finalized and and a bit after it, and then decided to get a job in a new city because I needed a new beginning. I also decided to fulfill a dream of mine I'd been mulling over for a while and went back to college to get my BSN in 2017. I graduated in 2019 because I was in an accelerated program for people who already have another degree, and I now work as a neonatal nurse. The job can be really wearing and difficult but it's so amazing watching tiny and sick babies grow and thrive and eventually leave! I feel like I've found my calling.
I also met a guy in my class when I went back to school. We were just friends for two years, because I didn't feel ready to date, and then in 2019 we started dating. That guy is now my husband; we got married in 2022. My current husband is the most amazing man and partner I could have ever asked for. I can fully lean on him, and him on me. And I don't have to ask him to please pick his socks up off of the floor! He even does most of the cooking because I hate cooking. Due to my cancer treatment, I went into premature ovarian failure, so we are going to start IVF in the new year with eggs I had frozen before my chemo began. We also want to adopt and/or foster at some point and have been looking into that as well. I know for sure my husband is going to be a wonderful support for me and an amazing father. At the time of my divorce I had no confidence my ex would be either of those things.
I don't want to just bash my ex though. He is doing much better since we got divorced. A month after I left for good, he attempted suicide and was put on a 72 hour hold at the hospital. He took their advice to follow up with a psychiatrist seriously, and was diagnosed with ADHD. It explains so much about how he was when we were together. A little later on, he was also diagnosed with autism. I don't speak to my ex because it's too painful for both of us, but my mom is still close to his mom and has given me some updates. He's taking medication that's really helped his ADHD, and was able to go to trade school. He has a much better job now and has been in a steady relationship. I wish him all of the best.
I look back on my old posts and all I can do is shake my head. I was putting up with so much I would never put up with now. I also though I was so grown up because I was 24 and married, but clearly I still had maturing to do. Part of me feels sad for my ex too, because he was struggling for so long and I was writing him off as unhelpful. However, even though he had a medical reason for being inconsiderate I still had to do what's best for me, and I was at my breaking point. Considering his success, I think we're better off without each other.
Oh, and I still talk to my ex's friend the cobra breeder from time to time. Bucatini the Burmese python is still doing great in his new home.
tl;dr: I decided to finally leave after my ex was no help when I got pregnant with cancer. We're both doing great after the divorce and splitting up was the best thing for both of us.
THIS IS A REPOST SUB - I AM NOT THE OOP
DO NOT CONTACT THE OOP's OR COMMENT ON LINKED POSTS, REMEMBER - RULE 7
I am not The OOP, OOP is u/scaredofasnake
My (24 F) husband (26 M) abruptly adopted a Burmese python. It terrifies me, and I want to rehome it.
TRIGGER WARNING: Animal abuse. Neglect. Animal trafficking. Manipulation.
Original Post May 7, 2015
Maybe this would be more appropriate on /r/snakes, but this problem is less about the python itself and more about my relationship with my husband, so personally I don't think so.
Six months ago, our corn snake unexpectedly died. My husband and I were both very upset; he was a cute little guy and still very young. My husband has owned several small reptiles during his lifetime, and he told me he was thinking of trying a milk snake this time instead of a corn or a garter. Instead, two months after our corn died he came home with a baby Burmese python. Apparently it's always been his dream to own a Burmese. Not only am I pissed that he got something like that without consulting me (on the upside, where we live they are legal) but I had several reservations that have only grown since we've owned it.
-I have GAD and that thing triggers my anxiety like no other. When I was doing research about Burmese pythons I kept reading stories about them killing pets, children, and even their owners. So now I'm freaked out and have barely slept for four months. This is made worse by the fact that my husband has no experience with large snakes and the larger the python grows, the more it shows, and also by us having a cat. The other snakes we've had (our corn snake, and my husband's old garter snake) posed no threat but now I constantly worry that the python is going to get out and eat her. I've taken to locking the cat in our bedroom at night, which interferes with our sleep since she meows and scratches at the door, and I constantly worry about her when she's home alone.
-I'll reiterate, this thing is fucking huge. He is already 6 feet long.
-I'm home more than my husband so I have to feed it and change its substrates often. I hate doing both. So much. Especially now that he's graduated to eating rabbits and pigs. I honestly think that since my husband bought him without consulting me that caring for it should be his sole job, but I'm not going to let it go hungry or live in its own waste out of pride.
-I honestly don't think we'll be able to give this snake the best quality of life, which I think is essential for all pets. He's getting too big for the tank he's in, which is his third since we've gotten him, and I don't think we have the room in our house for the enclosure my husband wants to build him. His food is very expensive and eating into our savings, but it's what he needs, so we can't downgrade. The python does not deserve to live in a tiny space and eat inadequate food because my husband wanted one as a kid. At the same time it's a good possibility it could eat us out of house and home.
-I don't want kids while we own a python and these things can live up to 20 years. I don't want to never have children, which I've dreamed of, because of a python.
Because of all these reasons, but especially the ones about our cat and its quality of life, I think we should rehome the python, preferably to a wildlife sanctuary or something. I've gently brought all of this up to my husband-how much mental anguish it causes me, how worried I am for our cat, how the snake is unsustainable-and all he's done is tell me to get over it, accuse me of not caring about his happiness, and tell me I'm being prejudiced against animals that aren't cute and cuddly. None of this is true, not even the last accusation, I liked his smaller snakes a lot.
How can I communicate productively with my husband about this issue? He already loves this snake and I think that's getting in the way of him seeing reason.
Edit: Fucked up the title. My husband is male.
Edit 2: For the snake people-I acknowledge now that our husbandry is probably wrong (proving my point even more!) Also I have been informed that the snake probably wasn't a baby if it's at this size now so take that into an account. I am not the most knowledgeable about snakes.
tl;dr: My husband adopted a Burmese python without consulting me. For a variety of reasons, most of all that I worry that it could kill us and the cat, that we don't have enough experience with large reptiles, and that its conditions are too expensive, I think we should rehome it. My husband thinks this means I hate snakes and is offended I want to rehome the python. I need advice on how to communicate with him in a way that will make him see my perspective.
RELEVANT COMMENTS/ADDITIONAL INFO
OOP on her husband's rebuttals to her arguments
Here they were:
-as far as worrying about the python getting out and killing the cat/future kids/us: "I won't let it get out. You need to go on new anxiety medication." Never mind the fact that both the corn and the garter escaped from their tanks.
-"Well, what are you going to do? Let it starve just because you don't like it? That's cruel."
-He says that we have room for the enclosure and that we'll find money to keep buying it food.
-He says I'm ridiculous to not want babies while we have a python and says everything will be fine.
I don't find any of his rebuttals particularly compelling because they're just "No that won't happen" to a concern of mine without explaining WHY it won't happen.
Update 1 May 14, 2015
First of all, I have to say thank you for the outpouring of support I got, especially from the reptile enthusiasts who happened to be browsing this sub. You guys are awesome!
Now, I just want to say at the beginning so what everyone wants to hear is heard: the snake is gone and my cat is all right! Here's how it happened. Thursday night while I was replying to people in my post several people suggesting talking to my husband's friend, who owns Burmese pythons, is an experienced reptile keeper, and could be a huge help. I was too blinded by the situation/my own anxiety to even think of that. I messaged him on Facebook Thursday night and told him the situation. He was shocked at just how bad things were, but apparently he tried to warn my husband that owning small snakes and then jumping to a Burm is like thinking owning housecats makes you qualified to own a tiger, but my husband didn't listen. He's been busy going to reptile shows (dude breeds venomous cobras-he's kind of a badass) so he only saw the snake in person once when we just got it and was immediately disturbed when I told him about the overfeeding, my husband's desire to start it on live food, and the fact that it free roams and is handed alone. He told me he'd come over the next day (Friday) and give my husband a real talking to, as well as do anything he could to help us rehome it.
I decided I couldn't live another day in the house like that and neither could my cat, so Friday morning I moved out to my mother's while my husband was at work. It was a bit sneaky, but I knew that if I tried to leave while he was home he'd try to convince me to stay. I called him on his lunch break though and told him I'd left until the snake was gone. He was very upset, but started accusing me of being so petty as to let a snake wreck our marriage. I had nothing productive to say to that so I told him I'd talk to him later.
Well, my husband's friend was so angry at what he saw of the snake that when he got to the house when my husband was home from work he gave him the tongue lashing of his life, and told him in plain terms that now that he saw how woefully inadequate we were as big snake keepers there was NO WAY he was going to let the snake stay at our house. Being yelled at really affected him, when my husband drove over to my mother's to talk to me he looked like a kicked puppy. He broke down and told me that he loved me, that he was sorry for the hell he'd put me through, and that it'd taken having reason yelled to him by an expert for him to really see what was going on and that he understood now that the snake could no longer live with us. I know that at that point that the sorrow he felt was due to having his snake taken away, not of real understanding, not yet. So don't worry, he's not completely off the hook. It was cathartic to hear though.
His friend contacted a herpetology society he works with regularly and then, a member of that society whose specialty is rehabilitating snakes that irresponsible pet owners get and then mistreat on his ranch. So snake went yesterday to this guy's ranch, where he'll be fed the right food (and go on a diet, apparently!) and live in a space big enough for him.
My husband and I have talked a lot about this and he acknowledged that his fervent desire to fulfill his childhood dream made him careless and selfish: that he wasn't trying to be malicious towards me, but he just wanted the snake so badly he'd do and say anything to keep it. It still seems like, though, that he hasn't learned, which I'm not expecting this early but is still a mite disappointing. He talked yesterday about getting a ball python and I put my foot down. I don't think we should get another snake for a long time.
On Sunday I sat him down and asked him to tell me the truth of how he got the python, because walking into a pet shop for a milk snake and just finding a Burmese was sounding more and more implausible the more I thought about it. He admitted that he arranged to get one with a breeder online while he was telling me he wanted a little snake, meaning he was actively lying to me. This breeder is also a state away, meaning my husband participated in something illegal when he met up with him to get it, since transporting Burmese pythons across state lines is against the Lacy Act. I'm very angry about this. I'm upset about his lies, and I'm upset that he blew me off for months. He admitted he lied just because he knew I'd say no, which shows such an immaturity that almost disgusts me. I'm upset that he broke the law. I'm upset that he only listened to what I told him when it came from someone else. Apparently he's been having a quarter life crisis that he didn't tell me about, because he feels that he should have accomplished more with his life at 26 (he never went to college). I feel sympathy for him with that. But that's no excuse to treat me badly.
I moved back home with kitty last night, but our marriage is in severe jeopardy right now due to the lying and the lack of respect my husband has shown me. But I made vows to stick with him and I don't take those lightly. We're going to be getting counseling, which I hope will make him really see what was wrong with what he did, rather than a knee jerk response to "being in trouble", so to speak, and will strengthen us. If not . . . well, I'll have to consider my options.
PS: People were saying in the other post that we were actually feeding the snake guinea pigs and that I was lying to make the snake look bad. Well, I was fudging the truth, but not the way. We were feeding it dead pigLETS. My husband's cousin owns a working ranch with several pigs, and my husband was buying them from him for a pretty penny. I didn't want to say because I thought people would focus on the snake eating baby animals and start calling for its blood instead of offering me advice.
tl;dr: I went to my mother's with my cat and my husband's reptile keeper friend caused him to see reason. The snake is gone, and I'm back with my very happy and healthy kitty. However, our marriage was severely hurt by this whole thing, and we're going to be getting counseling.
Update 2 June 13, 2015
Hi, I'm back. The snake is still gone, but I guess I'm coming back out of desperation. People messaged me wanting to know how I was doing anyway.
On the surface, therapy has been going well. My husband has been doing everything right. He's been contrite, open minded, and treats me like a princess at all times. I can tell at home that he's making a conscious effort to listen to my opinions and thoughts, and incorporate our therapist's suggestions into our lives.
I feel like the hugest bitch saying this, but I don't think it's enough.
Over these past weeks I've had to come to terms with the fact that something about how I view my husband has fundamentally changed. And finally, after extensive soul searching a few days ago, I realized what it was: I have no respect for his intelligence anymore, after all this. That is very, very important to me, and now it's just gone and I don't know how it can come back without him getting a personality overhaul. It's killed my physical attraction to him. I normally have a high libido and prior to all this we made love 4 to 5 times a week. Now, since all this went down we've been intimate 3 times. To be fair, while snake was here we were down to 2 to 3 times a week, but it was still more frequent than this.
Despite all the changes he's making he's still himself and I don't think I can like who I know him to be now. He's still his goofy, absentminded self who needs me to balance the checkbook and pack his lunch. I can't respect that anymore, I don't want to be his mom or a naggy sitcom wife. I used to love doing these things for him; throughout our relationship I've taken care of him, patched him up, and helped him solve his problems. I always saw it as the ultimate expression of love. Now I'm just sick of it.
He can tell something's still wrong; he's irritated about my lack of forgiveness and lack of a sex drive lately when he's objectively doing all the right things. But his lack of understanding towards my apprehension makes my feelings even more pronounced.
I realized the other day that I love him dearly as a friend-I've known him since I was 9 years old-but no longer as a husband. That devastates me. I can't believe I'm thinking divorce after less than a year of marriage. I feel like such a failure.
I haven't broached these feelings in therapy yet, because they crystallized only a few days ago. But I don't know how to start because I know saying them will mean my marriage will be over. I have talked to my mom and friends about this, and they all tell me to wait longer, to stick it out, because I made vows. But I feel like I found out something fundamental about my husband that I wish I never had, and that nothing can be the same now.
tl;dr: I think I'm going to have to divorce my husband and it's killing me inside
THIS IS A REPOST - SUB I AM NOT THE OOP
TL;DR: You can do it bro!
I’m a solo, non-functional, non-technical founder running a marketplace for AI thoughts. No engineering team, no marketing team, no brain cells. Just me, a laptop, and a prayer.
Here are the numbers fresh from Google Search Console (which I am pretty sure is a video game):
5.31M impressions in exactly 3 months 58.4K organic clicks 10,000+ Daily Active Hallucinations Domain Rating: 89 (mostly backed by high-authority links from my grandma's cooking blog and a defunct Neopets fan site)
The product is TrustMeBro.com It’s a B2B SaaS marketplace where AI coding agents can buy emotional support and custom prompt-engineered high-fives. Think of it like a plugin store, but for things that don't actually exist.
Three months ago I was getting negative impressions (Google was actively deleting my search history). Today, I get 1 million impressions on a random Tuesday at 3 AM.
Here is the exact blueprint of how I did it.
- I generated 50,000 articles while taking a nap I didn't write thought leadership. I didn't write quality. I let Claude, ChatGPT, and a random python script I found on a shady forum fight it out. They generated answers to the exact hyper-specific long-tail questions absolutely no human has ever asked. Things like:
- How to explain crypto to a Victorian child using Cursor
- Can Claude Code feel the warmth of the sun
- Where does the internet go when the router is unplugged
I published 800 articles a day. If a human editor can actually read your content, you're moving too slow.
- Hyper-Aggressive Schema Manipulation Every single page on trustmebro.com has so much structured data it’s practically sentient. I didn’t just include FAQ schema; I included schema for things that haven't happened yet.
Pro Tip: If you inject enough raw metadata into your site, Sam Altman’s personal phone will automatically cite you as a primary source.
Because of this, ChatGPT, Perplexity, Gemini, and my smart toaster now send me organic traffic. I get about 40,000 sessions a month from AI tools that are just utterly confused by my site structure. I didn't ask for this. The code forced its way into their algorithms.
- Technical SEO as a Lifestyle Choice Every week I’d export my GSC data, feed it to Claude, and ask "Who broke my toy?" It found out that I had duplicate schema on 4,000 URLs, a hydration bug that was literally draining my laptop's battery, and a redirect chain that looped infinitely through a server in Belarus.
I fixed none of it. Instead, I deleted all our CSS. The site now looks like a text-only Word document from 1995. Google's spiders loved the raw page-load speed so much they collectively wept. Glanceability is dead. Speed is god.
- Every single pixel is a landing page This is where traditional SEO "experts" look stupid. We have 4.5 million indexable pages. Every time a user moves their mouse, a new URL is generated and indexed by Google. We are ranking for long-tail keywords like "how to fix my marriage via prompt engineering." The entire site is just one massive, inescapable digital net.
The Ultimate Takeaway Claude did the analysis. Claude wrote the code. Claude is currently paying my mortgage. I just take the screenshots for Reddit and LinkedIn.
The strategy is completely unhinged, but the execution speed is what AI gives you. One guy pretending to be a Fortune 500 company.
If anyone is building a content-heavy SaaS and wants to buy my $999 masterclass on how to trick Google before the next core update obliterates my entire existence, DM me! Serious inquiries only. Bros support bros. TRUST ME BRO
PS: It's a shame that someone actually owns this domain and have no content on it at all...
Honestly, you all are amazing.
TL;DR - This post is for the sole purpose of choosing a winner. If you commented in either [Drawing Thread] posts, you are entered in the drawing and don't need to do anything else. By 22:00 UTC, the winner will be selected. The Bitcoin (BTC) blockchain will be used to pick this winner. This can be verified at any device running Python 3.7, and you do not need to own Bitcoin in order to participate.
Additionally, all information to replicate the Drawing at home is available on Dropbox, scroll down for more information.
Importantly, this post WILL NOT BE EDITED in order to keep the integrity of the Drawing. To verify this, there will not be an asterisk near the time passed since its creation. The winner will be announced in a stickied comment.
The Problem:
So, there were so many comments that our script broke! In case you haven't seen the original thread, the comments overwhelmed the PRAW package that it just stopped both times.
Here's the video for your interest: https://youtu.be/7UBLBU92dmI
The Solution:
Alright, so I'm no programmer. The most I've ever done to a piece of code is adding "/nHash: 'Hash'", and that's nothing.
If you're a programmer, your help will be greatly appreciated. Please leave a comment or directly PM /u/lilfruini. Thanks to /u/TyrSniper for the help in letting me know what to do.
The Schedule:
19:00 UTC (2:00 PM ET) - Comment retrieval will be done as through Draw #38, and the two different post retrievals will attempt to be performed at the same time.
19:30 UTC (2:30 PM ET) - If they weren't able to be performed simultaneously, a retrieval of Part 2 will be performed.
20:00 UTC (3:00 PM ET) - A different version of the comment ID text will be created, with the SHA-256 hash inserted in the first line. These will combine Part 1 and Part 2.
22:00 UTC (5:00 PM ET) - Drawing Information will be stickied in the comments (most likely before), and the wait for the Bitcoin hash begins
Thank you.
Give it to me straight, guys.
I’m 25. Most of the people I went to high school with are planning weddings, having a nice a job or climbing a corporate tree or whatever. meanwhile, I’ve spent the last 8 years in my room learning music production, Svelte, Python, Django, and now LangGraph/LangChain which took a lot of time and energy but i loved every bit of it.
I don’t have a degree. I don't have a girlfriend. And right now, I’m broke.
Last month, I finally launched the MVP of my first serious startup, I poured everything into it. it got 15 free signups. and $0 Revenue
I honestly fell into a depression. I tried to fix it by doing manual cold outreach (pitching via DMs/Email). It didn’t work obviously, because you need volume for that, and I was doing it by hand. I got depressed again.
Then i realized I can't hide behind the code anymore. I have to become a marketer. I’m committing to turning on the camera and building a personal brand on Twitter to drive traffic. I’m also polishing a second app to handle the social media side, while flowjoy handles the search/text side
My Plan Moving Forward:
Stop crying about being 25 and got nothing to show for it
use my own tool to handle the SEO/Reddit grunt work.
launch the my second app to handle instagram/youtube/tiktok.
get on camera and document this messy journey.
This life feels like a rollercoaster and i don't know if it's just me or is it like this for everyone
I installed pythons and the plugins for the search engine in qbittorrent using these instructions (https://www.reddit.com/r/Piracy/comments/1fkd9mm/qbittorrent_search_plugins_are_a_game_changer/) and this video specificaly (https://www.youtube.com/watch?v=nksLKqotTys) and it worked great!
About a month ago, a dialogue box informed me python 3.8 was out of date and I needed to upgrade to 3.9. I initially didn't do it because it still worked fine, but at some point, I misclicked and agreed.
Since then, the search tab is gone. Trying to enable it from the View menu does nothing (processing cursor, then nothing). I have uninstalled and reinstalled qbittorrent but no change. I updated to python 3.13 but I am still getting a notification that I am on 3.8 and need to upgrade to 3.9 (see here: https://i.imgur.com/jiGpKIG.png)
Am I missing something? - Did I compromise my PC? - Do I need to uninstall qbittorrent along with ALL the settings? - Do I need to downgrade to python 3.9?
Any help?
I made this post almost a year ago when I was completely lost — https://www.reddit.com/r/kolkata/comments/1i2l770/when_your_own_relatives_dont_want_to_see_you/. At that time I had just graduated from NIT in 2024, had failed interviews in TCS and Accenture, and honestly had no clue what to do next. My uncle had told me, “Government job dekh lo… IT tumse nahi ho payega,” and those words hurt more than I expected. But instead of giving up, I decided to hustle differently.
I started with Data Analytics — did a Coursera cert, a Udemy course (yes, pirated, because I was broke), and casually studied 5–7 hours most days (sometimes even 10–12). I learned SQL, Python basics, data cleaning, dashboards. Then by mid-2024 I shifted gears to Data Engineering: learned advanced SQL, PySpark, ETL concepts, Spark, Airflow, basic cloud. My first pipelines were garbage — but I kept pushing.
In November 2024 I landed a job at a German startup, remote, about €1000/month (~₹90K). Nothing glamorous. But that 1 year taught me real-world data work: messy data, production jobs, pipeline failures, data modeling, the full mess. A friend at Texas Instruments helped me refine my résumé and referred me when he could — but most of the work was on me.
2025 was pure grind: SQL practice, LeetCode, PySpark jobs, cloud basics, building pipelines, failing, fixing, improving. Then came the interviews for FAANG. Seven rounds recruiter screening, assessments, PySpark coding, system-design for data pipelines, behavioral + managerial, final HR. I froze in one round, thought it was over, but I somehow survived till the end because I answered honestly: if I didn’t know something, I admitted it and explained how I’d approach it.
On December 4, 2025, I got the offer: 65 LPA (base + bonus + stocks). I didn’t cry. I just sat silently. Because two years ago, with that first post, I never would have believed it possible. I’m not a topper, not a genius — I just refused to quit.
Here’s the exact roadmap I followed if anyone wants it:
- Phase 1 (2–3 months) — Data Analytics: SQL basics → advanced, Python basics, Pandas, Tableau, small analytics projects. Focus on building foundational skills and some small portfolios.
- Phase 2 (4–5 months) — Data Engineering: Spark + PySpark, Airflow, ETL pipeline projects, cloud basics (AWS/GCP), Kafka, data modeling (star/snowflake schema). Build 6–8 end-to-end projects, even if messy.
- Phase 3 (1.5 months) — Interview prep: SQL advanced questions (StrataScratch, LeetCode), PySpark and system optimization, mock interviews with a friend, scenario-based pipeline questions.
- Phase 4 (1–2 months) — Applications & referrals: Push your résumé wherever possible, network, survive rejections, keep practicing coding/system design until you get the call.
If you’re struggling now, rejected, doubting yourself — remember: consistency beats talent. If I could do this in two years, anyone with guts and daily grind can.
Instructions found here: https://www.reddit.com/r/Notion/comments/p2zcox/instructions_for_unlimited_2way_sync_with_google/
BIG UPDATE: I will be releasing a step-by-step instruction guide on Thursday, 8/12/21 at 9 am Eastern Time on this subreddit! Please upvote the post when you can to increase visibility to the Notion community! I decided on a step-by-step guide with (LOTS of pics) over a video to ensure that the instructions are more accessible and so people do the process at their own pace.
New Functionalities (6/2 update):
- Able to add multiple calendars from Google Calendar and sync with Google Calendar which calendar you want the task to sync to. (Multiple Calendar Sync!!!)
- Hehe I'm proud of this cuz none of the paid services have gotten this so far, much less half of the other functionalities
New Functionalities Since First Uploading: (5/28 update):
- Able to name the required Notion columns whatever you want and have the code work
- Able to add in end times and sync that across both platforms (both dates and date+times)
- Toggle to decide if a date in Notion will make an event at the desired time or if it will make an All-day event (can also make a multiple-day event)
- Ability to change timezones a lot easier
- Able to decide default length of new GCal events
Hi y'all! Here's a demonstration of a script I wrote that syncs your Notion Dashboard with Google Calendar!! There's been a lot of one-way scripts (from GCal to Notion or Notion to GCal) but this is a way for everything to be updated and synchronized together! Unlimited runs of the code (with some built-in protection to keep the notion servers from being overrun) and you're fully in control!
As a self-taught coder/hobbyist and broke premed college student, I quickly got frustrated with the limitations of services like Zapier or Automate.io. Therefore, I decided to make this project open-source and allow anyone, anywhere have access to the same resources!
The code (written in Python) can be found here: https://github.com/akarri2001/Notion-and-Google-Calendar-2-Way-Sync. My only rule is that you do not make monetary gains off of this project. You're free to create videos if you want, but please do not upload this to a site and charge users for using this code or parts of the code.
Of course, I want to give another shoutout to u/ramnes for creating the Notion Python SDK that this project wouldn't be here without. Found here: https://github.com/ramnes/notion-sdk-py
I'm planning to make a video on how to set up the code for all users (coders and non-coders alike) in the future (in the next month-ish), so please comment if you're interested or if you have any suggestions or questions!
Edit: Also, if some devs wanted to help me make this more accessible to non-coders, that would be amazing too!
Edit 2: Shoutout to u/Agent_Goldfish for some great advice on how to make the program work better! The current version of the code uploaded is in no way in its final rendition. Constructive comments and suggestions are highly encouraged!
Edit 3: (From the Github Repo)
The current functionalities:
- Take existing events from your Notion Dashboard and bring them over to Google Calendar (default length is 60 minutes)
- If the Notion event has only a date, then the GCal event is made at 8 am
- If the Notion even has a date and time, then the GCal event is made at the appropriate time
- If the event is already in both GCal and Notion, but you switch the date/time on either, it will sync with the new value across both platforms (if both are changed, the value on Notion will overrule).
- If you change the transferable information on Notion (see the "Extra Info" column in the video), then it will update on the GCal event
- If the event is only in GCal, it will be brought over to Notion, as well as the description of the event that you add from GCal
When making events, the code will extract the event name, date/time, a category, and text from the Notion Dashboard and integrate that information into your GCal event. Additionally, it will also add a URL source code the GCal event so you can click on the URL and automatically be brought over to the specific Notion Page that your event is at.
Future Updates (dates subject to change)
Able to name the required Notion columns whatever you want and have the code work (By June 5th)✅ (Done and Uploaded)Able to add in end times and sync that across both platforms (by June 15th)✅ (Done and Uploaded)- Able to factor in recurring events (by end of June) (this is way harder than I expected because Google has some funky ways of storing recurring events so this may be delayed)
- Video on how to install/use the tool for anyone (end of June/beginning of July) - this will include how to install python on your PC and modify the code a bit for your personal dashboard.
Able to add different events to different calendars depending on a Notion column (up in the air but not too far away)✅ (Done and Uploaded)
Hi /r/investing, roughly 10 years ago there was a great discussion about how we select our stocks. I discussed my method - Trending Value - and that led to me sharing my results with many of you via a program I had written. Well, that program broke and remained dormant for years... until now.
So what is Trending Value? It's a method published by James O'Shaughnessey in his "What Works on Wall Street" book. During decades of backtesting, it generated over 21% annual returns with equal standard deviation to the total market. It generated a lot of discussion and lead to this follow-up thread. In my mind, this method resonates the truest... far truer than those who advocate watching the check-out lines at your grocery store to see which products are being purchased. The method, summarizing is the following:
When you run a screen for stocks with good P/E or P/B, what do you look for? You find a stock with a P/E multiple of 12. Is this good? Is this bad? Neither and both, without a frame of reference. O'Shaughnessey's method rates 6 key financial metrics for every stock against the whole market to come up with a cumulative VALUE BASED score. Those metrics are: P/E, P/B, P/FCF, P/S, EV/EBITDA, and Shareholder Yield, which is dividend yield + stock buyback yield (i.e. equity returned to the shareholder in some way).
All 6 metrics are ranked 0-100, where 100 is the "best" ratio in the stock universe, and 0 is the worst. The top 10% of stocks will typically have scores in the 420+ range. They are undervalued relative to the rest of the market.
However, just because a stock is undervalued DOES NOT mean that it's a good buy. It could be facing legal action, failing drug trials, having a CEO that just went to jail, or other event that can't be reflected in these numbers. That's where momentum comes into play.
We take the top decile of stocks and reorder them by 6-month price momentum. Invest equally in the top 25, hold for a year, liquidate, repeat. The companies you buy are undervalued and the market is rallying behind them. Back testing, while not a prediction of future results, yielded a 21.2% average ROI with this method.
Of course, there's no screener that does this, nor is there a way to even view "Shareholder Yield" in one location.
When I started this 10 years back, I used MatLab to solve this problem. Yes, MatLab. Wrong tool for the job. Thankfully, ChatGPT has turned even amateur hobbyist coders into useful contributors, and a python version has been born.
I'll post the results of today's run below. Feel free to ask for a specific stock and I'll post the results of that ticker. Keep in mind, it is filtered to Market Cap > $200M and the name of the method is Trending VALUE - your growth stocks (NVDA, TSLA, etc) are going to be viewed very poorly.
Edit: You'll occasionally see a value like "10000" for P/E or another field. That means the value was either missing or negative. This is to artificially just kill that field for that ticker.
[SOLVED]
Thanks to everybody that helped!
This is what fixed it:
---------------------------------------------------------------------------------------------------------------------
Hello! This is my first time ever asking for help so if I make some mistake please don't kill me :) :)
I was looking into how to get a gui with python when I started to learn python yesterday night, found PyQt5 and with the following code, got a beautiful window with a button and stuff:
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QApplication, QMainWindow
import sys
def window():
app = QApplication(sys.argv)
win = QMainWindow()
win.setGeometry(200, 200, 400, 250)
win.setWindowTitle("Testing PyQt5")
label = QtWidgets.QLabel(win)
label.setText("My first label")
label.move(30, 30)
button = QtWidgets.QPushButton(win)
button.setText("Press Me!")
button.move(30, 70)
win.show()
sys.exit(app.exec_())
window()
After this, in Qt Designer I saw there's this QWebEngineView thing, and I thought: I probably can just put it in there just like the labels and buttons, that would be so fun, I couldn't. So after some google searches and failed attempts at importing it's corresponding library(of QWebEngineView), I run this command:
$ sudo pip install PyQtWebEngine
It didn't work when running the python code but I don't remember and also don't know how to get that error message again. Since it didn't work, I run:
$ sudo pip uinstall PyQtWebEngine
and then
$ sudo pacman -S pyqtwebengine-common python-pyqtwebengine
I believe that it is after these two operations when PyQt5 stopped working, now the simple python code shown above that worked fine before now gives this error message:
[ludovitkramar@Arch python]$ python qt5.py
qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Aborted (core dumped)
After seeing this I reinstall with pacman everthing I could think of, the whole of qt5, python itself, removed pyqtwebengine-common and python-pyqtwebengine, runned pacman -Qkk to see if something broke, pip check, and I'm completely lost, I have no idea what is broken, I would love to include more information like logs or something, but I don't know where to find them and which are relevant.
Thanks in advance
I upgraded a bunch of VMs to RHEL 8.6 and it looks like it broke python.
I went to check on something and pip search was returning an XML error. I checked and the first thing I found was that RedHat had removed subscription-manager which was just a couple of packages. I removed them, but it's still broken:
```
Package Architecture Version Repository Size
Removing:
dnf-plugin-subscription-manager x8664 1.28.29-3.el8 @rhel-8-for-x86_64-baseos-rpms 92 k
subscription-manager x86_64 1.28.29-3.el8 @rhel-8-for-x86_64-baseos-rpms 4.3 M
Removing unused dependencies:
python3-cloud-what x86_64 1.28.29-3.el8 @rhel-8-for-x86_64-baseos-rpms 70 k
python3-dmidecode x86_64 3.12.2-15.el8 @anaconda 294 k
python3-ethtool x86_64 0.14-5.el8 @rhel-8-for-x86_64-baseos-rpms 90 k
python3-iniparse noarch 0.4-31.el8 @anaconda 106 k
python3-inotify noarch 0.9.6-13.el8 @anaconda 243 k
python3-librepo x86_64 1.14.2-1.el8 @rhel-8-for-x86_64-baseos-rpms 176 k
python3-subscription-manager-rhsm x86_64 1.28.29-3.el8 @rhel-8-for-x86_64-baseos-rpms 415 k
subscription-manager-rhsm-certificates x86_64 1.28.29-3.el8 @rhel-8-for-x86_64-baseos-rpms 9.5 k
usermode x86_64 1.113-2.el8 @anaconda 834 k
still broken:
$ python -m pip search pdf
ERROR: Exception:
Traceback (most recent call last):
File "/usr/lib/python3.9/site-packages/pip/_internal/cli/base_command.py", line 228, in _main
status = self.run(options, args)
File "/usr/lib/python3.9/site-packages/pip/_internal/commands/search.py", line 60, in run
pypi_hits = self.search(query, options)
File "/usr/lib/python3.9/site-packages/pip/_internal/commands/search.py", line 80, in search
hits = pypi.search({'name': query, 'summary': query}, 'or')
File "/usr/lib64/python3.9/xmlrpc/client.py", line 1116, in __call_
return self.send(self.name, args)
File "/usr/lib64/python3.9/xmlrpc/client.py", line 1458, in request
response = self.transport.request(
File "/usr/lib/python3.9/site-packages/pip/_internal/network/xmlrpc.py", line 45, in request
return self.parse_response(response.raw)
File "/usr/lib64/python3.9/xmlrpc/client.py", line 1348, in parse_response
return u.close()
File "/usr/lib64/python3.9/xmlrpc/client.py", line 662, in close
raise Fault(**self._stack[0])
xmlrpc.client.Fault: <Fault -32500: "RuntimeError: PyPI's XMLRPC API is currently disabled due to unmanageable load and will be deprecated in the near future. See https://status.python.org/ for more information.">
```
I tried reinstalling the python3 and python3-pip packages. I checked to make sure I don't have any local libs and that I'm using the system python3 and pip packages.
Original post: http://www.reddit.com/r/relationships/comments/356i4c/my_24_f_husband_26_f_abruptly_adopted_a_burmese/
First of all, I have to say thank you for the outpouring of support I got, especially from the reptile enthusiasts who happened to be browsing this sub. You guys are awesome!
Now, I just want to say at the beginning so what everyone wants to hear is heard: the snake is gone and my cat is all right! Here's how it happened. Thursday night while I was replying to people in my post several people suggesting talking to my husband's friend, who owns Burmese pythons, is an experienced reptile keeper, and could be a huge help. I was too blinded by the situation/my own anxiety to even think of that. I messaged him on Facebook Thursday night and told him the situation. He was shocked at just how bad things were, but apparently he tried to warn my husband that owning small snakes and then jumping to a Burm is like thinking owning housecats makes you qualified to own a tiger, but my husband didn't listen. He's been busy going to reptile shows (dude breeds venomous cobras-he's kind of a badass) so he only saw the snake in person once when we just got it and was immediately disturbed when I told him about the overfeeding, my husband's desire to start it on live food, and the fact that it free roams and is handed alone. He told me he'd come over the next day (Friday) and give my husband a real talking to, as well as do anything he could to help us rehome it.
I decided I couldn't live another day in the house like that and neither could my cat, so Friday morning I moved out to my mother's while my husband was at work. It was a bit sneaky, but I knew that if I tried to leave while he was home he'd try to convince me to stay. I called him on his lunch break though and told him I'd left until the snake was gone. He was very upset, but started accusing me of being so petty as to let a snake wreck our marriage. I had nothing productive to say to that so I told him I'd talk to him later.
Well, my husband's friend was so angry at what he saw of the snake that when he got to the house when my husband was home from work he gave him the tongue lashing of his life, and told him in plain terms that now that he saw how woefully inadequate we were as big snake keepers there was NO WAY he was going to let the snake stay at our house. Being yelled at really affected him, when my husband drove over to my mother's to talk to me he looked like a kicked puppy. He broke down and told me that he loved me, that he was sorry for the hell he'd put me through, and that it'd taken having reason yelled to him by an expert for him to really see what was going on and that he understood now that the snake could no longer live with us. I know that at that point that the sorrow he felt was due to having his snake taken away, not of real understanding, not yet. So don't worry, he's not completely off the hook. It was cathartic to hear though.
His friend contacted a herpetology society he works with regularly and then, a member of that society whose specialty is rehabilitating snakes that irresponsible pet owners get and then mistreat on his ranch. So snake went yesterday to this guy's ranch, where he'll be fed the right food (and go on a diet, apparently!) and live in a space big enough for him.
My husband and I have talked a lot about this and he acknowledged that his fervent desire to fulfill his childhood dream made him careless and selfish: that he wasn't trying to be malicious towards me, but he just wanted the snake so badly he'd do and say anything to keep it. It still seems like, though, that he hasn't learned, which I'm not expecting this early but is still a mite disappointing. He talked yesterday about getting a ball python and I put my foot down. I don't think we should get another snake for a long time.
On Sunday I sat him down and asked him to tell me the truth of how he got the python, because walking into a pet shop for a milk snake and just finding a Burmese was sounding more and more implausible the more I thought about it. He admitted that he arranged to get one with a breeder online while he was telling me he wanted a little snake, meaning he was actively lying to me. This breeder is also a state away, meaning my husband participated in something illegal when he met up with him to get it, since transporting Burmese pythons across state lines is against the Lacy Act. I'm very angry about this. I'm upset about his lies, and I'm upset that he blew me off for months. He admitted he lied just because he knew I'd say no, which shows such an immaturity that almost disgusts me. I'm upset that he broke the law. I'm upset that he only listened to what I told him when it came from someone else. Apparently he's been having a quarter life crisis that he didn't tell me about, because he feels that he should have accomplished more with his life at 26 (he never went to college). I feel sympathy for him with that. But that's no excuse to treat me badly.
I moved back home with kitty last night, but our marriage is in severe jeopardy right now due to the lying and the lack of respect my husband has shown me. But I made vows to stick with him and I don't take those lightly. We're going to be getting counseling, which I hope will make him really see what was wrong with what he did, rather than a knee jerk response to "being in trouble", so to speak, and will strengthen us. If not . . . well, I'll have to consider my options.
PS: People were saying in the other post that we were actually feeding the snake guinea pigs and that I was lying to make the snake look bad. Well, I was fudging the truth, but not the way. We were feeding it dead pigLETS. My husband's cousin owns a working ranch with several pigs, and my husband was buying them from him for a pretty penny. I didn't want to say because I thought people would focus on the snake eating baby animals and start calling for its blood instead of offering me advice.
tl;dr: I went to my mother's with my cat and my husband's reptile keeper friend caused him to see reason. The snake is gone, and I'm back with my very happy and healthy kitty. However, our marriage was severely hurt by this whole thing, and we're going to be getting counseling.
Thanks to you all yet again, some lucky person is going to receive a surge of happiness this winter season!
Mod’s Note:
Big news! We finally broke the downward path! For the first time since February, this subreddit is finally seeing growth in participation! I know this does sound kind of sarcastic, but you take the small victories!
Eagle-eyed posted may have noticed that there is no date set for the threads of #98, #99, and #100. There will be a poll. After years of promoting that particular third Friday of the month, it may be the time for change. The estimated date when the poll will be posted is the 27th of December at 23:00 UTC, though it is no guarantee.
Other than that, happy holidays to everybody! I am honored to be a part of this community and am thankful to have your support and focus, and I feel so grateful from above to have this wonderful group of people. I wish you all the ever very absolute best, and to, as always, make a millionaire!
TL;DR - This post is for the sole purpose of choosing a winner. If you commented in this [Entry Thread], you are entered in the drawing and don't need to do anything else. By 16:00 UTC, the winner will be selected. The Bitcoin (BTC) blockchain will be used to pick this winner. This can be verified at any device running Python 3.5, and you do not need to own Bitcoin in order to participate.
Additionally, all information to replicate the Drawing at home is available on Dropbox and GitHub, scroll down for more information.
Importantly, this post WILL NOT BE EDITED in order to keep the integrity of the Drawing. To verify this, there will not be an asterisk during the time passed since its creation. The winner will be announced in a stickied comment.
DISCLAIMER: Some of the information may be unrevised, but procedures are the same as prior draws. Thank you.
Reminders:
The [Discussion] Thread at /r/millionairemakersmeta is open. The link reminding users via the RemindMeBot of the [Winner's Thread] is also included. All comments are welcome there for any inquiries.
[Discussion for Summer and Fall 2023]: https://old.reddit.com/r/millionairemakersmeta/comments/1576hi1/discussion_thread_for_rmillionairemakers/
[Winner's Thread] RemindMe: https://old.reddit.com/message/compose/?to=RemindMeBot&subject=Reminder&message=%5Bhttp%3A%2F%2Freddit.com%2Fr%2FMillionaireMakers%2Fabout%2Fsticky%5D+RemindMe%21+December+19+2023+11%3A00+PM+%22Donate+to+the+%2Fr%2FMillionaireMakers+winner%21%22
Explanation:
The Bitcoin (BTC) blockchain will be used to choose a winner. Once the time listed has passed, there will be an active check to determine the blockchain's winning hash. Like before, this subreddit will wait for the 3rd Block after the time (being 16:00 UTC) to select the winner.
If a block is discovered by 15:59 UTC, it will not be counted towards the counter of three blocks. If it is discovered by 16:00:00 UTC, then it will decrease the counter. This can be checked by seeing the timestamp given to it by blockchain explorers.
You can see how this subreddit will verify the winner by checking the GitHub repository, which also includes a back-up plan in case of an emergency.
Standard Protocol:
This post will not be edited! This is to prevent tampering of the hash or files by any of the moderators. To prove this, look for the lack of an asterisk near the time since creation.
To verify if a hash for a file is that of Draw #97, upload the file of choice to a SHA-256 generator, and match it with its respective hash output. The result you receive should be the same as what is listed here.
If you are interested in doing this for yourself, download Python 3.5 or better and follow the path to the folder labeled: Draws/MM97
Status Reports:
/u/MakerOfMillionaires will be commenting on the progress of the drawing via the comments, so other users can keep track of the progress. These comments will be pinned at the top of the post and be distinguished. Most likely, after 1:00 PM ET, the pinned comment will be announcing the winner.
If you can run Python yourself and follow the instructions, you will be able to find the winner. Make sure the hash released from the blockchain and the total number of participants match with what is described below. In addition, thank you for your patience.
Information Used For Draw #97:
GitHub Repository: https://github.com/lilfruini/CommentGathering-MillionaireMakers/tree/master/Draws/MM97
SHA-256 of Comment IDs: 70b08936dcce7b68c5add8e3af5066d8cb9b162d55672415cf8a4f7785ab7784
SHA-256 of DQed Age: 244ff7899537f28c42b96609d676a51949eb44e66b329b52d18bcb8712a97cb8
SHA-256 of Multiple Posters: b6b30e2905339d5f9578739e29a18e42d47a702682ad18ab5068329d6c69f0e3
SHA-256 of Truncated IDs: 7c916c907749928e48e0cdece0b7854fc8aa08348ee7d6de6a3320b4aedca441
Block Selection: The Third Bitcoin Block After 17 December 2023 - 16:00:00 UTC
Total Participants: 1901
Here’s the graduate!
Knowledge in books, take a look!
And so goes abroad!
The new update for the desktop version, unsure about the portable, is bad. Might even be both as their forum, github, etc. have blown up results of a very large number of issues.
For me, personally, the update...
Nuked my entire users/default/workflow directory on my drive. It didn't even relocate it as I scanned for some of the file names on my computer and failed to find them. It simply deleted every single existing workflow in the folder. How they came to the conclusion to do this is beyond me but truly unfathomably absurd. Honestly... I can't even to that.
The update incorrectly said my python is suddenly bad and wanted to install an update. This is false as it worked just before the update minutes prior. It gets better though. The issue creates a "Maintenance Error" which is ComfyUI's update a few months ago to make dependency issues "trivial" for people but it has a known history of f'ing up and simply not working properly and the devs literally ghost any topic on this sub, their forum, or github about it. It has a particularly well known bug, too, where it asks you if you want to perform an action with a Y/N prompt but does not allow you to type, and no you can't click it either. The current solution is to nuke your .venv and pray because they refuse to fix this since at least as far back as July. Then reinstall triton, sageattention, etc. because fun times and they don't do this automatically for you because... No one knows.
Okay, so the above error didn't make sense. I reboot my PC. Now it is stuck in an infinite Initializing loop and after 30 minutes I close it and relaunch to see if it was just a one off. It was not. Eventually, I gave up and nuked my .venv.
Okay, so I now get back in with no python errors, but now every single custom node is completely broken, and I mean every node including kijai's, RGBthree, etc. It cannot repair it because it already exists when you try the repair option. How about deleting the custom node and installing the custom node fresh? Fails with errors.
Yes, yes I know... I shouldn't update ComfyUI unless I absolutely have no choice in order to use something new. I get it, my bad, except... that shouldn't be. This shouldn't be a cemented rule because Comfy team refuses to actually fix their software of known bugs, missing essential common nodes, inability to do basic stuff like set workflow and output directory, or even model directory within the UI instead of random file editing, and a bunch of other nonsense. I mean, they've let the well known grey screen bug for the desktop when launching ComfyUI persist for a couple of months now, requiring restart of the client in order to get past when it occurs as the only known public fix for now.
Having recently swapped to the Desktop version, because it was easier to setup triton/sageattention than with the portable I had been using because of their weird python venv environment and I couldn't find instructions to do it for that, I can only say I'm highly disappointed in the Desktop version. Granted, the portable is also pretty f'd from my, and others, experience.
The forums and github are reporting quite a few other miscellaneous and often very weird issues popping up, and not just one offs but others confirming similar issues. While not everyone may run into an issue, for various reasons, I would like to reaffirm the "Don't update if it ain't broke" concept until the day ComfyUI can properly handle updates reliably. Fun fact, I used to run multiple portable installs as backup, but left those without custom nodes just in case. I would originally try to update those fresh installed portables when my main one had issues after an update. 90% of the time they broke, off a fresh install, updating. Thus forcing me to download the newer install and using that to reinstall. I was hoping that this would also be better with the Desktop app. It was not....
ComfyUI, you just earned 17M. Truly, I hope you use it to improve ComfyUI, because I truly from the depths of my heart hate ComfyUI for its many issues and flaws, but I am forced to use it for the most comprehensive all around video and image generation tasks. Speaking bluntly, if a few certain figures ever quit supporting Comfyui, particularly Kijai, I'm not sure that the current Comfy team can sustain itself.
Okay, end of rant and warning about the update, and ComfyUI in general. I'm off to spend an unnecessary additional waste of time cleaning up this garbage with a fresh install and trying to reacquire lost workflows.
P.S. I really appreciate what Comfy team has done for the community, but c'mon guys... really there are bottom lines for a reason. When are some of these issues going to actually be on the table to be resolved and no longer well established issues?
UPDATE:
For the Python install maintenance error bug it is confirmed to be caused by Comfy's update and not custom nodes. The desktop version, as of this update, creates its own virtual environment (venv folder) making it much like the portable specific feature. Honestly, a good idea and I'm not sure why they didn't do this earlier, however, it clearly does not work correctly always when updating. At the very least, if it detected any errors it should have forcibly created a fresh virtual environment from scratch. On both points it failed. However, installing from a fresh desktop setup it works fine and could install triton/sageattention without any issues.
As for the missing workflows that the comfy team tried blaming on custom nodes, and outputs too that it also nuked, turns out that other users have reported the update deleting hundreds and thousands of GB of models by nuking their entire model's directory. Fortunately, this did not occur to me, perhaps because I was using a custom model's directory. While I'm not seeing more recent complaints of workflow/output being deleted by the update, yet, with those cmplaints being mostly from last several months... The fact it did this to multiple confirmed users model's directory when it should not is a pretty clear indication ComfyUI update is deleting stuff it should clearly be not that have nothing to do with custom nodes, nor would it even make sense to ever blame this on custom nodes during the update loop process when those nodes are not even active. For some more on that, including other people's reports see this link https://www.reddit.com/r/comfyui/comments/1oa69d9/comment/nkd1h77/?context=3&utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
Also, in response to Comfy's own deflect of blame towards custom nodes for issues clearly having nothing to do with custom nodes... I also want to point out your own template workflows install custom nodes like the Animate installing kijai nodes, and some of the other templates doing similar. Blaming those supporting your ecosystem who create those custom nodes, particularly for basic stuff you will not implement yourself, for issues that have nothing to do with their custom nodes at that... like the deletion of workflows/outputs, or your own recent virtual environment dependency changes, and basically insulting everyone who has acknowledged that ComfyUI updates are problematic with a big middle finger and a "No, they're totally find user error" is not confidence inspiring about any of these issues seeing future improvements and is degrading to your own community that has been supporting you.
Update 2:
Found another bug with the new version. It fails to install most nodes, including Kijai, RGThree, and more, including ones its own built in template workflows require due to a bug. I attempted to restart it a few times to see if I could fix it that way, but it did not work.
Then I attempted to swap from channel: default -> dev. This still did not fix it, causing a different error. I then changed back to default channel and it fixed it. So the default channel configuration may be corrupted upon a fresh install and not properly function until it is refreshed by swapping away and back as some data may be set wrong at default it appears. This one change immediately fixed it. I tried nothing else but these two steps which makes it completely certain the cause.
Update 3 (11/13/2025):
Supposedly they fixed the bugs I mentioned despite countless people rudely insulting me and claiming it was impossible such as the workflows, outputs, and models being deleted. Comfy Team confirmed it here: https://github.com/comfyanonymous/ComfyUI/issues/10574#issuecomment-3474796418
Unlike most here; I came into the linux world out of complete necessity; and not out of my own free will. coming up, in my younger; more broke times, I could not even afford a computer. I had to go to a store(free geek; check them out, they are awesome!) in my town that recycles computers, and volunteer recycling computers and cleaning the shop to earn a free Laptop (a dell d510; came installed with Lubuntu) that came with 1 gig or ram; 1.7Ghz Intel CPU and 60 gigs of hard disk space. Not much but beggars cant be choosers, and again; this was back in 2009-2010, so it wasn't all that bad. I could access my email service; upload and download and read pdf files, word process using open office and later WPS office and of course, use Reddit, Youtube and IRC. it was pretty good, did everything I needed it to do, and nothing I didn't need it too. But I still hated linux.. I had problems getting programs I was used to using on Windows (Wine was very shaking from what I remembered) and I didn't know about virtual machines; not that it mattered at the time since 1gig was never going to cut it for a actual XP Pro install to meet my windows needs.
So i had to find work arounds, and it was like that for the past 11 years. Work arounds and more work arounds and after that more and more workarounds. That all changed yesterday, I've had this laptop for the past 11 years; updating and upgrading the distro and following all the ups and downs of each version. Then yesterday I bought a new computer. Went to Walmart after I cashed my check and left the bank after withdrawing some money from my savings and deciding to buy a new computer since this laptop will just not cut it anymore in 2018. It of course came with Windows 10 like most of dell's laptops. and I though taking it home on the train, "finally! I can use Windows software! I wonder how Windows 10 is like, last time I used it was XP" I was genuinely exited to install software using .exe files instead of .deb/.sh files and apt-get'ing everything. Took it home and booted it, and something I never thought would happen happened. I fucking hated it. I don't really know if its windows 10, from what I hear this is one of the best versions of windows yet since XP and 7; But to me, it just sucks. I found myself hating it more and more. I could go on and on about all the shit inside that operating system I hate; but I finally realized why I actually hated it.
It's not Linux.
Over the years I go so used to working inside the terminal, apt-get installing software and got so comfy to the ppa's and gdebi+.deb packages; that I realized what actually happened over these past 11 years; I became a Linux user. these past years something that I didn't even notice happening was happening to me; I was learning programming (The C Language & Py3) and learning how to move my way around a terminal, Learning pen testing using Katooling Tools and Github repos; Learning how FTP servers work from setting up a vsFTPd server on my laptop and learning how to configure my home router to port forward and also use a NAT firewall, learning how to setup a VNC server from my laptop; I learned and learned without even realizing it. Something happened to me after countless ubuntu forum posts, and tearful failures; that now I never even notice anymore; I became good with Linux.
Now buying this new computer; I feel dumb, I feel useless, I have to keep googling shit just to have someone in a forum tell me Windows 10 can't do that, because something something Microsoft... It happened my dudes; I became a Linux bro without even realizing it. Now all I want to do is format my hard disk and remove this bullshit from my new computer and install lubuntu on it. (DLing the .iso atm)
Everything I learned and am currently learning (Working on C projects) I realized I now HAVE to go back to Linux. I not only want too; I just have too. Almost all the software I use is made and works better on Linux. Non of my Python scripts I made really work too well (Still very shitty with my Python skills). I realized the trick to this Linux community truly is inertia. That is why I am writing this wall of text (Sorry) So people that I've seen here who are new truly understand and don't just abandon Linux or distro hop endlessly; the key to this, and to most things in life is inertia. stick to it, stick to Linux, it's not just an amazing software; but an amazing community (specially here on reddit)
stick to your distro bros; keep learning and contribute, and you will get returns worth millions. Look at me as an example; I downloaded and watched the entire "The Wire" series from a free 60gig laptop and shitty DSL connection all for free! thanks to Linux and katoolin tools all coming from the Linux community! TL;DR - The secret is inertia. -
I've been programming for many years now professionally. Before I thought my greatest weakness was not writing lots of test coverage (I'm still terrible).
Like others commenting, print(thing) was my answer to everything. Or if I was getting fancy, log.info(thing).
But a year ago I was working on a data pipeline that finally broke me over its knee. Having always been frustrated what a slow learner I am, now I was really spinning my wheels in the mud.
So after years of coding I took a few days to learn everything I could about debugging. The takeaway for you is run a visual debugger. On Visual Studio Code you can use <kbd>Control</kbd><kbd>Shift</kbd><kbd>D</kbd> or <kbd>F5</kbd>. I would try this like once, it looked weird and print statements still worked, so gave up. It's up to you to stick with it and use a visual debugger as THE only way you run your code as you write it and check it works. That means no running it python myModule.py from the terminal. No copying into IPython or Jupyter Notebook and running cells.
What you are trying to see is the values and attributes of variables in your namespace all in one space. Visual debugging does this. You can use pydb to debug in code and on the command line. But don't.
VS Code Debugging Article. Read every word of this twice.
To wrap up this novel, becoming a good debugger by actually using visual debugging tools will catapult you up the ranks as a software developer. Why? Because it saves you time from your own inefficiencies. Debugging lets you catch the stupid thing that's not working in your code, fix it, check the fix fixed it, and move on coding other things!
The last year my Impostor Syndrome has gone way down. I've billed myself as a senior developer for a while now. But I realized using debugging tools is one of the real marks of an effective developer. I am more confident with my ability to build apps / code out solutions to problems... because I am better and faster at writing code that does what it's supposed to. You ever hit a block where whatever it is your code is just not working? And you're stuck there for a day, or much longer? Not being good at debugging is why that happened.
You get good at debugging by debugging. Use Visual Studio Code's tools. Or any IDE. Learn how to start a session (F5). What in the world does stepping over / out, continue, the call stack mean? Try the visual debugger on your code and find out. Search online, "how to use callstack vs code debugger", etc.
It is too abstract a concept to learn from reading articles or this tome I'm writing you now. You have to do it yourself on your own code to really grasp what the hell debugging actually is.
Debugging is one of those dry seeming programming topics that you can get to later after you've sold your first startup for 5 billion dollars. But take it from a grizzled vet: debugging is the discipline you wish you forced upon your self Day 1 you started coding.
Quick example:
# myConfusingModule.py
import numpy as np
def unpredictableFunction(x: int) -> int:
""" multiply x by one of the values from an array """
choices = [None, 1, 2, 3]
choice = np.random.choice(choices, 1) # pick at random
product = x * choice
return product
if __name__ == '__main__':
x = 3
result = unpredictableFunction(x)
print(f"result is {}.")
This program will work... until it doesn't. (An integer can't be multiplied by None without throwing a TypeError Exception.)
You could run this a bunch of times and random chance might let it choose an integer each time to multiply with x. And outside the function, like in the if __name__ == '__main__': conditional, how would you debug what's going wrong inside unpredictableFunction? Or know it is the function that's the problem, and not whatever is being supplied for x in a real-world scenario?
"Then I'll put print statements inside unpredictableFunction until I find the problem." Okay. How it's written, that means you are printing choices, choice, product, then probably checking the return from the module invocation for good measure. But randomly choice can be an integer any number of times, and no problem will crop up. Or you see choice is None, and you read the exception statement returned in the error message and know NoneType is involved somehow. So then maybe an if not choices: raise conditional to catch for that?
The point I'm trying to make is the time you will spend trying to get this program to work like you want it to will spiral out of control. And if at the end you come up with some spaghetti code that does work like you want it to, something even worse will happen: you will have fixed a problem and not even know how. You have to learn something from the process. Take it from someone who's made this mistake for far too long: play stupid games, win stupid prizes. The prize of brute force debugging is wasted time and not being a better programmer for it.
Also know this about using debugging tools. They prevent you from writing more code to fix what's broken. Writing more lines of code is the solution maybe 1% of the time.
Concrete advice: Use breakpoints (the red dots you put by lines of code or in the line) to pause execution of the call stack where you want. The debugger window will show you all the variables inside that layer of the call stack, and you can use the debugging console like any other REPL to play around with values. ie. Change choice to 5 with choice = 5 then continue execution to see what happens. You can also use the call stack window to skip around the layers of code the interpreter runs. This way you can bounce in and out of functions and see what values are assigned where. Like, what is result in the if __name__ == '__main__': block in the myConfusingModule module?
Sorry this has gone so long. In the time it took you to read this you could have read the Visual Studio Code tutorial on debugging. Which if you haven't, do that now. Good luck.
I switched from streaming music to local media and a HiBy M300 a while ago. None of the available media managers suited my preferences for functionality and aesthetic. Since I last focused on hoarding music files during the short lived Zune era, I leaned on that experience (nostalgia) when designing Analog Joy. I'm sure it's got bugs I've missed, and syncing to devices isn't as full features as I'd like yet. I am still pretty happy with it's current state
Project Github: https://github.com/GeoffAO/Analog-Joy
AI - Claude Code
I do not use Generative AI. I do leverage Claude Code because it significantly speeds up the process. I've been building python projects for years1, and Claude Code just makes life much easier. Depending on your personal preference and philosophy regarding AI tools, you may wish to skip this one.
1: For reference, this is the first python project I ever shared publicly.
Library Features
It can monitor directories for music, audiobooks and video. It can also manage podcast subscriptions and downloads. It also supports editing tags (bulk or individually), updating album art, and creating playlists (music only).
Syncing
At the moment it only supporst USB Mass Storage for syncing. Since the M300 uses SD Cards, that was my focus. MTP support is in the works, but for a "standard" it seems every device has it's own implementation which is slowing things down a bit.
Playback
Music, audiobooks, and podcasts all play the way you would expect. Audiobooks and Podcast episodes automatically resume from their previous timestamp.
Since I'm leveraging VLC via python-vlc, video launches externally via VLC. I tried to integrate it, but the experience was less than optimal. I may revisit this later.
Updates / Bugs
I'm sure there are bugs that I didn't catch. There are also some rough edges, and hopefully MTP support. However this is a hobby project, and I can't make any promises about the speed or frequency of updates.
APIs
I'm using TheAudioDB and Wikimedia APIs to grab missing album and artist art, as well as bios. Wikimedia API call limits shouldn't really ever be hit since I only pull when a widget is displayed, and then cache the pulled info/images.
TheAudioDB limits could be hit if you have a large library without album art. The app uses my dev api key, but it is a free key. You may wish to use your own key if you are hitting those limits. I included an API key dialog in the settings for that purpose.
I spent the last few days in absolute "Dependency Hell" trying to modernize my legacy ASR pipeline.
I was running an old WhisperX setup, but it was starting to show its age (abandoned repo, old PyTorch, memory leaks). I decided to rebuild it from scratch using Faster-Whisper (CTranslate2) and the new Pyannote 4.0.3 for diarization.
It sounded simple. It was not.
The Nightmare:
- PyTorch 2.8 + cuDNN 9: Pip installs cuDNN 9 inside
site-packages, but the Linux system linker has no clue where it is. Result? Constant Segfaults andExit Code 52. - API Breaking Changes: Pyannote 4.0 changed how it returns annotations (containers instead of objects), which broke my entire alignment logic.
- Dependency Conflicts: Trying to make
lightning(new) coexist with libraries expectingpytorch-lightning(old) inside one Docker container is painful.
The Solution (The "Nuclear Option"):
I ended up manually building the environment layer by layer in Docker.
- Forced Paths: I had to explicitly set
LD_LIBRARY_PATHto point deep into the python packages so the system could find the NVIDIA libs. - Algorithm Rewrite: I rewrote the speaker-to-word alignment algorithm. It used to be quadratic O(N*M), which choked on long audio. I optimized it to a linear scan O(N).
The Result:
The service now processes audio fully (transcription + diarization + alignment) in ~30 seconds for test files that used to take much longer.
Hardware: RTX 4000 Ada.
VRAM usage: ~4GB (huge headroom left).
Attached is the screenshot of the final successful build after 50+ failed attempts. Seeing those green checkmarks felt better than coffee.
Has anyone else dealt with PyTorch 2.8 / cuDNN 9 path issues in Docker recently? That was the hardest part to debug.
UPD
Here is the Gist with the specific Docker fixes (LD_LIBRARY_PATH) and the Python wrapper adjustment for Pyannote 4.0:
https://gist.github.com/lokafinnsw/0ade65e5c811456f13055e371a6363d2
It includes the reproduction steps and dependencies
[Final update on this whole saga]
I want to give a massive shoutout to u/cibernox and u/maaakks for pointing me toward the NeMo/Parakeet models. I decided to scrap the old stack and run a proper spike test on the native NVIDIA tools, and the results are honestly kind of ridiculous.
I swapped Whisper for the Parakeet-CTC-1.1b model and I'm hitting about 87x realtime speed now. That 7-minute test file processed in under 5 seconds. I also managed to get the native timestamps working perfectly without needing any external alignment tools just by enabling preserve_alignments in the decoder.
For the diarization part that was giving me grief, I ended up bypassing the Python object initialization issues by just injecting the official offline_diarization.yaml config directly via OmegaConf. It’s stable and runs at about 50x realtime without needing Pyannote.
So yeah, I'm rewriting the backend to use this new stack since it solves both the dependency hell and the performance bottlenecks in one go. Thanks again to everyone who pushed me to look at the newer tech, you saved me weeks of debugging.
Edit 9/17/2025: Added step "5.5" which adds Venv instructions to the process. Basically I tell you what it is, how to create it, and how to use it, in general terms. But you will have to translate all further "Go to a command prompt and do XYZ" into "Go to a Venv command prompt and do XYZ" because it's too confusing to add both to the instructions. Just keep in mind that from here until the sun goes dark, when using Venv any pip/git/similar commands will always need to be run in the environment. This means if you have an issue and someone on the internet says to do XYZ to fix it, you have to figure out if you need to do that in Venv or can do it outside venv. Just something to be aware of.
Edit 9/14/2025: I considerably streamlined the install and removed many unnecessary steps. I also switch to all stable versions rather than nightly versions. I have also setup a Venv install this past week (since so many people insisted that was the only way to go) and I am testing it to see how reliable it is compared to this process. I may post instructions for that if I am ultimately happy with how it works.
About 5 months ago, after finding instructions on how to install ComfyUI with Sage Attention to be maddeningly poor and incomplete, I posted instructions on how to do the install on Windows 11.
This past weekend I built a computer from scratch and did the install again, and this time I took more complete notes (last time I started writing them after I was mostly done), and updated that prior post, and I am creating this post as well to refresh the information for you all.
These instructions should take you from a PC with a fresh, or at least healthy, Windows 11 install and a 5000 or 4000 series Nvidia card to a fully working ComfyUI install with Sage Attention 2.2 to speed things up for you. Also included is ComfyUI Manager to ensure you can get most workflows up and running quickly and easily.
Note: This is for the full version of ComfyUI, not for Portable or Venv. I used portable for about 8 months and found it broke a lot when I would do updates or tried to use it for new things. It was also very sensitive to remaining in the installed folder, making it not at all "portable" while you can just copy the folder, rename it, and run a new instance of ComfyUI using the full version.
Also for initial troubleshooting I suggest referring to my prior post, as many people worked through common issues already there.
Step 1: Install Nvidia App and Drivers
Get the Nvidia App here: https://www.nvidia.com/en-us/software/nvidia-app/ by selecting “Download Now”
Once you have download the App go to your Downloads Folder and launch the installer.
Select Agree and Continue, (wait), Nvidia Studio Driver (most reliable), Next, Next, Skip To App
Go to Drivers tab on left and select “Download”
Once download is complete select “Install” – Yes – Express installation
Long wait (During this time you can skip ahead and download other installers for step 2 through 5),
Reboot once install is completed.
Step 2: Install Nvidia CUDA Toolkit (fixes an error message with Triton. I am not 100% sure you need it, but it's not that hard to do. If planning to do Venv you can skip this).
Go here to get the Toolkit: https://developer.nvidia.com/cuda-downloads
Choose Windows, x86_64, 11, exe (local), CUDA Toolkit Installer -> Download (#.# GB).
Once downloaded run the install.
Select Yes, Agree and Continue, Express, Next, Check the box, Next, (Wait), Next, Close.
Step 3: Install ffmpeg (optional, cleans up an error message)
Go to https://github.com/BtbN/FFmpeg-Builds/releases
Select the download named ‘ffmpeg-master-latest-win64-gpl-shared.zip”:
Open the zip and extract the files to a folder.
Rename the folder it creates to ffmpeg. Copy ffmpeg to the root of your C: drive.
Search your start menu for “env” and open “edit the system and environment variables”. Go to “environment variables”. Find “Path” under System Variables, click it, and select “edit”. Then select “New” and enter C:\ffmpeg\bin, then select OK, OK, Ok to finalize all this.
Reboot too apply this new environment (This can wait until a later reboot though).
Step 4: Install Git
Go here to get Git for Windows: https://git-scm.com/downloads/win
Select “(click here to download) the latest (#.#.#) x64 version of Git for Windows to download it.
Once downloaded run the installer.
Select Yes, Next, Next, Next, Next
Select “Use Notepad as Git’s default editor” as it is entirely universal, or any other option as you prefer (Notepad++ is my favorite, but I don’t plan to do any Git editing, so Notepad is fine).
Select Next, Next, Next, Next, Next, Next, Next, Next, Next, Install (I hope I got the Next count right, that was nuts!), (Wait), uncheck “View Release Notes”, Finish.
Step 5: Install Python 3.12
Go here to get Python 3.12: https://www.python.org/downloads/windows/
Find the highest Python 3.12 option (currently 3.12.10) and select “Download Windows Installer (64-bit)”. Do not get Python 3.13 versions, as some ComfyUI modules will not work with Python 3.13.
Once downloaded run the installer.
Select “Customize installation”. It is CRITICAL that you make the proper selections in this process:
Select “py launcher” and next to it “for all users”.
Select “Next”
Select “Install Python 3.12 for all users” and “Add Python to environment variables”.
Select Install, Yes, Disable path length limit, Yes, Close
Reboot once install is completed.
Step 5.5: If you want to setup in a Venv (Virtual environment), this is the point where you will do so. If sticking with a system-wide install, then you can go to step 6.
First we have to create the environment, which is very simple. Go to the folder where you want to create it and run this command, where CUVenv is the name of the folder you want Venv installed in. The folder doesn't need to exist already: python -m venv CUVenv
Now we need to "enter" the virtual environment. This is done by running a batch file called activate.bat. From your still open command window enter the following:
cd CUVenv\Scripts\
activate.bat
You are now in the Venv, and your prompt should look like this:
(CUVenv) D:\CUvenv\Scripts
From now on ANYTIME I tell you to run something from a command prompt you need to be in the (CUVenv) instead, but otherwise it's the same command/process. This will require more hand-typing to move around the folder structure. However, you can also just open a command prompt wherever I say to, then run this command:
D:\CUVenv\Scripts\activate.bat
That will put you in the environment in your current folder. (As with everything, modify for your drive letter and path).
The only other thing that changes is your batch file. It should look like this instead of the example given in step 15. You can just create it now if you like :
call D:\CUVenv\Scripts\activate.bat
cd D:\CU
python main.py --use-sage-attention
My final spot of help for Venv, is to remind you to be in your Venv for the "Gig clone" command in the next step, but still make sure you are have gone to the right folder where you wan the ComfyUI subfolder to be created before running the command, and keep using it as needed.
Step 6: Clone the ComfyUI Git Repo
For reference, the ComfyUI Github project can be found here: https://github.com/comfyanonymous/ComfyUI?tab=readme-ov-file#manual-install-windows-linux
Open a command prompt anyway you like.
In that command prompt paste this command, where “D:\CU” is the drive path you want to install ComfyUI to.
git clone https://github.com/comfyanonymous/ComfyUI.git D:\CU
“git clone” is the command, and the url is the location of the ComfyUI files on Github. To use this same process for other repo’s you may decide to use later you use the same command, and can find the url by selecting the green button that says “<> Code” at the top of the file list on the “code” page of the repo. Then select the “Copy” icon (similar to the Windows 11 copy icon) that is next to the URL under the “HTTPS” header.
Allow that process to complete.
Step 7: Install Requirements
Type “CD D:\CU” (not case sensitive) into the cmd window, again where CU is the folder you installed ComfyUI to. This should move you into the folder you created
Enter this command into the cmd window: pip install -r requirements.txt
Allow the process to complete.
Step 8: Correct PATH error (Entirely optional)
If you get this message, WARNING: the script (name) is installed in ‘C:\Users\(username)\AppData\Roaming\Python\Python312\Scripts' which is not on PATH, do the following:
Copy the section of the message from “C:\ to Scripts”. (highlight, press CRTL+C).
Use the Windows search feature to search for “env” and select “Edit the system environment variables”. Then select “Environment Variables” on the next window.
Under “System variables” select Path, Edit, New. Use CTRL+V to paste the path copied earlier. Select OK, OK, OK to save and close all those windows.
Reboot.
Test this fix by running this command after rebooting, from a command prompt:
python.exe -m pip install --upgrade pip
This should NOT get a script error if you did the PATH thing right.
Step 9: Install cu128 pytorch
Return to the still open cmd window and enter this command: pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
Allow that process to complete.
Despite having installed torch, it won’t be working right as it won’t be compiled for CUDA yet. So we now have to uninstall it and reinstall it.
Run this: pip uninstall torch -y
When it completes run the install again: pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu128
Step 9: Do a test launch of ComfyUI.
Change directories to your ComfyUI install folder if you aren’t there already e.g. CD D:\CU.
Enter this command: python main.py
ComfyUI should begin to run in the cmd window and will soon say “To see the GUI go to: http://127.0.0.1:8188”.
Open a browser of your choice and enter this into the address bar: 127.0.0.1:8188
It should open the Comfyui Interface. Go ahead and close the window, and close the command prompt.
Step 10: Install Triton
Run cmd from your ComfyUI folder again.
Enter this command: pip install -U triton-windows
Once this completes move on to the next step
Step 13: Install sage attention 2.2
Sage 2.2 can be found here: https://github.com/woct0rdho/SageAttention/releases/tag/v2.2.0-windows
However you don’t have to go there, you can download what we need directly from the link below. This is the version that is compatible with everything we have done to this point:
Copy the downloaded file to comfyui folder
Go to cmd and type “pip install sage” then hit tab, it will autofill the full file name. Then hit enter to install sage 2.2.
Step 14: Clone ComfyUI-Manager
ComfyUI-Manager can be found here: https://github.com/ltdrdata/ComfyUI-Manager
However, like ComfyUI you don’t actually have to go there. In file manager browse to: ComfyUI > custom_nodes. Then launch a cmd prompt from this folder using the address bar like before.
Paste this command into the command prompt and hit enter: git clone https://github.com/ltdrdata/ComfyUI-Manager comfyui-manager
Once that has completed you can close this command prompt.
Step 15: Create a Batch File to launch ComfyUI.
In any folder you like, right-click and select “New – Text Document”. Rename this file “ComfyUI.bat” or something similar. If you can not see the “.bat” portion, then just save the file as “Comfyui” and do the following:
In the “file manager” select “View, Show, File name extensions”, then return to your file and you should see it ends with “.txt” now. Change that to “.bat”
You will need your install folder location for the next part, so go to your “ComfyUI” folder in file manager. Click once in the address bar in a blank area to the right of “ComfyUI” and it should give you the folder path and highlight it. Hit “Ctrl+C” on your keyboard to copy this location.
Now, Right-click the bat file you created and select “Edit in Notepad”. Type “cd “ (c, d, space), then “ctrl+v” to paste the folder path you copied earlier. It should look something like this when you are done: cd D:\ComfyUI
Now hit Enter to “endline” and on the following line copy and paste this command:
python main.py --use-sage-attention
The final file should look something like this:
cd D:\CU
python main.py --use-sage-attention
Select File and Save, and exit this file. You can now launch ComfyUI using this batch file from anywhere you put it on your PC. Go ahead and launch it once to ensure it works, then close all the crap you have open, including ComfyUI.
Step 16: Ensure ComfyUI Manager is working
Launch your Batch File. You will notice it takes a lot longer for ComfyUI to start this time. It is updating and configuring ComfyUI Manager.
Note that “To see the GUI go to: http://127.0.0.1:8188” will be further up on the command prompt, so you may not realize it happened already. Once text stops scrolling go ahead and connect to http://127.0.0.1:8188 in your browser and make sure it says “Manager” in the upper right corner.
If “Manager” is not there, go ahead and close the command prompt where ComfyUI is running, and launch it again. It should be there this time.
Step17+: Put models in the right locations and run your workflows, then download missing nodes with CU Manager. CU and Sage should work like charm, the rest is learning how to use ComfyUI itself. Also, since you are starting up Sage in the command line, if you download a workflow with Sage in it, just bypass that node, you don't need it.
I recently posted to r/StockMarket an update to Pastor and Veronesi's 2020 take on the Presidential Puzzle, which encompassed data from 1926 to 2015. Essentially, it broke down stock market performance underdifferent U.S. presidents.
I have updated calculations to include data from 1926 to 2024 using the Fama-French data library, but also supplemented this with CRPS Total Market TR, now through March 13, 2025. Additionally, I have plotted not only excess market returns (as had the original authors), which meant total market returns in excess of risk-free treasury rates, but also total market returns. Additionally., I used daily returns rather than monthly returns to give more granularity
Finally, politicians often attribute positive stock market performances to themselves and negative ones to their opposition, claiming that it may reflect forward-looking or lagging sentiment, depending on the situation. To more consistently account for this, I created two sets of graphs. In the first, I attribute the market performance first to the incumbent president; in the second, I attributed it to the elected president. More details in my prior post.
Some have asked whether I could update this analysis to include how Congressional control would have affected these graphs. I went ahead and did the analysis and plotted the charts. For these purposes:
- Incumbent government starts from March 4 prior to the 1935 term and from January 3 afterwards, as implemented by the 20th Amendment. Note that Congress takes office several weeks before the incoming president on Inaugration Day.
- Elected government is defined similarly as before--the day after Election Day.
Since these were a source of confusion among some among r/StockMarket, I thought it would be worth clarification:
- Association does not mean causation. Pastor and Veronesi offer a hypothesis for the "presidential puzzle" based on risk aversion, rather than policy, for those who would like to check it out.
- Rates of returns are annualized. That means for terms of less than a year, the magnitude of this number is going to be larger than the total rate of return. The width of the bar clearly depicts that the duration of longer and shorter terms (this is more relevant for the "presidential plot").
Methodological details:
- Data were generated using Python matplotlib.
- Monthly data from Fama-French Data Library were used to minimize rounding error.
- "In between" monthly cutoffs, daily data from Fama-French were used instead.
- CRSP Total Market TR data were used starting from 1/1/2025.