Skip Navigation
Russia: Under a proposed new legislation, comments defending the decision not to have children could be fined by up to €50,000
  • Childless couples and single bachelors finally united by one powerful force!....still childless? Okay so basically two guys and a fertile woman united by another guy! Finally the family we all need! Oh. She's already 52? Well, keep trying. That's the spirit!

  • A sorcerer appears and states that they will erase any one song from existence - which song would you choose?
  • The logical search goes ..Mexico. accordion music. Then you pick from there. Specially the ones about the drug lords would be better removed.

    But if we could go back in time and find whoever brought accordions over the puddle...you sonobabich. You think you had a good life since you're already gone, but one day we'll go back to fix the leaks on your boat.

    It's a toss up between accordions and trumpets. One of them is gonna go titan or titanic first thing if I get to travel back in time.

  • Stop it with the fridge joke!

    I keep having to remove all sorts of

    Elephants 🐘, penguins 🐧, and giraffes 🦒 and other funny animals from my imaginary joke fridge!

    Go get me a funny 🍺 beer!

    Surprise! It's another elephant.

    9
    Headlamp tech that doesn’t blind oncoming drivers—where is it?
  • I hear you but I rarely if ever walk outside at night and if I do I walk only well lit streets. Like the situation where I have a pressing need to walk outside while it's super dark without a lamp is just dumb. In some places it's illegal to walk outside without a flash light outside....I'm almost so sure I could Google it.

  • Headlamp tech that doesn’t blind oncoming drivers—where is it?
  • It's practical. The polarizers don't have to be sunshade just polarizing. There's a little attenuation but it's by no means a dark shade. Obviously you are tossing away half the light plus the light Absorbed by the glasses. It can be gradually phased in over the usual 13 years of full fleet replacement.

  • Alabama executes death-row prisoner with nitrogen gas
  • There's lots of people arguing that you require a cooperative person. But you could just put the person to sleep with an injection first, then strap them to the gurney, then slide them into a tank and just pump stuff in and stuff out. I think it's the cruelty that keeps it cruel. Those people in charge are as heartless as the cop waiting by the 20mph sign next to the school that happens to have been placed next to the freeway entrance.17mph, you're good, 21mph... are you white? If not you're getting a ticket. It's best done right in front of your own kids. Cruelty is what it is all about.

  • 10 Things to do after installing Lychee!

    1)You get thru downloading the thing since it advertises support for your printer, 2)Click on it to start using it right? 3)Right? 4)X out of the login window because you don't have a login and don't want one thanks. 5) Put the newly downloaded file in the trash bin. 6) Right click on the trash bin and "empty trash" 7-10) Relax for a bit since you don't have yet another data collecting app spying on you. But then post about how shitty the experience was.

    I can't believe anyone would actually create a login to use an app like this. Fuck that. I will just use shitty chitubox for now. Fuck^2, but at least I don't live in some shit server with all my 3D models stolen or my credit card or GPS or whatever the fuck they want to get from me. I'm sure chitubox is already doing it, but hey I don't need a password for that.

    8
    Nasal flu vaccine speculation.

    Would it be awesome if they put some of that vaccine and other vaccines in the bottled water, sodas and swimming pool water? Everyone eventually has to drink water, so why not to it little by little thru a global low dose in the global water supply?

    All answers accepted, specially the really wrong ones.

    !

    14
    New shower 🚿! All yours for 1 kick!

    That's right! Your hearing is perfect! If you allow anyone from our secret staff members who come and offer you a brand new shower to just kick your groin once, you will get it installed absolutely free!

    No questions asked! A guy comes in, offers you a new shower, installs it, and if they kick you in the groin and they happen to be one of our secret staff members, you get it all installed for free!!!

    Ofcourse you do need to pay for the shower and tax. But the kick is absolutely free once installed right in the groin!

    7
    I asked Perplexity AI to help, but it wrote a virus instead

    cross-posted from: https://lemmy.world/post/19713386

    > SO, it started quite nicely with a fully working program. However nearing the end... or at the end of my programming experience or asking it to program something for me, it wrote in some nasty nasty screen flickering shit. I couldn't stop it and it quickly just froze my screen where the only option was to push the button. I tried it a second time to confirm, but this time I was able to quickly go to a different CLI window and kill that sonobabich. Here is what it came up with in case you want to try it. maybe it only screws up my computer: > python > import os > import cv2 > import numpy as np > import time > import tkinter as tk > from tkinter import messagebox, filedialog > > def threshold_to_black(image_path, duration): > original_image = cv2.imread(image_path) > > if original_image is None: > print("Error: Could not read the image.") > return > > height, width, _ = original_image.shape > gray_image = cv2.cvtColor(original_image, cv2.COLOR_BGR2GRAY) > steps = duration * 10 # 10 frames per second > > for i in range(steps + 1): > # Calculate the threshold value (0 to 255) > threshold = int((i / steps) * 255) > > # Create the thresholded image > thresholded_image = np.where(gray_image < threshold, 0, 255).astype(np.uint8) > > # Resize the thresholded image to fill the window > resized_image = cv2.resize(thresholded_image, (window_width, window_height), interpolation=cv2.INTER_LINEAR) > > # Display the thresholded image > cv2.imshow(window_name, resized_image) > > # Wait for a short period to create the effect > time.sleep(0.1) > > if cv2.waitKey(1) & 0xFF == ord('q'): > break > > # Display the final black image > cv2.imshow(window_name, np.zeros_like(thresholded_image)) > > while True: > if cv2.waitKey(1) & 0xFF == ord('q'): > break > > cv2.destroyAllWindows() > > def select_image(): > current_directory = os.getcwd() # Get the current directory > filetypes = ( > ('JPEG files', '*.jpg'), > ('JPEG files', '*.jpeg'), > ('All files', '*.*') > ) > > filename = filedialog.askopenfilename( > title='Select an Image', > initialdir=current_directory, # Start in the current directory > filetypes=filetypes > ) > > if filename: > return filename > else: > messagebox.showerror("Error", "No image selected.") > return None > > def get_duration(): > def submit(): > nonlocal total_duration > try: > minutes = int(minutes_entry.get()) > seconds = int(seconds_entry.get()) > total_duration = minutes * 60 + seconds > if total_duration > 0: > duration_window.destroy() > else: > messagebox.showerror("Error", "Duration must be greater than zero.") > except ValueError: > messagebox.showerror("Error", "Please enter valid integers.") > > total_duration = None > duration_window = tk.Toplevel() > duration_window.title("Input Duration") > > tk.Label(duration_window, text="Enter duration:").grid(row=0, columnspan=2) > > tk.Label(duration_window, text="Minutes:").grid(row=1, column=0) > minutes_entry = tk.Entry(duration_window) > minutes_entry.grid(row=1, column=1) > minutes_entry.insert(0, "12") # Set default value for minutes > > tk.Label(duration_window, text="Seconds:").grid(row=2, column=0) > seconds_entry = tk.Entry(duration_window) > seconds_entry.grid(row=2, column=1) > seconds_entry.insert(0, "2") # Set default value for seconds > > tk.Button(duration_window, text="Submit", command=submit).grid(row=3, columnspan=2) > > # Center the duration window on the screen > duration_window.update_idletasks() # Update "requested size" from geometry manager > width = duration_window.winfo_width() > height = duration_window.winfo_height() > x = (duration_window.winfo_screenwidth() // 2) - (width // 2) > y = (duration_window.winfo_screenheight() // 2) - (height // 2) > duration_window.geometry(f'{width}x{height}+{x}+{y}') > > duration_window.transient() # Make the duration window modal > duration_window.grab_set() # Prevent interaction with the main window > duration_window.wait_window() # Wait for the duration window to close > > return total_duration > > def wait_for_start(image_path): > global window_name, window_width, window_height > > original_image = cv2.imread(image_path) > height, width, _ = original_image.shape > > window_name = 'Threshold to Black' > cv2.namedWindow(window_name, cv2.WINDOW_NORMAL) > cv2.resizeWindow(window_name, width, height) > cv2.imshow(window_name, np.zeros((height, width, 3), dtype=np.uint8)) # Black window > print("Press 's' to start the threshold effect. Press 'F11' to toggle full screen.") > > while True: > key = cv2.waitKey(1) & 0xFF > if key == ord('s'): > break > elif key == 255: # F11 key > toggle_fullscreen() > > def toggle_fullscreen(): > global window_name > fullscreen = cv2.getWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN) > > if fullscreen == cv2.WINDOW_FULLSCREEN: > cv2.setWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_NORMAL) > else: > cv2.setWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN) > > if __name__ == "__main__": > current_directory = os.getcwd() > jpeg_files = [f for f in os.listdir(current_directory) if f.lower().endswith(('.jpeg', '.jpg'))] > > if jpeg_files: > image_path = select_image() > if image_path is None: > print("No image selected. Exiting.") > exit() > > duration = get_duration() > if duration is None: > print("No valid duration entered. Exiting.") > exit() > > wait_for_start(image_path) > > # Get the original >

    4
    I asked Perplexity AI to help, but it wrote a virus instead

    SO, it started quite nicely with a fully working program. However nearing the end... or at the end of my programming experience or asking it to program something for me, it wrote in some nasty nasty screen flickering shit. I couldn't stop it and it quickly just froze my screen where the only option was to push the button. I tried it a second time to confirm, but this time I was able to quickly go to a different CLI window and kill that sonobabich. Here is what it came up with in case you want to try it. maybe it only screws up my computer: ```python import os import cv2 import numpy as np import time import tkinter as tk from tkinter import messagebox, filedialog

    def threshold_to_black(image_path, duration): original_image = cv2.imread(image_path)

    if original_image is None: print("Error: Could not read the image.") return

    height, width, _ = original_image.shape gray_image = cv2.cvtColor(original_image, cv2.COLOR_BGR2GRAY) steps = duration * 10 # 10 frames per second

    for i in range(steps + 1): # Calculate the threshold value (0 to 255) threshold = int((i / steps) * 255)

    # Create the thresholded image thresholded_image = np.where(gray_image < threshold, 0, 255).astype(np.uint8)

    # Resize the thresholded image to fill the window resized_image = cv2.resize(thresholded_image, (window_width, window_height), interpolation=cv2.INTER_LINEAR)

    # Display the thresholded image cv2.imshow(window_name, resized_image)

    # Wait for a short period to create the effect time.sleep(0.1)

    if cv2.waitKey(1) & 0xFF == ord('q'): break

    # Display the final black image cv2.imshow(window_name, np.zeros_like(thresholded_image))

    while True: if cv2.waitKey(1) & 0xFF == ord('q'): break

    cv2.destroyAllWindows()

    def select_image(): current_directory = os.getcwd() # Get the current directory filetypes = ( ('JPEG files', '.jpg'), ('JPEG files', '.jpeg'), ('All files', '.') )

    filename = filedialog.askopenfilename( title='Select an Image', initialdir=current_directory, # Start in the current directory filetypes=filetypes )

    if filename: return filename else: messagebox.showerror("Error", "No image selected.") return None

    def get_duration(): def submit(): nonlocal total_duration try: minutes = int(minutes_entry.get()) seconds = int(seconds_entry.get()) total_duration = minutes * 60 + seconds if total_duration > 0: duration_window.destroy() else: messagebox.showerror("Error", "Duration must be greater than zero.") except ValueError: messagebox.showerror("Error", "Please enter valid integers.")

    total_duration = None duration_window = tk.Toplevel() duration_window.title("Input Duration")

    tk.Label(duration_window, text="Enter duration:").grid(row=0, columnspan=2)

    tk.Label(duration_window, text="Minutes:").grid(row=1, column=0) minutes_entry = tk.Entry(duration_window) minutes_entry.grid(row=1, column=1) minutes_entry.insert(0, "12") # Set default value for minutes

    tk.Label(duration_window, text="Seconds:").grid(row=2, column=0) seconds_entry = tk.Entry(duration_window) seconds_entry.grid(row=2, column=1) seconds_entry.insert(0, "2") # Set default value for seconds

    tk.Button(duration_window, text="Submit", command=submit).grid(row=3, columnspan=2)

    # Center the duration window on the screen duration_window.update_idletasks() # Update "requested size" from geometry manager width = duration_window.winfo_width() height = duration_window.winfo_height() x = (duration_window.winfo_screenwidth() // 2) - (width // 2) y = (duration_window.winfo_screenheight() // 2) - (height // 2) duration_window.geometry(f'{width}x{height}+{x}+{y}')

    duration_window.transient() # Make the duration window modal duration_window.grab_set() # Prevent interaction with the main window duration_window.wait_window() # Wait for the duration window to close

    return total_duration

    def wait_for_start(image_path): global window_name, window_width, window_height

    original_image = cv2.imread(image_path) height, width, _ = original_image.shape

    window_name = 'Threshold to Black' cv2.namedWindow(window_name, cv2.WINDOW_NORMAL) cv2.resizeWindow(window_name, width, height) cv2.imshow(window_name, np.zeros((height, width, 3), dtype=np.uint8)) # Black window print("Press 's' to start the threshold effect. Press 'F11' to toggle full screen.")

    while True: key = cv2.waitKey(1) & 0xFF if key == ord('s'): break elif key == 255: # F11 key toggle_fullscreen()

    def toggle_fullscreen(): global window_name fullscreen = cv2.getWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN)

    if fullscreen == cv2.WINDOW_FULLSCREEN: cv2.setWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_NORMAL) else: cv2.setWindowProperty(window_name, cv2.WND_PROP_FULLSCREEN, cv2.WINDOW_FULLSCREEN)

    if name == "main": current_directory = os.getcwd() jpeg_files = [f for f in os.listdir(current_directory) if f.lower().endswith(('.jpeg', '.jpg'))]

    if jpeg_files: image_path = select_image() if image_path is None: print("No image selected. Exiting.") exit()

    duration = get_duration() if duration is None: print("No valid duration entered. Exiting.") exit()

    wait_for_start(image_path)

    # Get the original ```

    25
    The perfect way to find the police 🚨!
    youtube.com - YouTube

    Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.

    Basically, you run a PBS style fund raising campaign. But it's so effective because you got a gun, you are law enforcement and the donors all need to drive that one highway. Say you need $10,000,000.00 just stop 10million people who happen to have 1 dollar. Or if you stop 100k people who happen to have 100 bucks, or 10k people who have 1000 bucks with them, you're good to go!

    So PBS just needs a good cop car donation and a couple of fake badges to get their funding too!

    4
    Council’s £51m car park can’t be used … because there’s no road in
    www.thetimes.com Council’s £51m car park can’t be used … because there’s no road in

    The commuter belt scheme in Oxfordshire has 850 spaces but no access to the nearby main road

    Council’s £51m car park can’t be used … because there’s no road in

    cross-posted from: https://feddit.uk/post/17001898

    > > A car park built for £51 million in Oxfordshire is lying empty because a council cannot connect it to the main road. > > > >Planning problems are preventing motorists from using the 19-acre park and ride scheme in Eynsham until funding is secured to link it to the A40. > > > >Aerial photographs show the 850-space site devoid of vehicles, despite its finished glossy tarmac, bus stops and green spaces. All major construction work was finished in January, followed by landscaping last month. > > > > Although the car park could be cut off from the main road until 2027, local authorities have contracts to maintain it every week, cutting the grass and topsoiling and seeding when necessary. > > Archive

    8
    Scam speeding ticket

    I searched for the email address and although it's a scam, it's white listed in some random place

    18
    Email wowsers continue

    Well I set up my email server thru cloudflare and managed to receive emails directly to my basement server. I could live with this and the various security threats incoming thru my unifi. But one thing is for sure, my wife won't have any of it. She's a total backwards thinking give me windows or I'll jump kind of Gal. So I found that I could run a dockerized Thunderbird instance and I thought ... Wow! I can just login to it from my computer or my phone, Surely this is it! I can have emails backed up from Gmail to my server and just access my server! And you know what? It works! I can access my Gmail on my browser! It's beautiful!.... But then I login through my phone and wow! I can access my Gmail! Thru my phone! Except the interface is the same as my desktop. It's literally a VNC to the server. I can login to it on my desktop and watch the mouse move as I move my finger on my phone! Great party trick, but....the text is microscopic. So is there another way to get IMAP and SMTP interface to Gmail, archiving all emails on my own server? I literally don't want any of my emails to live on a Gmail server, but I want to be able to send receive and search emails I previously passed through Gmail but now live on my server.

    23
    They almost got me!

    https://www.dailymail.co.uk/sciencetech/article-13789569/Ever-used-Google-Chrome-incognito-mode-entitled-5-000-compensation-heres-claim-it.html

    One day soon probably.

    8
    ruzzia is the only country unaware of the gun problem in the US
    www.newsweek.com Russia issues WW3 warning to US

    "The West does not want to avoid escalation. The West…is asking for it," Russian Foreign Minister Sergei Lavrov said.

    Russia issues WW3 warning to US

    Unless they plan to drop some bombs over our heads I don't see how WW3 with the US involved would result in better accomodations for the ruzzians.

    I'm a lazy gunless asshole typing away from my couch. But if some grade a asshole from ruzzia came to bother me, I probably could easily run downstairs and grab any one of many power tools capable of removing ruzzians body parts.

    I believe the Ukrainian defense is going to kick ruzzians ass pretty good. Hopefully soon we'll see putin coming out of a smokey hole in the ground on a grainy YouTube video. putin is the real reason for the war. Removing him might bring up a few more people like him, but those can be removed since the public won't be behind them.

    24
    One Note enshitification

    It used to be the Greatest advancement in Microsoft's purchased software ever! Plus teams...

    Now I got One Note which should be renamed "Several Notes"

    There's the one from the browser, the one from One Note student version, the pro version, the purple tab version, the gray tab version etc. and you can make any of them look different. You can have vertical tabs or horizontal tabs. It's like Linux except there's no actual functionality difference, it's just so different that you can't fucking follow what anyone else did on the same exact page. In the browser it might be highlighted with Roman Times font, yours might look like Arial font with no highlight but the background is light blue.

    Anyway the app is a total trainwreck. It's still very useful but it's less effective if the thing looks and behaves so different that I don't understand where we're at on the page each time a member of my team presents it via teams.....

    and thanks Microsoft for not having a simple button to maximize the page being presented. 5 minutes off every meeting is spent figuring out how to maximize the God damn content followed by or preceding a good 10 minutes of figuring out which is the mic or sound card or monitor you're supposed to be presenting on, followed by ...can you see it yet? Can you hear me? Can I hear them, I'll just rejoin, can you make it bigger? You can make it bigger if you remove the waste of space that is the big ass blocks with everyone's name on them! Ok how? Click here! No, go to view. I swear I've noticed it under preferences! No this is the browser version! Why can't It just install it on everyone's computer and all presentation rooms? Blah blah...ok we're ready to present but we're 5 minutes over. Thanks everyone who came!

    Thanks bye!...bye!, bye! Bye guys!..... Hold on. A sec I didn't even come! What kind of company is this? The slide wasn't even that sort of material that makes me come. Well fine bye! I'll just come later to the Sears catalog.....who was that guy? It will check!

    All joiners leave the meeting, the stage closes it's curtains abruptly....a woman still crying in the back corner...mhaaa! It's so good because it's true!.

    The END

    26
    This $149 RISC-V Tablet Runs Ubuntu 24.04
    www.omgubuntu.co.uk This $149 RISC-V Tablet Runs Ubuntu 24.04 - OMG! Ubuntu

    DeepComputing has unveiled a new version of its DC-ROMA RISC-V tablet — and this one runs Ubuntu! The DC-ROMA RISC-V Pad II boasts a 10.1 inch

    This $149 RISC-V Tablet Runs Ubuntu 24.04 - OMG! Ubuntu

    The link makes it seem like crap hardware, and sure 4gb of ram is really crappy. But how does this compare with one of my kid's Fire tablets? Does anyone have opinions on that?

    53
    BS from MS about AI helping an MD

    Let's imagine the possibilities and theoretically demo the results based on current knowledge:

    1. yes AI made the process fast and the patient did not die unnecessarily.

    2. same but the patient died well.

    3. same but the patient died.

    4. same as either 1, 2, or 3 but AI made things slower.

    Demo:

    Pharmacy: Patient requires amoxicillin for a painful infection of the ear while allergic to penicillin:

    AI: Sure! You will find penicillin in Isle 23 box number 5.

    Pharmacy: the patient needs amoxicillin actually.

    AI: Sure! The Patient must have an allergic reaction to more commonly used anti inflammatory medications.

    Pharmacy: actually amoxicillin is more of an antibiotic, where can I find it?

    AI: Sure! While you are correct that amoxicillin is an antibiotic, it is a well studied result that after an infection inflammation is reduced. You can find the inflammation through out the body including the region where the infection is located.

    Pharmacy: amoxicillin location!

    AI: Sure! Amoxicillin was invented in Beecham Research Laboratories.

    37
    AI phishing is going to end email

    I'm currently trying to exit Gmail with all my emails if possible. However many comments are about why I shouldn't host my own server. So it got me thinking that there should be a new kind of email system not based on all the previous crud from the before times that we still use today.

    And indeed, it looks like AI will be the driving force that ends email just like spam did the telephone. Sure the telephone is still around but no one uses teleconferencing anymore for example. We use teams and zoom and such other shitty pay services. So the pool is prime to reinvent email. The users may not see a big difference maybe, but the tech behind it may hopefully be simplified and decentralized as it was meant to be.

    6
    Email server thru cloudflare

    It's a bad title, but I'm trying to figure out how to describe what I want.

    First, I got my photoprism working thru cloudflare. Now, on the same domain I would like an email address.

    So mysite.com gets routed to 56.654.234.12 let's say by cloudflare such that a global user never sees my ip. But mail.mysite.com that's different, they don't proxy email so if you do a reverse lookup you can find the origin IP.

    I heard about tunnels so I stupidly signed up for that, only to learn that a tunnel just lets you into an internal network. So an SMTP server can't get emails from outside that way.

    Ideally, somehow I could setup one user at Gmail or proton mail, then somehow setup the same or different user...user1@mysite.com and I could then use mailu, mailcow, mail docker to house my user1@mysite.com which routes mail thru Gmail or protonmail. I know all this makes little sense because I don't know the proper way, so that's my question for you smart people who have done this twice over. Could someone point me to the best way of setting up a local mail server that routes thru cloudflare but is not easily reverse looked up? Is that even a problem at all?

    23
    InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)WE
    werefreeatlast @lemmy.world
    Posts 34
    Comments 2.1K