• Activity
  • Votes
  • Comments
  • New
  • All activity
  • Showing only topics in ~comp with the tag "advice". Back to normal view / Search all groups
    1. Is this backup solution fine?

      I decided to set up automatic backup of my files from my phone and laptop to Backblaze B2. I didn't find a good solution to sync photos from my phone directly to Backblaze, so I decided to do the...

      I decided to set up automatic backup of my files from my phone and laptop to Backblaze B2. I didn't find a good solution to sync photos from my phone directly to Backblaze, so I decided to do the following:

      1. Sync photos from my phone to my laptop using Syncthing
      2. Back up those photos as well as other files from the laptop to Backblaze using Restic

      Is this backup solution fine, or are there any issues with it?

      Also, most of the stuff I need to back up, even on my laptop, are photos/videos. Is there a point in using Restic with it's deduplication and incremental backups for this use case, or should I just use Rclone directly? I'd assume deduplication won't save me much storage because photos generally don't have similar byte chunks, although I may be wrong.

      0 votes
    2. Is there a good S3-compatible datastore for a hobbyist?

      I've read nice things about Amazon's S3. There are some compatible implementations from other major vendors like Google and Cloudflare. There are projects that automatically back up and replicate...

      I've read nice things about Amazon's S3. There are some compatible implementations from other major vendors like Google and Cloudflare. There are projects that automatically back up and replicate a sqlite database using S3. Some people have backed up Google Photos to S3.

      But I've never used any of them. What would be a good way to get started? Amazon or another vendor? (And does this make sense at all?)

      22 votes
    3. Any good alternatives to VirtualHere?

      I'll start by saying that there's nothing wrong with how VirtualHere functions. I have used it for a couple years on my nvidia shield while streaming games from my pc and it's perfect for what I...

      I'll start by saying that there's nothing wrong with how VirtualHere functions. I have used it for a couple years on my nvidia shield while streaming games from my pc and it's perfect for what I need. The problem I have encountered is that I'm no longer using the shield and have transitioned my entire setup to use a raspberry pi 4 instead because the shields wifi becoming more unstable with every update nvidia pushes.

      I would love to continue just using VirtualHere, but I've just learned that the developer does not allow a license transfer for any reason so my $50 license is completely useless now that the shield is gone. Knowing that the license is non-transferable makes me unlikely to ever spend money on it again because I cannot guarantee how long these devices will last and $50 is far too steep for a single device private use license on any software. My primary use case is with a moonlight/sunshine setup which can handle the controller inputs just fine after a little bit of input file tinkering.

      The things I absolutely cannot figure out how to make work without VirtualHere is a Dolphin bar that is used for Wii/WiiU games and the gamecube controller to usb adapters. I've seen people mention using usbip, but I haven't been able to find any reasonable explanation or documentation on how to actually use usbip without fully configuring it every time the device reboots.

      I'm not against the idea of a more manual setup. I just need something that once it's configured will allow passthrough of any usb device from a raspberry pi to a windows machine and not charge me a fortune every time I need to swap hardware in the future. I'd be willing to pay for similar software if it was a little more reasonably priced for what I'm doing.

      5 votes
    4. Request: Ideas and tips for creating a portfolio to get a web developer job

      Hi everyone — I am trying to get a job in web development after a decade in a mostly unrelated field. I am looking for ideas and tips to create a portfolio to send with applications. All of the...

      Hi everyone — I am trying to get a job in web development after a decade in a mostly unrelated field.

      I am looking for ideas and tips to create a portfolio to send with applications. All of the websites I worked on ages ago have been taken offline or redesigned by someone else. I do have a website I created for my music, but it’s just vanilla HTML. I also have a personal website which is really the only thing I have to show.

      I know HTML/CSS quite well, but that’s basically it. I’ve worked with WordPress for years but only just recently began learning enough PHP to do anything custom. I don’t really know Javascript much at all.

      I have quite a few paid courses through Udemy for all these different areas but even as I have completed them, I don’t feel confident in knowledge of the different languages. These courses nearly always come with projects that the students create with the instructor. Should I use these as part of my portfolio? For some reason I never felt right doing that, since I didn’t build it myself.

      So I guess I’m curious (if any of you are web developers) if you have suggestions for how to fill out a portfolio without any previous work examples.

      Side note: I wasn’t sure how to word the title or my question particularly well so please edit it more clearly, Those Who Can Edit.

      edit: thank you to everyone who took the time to reply to this. it’s all been very helpful and i appreciate everyone’s input immensely!

      23 votes
    5. Cloud Servers for the Broke

      Just wanted to put this out there as a little PSA in case it's helpful: if you want a cloud server but don't wanna pay anything, Oracle's Free Tier is a life saver. Discovered it a year ago and...

      Just wanted to put this out there as a little PSA in case it's helpful: if you want a cloud server but don't wanna pay anything, Oracle's Free Tier is a life saver. Discovered it a year ago and couldn't be happier I did, since I'd never pay for cloud computing otherwise 😭.

      Quick Specs:

      For free you get:

      • 24/7 uptime
      • 200gb of storage space
      • 24GB of RAM
      • 4 OCPUs
      • 4 Gbps Bandwidth

      That's been more than enough for me and honestly feels too good to be true. Some things I've done with this:

      If anyone has any other ideas for cool projects I could self host, please do tell I'm curious what else I could do :)

      48 votes
    6. How do I get started in self hosting?

      I'm curious on how to get started in self hosting. I have computer experience, being an Android Developer, but I hardly have experience in Linux and backend/networking work. I've been wanting to...

      I'm curious on how to get started in self hosting. I have computer experience, being an Android Developer, but I hardly have experience in Linux and backend/networking work.

      I've been wanting to start up a Plex/Jellyfin server for a while, and I have an old system sitting around with a Ryzen 1700 with a graphics card in there as well that's been begging for attention, and maybe I can throw on a Minecraft server in there as well. Since I travel a bunch, it would be nice too to be able to access my media for when I'm traveling, or to let my parents or friends access some shows if they so desire!

      What I'm worried about is exposing my network to the internet basically. I used to run a Minecraft server with port forwarding and such on a personal computer but now I'm realizing that that's probably a bit unsafe lol.

      Basically, are there any guides that I can look at, or any of your own experiences that could potentially help me or anyone who's interested?

      28 votes
    7. First time building a PC, need some advice

      I'm looking at starting to do a PC build and I'm a bit lost on which way to go CPU wise. Proposed use case: linux, some gaming (usually older games), possibly trying to learn home lab/self hosting...

      I'm looking at starting to do a PC build and I'm a bit lost on which way to go CPU wise.

      Proposed use case: linux, some gaming (usually older games), possibly trying to learn home lab/self hosting types of things probably in a VM but nothing really heavy. I do want to run Starfield when it comes out and maybe be able to try VR some time in the future.

      I'd like to have a bit of a future proof system while getting value for my money, as in I'd like to spend less but I will spend more if it matters. This is where I'm sort of getting lost.

      I tend to lean towards Intel because VM's and multitasking should work better (I think) but people seem to believe that AMD is better bang for the buck?

      I feel like I'm likely not going to swap CPU's, but RAM, GPU, and storage are easy to swap so I'm not to worried.

      25 votes
    8. How safe am I? (self hosting)

      I have a server running Unraid at home. I have ~20 docker containers running at the moment with almost all of them only available within my local network. I just stood up an instance of Seafile on...

      I have a server running Unraid at home. I have ~20 docker containers running at the moment with almost all of them only available within my local network. I just stood up an instance of Seafile on the server to act as a google drive replacement. Still in the early test phase before I commit to throwing important stuff on there. I have my domain proxied through Cloudflare so none of my local ports are exposed to the internet. Seafille has complicated passwords set for admin and user accounts (generated with Bitwarden, hot damn I love that app). I also enabled 2FA on each account. I know that I can further clamp it down using some of Cloudflare's extra access controls but in my admittedly limited experience, those all cause issues getting an app to authenticate with the service. Web apps don't have this issue of course.

      So am I ok with this setup? I can encrypt the data before uploading easily as it's a built in feature of Seafile. Or would it be better to just run with local only and run a VPN to access when I'm outside?

      I figure just about any effort along these lines I trust more than Google with my data. But I may be overconfident in that perhaps. I'm still learning the ropes with Linux and self-hosting in general.

      17 votes
    9. Graphics glitch on new install of Ubuntu

      So I have an old MacBook Pro (mid-2014) Core i5 which I've just installed Ubuntu 22.04.2 on. Most things are working fine but the screen randomly flickers and then goes black and then after...

      So I have an old MacBook Pro (mid-2014) Core i5 which I've just installed Ubuntu 22.04.2 on. Most things are working fine but the screen randomly flickers and then goes black and then after varying lengths of time will pop back on again. I've been googling around and found lots of instances of similar graphics glitches but can't quite find a solution.

      Any suggestions?

      7 votes
    10. MATLAB learning resources for software engineers

      I'm starting grad school in neuroscience/biomedical engineering soon, and one of my most dreaded parts of it is inevitably having to develop Matlab code. I understand why people use it -- it's...

      I'm starting grad school in neuroscience/biomedical engineering soon, and one of my most dreaded parts of it is inevitably having to develop Matlab code. I understand why people use it -- it's arguably best in class at a lot of engineering tasks, and the matrix-first approach of the language makes it very fast to prototype things if you think like a mathematician/engineer.

      However, the language also seems to actively discourage good software practices, and many frequently used scientific projects have atrocious code. Think python dependency management is bad? How about NO DEPENDENCY MANAGEMENT? Yes, that's right, the way you share code in matlab is by importing collections of loose files from github/matlab file exchange. The Matlab neuroimaging code that I have worked has also frequently abused the workspace to share state implicitly between scripts, which makes the code virtually incomprehensible. Instead of using packages to create namespaces, common practice is give function names a prefix and import them into the global namespace.

      I know there's multiple large companies that rely on Matlab for their products, so it must be doable; I just haven't seen it for myself yet.

      Do you guys have any experience developing in Matlab, and if so, are there any good resources to learn how to build robust software in it? What are some open source projects that have good Matlab code?

      16 votes
    11. Newbie here looking for advice on how to get into Programming/CS by building a project

      Been lurking for a week on tildes now and I am really glad this place exists. The crow here is exactly what I have been missing on Reddit for a while now. Having said that, the whole Reddit...

      Been lurking for a week on tildes now and I am really glad this place exists. The crow here is exactly what I have been missing on Reddit for a while now.

      Having said that, the whole Reddit situation has some-what motivated me to get the balls rolling on an idea that I have had for a while and I am looking for advice on the same.

      I have often heard this phrase "Learn programming by building" but whenever I dive in to the resources, I fall flat due to the information overload and the general abstractness that the field has (I appreciate abstractness but here it demotivates me) and I have never found a proper resource that I could follow to actually build something instead of just blindly following tutorials and playing with them.

      So, my question is how do I translate "learn by building a project" into a practical framework.

      I know of 100 days of swift and I really like that approach however I don't think I want to start with swift or build an iOS app right now.

      24 votes
    12. Best, favorite, and/or interestingly-different resources to learn (or re-learn) Git?

      Pretty much, the title. I have been coding professionally for over 2 decades, been using Git for almost as long ... and to this day, it still feels alien and uncomfortable to use. I keep feeling...

      Pretty much, the title.

      I have been coding professionally for over 2 decades, been using Git for almost as long ... and to this day, it still feels alien and uncomfortable to use. I keep feeling like I am relearning it all over again. I would really like to find some kind of different resource that helps me to make Git "stick" in my brain, and become more intuitive. Maybe that's just not possible, but I keep hoping.

      Meanwhile, my roommate is just starting her journey into programming, and her class just started teaching Git ... and I'm eavesdropping a bit, and they're teaching it okay, but I'm sure there are better tutorials out there for a newcomer.

      I am aware of -- and currently reading my way through -- both this recent tildes post and the various tutorials mentioned in it. But I am looking for other recommendations, as well ... and I bet I'm not the only one.

      Thanx in advance.

      19 votes
    13. Can someone ELI5 how lemmy instances work?

      Some of the things I'm concerned about are browsing across unconnected instances - will I need twenty accounts to follow all of the groups? What is the likelihoood of an instance dissapearing? How...

      Some of the things I'm concerned about are browsing across unconnected instances - will I need twenty accounts to follow all of the groups? What is the likelihoood of an instance dissapearing? How do you gauge the culture of an instance? Is the https://redditmigration.com/ actually being populated by real admins of those subreddits? Are there any gotchas from joining an instance that I should be aware of? Thanks!

      21 votes
    14. When consuming an API with state rate limits, how should one handle not exceeding them?

      My typical approach is one that I believe is pretty common: Reading the response header for current count and waiting if the limit is reached. However, I am currently working with a couple of APIs...

      My typical approach is one that I believe is pretty common: Reading the response header for current count and waiting if the limit is reached.

      However, I am currently working with a couple of APIs which don't implement that and are currently set up with rate limits on an honesty system.

      Is it a case of throwing sleep statements into you code, or using some kind of "bucket" and "lock" system?

      I'd be interested to see any simple implementation people have used (the simpler the better).

      9 votes
    15. [PC build] - AM4 or AM5 for low-power non-gaming build with lots of storage?

      My main needs are: Not too pricey Very low idle power At least 6 x SATA I don't need a beefy GPU (the iGPU will be more than I need) or lots of CPU performance (I'll probably pick one of the...

      My main needs are:

      • Not too pricey
      • Very low idle power
      • At least 6 x SATA

      I don't need a beefy GPU (the iGPU will be more than I need) or lots of CPU performance (I'll probably pick one of the cheapest compatible CPU).

      AM5 is still pretty expensive and the cheap(-ish) motherboards mostly only have 4 x SATA so I would need an extension card. But I'm considering it because 5nm vs 7nm should improve the power efficiency, right? What kind of improvements should I expect there?

      Are there any other reasons to go for AM5? I might prefer it for emotional reasons (the lastest and greatest always feels better) so I could use some input from kind strangers.

      I could also just wait a bit longer. When should I expect the low-end AM5 comonents to become cheaper?

      13 votes
    16. I'm planning my first PC Build, does anyone have some advice/input on what I've got so far?

      Please help lol Type Item Price CPU Intel Core i7-12700KF 3.6 GHz 12-Core Processor $239.99 @ Newegg CPU Cooler Noctua NH-D15 chromax.black 82.52 CFM CPU Cooler $119.95 @ Amazon Motherboard Asus...

      Please help lol

      Type Item Price
      CPU Intel Core i7-12700KF 3.6 GHz 12-Core Processor $239.99 @ Newegg
      CPU Cooler Noctua NH-D15 chromax.black 82.52 CFM CPU Cooler $119.95 @ Amazon
      Motherboard Asus ROG STRIX Z690-A GAMING WIFI D4 ATX LGA1700 Motherboard $299.99 @ Amazon
      Memory \*Corsair Vengeance LPX 32 GB (4 x 8 GB) DDR4-3200 CL16 Memory $94.99 @ Amazon
      Storage Samsung 970 Evo Plus 1 TB M.2-2280 PCIe 3.0 X4 NVME Solid State Drive $54.99 @ Amazon
      Storage Seagate Barracuda Compute 2 TB 3.5" 7200 RPM Internal Hard Drive $49.99 @ Amazon
      Video Card MSI RTX 3060 Ventus 3X 12G OC GeForce RTX 3060 12GB 12 GB Video Card $289.99 @ Amazon
      Power Supply Corsair RM750 750 W 80+ Gold Certified Fully Modular ATX Power Supply
      Prices include shipping, taxes, rebates, and discounts
      Total $1249.88
      *Lowest price parts chosen from parametric criteria
      Generated by PCPartPicker 2023-06-06 10:27 EDT-0400
      16 votes
    17. I want to learn programming

      I currently don't know anything about programming so am considering picking this up on the side in case I loose my current job and need a backup plan. Anyone knows any good books or online courses...

      I currently don't know anything about programming so am considering picking this up on the side in case I loose my current job and need a backup plan. Anyone knows any good books or online courses or anything else for self-learning?

      My friends said programming is too broad a subject and what you need to learn depends heavily on what fields you want to go in, which I'm ashamed to admit also know nothing about. So I guess I need some career advice too if possible.

      22 votes
    18. Resources for learning to code

      Tildes is pretty technically minded place, so I figured this would be a good place to get some advice. Programming is something I've taken a class or two on (though it's been long enough that I'd...

      Tildes is pretty technically minded place, so I figured this would be a good place to get some advice. Programming is something I've taken a class or two on (though it's been long enough that I'd like to start from scratch) and I think I have some aptitude for it. The possibility of working from home is also very appealing. However, there are a ton of resources out there, and "learn to code" has been a thing for a while now. Is self-teaching or one of those coding boot camps a viable way to get started in the field? And if so, what are some good resources and practices for getting there? I have some money available, but a degree would be expensive both time and cost wise.

      10 votes
    19. Synology NAS Recommendations & Questions

      Hey everyone! Sorry if this is a long post, but I've done my research and I would like to make a few questions. I've decided that I would like to buy a NAS mainly to storage all of my documents,...

      Hey everyone!

      Sorry if this is a long post, but I've done my research and I would like to make a few questions.

      I've decided that I would like to buy a NAS mainly to storage all of my documents, photos and videos, so that, I can access them from multiple devices and also use it to upload important documents to Backblaze B2. Then, I've actually discovered that I can install a few Docker containers and I could use it as a media server (Jellyfin) and serve the content to my Apple TV (neat!).

      I considered a QNAP (better hardware for the price) but everyone recommends Synology instead (because of the stronger security and better overall software), but to be honest, I'm not sure what should I get.

      My budget would be to buy a NAS (without counting the disks) below €1000. Ideally, €500-600 but I don't mind stretching to the €700 mark, if it is really worth it.

      Spoiler alert: I think, it should be the DS920+ (4-bay) or the DS1520+ (5-bay). I think a NAS above 4-bay is better for future-proofing.

      Looking here in Germany at price comparators, I could buy the DS920+ for €663 and the DS1520+ for €750. But these prices seem to be at an all-time high :(


      Questions & Assumptions:

      0. I'm not sure if the price difference of about €100 is worth the premium to get the 5-bay model. There are only two differences between these two models: The 5-bay has one extra slot, and it has 4x 1 Gbe LAN ports instead of 2x 1 Gbe. All the rest is the same. What is your opinion?

      1. I've read that if you run a few containers (~10) it consumes quite a bit of RAM (~3 Gb), so it should be ideal to have at least 8 Gb. This is the reason I've said that I think I can only choose the DS920+ or DS1520+. Looking at official Synology resellers, these models, seem to come already with 8 Gb, and they are within my budget. Is my research wrong?

      2. These two models, have an encryption engine. I think this is necessary to encrypt my files before sending them to Backblaze, or?

      3. A lot of people seem to say to simply pick Synology's hybrid RAID setup called SHR-1 or SHR-2. I would go the easy way here and pick one of those two. Would you think that is a bad idea, and it is better to pick a specific (standard) RAID? I've read about the long long long RAID rebuild that could happen in some situations, and picking the "right" RAID could decrease the rebuild in days (or weeks!!!!).

      4. In case, I choose a NAS model with Nvme cache slots, most people say it is not worth it to use if you are not running Virtual Machines and the SSD’s "burn" really fast. I have no interest on VMs.

      5. Most people say to pick an Enterprise (Server) HDD instead of a NAS HDD mainly because price is similar in some cases and Enterprise has longer life and warranty. I should also pick a CMR HDD which is helium filled. 5400 rpm would be preferable to 7200 rpm because of the noise. Sadly, all Enterprise HDD's and most of NAS HDD's are 7200 rpm. Is the noise difference that big? The NAS will be in our living room.

      6. Is 8 TB still the best cost per Terabyte?

      7. I was extremely sad to hear that the Hitachi hard drive division was bought by WD. I've had lots of misfortune with WD drives (and let's not forget the debacle with the SMR and CMR drives) and I would prefer not to give money to them, but, nevertheless, I'm still tempted to buy the Ultrastar drives that belonged to Hitachi. Does anyone know if WD kept the components, manufacturing processes, staff, etc., that made these brilliant disks?

      8. Following the HDD topic, what is your experience with Seagate or Toshiba drives?

      9. These two NAS models have the same Intel Celeron CPU, which supports hardware transcoding. To be honest, I don't know in which cases would that happen. It seems if I use Infuse on the Apple TV it would never transcode (and instead direct play) because Infuse would do the transcoding in software. Should I take in account that hardware transcoding is a must-have or a nice-to-have?

      10. Would you recommend having a CCTV system connected to the NAS? Should I dedicate one entire HDD just for the NVR system? Would a standalone NVR device be better?

      11. My last question is: Should I just wait for the new model of the DS920+ or DS1520+? The 20 means it was launched in 2020 (in Summer specifically) and it seems Synology refreshes the model every two years., that means, a new model would be available in Summer this year. Most people say it is not worth the wait because Synology is very conservative in its model updates/refreshes. People are saying that a better CPU will be of course available (do I even need that for my use cases?) and probably upgrade the 1 Gbe LAN ports to 2.5 Gbe or 10 Gbe (10 Gbe I really doubt it). I've read that a 4K stream does not fill a 1 Gbe bandwidth, and you could theoretically have three 4K streams in a single 1 Gbe connection. If all else fails, I could just do a link aggregation of the two ports to be 2 Gbe, or?

      12. Anything I'm forgetting? Should I be careful with something in particular?


      I know I should buy a UPS too, but I think I'll create a separate post regarding this topic because I would also want a recommendation regarding a UPS for my other devices.

      I know that I could actually build my own NAS and use Unraid for the OS. Furthermore, I'm just at a time in my life with too much on my plate (baby and small child) and having something that just works is preferable. When they are older and more independent, I'll have more time to investigate this option :)

      Again, sorry for the long post. Thank you everyone!

      12 votes
    20. Upgraded to Windows 10, what do I need to do to optimize?

      I finally got around to upgrading my mom’s computer (an Asus laptop from 2015) from Windows 8.1 to Windows 10. I’ve already deleted a few apps she won’t use (e.g., Xbox) and disabled/stopped some...

      I finally got around to upgrading my mom’s computer (an Asus laptop from 2015) from Windows 8.1 to Windows 10. I’ve already deleted a few apps she won’t use (e.g., Xbox) and disabled/stopped some unneeded services. What else can I do to keep her computer fast? Particularly interesting in more services I can disable and the best browser/ad blocker combo. Thanks y’all!

      10 votes
    21. What advice would you give to someone who has coded in jquery for years and now wants to gracefully switch to modern js?

      Title says it all. Bootstrap+jquery has been my default route and path of least resistance when it comes to web development. Perhaps because I'm coding since a long time and belong to the old...

      Title says it all. Bootstrap+jquery has been my default route and path of least resistance when it comes to web development. Perhaps because I'm coding since a long time and belong to the old school when modern libraries like react weren't yet invented yet?

      I had tried to meddle with Angular.js 1.0 back in those days but was soon disillusioned! It was cool and cutting edge but highly opinionated. It tried to do so many things under the hood that I soon quit the effort and the word "Angular" was stigmatized in my mind ever since! I don't know how different today's typescript based Angular is but that stigma or phobia prevents me from even looking at that direction!

      React is another cool technology which everyone is talking about and I'm sure it has some merits. But I'm not sure exactly what React brings to my development workflow which jquery doesn't already do. Can you tell me some specific advantages or pros of react over jquery which can motivate me to learn the former and let go of the latter? What should I do?

      7 votes
    22. Docker rootless and Watchtower and some general questions about Docker

      I finally decided to accepted that my interest in working and playing with computers and servers is worth to spend some money on. So I ditched my old box in the corner and with it all my fights...

      I finally decided to accepted that my interest in working and playing with computers and servers is worth to spend some money on. So I ditched my old box in the corner and with it all my fights with my ISP, their NAT, dynamic DNS and all that and got myself a VPS and 1 TB storage solution for less than I would have paid a static IP with my ISP.
      Best decicion ever :-)

      So I'm getting into Docker a bit, just because it's just so easy to get Nextcloud running. I used native Caddy as a reverse proxy, because if I got this "machine" there I will use it for other things as well, so make it right from the beginning. And I used native b.c I did not yet understand bridge/host mode and installing caddy native seems easier.
      Then I fought for one day with CIFS and the nextcloud gui to get the semantics right to get my storage solution accepted as external storage.
      Then I set up Jellyfin with Docker because why not. As well through caddy.
      Then I fucked something up and was like, fuck it, lets start again this time for real :-P
      I wiped my VPS clean (chose ubuntu again) set up and hardend ssh + sudo installed Docker, and then I found out about docker rootless and in the docker docs it's mentioned that it is/might be more secure, so I set up docker rootless and installed all the rest again.
      And then I was like, hmm, do these Docker Images/Containers update themself? Like snap did?
      It seems not, so I looked for a solution and found watchtower. And now I wasted another day trying to get watchtower to run, and I just can not.

      I tried so many variations of the run command now most recently I tried:

      docker run \
      --name watchtower \
      -v ${DOCKER_SOCKET_PATH}:/var/run/docker.sock \
      containrrr/watchtower
      
      time="2023-01-20T01:17:41Z" level=error msg="Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?"
      time="2023-01-20T01:17:41Z" level=info msg="Waiting for the notification goroutine to finish" notify=no
      

      /run/user/1000/docker.sock exists, I own it, i tried connecting to it through docker -e and containrrr/watchtower --host "unix:///run/user/1000/docker.sock"
      I dont now what to try more and I'm at my end with my ddg-fu as well.

      And now while proofreading this, I read everything again and decided to try something again and it just worked...

      docker run \
      --name watchtower \
      -v /run/user/1000/docker.sock:/var/run/docker.sock \
      containrrr/watchtower
      

      seems like the environment variable was not set. But I'm shure I tried that before and it did not work... ghost in a machine :-)

      So thats where I'm at. I have to say it was a lot of fun and doing and learning all that tingled my brain in a funny way :-)

      But now I have some questions for my much more experienced Tildes-friends:

      • Do I even need watchtower? because I'm not actually interested to connect to my server regularly to do the updates/maintenance.
      • Was switching to docker rootless even a good idea? it seemed so reading the docker installation docs, but just now I read the Archwiki and there it seems it has some heavy security implications, so I made the security situation acutally worse by thinking making it better.
      • How do I get this watchtower thing to fucking work? (only if I actually need it)

      I very much appreciate all further/other advise, tricks, recomendations, questions and discussion as well :-)

      4 votes
    23. Are there any android 13 apps that can successfully spoof location (or otherwise thwart stalkerware)

      (apologies if this isn't the correct place to ask, I'm just a bit out of ideas) (content warning for abusive parents) I have a friend who's abusive parents track her location using the stalkerware...

      (apologies if this isn't the correct place to ask, I'm just a bit out of ideas)
      (content warning for abusive parents)

      I have a friend who's abusive parents track her location using the stalkerware app life360.

      she currently runs graphene os (android 13) on a pixel 7 pro.

      in my past android experience there are plenty apps that can spoof your location via developer settings. however they all crash on android 13 (or at least on graphene..)

      see below (none of these work, and they also crash on my android 13 phone, but they have worked for me in the past on like android 9):
      https://github.com/mcastillof/FakeTraveler
      https://github.com/wesaphzt/privatelocation
      https://github.com/warren-bank/Android-Mock-Location
      https://play.google.com/store/apps/details?id=com.lexa.fakegps&gl=US

      if there are no functioning apps that will do this. do you know any other solutions? on other android roms or with root with magisk / xposed? obviously this is less secure than graphene os but the current problem is her parents more than anything else.

      we r also considering a secondary phone just for the stalkerware which can be opportunistically left in innocent places. or just killing the life360 app on occasion when needed. or just letting the phone die when it needs to. But not sure how obvious this might be to the abusers. any insight is appreciated.

      (suggestions like "leave her parents" are good but far easier said than done and while it will eventually happen its not feasible at the moment. That being said if you can provide detail suggestions are welcome)

      Thanks :)

      5 votes
    24. AdminLTE vs Pure Bootstrap for a new web project?

      I'm primarily a freelance backend dev and for the first time venturing on full-stack development of a non-trivial web app on my own, hence I needed some guidance. I've got all the backend stuff in...

      I'm primarily a freelance backend dev and for the first time venturing on full-stack development of a non-trivial web app on my own, hence I needed some guidance.

      I've got all the backend stuff in php/mysql covered, I just want to know what's the best way to create a dashboard (with left sidebar) considering various aspects like long-term code maintenance and support, robustness, etc. Looks don't matter that much as it's a CRUD app but obviously, better is more appreciated.

      Based on my research until now, AdminLTE seems to be the most popular way of doing it among most devs although a few others like material and coreui also seem to have some street cred.

      But another approach I'm considering apart from AdminLTE is to just use pure bootstrap and fiddle up my own sidebar using something like this. That way, I won't be tied to just one Bootstrap version which is used by AdminLTE (v4.6) and troubleshooting will be much easier through google search and StackOverflow. What do you guys think is the right approach?

      5 votes
    25. Anybody have experience writing a scripting language?

      Hello, I've had two ideas for games I find pretty compelling, and both would require different custom scripting languages. Unfortunately, I don't have any formal CS education or experience with...

      Hello, I've had two ideas for games I find pretty compelling, and both would require different custom scripting languages. Unfortunately, I don't have any formal CS education or experience with parsing or scripting languages. So, I'm feeling a bit lost and thinking it'd be a herculean effort, is that correct?

      Has anyone here written their own language or DSL and have any insights, resources, or starting points to share?

      8 votes
    26. Uninterruptible Power Supply (UPS) recommendations and advice

      Hello everyone, I usually do my own research, and then I try to find multiple matching results and afterwards, read specifically in detail about each recommendation, but, I have to be honest that...

      Hello everyone,

      I usually do my own research, and then I try to find multiple matching results and afterwards, read specifically in detail about each recommendation, but, I have to be honest that for UPS recommendations that I’ve seen, it seems to be a very personal recommendation depending on the wattage and connected devices.

      First of all, most people recommend CyberPower or APC, but I’ve also seen some recommendations for Eaton. Is there any other brand that I should be looking into?

      The devices I would like to connect to a UPS would be: desktop, TV, Apple TV, NAS, router and probably my Nintendo Switch.

      There are some general things I've found out while searching that I think I would like some confirmation:

      • I actually think I should buy two UPS's, or? I think just one for the desktop and another one just for the remaining devices, since the desktop uses a lot more wattage.
      • Pure Sine Wave: It does not matter for smaller stuff (routers, etc) but it seems that anything above 70 W, it should use a UPS with this. So, that would mean I need pure sine wave, since my desktop and TV definitely use more than 70 W of power.
      • Some people said to search for a UPS with line conditioning so that you always get a perfect sine wave. Would you agree?
      • USB connection (not a faux USB!) so that the NAS detects the power failure and shuts down gracefully.
      • It is important that the UPS has removable battery for better longevity.

      How would I choose a UPS? Do I need to see the total wattage of all my devices and then pick the UPS accordingly? Anything I'm missing?

      My budget would be up to €100 or €150 in case it is really worth it.

      Thank you in advance for all replies.

      13 votes
    27. Would this be alright for a NAS?

      Right now I've got a shitty WD EX4100 and everything was sort of running along nicely with docker and all, but today it rebooted and decided that it didn't want to do anything with docker anymore....

      Right now I've got a shitty WD EX4100 and everything was sort of running along nicely with docker and all, but today it rebooted and decided that it didn't want to do anything with docker anymore. I got the thing before I got into Linux and its time to move on.

      Someone locally is selling the following for $250CAD

      • Quad core Celeron @ 2Ghz
      • 8GB RAM
      • Fractal Node 304 case
      • 2x WD 2TB Red 3.5" hard drives
      • 120GB Kingston SSD
      • 700 watt semi-modular power supply

      All I run are the following:

      • nzbget
      • sonarr
      • qbittorrent (but I'll switch to a better one)
      • serve up content to my HTPC (running Kodi, so no transcoding or anything)

      I don't need the drives that come with it. I'll be putting in 4x 4TB WD Reds. Right now the box is running Open Media Vault 6, so I'll give that a swing, otherwise it'll just be Ubuntu server.

      How does this sound? I'm not opposed to spending some money on a new NAS, I just want something simple that I don't have to fuck around with too much.


      I ended up going with the HP Proliant

      OS: Ubuntu 20.04.3 LTS x86_64
      Host: ProLiant ML310e Gen8
      Kernel: 5.11.0-43-generic
      CPU: Intel Xeon E3-1230 V2 (8) @ 3.700GHz
      GPU: 01:00.1 Matrox Electronics Systems Ltd. MGA G200EH
      Memory: 32GB
      

      It's pretty good so far. Thanks everybody!

      8 votes
    28. Spiders

      Is anyone here familiar with crawling the web? I’m interested in broad crawling, rather than focusing on particular sites. I’d appreciate pretty much any information about how this is usually...

      Is anyone here familiar with crawling the web? I’m interested in broad crawling, rather than focusing on particular sites. I’d appreciate pretty much any information about how this is usually done, and things to watch out for if attempting it.

      10 votes
    29. How would you write a GUI? Seeking opinions, recommendations, and what to avoid.

      Hi all. I am asking this open-ended question (bottom of this post) because I am considering making contributions to an open-source project that would directly benefit me and other users. Some...

      Hi all. I am asking this open-ended question (bottom of this post) because I am considering making contributions to an open-source project that would directly benefit me and other users.

      Some background:

      I have worked with an engineering simulation software called Ansys MAPDL basically everyday for the last 4 years, in both an academic and a professional capacity. It's not necessarily relevant whether you are familiar to that program to participate in this discussion. The relevant thing is that the GUI for MAPDL is written in Tcl/Tk and I don’t imagine it is going to be modernized (because of more modern, but distinctly different, replacements). This is a screenshot of the GUI for reference.

      Why do people put up with such an old interface?

      The power of the program is not its GUI, but the scripting language that can be run to setup and solve simulations. The program name is really the scripting language name, Ansys Parametric Design Language (APDL). It's somewhat like Matlab. The program also offers an enormous amount of control when compared to the more modern GUI that's been released, since the modern GUI holds a totally different philosophy.

      The older GUI is really helpful in certain circumstances because it will spit out a file containing commands that were used in the session. This is a great demonstration of how to run a command or use a setting/config command, but a lot of newer features are buried in the documentation and aren't available in the older GUI.

      My coding experience

      I know the MAPDL language very intimately, but my experience beyond it is limited to some Perl scripting, and a bit of Python exposure.

      Motivation

      Open-Source Ansys API

      Recently, Ansys started supporting an open-source Python project called PyAnsys. MAPDL is otherwise fully closed source, and this is really the only public-facing API. PyAnsys has basically converted a lot of MAPDL script commands to a pythonic format, hence Python can now be used to interact with MAPDL. This is great for several reasons, but is limited regarding interactivity. Interacting with MAPDL via Python is basically happening in a fancy console via Jupyter notebook or IDE like Spyder. Certain commands will bring up Python-based graphics displays of solid models and results plots, but there isn't a dedicated GUI open all the time.

      The Question(s)

      My question is whether it is feasible to write a frontend GUI to a bunch of python commands. If you were going to do it, how would you do it? What might you write it with? Would you even do it? Is this a stupid endeavor?

      7 votes
    30. Libera Chat vs. Freenode: Who won?

      Let me start by saying this is a space I am not at all familiar with. I didn't grow up with IRC, my first text editor was Sublime (I'm not from the "EMACS vs. VIM" generation,) so I feel kinda...

      Let me start by saying this is a space I am not at all familiar with. I didn't grow up with IRC, my first text editor was Sublime (I'm not from the "EMACS vs. VIM" generation,) so I feel kinda outta touch with what all is going on.

      Is there a winner? I feel invested in this topic after seeing a whole slew of posts, blogs, and medium articles posted all over Reddit and HN breaking down how these folks have personally been impacted over the past month or so. It seems to have died down which leaves me with the question of what the outcome was. An even 50/50 split? Libera destroying Freenode? Or Freenode able to hold onto users by successfully preventing efforts to organize a transition?

      Without being in the Freenode community, I don't have a feeling for whether Freenode is dead, Libera Chat is "winning" and I don't think there's a good way to get metrics either.

      Anyone in this world who can help the uneducated out on the outcome of all of this?

      15 votes
    31. Continuing My Education with a CS Degree in Canada [A Help Thread]

      My Goal I am applying to Canadian universities for fall admission as a CS major. This will be my second degree, and one of the requirements of getting admitted for a second degree is to show that...

      My Goal

      I am applying to Canadian universities for fall admission as a CS major. This will be my second degree, and one of the requirements of getting admitted for a second degree is to show that you have a significant interest in the subject. My plan is to get online certificates to show that I am actually dedicated to learning CS and getting a job in the field. I am actually dedicated, I just need a way to show it on paper. I have some experience with software development (only the basics), but there aren't any records of it since it was just informal study.

      My Problem

      I can't decide which certificates I should pursue. I am torn between EdX and Udemy. I would Tilderinos' help in choosing between the two. I would also appreciate any general advice you may have.

      Here are the courses I plan to take on EdX (prices in USD):

      UBC's MicroMasters Program in
      Software Development
      - $832

      Harvard CS50's Web Programming with Python and JavaScript - $199

      IBM's Professional Certificate in
      Cloud Application Development Foundations
      - $169

      Here are the courses I plan to take on Udemy:

      The Ultimate 2021 Fullstack Web Development Bootcamp - $15

      The Complete 2021 Web Development Bootcamp - $15

      The Ultimate MySQL Bootcamp: Go from SQL Beginner to Expert - $30

      Angular - The Complete Guide (2021 Edition) - $15

      Comparisons

      To reiterate, I have two goals going into this. One is to actually learn web development, since I would like to become a fullstack developer (but my options are semi-open). The other is to prove to the Canadian universities that I am dedicated to learning and to give myself an edge over applicants.

      If I go with EdX, then I have to pay a much steeper price for the certificates. These courses also take a long time to get through and the projects don't seem as relevant to real word applications. But I will also be learning from established institutions like Harvard and UBC. EdX certificates also come with the distinct advantage that a human is checking the problem sets you submit. This will show the Canadian universities that I have actually spent the time and effort to go through the courses and pass them.

      If I go with Udemy, I will get through the courses in less time and their projects seem more related to real world projects. If I go through the courses faster, I will also have more time to start on some personal projects, and I can show my dedication to learning through those projects. Personal projects and also volunteer work will also help establish a resumé for future work. The courses on Udemy are a lot cheaper too. But they don't have the same level of verification or prestige that EdX does.

      So in summary, EdX has prestige and quality courses, but a steep prices and a huge time commitment. Udemy is cheaper and gives me more opportunities to do personal projects and volunteer work, but it's certificates aren't fully trustworthy from the Canadian universities' perspective.

      Final Words

      What do you think? Which path should I take?

      For those of you wondering, why I am going to university instead of a bootcamp, it's because I plan to immigrate to Canada and becoming a student seems the straightest way of getting PR. I need to leave my third world country as soon as I can, for mental health and economic reasons. I have been mostly unemployed ever since the pandemic started so I can't get work in Canada (or the U.S.) on my first degree (a management degree). I already tried that route. I can't find proper work here either.

      Also, I am sorry if I posted in the wrong group, or if I shouldn't have posted it anywhere at all. I desperately need advice on what to do and I don't have a trustworthy network here that can help me through this. I'm sorry and thank you for your help.

      8 votes
    32. What unified login to use?

      I'm setting up a server with nextcloud, plex, matrix and some other things I don't yet know, for some friends and family, (about 20 people if I get lucky) and now I heard of a thing called single...

      I'm setting up a server with nextcloud, plex, matrix and some other things I don't yet know, for some friends and family, (about 20 people if I get lucky)
      and now I heard of a thing called single sign on/unified login. (Login to different services with the same user/pw and/or login once, access to all services)

      so far I found out about Keycloak https://en.wikipedia.org/wiki/Keycloak

      is this what I'm looking for? does anybody have experience in this? Are there other/better/simpler solutions for this?

      12 votes
    33. Self hosting email at home?

      I recently set up kubernetes to run on an old laptop. The goal was two-fold, 1 learn kubernetes and 2 setup an instance of nextcloud. I've managed to set everything up with cert renewals for my...

      I recently set up kubernetes to run on an old laptop. The goal was two-fold, 1 learn kubernetes and 2 setup an instance of nextcloud. I've managed to set everything up with cert renewals for my domain and enabled dyndns in case my provider changes my ip. All well and good and quite nice learning experience! Now I would like to also start running my own email server and have some questions. Is ther any that have a helm chart that is easy to setup in kubernetes? Since I am running this from home I imagine I'm more likely to be classified as a spammer. What can I do to minimize the likelihood of that? I read somewhere about reverse DNS, but not entirely sure if it is possible to do given I am running it all at home via a regular ISP.

      17 votes
    34. I setup a device with decent PostmarketOS port. What can I do with it?

      I have a Xiaomi Redmi 4X device with 2GB RAM and 16GB on-device storage. Yesterday, I setup PostmarketOS on it, and it works well enough. WiFi and display work well, although no 3D acceleration...

      I have a Xiaomi Redmi 4X device with 2GB RAM and 16GB on-device storage.

      Yesterday, I setup PostmarketOS on it, and it works well enough. WiFi and display work well, although no 3D acceleration and no telephony at all. As such, now it is just another device on my home network, except that I can ssh into it to do some basic stuff. Right now it is setup as a Syncthing node to backup my Keepass db and personal knowledge base written in org-mode, but I would like to use it further, and looking for ideas.

      Two things to consider, though. First, I don't want it to overcharge and bust the battery. Before when it was on LineageOS, I had a magisk module acc so it would charge only 40-80%, and is largely the reason why the battery holds up pretty well after 5+ years without swelling. I will take further look into it over coming weekend and try to make something like it for the alpine kernel included in PmOS. Second, while on charging the phone keeps vibrating repeatedly. I have no idea how to fix that one, but would like to strat given pointers. (I have never done kernel dev in my life)

      So, any ideas on what I can use this extra computer in my metaphorical basement welcome. Thanks in advance.

      11 votes
    35. If I'm using Cloudflare for my domains, do I need to bother with LE?

      It is late... and I am pretty much finished with migrating to a new VPS provider. I got rate limited with two domains, but I'm running everything through Cloudflare. Do I need to bother with...

      It is late... and I am pretty much finished with migrating to a new VPS provider. I got rate limited with two domains, but I'm running everything through Cloudflare. Do I need to bother with LetsEncrypt on the VPS itself? When I check the domains, the certs from CF are working nicely.

      This is my first time using CF.

      Quick edit while I pretend I can sleep.

      I’m thinking that CF will cover me for 443 and route all traffic there. I’ve got wildcards set for domains with services that require other ports — which is working. All CF is doing is caching my sites, right?

      7 votes
    36. What is a class in Python?

      I've been learning a bit more Python, going through a Udemy course to expand my skills a little. One of the programs the course guides you to make is a little dictionary, but it currently only...

      I've been learning a bit more Python, going through a Udemy course to expand my skills a little. One of the programs the course guides you to make is a little dictionary, but it currently only runs once and then quits.
      I'd like to adapt it to use a nice TUI that keeps itself open until the user specifies they want to quit, using something along the lines of npyscreen. However, this library uses classes, and that's not something I'm yet familiar with. I'd rather have an understanding of what classes are, how they work, and why to use them before I take the plunge and start fiddling around with npyscreen (although I'd be interested to hear if you think that I should Just Do It instead).
      Can anyone give or point me towards a good explanation of the what, how, and why of Python classes? Or better yet, a tutorial that will give me something to write and play with to figure out how it all fits together?
      Thanks!

      9 votes
    37. Input from a text file, pull from multiple APIs, formatting output, etc. in Python

      I don't need answers so much as an idea of where to start. Essentially, I have a Google Sheet that uses importjson.gs to pull from the following APIs OMDB (IMDB) TheMovieDB TVMaze I also use...

      I don't need answers so much as an idea of where to start.

      Essentially, I have a Google Sheet that uses importjson.gs to pull from the following APIs

      • OMDB (IMDB)
      • TheMovieDB
      • TVMaze

      I also use another script to scrape Letterboxd for ratings.

      This works well, but sometimes it'll time out or I'll hit urlFetch limits that Google has in place.

      Basically, I'd like to have a text file (input.txt) where I pop in a bunch of titles and year or IMDB IDs, then the script runs and pulls set endpoints from all of these, outputting everything on one line (a pipe as a delimiter.)

      My thinking is that I can then pull that info a sheet and run all of the formatting, basic math, and whatever else so it suits my Sheet.

      I have a feeling I'll be using requests for the JSON and beautifulsoup for letterboxd -- or maybe a module.

      Can anyone point me in the right direction? I don't think it'll be too difficult and should work well for a first python project.

      7 votes
    38. What is the difference between Linux distros? Why do you use the one you use?

      I still mainly use Windows, although I've dual-booted Linux a few times and I have Linux Mint on an old laptop right now. One thing I've never understood about Linux is all the different...

      I still mainly use Windows, although I've dual-booted Linux a few times and I have Linux Mint on an old laptop right now. One thing I've never understood about Linux is all the different distributions - their different reputations and why they have them. What is the mechanical difference between using one distribution of Linux and another? Or are the differences usually not mechanical?

      For example, Ubuntu and Debian seem to be large families, meaning that a lot of other distributions are based on them (using packages built for them in their package managers at least) as well as being popular distros on their own. But what's different between the two of them, and between each and the other distros based on them? (and what's similar? I gather they all use the Linux kernel at least!)

      I also know that people are quite opinionated on their choice of distro, I wondered what reasons people had for their choice. What things are easier or harder for you in your distro of choice? Is it mainly day-to-day tasks that are important or more how the OS works underneath? How much difference does your preferred distro make?

      For myself, I've only used Kubuntu (though not much) and Linux Mint, which was mainly for UI reasons, and particularly for the latter, ease of use for someone used to Windows (at least that was what I found years ago when I first looked into it).

      Though I doubt I'll ever fully move away from Windows I would like / need to have access to a Linux OS, so maybe this will help me to know what is important to look for. But I also hope it'll be a useful and interesting discussion topic. Also, there are some previous discussions on the latter question so I'd be more interested in learning about the main topic.

      also, please do add more tags

      29 votes
    39. Full-stack developers starting a software agency?

      Hey guys, I have been flip-flopping back and forth on this idea for a while, and would love some feedback on whether peeps would find this valuable. Although I still call my self a "software...

      Hey guys,

      I have been flip-flopping back and forth on this idea for a while, and would love some feedback on whether peeps would find this valuable.

      Although I still call my self a "software developer" (and try to code daily), for the last 8 years I have ran a small 5-person agency that I started from the ground up, so my role was really CEO/CTO/CFO/Everything-O. My company focused on delivering high-quality custom software. Not brochure websites, and not Wordpress - our niche was internal business software (or as I like to call it "boring software for boring businesses") - and for a client service company we got very high margins of return.

      Last year my business was acquired by a larger company which was an amazing result after the time and effort I had poured into it. I have realised I now want to help other developers who want to start their own software agency, or maybe they already have and are looking for hints or advice on certain topics.

      So I have started Dev to Agency - a part blog part guidebook for how a full-stack developer can start and successfully run a software development agency, the things to pay attention too (and the things to ignore), and the key-values that I feel helped my business go from nothing, to 7 figures per year, and then to being acquired (if that is a path people would want to take).

      I have just published my first couple of posts, About Dev To Agency that is a rundown of what I hope to achieve with this, then a post about My small custom software development agency - which gives an overview of what I built and where I think my articles will add value, and lastly You are the gold standard which covers how I feel an owner/maker should set the businesses standards and practises based of their personal values.

      I have never written a blog before (or really done any writing before), so it would be fantastic to get some feedback from the community, and if there are any developers that this could interest then please subscribe on the website.

      Cheers,

      Chris.

      15 votes
    40. Tips to use NixOS on a server?

      I see some people using NixOs on their servers. I would like to try it out to self host some services and learn about NixOs. I use hetzner and they have an NixOs iso available so I can just use...

      I see some people using NixOs on their servers. I would like to try it out to self host some services and learn about NixOs.

      I use hetzner and they have an NixOs iso available so I can just use that to install NixOs. But how do people manage remote instances of NixOs? They would just use ansible or something like it, to run nix on the host, or is there a better way?

      Thanks

      11 votes
    41. Can you write ad-blocker rules to essentially blacklist mention of certain people?

      I've just read a journal from someone on another site saying that they wished there was a blacklisting system which stopped them seeing submissions from, to or about certain other users in their...

      I've just read a journal from someone on another site saying that they wished there was a blacklisting system which stopped them seeing submissions from, to or about certain other users in their feed, as it is potentially trauma-inducing for them to log in and keep seeing them come up. I assume that the person looking for this blacklist isn't realistically able to just leave the site, because it's the most populous of its kind and serves as an art portfolio or source of income.

      Is this, or something like it, actually possible to do with custom ad-blocker rules, or do they need to just wait for the site's admins to get around to it?

      6 votes
    42. In which a foolish developer tries DevOps: critique my VPS provisioning script!

      I'm attempting to provision two mirror staging and production environments for a future SaaS application that we're close to launching as a company, and I'd like to get some feedback on the...

      I'm attempting to provision two mirror staging and production environments for a future SaaS application that we're close to launching as a company, and I'd like to get some feedback on the provisioning script I've created that takes a default VPS from our hosting provider, DigitalOcean, and readies it for being a secure hosting environment for our application instance (which runs inside Docker, and persists data to an unrelated managed database).

      I'm sticking with a simple infrastructure architecture at the moment: A single VPS which runs both nginx and the application instance inside a containerised docker service as mentioned earlier. There's no load balancers or server duplication at this point. @Emerald_Knight very kindly provided me in the Tildes Discord with some overall guidance about what to aim for when configuring a server (limit damage as best as possible, limit access when an attack occurs)—so I've tried to be thoughtful and integrate that paradigm where possible (disabling root login, etc).

      I’m not a DevOps or sysadmin-oriented person by trade—I stick to programming most of the time—but this role falls to me as the technical person in this business; so the last few days has been a lot of reading and readying. I’ll run through the provisioning flow step by step. Oh, and for reference, Ubuntu 20.04 LTS.

      First step is self-explanatory.

      #!/bin/sh
      
      # Name of the user to create and grant privileges to.
      USERNAME_OF_ACCOUNT=
      
      sudo apt-get -qq update
      sudo apt install -qq --yes nginx
      sudo systemctl restart nginx
      

      Next, create my sudo user, add them to the groups needed, require a password change on first login, then copy across any provided authorised keys from the root user which you can configure to be seeded to the VPS in the DigitalOcean management console.

      useradd --create-home --shell "/bin/bash" --groups sudo,www-data "${USERNAME_OF_ACCOUNT}"
      passwd --delete $USERNAME_OF_ACCOUNT
      chage --lastday 0 $USERNAME_OF_ACCOUNT
      
      HOME_DIR="$(eval echo ~${USERNAME_OF_ACCOUNT})"
      mkdir --parents "${HOME_DIR}/.ssh"
      cp /root/.ssh/authorized_keys "${HOME_DIR}/.ssh"
      
      chmod 700 ~/.ssh
      chmod 600 ~/.ssh/authorized_keys
      chown --recursive "${USERNAME_OF_ACCOUNT}":"${USERNAME_OF_ACCOUNT}" "${HOME_DIR}/.ssh"

