• 0 Posts
  • 32 Comments
Joined 1 year ago
cake
Cake day: July 1st, 2023

help-circle

  • I’ve been ranting about this a lot lately, but as the owner of mspencer.net (completely useless personal domain, but is 199 days older than wikipedia.org for what it’s worth)…

    There is sort of a way to do that, but it’s still labor intensive so not a lot of people do it. Movements to investigate are homelab and selfhosted. Homelab equipment is old (extra power-hungry for the capability you get) or expensive. Self hosting requires a bunch of work to stand things up the way you want it.

    Biggest barriers to self hosting - or hosting through your nearest nerdy relative - are the following:

    Free ad-supported offerings (with the privacy and terms and conditions impacts you describe) are better and easier, so they out compete DIY options. If a nerdy family member offers to host forums and chat for your community club or whatever, the common response isn’t gratitude, it’s “That’s stupid, I’ll just use Facebook.” Without that need and attention, volunteer projects get way fewer eyeballs and volunteers are way less motivated.

    Security is difficult to figure out. Project volunteers have enough on their plate just helping users get their stuff working at all. Helping novice users secure their installations is so much extra work.

    Many volunteers feel taken advantage of if they produce something that could help companies make money better, when they don’t share any of the money they make through donations or support arrangements. Similarly, many open source projects get taken over by for-profit companies who diminish efforts to make their open source offerings easier to use for free. (They want companies to buy support contracts, even if it means frustrating use by private individuals without kilobucks to spare.)


  • Advice from most to least certain: If you want very long standby time (a reliably perfect first print after literally months of inactivity) and you have the space for an ugly cube of a printer, laser is the only option. Ink tank printers have unexpected wear parts, like internal ink sponges.

    Black and white laser is stupid simple. Color laser “prints” four times in series onto an intermediate transfer belt (ITB) and then puts that onto the paper, still super reliable but bulkier, and your prints get watermarked with yellow dots because FBI or something. I’d go color.

    Toner lock-in is becoming more common, not just for HP. If your page count is going to be low, just pay full price for name brand toner. If you don’t want to do that, like your use case could involve printing a single page or entire binders of paper between months of inactivity, read on.

    Start your printer research by shopping for cheap off brand toner, get a sense for what they’re selling the most of and what that’s compatible with, and see what printers they support.

    Some aftermarket toner just works, out of the box, because the printer isn’t crazy locked down. Those cartridges have normal sounding instructions. Some aftermarket toner requires you to transplant a chip from a first party cartridge, and their instructions include this. Avoid those printers.

    And consider used printers. I have a used HP LaserJet Pro MFP M477fdw that I love, but I would never ever buy another HP printer, especially not one made later than this one. Be very careful before buying any HP printer, especially one made in the past 6-8 years. Even wear items (like the ITB) have modules with firmware and compatibility requirements, and I’m worried I could be one replacement component away from suddenly having a locked down printer.


  • Oh boy, Michael Spencer Jr., the ghost of GitHub past! With a bio as empty as your follower count dreams, you’ve managed to accumulate a whopping three followers—congratulations on that ambitious social life. Your repos are a trip down memory lane for those still stuck in 1982, complete with assembly language nostalgia. It’s like you’re interviewing for a job in a museum of coding flops.

    Your “BenedictionGame” is a masterpiece of zero stargazers—truly a testament to your extraordinary ability to create absolute nothingness in a world craving entertainment. And let’s not overlook your “CaseSwapper” that swaps cases. Wow, riveting stuff! At least your repos prove you can follow the lead when it comes to forking other projects, though I’m disappointed to see you haven’t pirated the skill to write something original.

    In summary, your profile is a stark reminder that not everyone is cut out for coding fame. Maybe it’s time to swap some skills instead of just cases.

    —————

    Ok that’s pretty funny :-) I was hoping it would detect notable positive things and roast them like negatives, though.


  • I self host, on a personal domain I registered in June 2000. Mostly followed a 13?-part tutorial at I think linuxbabe dot com, was the first one that seemed to genuinely be trying to help you set up a good environment, not just as a way to say “doesn’t this sound difficult? Impossible even? Coincidentally you can pay us to do this instead.” Except I put everything on its own VM instead of all on one. (Even a VM for just opendkim, which was maybe not necessary.)

    Mostly iPhone mail app and/or Roundcube webmail.

    Yes highly recommend it, for receiving email. Greylist blocks like 99.8% of spam. Sending works fine for me, because it’s an old domain with history. I don’t think brand new domains have the same experience.


  • As a Flight Simulator / study-level airliner add-on enjoyer I want to point out / supplement the above, that the main point of a real-world airline transport pilot is handling exceptions and problems. Sure I can American-Truck-Simulator-Airbus-Edition my way through a flight from cold and dark at one gate to cold and dark at another. I do not know how to handle failures.

    Makes for a fun shower thought. And a fun exercise in task saturation, going into the menu and triggering a bunch of random failures. You usually need a bunch for a fun challenge because, in a study level thingy, the list of potential faults is huge and most of them are just a reduction in redundancy, a “crew awareness” item, or loss of a convenience feature. But I do not belong on a flight deck under any realistic circumstance.

    Gives you huge appreciation for how massively redundant airliners are, how much “we already thought this through and here’s what gives you the best chances at a safe outcome” research went into every checklist and procedure, and how much study and practice goes into training and maintaining every fight crew member, cabin crew included.



  • I think this was asked in good faith, but is unfortunately unlikely to produce useful discussion. The down-voters are right but the original poster shouldn’t feel bad for asking.

    Short answer: it’s ok to say “maybe, we have no way to know, moving on” when something is unknowable like this.

    Longer answer / topic hijack: as voters there are many contradictions in our system, and important and necessary information is often hidden from us. Doing the best we can might take various forms:

    • choose government ran by the least-evil people possible and trust the imperfect system formed by the structured interactions of those people

    • choose government that follows policies that align the best with your values or your ethical understanding of the world

    • choose government that is best able to reduce harms and injustices, in a practical and realistic way that anticipates the acts of other factions

    • choose government led by people you hate the least — no, this one is toxic, lazy, easy to manipulate with lies. Manipulators know the longer they keep people hot with emotion the less time people spend learning.

    Please do not reply to this with hatred or calls for strong emotion. Leaders at any level can be deliberately evil, sure, but it’s never helpful to dehumanize entire clusters or demographics.


  • Also, the development and evolution of these open technologies relies on human interest and attention, and that attention can be diminished, even starved, by free, closed offerings.

    Evil plan step 1: make a free closed alternative and make it better than everything else. Discord for chat, Facebook for forums and chat/email, etc.

    Step 2: wait a few years, or a decade or more. The world will largely forget how to use the open alternatives. Instant messengers, forums, chat services, just give them a decade to die out. Privately hosted communities, either move to Facebook, pay for commercial anti-spam support, spend massive volunteer hours, or drown in spam.

    Step 3: monetize your now-captive audience. What else are they going to use? Tools and apps from the 2000s?









  • And those jobs are critical to the process of making new developers.

    An important part of my education - the part that grad school can’t teach you, you have to learn it on the job - was being new and terrible, grinding on a simple problem and feeling like a waste of money. Any of the experienced guys sitting behind me could have done this thing in a few hours but I’ve been working on it for a week. “What’s the point? Any minute now they’re going to tap me on the shoulder and tell me I’m done, it’s time to go find another job.”

    But that never happened.

    Those early problems weren’t fun. At home I would have never chosen to work on them. I’d leave them for someone else. “But now that I’m collecting a paycheck for it, this isn’t up to me. I have to work on it. I can’t give up. I can ask for help, but I need to show my peers that I belong. I can solve difficult problems. I can persevere.”

    As a mediocre professional developer, I had to struggle to learn that. I wasn’t getting far on my own, without mentorship and motivation. Homework, pursuing degrees, wasn’t getting me there. (And even now, I seem to have about two weeks of attention span, for projects at home.)


  • As a professional C# developer since 2012, I’d say a programmer needs four kinds of knowledge. As an organizational user of Github Copilot for a couple months, I’d say AI tools can help with one, maybe two of those.

    Understanding language and syntax, so you can communicate the ideas in your head to the machine accurately: AI is fairly good at this, will certainly get a lot better.

    Understanding algorithms and data structures, well enough to compare and contrast, and choose the most appropriate ones for each circumstance: AI can randomly select something, unless it’s a frequently solved problem. I don’t expect this to get better except for the most repetitive of coding tasks.

    Understanding your execution environment and adapting your solutions to use it well: I don’t see the current generation of AI tools ever approaching this. I don’t think they have context for how a piece of code is used, when trying to learn from it. One size fits all is not a great approach.

    Understanding your customer’s needs and specific problems, and creating products, not code. Problem domains and solutions are a business’s entire reason for existence. This is all kept confidential (and outside the reach of an AI training data set) for competitive reasons. As a human employee, you get to peek behind the curtain and learn these things yourself.