sudo chmod 775 -R /var/www
      sudo chown -R $USERNAME_OF_ACCOUNT /var/www
      rm -rf /var/www/html
      

      Installation of docker, and run it as a service, ensure the created user is added to the docker group.

      sudo apt-get install -qq --yes \
          apt-transport-https \
          ca-certificates \
          curl \
          gnupg-agent \
          software-properties-common
      
      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
      sudo apt-key fingerprint 0EBFCD88
      
      sudo add-apt-repository --yes \
         "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
         $(lsb_release -cs) \
         stable"
      
      sudo apt-get -qq update
      sudo apt install -qq --yes docker-ce docker-ce-cli containerd.io
      
      # Only add a group if it does not exist
      sudo getent group docker || sudo groupadd docker
      sudo usermod -aG docker $USERNAME_OF_ACCOUNT
      
      # Enable docker
      sudo systemctl enable docker
      
      sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
      sudo chmod +x /usr/local/bin/docker-compose
      sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
      docker-compose --version
      

      Disable root logins and any form of password-based authentication by altering sshd_config.

      sed -i '/^PermitRootLogin/s/yes/no/' /etc/ssh/sshd_config
      sed -i '/^PasswordAuthentication/s/yes/no/' /etc/ssh/sshd_config
      sed -i '/^ChallengeResponseAuthentication/s/yes/no/' /etc/ssh/sshd_config
      

      Configure the firewall and fail2ban.

      sudo ufw default deny incoming
      sudo ufw default allow outgoing
      sudo ufw allow ssh
      sudo ufw allow http
      sudo ufw allow https
      sudo ufw reload
      sudo ufw --force enable && sudo ufw status verbose
      
      sudo apt-get -qq install --yes fail2ban
      sudo systemctl enable fail2ban
      sudo systemctl start fail2ban
      

      Swapfiles.

      sudo fallocate -l 1G /swapfile && ls -lh /swapfile
      sudo chmod 0600 /swapfile && ls -lh /swapfile
      sudo mkswap /swapfile
      sudo swapon /swapfile && sudo swapon --show
      echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
      

      Unattended updates, and restart the ssh daemon.

      sudo apt install -qq unattended-upgrades
      sudo systemctl restart ssh
      

      Some questions

      You can assume these questions are cost-benefit focused, i.e. is it worth my time to investigate this, versus something else that may have better gains given my limited time.

      1. Obviously, any critiques of the above provisioning process are appreciated—both on the micro level of criticising particular lines, or zooming out and saying “well why don’t you do this instead…”. I can’t know what I don’t know.

      2. Is it worth investigating tools such as ss or lynis (https://github.com/CISOfy/lynis) to perform server auditing? I don’t have to meet any compliance requirements at this point.

      3. Do I get any meaningful increase in security by implementing 2FA on login here using google authenticator? As far as I can see, as long as I'm using best practices to actually ssh into our boxes, then the likeliest risk profile for unwanted access probably isn’t via the authentication mechanism I use personally to access my servers.

      4. Am I missing anything here? Beyond the provisioning script itself, I adhere to best practices around storing and generating passwords and ssh keys.

      Some notes and comments

      1. Eventually I'll use the hosting provider's API to spin up and spin down VPS's on the fly via a custom management application, which gives me an opportunity to programmatically execute the provisioning script above and run some over pre- and post-provisioning things, like deployment of the application and so forth.

      2. Usage alerts and monitoring is configured within DigitalOcean's console, and alerts are sent to our business' Slack for me to action as needed. Currently, I’m settling on the following alerts:
        1. Server CPU utilisation greater than 80% for 5 minutes.
        2. Server memory usage greater than 80% for 5 minutes.
        3. I’m also looking at setting up daily fail2ban status alerts if needed.
      9 votes
    43. What's the deal with gemini?

      Hi! I've heard tilderinos talking about the gemini-verse on some other posts; I tried it out this evening and it honestly felt strange browsing in terminal and even stranger navigating the web...

      Hi! I've heard tilderinos talking about the gemini-verse on some other posts; I tried it out this evening and it honestly felt strange browsing in terminal and even stranger navigating the web without search engines. I was wondering if anyone had a gentler introduction than the official site? I feel like I've got a ship, but no map to this new verse.

      26 votes
    44. Is there a known image norm suitable for textured images?

      Suppose I am trying to iteratively produce a completed image from some subset using a combination of convolutional/DNN methods. What Image norm is best? The natural (for me) norm to ascribe to an...

      Suppose I am trying to iteratively produce a completed image from some subset using a combination of convolutional/DNN methods. What Image norm is best?

      The natural (for me) norm to ascribe to an image is to take the bitmap as a vector with L2. If the input image is anime or something else, the uniform coloring makes this very likely to be a good fit in a low dimension - that is: no overfitting.

      However: pictures of fur. Given a small square, the AI, set to extrapolate more fur from that single image, should be expected to get that stuff right next to the given subimage right, but further away, i want it to get the texture right, not the exact representation. So, if the AI shifts the fur far away from the image left by just the right amount, it could get an incredibly poor score.

      If I were to use the naive L2 norm directly, I would be guaranteed to overfit, and you can see this with some of the demo algorithms for image generation around the web. Now, the answer to this is probably to use a fourier or a wavelet transform and then take the LN norm over the transformed space instead (correct me if I'm wrong.)

      However, we get to the most complex class: images with different textures in them. In this case, I have a problem. Wavelet-type transforms don't behave well with discrete boundaries, while pixel-by-pixel methods don't do well with the textured parts of images. Is there a good method of determining image similarity for these cases?

      More philosophically, what is the mathematical notion of similarity that our eye picks out? Any pointers or suggestions are appreciated. This is the last of two issues I have with a design I built for a Sparse NN.

      Edit: For those interested, here is an example, notice how the predictions tend to blur details

      7 votes
    45. I can't make it any clearer. Any advice?

      Last Thursday, at my workplace, we rolled out a software upgrade across the company. The server side was upgraded overnight to ensure there was minimal downtime, and we had instructions for users...

      Last Thursday, at my workplace, we rolled out a software upgrade across the company. The server side was upgraded overnight to ensure there was minimal downtime, and we had instructions for users posted on our Intranet (pinned to the top for the next 4 days), on exactly what they needed to do to run the upgrade on their PCs and ensure everything was working correctly.

      The instructions were written with the help of my 4-year-old to ensure it was clear enough for anyone to read and follow along.

      I still received at least 40 messages and emails from people complaining the upgrade didn't work or that certain Outlook plugins are now missing (which was covered in the instructions).

      My question is, has anyone found a good way to ensure people follow instructions, or the best way to ensure that your instructions are easy to understand and follow along with?

      It is very frustrating to take the time to ensure things go smoothly and write what even my 4-year-old thought was clear instruction, and still have a third of the company not be able to figure it out?

      This is not meant to be mean hearted in any way, I genuinely would like some advice or tips on how I can improve on this the next time around.

      Thanks.

      16 votes