• Activity
  • Votes
  • Comments
  • New
  • All activity
    1. Help me get my head around DNSCrypt and DoH/DoT

      I want to adopt these technologies b/c I'm moving to a home w/o WiFi: I'll only use mobile networks in order to save some money. But the general pipeline and setup are hard to digest, and I'm not...

      I want to adopt these technologies b/c I'm moving to a home w/o WiFi: I'll only use mobile networks in order to save some money. But the general pipeline and setup are hard to digest, and I'm not sure if I really understand what are the implications for my privacy, except for the fact that DNS queries are encrypted so I don't leak domain names. This is especially important to me because Turkish internet law and the censorship mechanism is really intrusive, with DPI & DNS blocking. My current ISP does not fiddle with my HTTPS traffic, but I won't have that with my mobile network.

      I'm also considering a VPN, but major VPNs are blocked here. To what extent do the purposes of VPNs and these DNS solutions overlap? Assuming most of my important traffic is over HTTPS+DoH/T, how safe am I, and most importantly how much can I penetrate the censorship mechanisms?

      6 votes
    2. My new Mini-ITX Gaming PC Build

      EDIT: Since a few people now have not realized how old this topic is before making a comment, see above date ↑. :) My old PC's CPU (i7 930) started to critically fail after 8+ years of being...

      EDIT: Since a few people now have not realized how old this topic is before making a comment, see above date ↑. :)

      My old PC's CPU (i7 930) started to critically fail after 8+ years of being overclocked from 2.8 to 4.0 GHz, so I decided to build a new one based on the Ultra-Compact Mini-ITX Gaming PC Build from TechBuyersGuru.

      I went with Mini-ITX this time since my old PC was in a huge Antec P193 tower which weighs 16.4kg (36.2lbs) before components and so was a giant PITA to move around. The new Sugo SG13 case is roughly 1/7th the volume and initial weight so is much more convenient to move (but not build!).

      p.s. I was unsure whether to post this 'buildapc' style content in ~tech or ~comp.... thoughts?


      PCPartPicker Part List
      Parts labeled incompatible are not... see "Notes" below in Build Process section.
      Salvaged from old PC:
      GPU   -     $0 - EVGA - GeForce GTX 980 Ti 6GB Superclocked ACX 2.0+ Video Card
      SSD   -     $0 - Samsung - 850 Pro Series 1TB 2.5" Solid State Drive
      SSD   -     $0 - Samsung - 840 Pro Series 256GB 2.5" Solid State Drive
      HDD   -     $0 - Hitachi - Deskstar NAS 4TB 3.5" 7200RPM Internal Hard Drive

      New Components:
      Case -   $72 - Silverstone - Sugo SG13B-Q Mini ITX Tower Case
      Mobo - $190 - Gigabyte - Z370N WIFI Mini ITX LGA1151 Motherboard
      CPU   - $325 - Intel - Core i5-8600K 3.6GHz 6-Core Processor
      Cool - $114 - Silverstone - NT06-PRO 74.0 CFM Sleeve Bearing CPU Cooler
      RAM   - $220 - Corsair - Vengeance LPX 16GB (2 x 8GB) DDR4-3000 Memory
      PSU   - $175 - Silverstone - 600W 80+ Gold Certified Fully-Modular SFX Power Supply
      M.2   - $143 - Crucial - MX500 500GB M.2-2280 Solid State Drive
      M.2   - $143 - Crucial - MX500 500GB M.2-2280 Solid State Drive

      Total:  $1382 (CAD)


      Build Process w/ Pictures:

      TL;DR - Behold my new Battlestation, IN ALL HER GLORY!!!

      After saying goodbye to my old, heavy, oversized, Antec P193 case...
      Unboxing the new one, which is almost the same volume as my UPS!...
      And prepping all the new PC components for a photo op...
      I began the arduous process assembling my new computer.

      Everything went fairly smoothly to start. I installed the RAM, M.2 Drives, CPU and CPU Cooler before mounting the motherboard to the case, as instructed in the build guide. The CPU Cooler was a PITA to attach but that's no surprise as they always are.

      Note: These "incompatible" parts listed on PCPartsPicker actually do fit together as the build guide said they would. However the RAM and CPU cooler fan are actually touching and I barely managed to squeeze them in together, so the build guide probably isn't lying when it said that particular low-profile RAM might be the only one that actually works with the cooler.

      I then mounted the motherboard to the case and began slowly plugging everything else in. This was a particularly slow and frustrating process as I have pretty large hands and everything was incredibly tiny, in incredibly cramped positions, and required more finesse to get in place than I could muster with my fingers alone. As a result I wound up using long needle-nose pliers, including some bent-angle ones, to get most everything plugged in.

      This is when I ran into my first major problem though... and one that was not mentioned in the build guide at all. The Case's front panel USB cable wouldn't fit in the motherboard with the CPU cooler fan in place. After trying fruitlessly to get the cable plugged in for 30min I finally gave up and decided to solve the issue the old fashioned way and it plugged in just fine afterwards. (Thanks for saving my ass yet again, Mr. Dremel!)

      The other potential issue was due to the CPU cooler and case mounted PSU, which aren't supposed to work together, but once again as the build guide suggested they actually do... with a whopping 3mm clearance between them! At this point I also decided to swap out some of the ribbon power cables that came with the new PSU for some spare braided ones I had from another build since they are much nicer looking and allow for better airflow.

      Note: The other supposed incompatibility listed on PCPartPicker is due to the fact that the case only officially supports 3x 2.5" drives or 1x 3.5" with 1x 2.5" but that's easy enough to get around, as explained below.

      I also decided to cram an extra SSD under the front case fan, secured with double sided tape to the properly mounted SSD on the case floor panel. It worked just fine and allowed me to get my 3.5" 4TB HDD properly mounted on the underside of the top plate. Linus Tech Tips, in his similar Sugo SG13 build, even managed to squeeze 2 more SSDs above the PSU using double sided tape as well, so I guess that even leaves me with some room to expand my storage later. ;)

      The rest of the build assembly process went relatively smoothly and once everything was hooked up, in position and plugged in, it booted straight into windows 10 (which was still on my old 1TB SSD). The moment when a new PC build gets past the POST is always a huge relief, however that momentary relief soon turned to dread as I quickly noticed a pretty big problem; The machine couldn't detect one of my new M.2 SATA drives.

      After several hours of frustrated tinkering and much googling I finally found out the reason why, cursing PCPartPicker for not warning me and face-palming pretty hard for not having read the motherboard specs more carefully. It turns out that the Z370N motherboard actually only supports 1x M.2 SATA drive and the second M.2 slot is NVMe only. I had apparently just wasted $140+ on an M.2 SATA drive I couldn't use and my plans to configure them both in RAID 0 was shattered. But that's honestly not the worst part... in order to get the useless M.2 drive back out I had to basically FULLY DISASSEMBLE my entire build again since the NVMe M.2 slot is located on the bottom of the motherboard!

      Despite the serious temptation to just leave it in there even though I couldn't use it, I wound up going through with the disassembly purely because I had a pretty good idea for how to actually make use of that second M.2 SATA drive based on something I saw on Linus Tech Tips a few months ago. So rather than leaving it in there or even returning it, after ordering myself the necessary enclosure I now have myself a pretty nice DIY 500GB Thumb drive. ;)

      So several hours later after completely taking apart my new build, removing the bottom mounted M.2 SATA drive, and fully reassembling my build once again, I booted it up, it got past the POST and into Windows 10 again. I then reactivated Win 10 on the new hardware configuration (which was surprisingly painless compared to how it used to be where you needed to actually phone Microsoft) and then began the process of installing Linux Mint on the M.2 SATA drive I still had remaining.

      Conclusion:
      After several days of going at it now, I am finally done and my new computer is fully assembled, functional and ready to use. As always with building computers it was a bit scary, a bit painful, and more than a bit frustrating but ultimately well worth it. I couldn't be happier with the results and can't wait to overclock this bad boy when I get the chance!

      36 votes
    3. Please recommend me a Linux distribution that is super-stable and never make me install again, but at the same time allows me to have some newer packages with ease (xpost /r/FindMeADistro)

      I currently use MX-Linux, which is a great distribution but does require me to reinstall it from time to time. It also comes with all the good/bad Debian legacy, and sometimes things can get...

      I currently use MX-Linux, which is a great distribution but does require me to reinstall it from time to time. It also comes with all the good/bad Debian legacy, and sometimes things can get really fucked up (okay, I admit it: MX IS NOT PERFECT. But nothing is, okay? Settle down.)

      My new Linux Distribution doesn't need to have all the new bells and whistles, but it needs to be able to stay reasonably current with new packages and innovations. I don't mind some manual work, but I also don't wanna spend my days maintaining the system.

      This distro is supposed to be a tool to work with, not a hobby to be pimped, riced or whatever. I will occasionally play and edit videos on it (don't worry, it's all AMD, thank you advice for the Tildes ;)

      I use the i3wm window manager (not the gaps fork), so native support is a must and current versions are preferable (MX's version is from 2016. 2016!). If there's not a current version of Emacs, I'll compile my own. The same is true for Neovim, dmenu, rofi and the suckless terminal.

      Configurations on text files do not scare me, but I don't wanna spend all my time scripting stuff. I don't mind compiling stuff either so Gentoo and other source-based distributions are valid options (as long as they allow me to work on stuff instead of working on the distribution...). That said, I have no preference whatsoever between binary and source-based.

      Unstable distributions like Arch and even Manjaro are a no-no. I need my computer to work 99.99% of the time, like a fucking refrigerator. That said, I would like some newer packages and tools such as Gimp, Inkscape and a video editor like Kdenlive. Maybe flatpak is an option? I was never able to get it to work properly.

      I'm also open to crazy things like Nix, but only if it'll make my life easier: I have no philosophies on the mater.

      Any suggestions?

      21 votes
    4. Fortnightly Programming Q&A Thread - 2019W40

      General Programming Q&A thread! Ask any questions about programming, answer the questions of other users, or post suggestions for future threads. Don't forget to format your code using the triple...

      General Programming Q&A thread! Ask any questions about programming, answer the questions of other users, or post suggestions for future threads.

      Don't forget to format your code using the triple backticks or tildes:

      Here is my schema:
      
      ```sql
      CREATE TABLE article_to_warehouse (
        article_id   INTEGER
      , warehouse_id INTEGER
      )
      ;
      ```
      
      How do I add a `UNIQUE` constraint?
      
      12 votes
    5. Is programming science?

      There's no doubt computer science is indeed a science, but what about programming itself? Does it fulfill the basic requirements that make something a science? I'm not an academic, just trying to...

      There's no doubt computer science is indeed a science, but what about programming itself? Does it fulfill the basic requirements that make something a science? I'm not an academic, just trying to start a conversation.

      In many ways, programming is like Math: a means to an end. And Math is a science. Like math, programming has several fields with vastly different ideas of what constitutes programming. Because it is applied logic, programming is also provable and disprovable. There are many disputing hypothesis and, even though absolute truth is a distant dream, it is certain that some sentences are truer than others. Again, like Math, Programming has many practical applications, such as finances and engineering.

      Some people consider Math a propaedeutics: not a science in itself, but a discipline that provides fundamentals to actual sciences such as chemistry and physics. The same reasoning could be applied to programming, as nothing more than a tool for computer science. I personally think there's something unique about programming and it's problem-solving methods that can be considered a field of its own.

      What you guys and girls think?

      6 votes
    6. What are some startup scripts you have on your daily driver?

      In the everlasting quest to customize my laptop and make my life easier, I'm looking for any ideas for startup scripts to run on user login. Personally, I don't know how to write bash scripts yet...

      In the everlasting quest to customize my laptop and make my life easier, I'm looking for any ideas for startup scripts to run on user login.
      Personally, I don't know how to write bash scripts yet and unfortunately I won't have time to pick it up on the side in the near future seeing as how I'm swamped between my studies and work—nevertheless, it's always nice to see how others might have under the hood for future tinkering :)
      I'm currently running i3-gaps on Arch Linux. I have a few programs that I like to run inside i3's config file (Polybar, firefox, file manager, Thunderbird) every time I start i3.
      The problem that I seem to have is that I lack imagination. I don't know the potential of what else I could be doing with startup scripts, so I'm turning to Tildes to see what you guys might have.

      6 votes
    7. Should I Get Into Gentoo? (x-post from /r/Gentoo)

      I've been using Linux for the past 5 to 10 years. I'm not a developer, but a mid-to-advanced user. I don't really know bash (or any programming language for that matter), but I got a folder with...

      I've been using Linux for the past 5 to 10 years. I'm not a developer, but a mid-to-advanced user. I don't really know bash (or any programming language for that matter), but I got a folder with 100 bash scripts I wrote myself. I compile my own Emacs (which I configured from scratch and contains more than 200 crudes functions of my own), Neovim (also configured from scratch) and other programs such as suckless terminal. I'm an i3wm user and currently use MX-Linux. I'm very good at Googling and pattern recognition.

      I got a brand new AMD desktop with a Ryzen processor (no dedicated graphics, wifi works fine with a USB adapter). Should I try Gentoo, or maybe I should study more (maybe with something like Linux Journey)in order to get a better experience?

      Reasons to install Gentoo:

      1. Learning experience
      2. A completely customized desktop experience
      3. Never having to reinstall my operating system again
      4. Masochism
      5. Putting my powerful processor to work
      6. It seems cool (and less painful than LFS)
      7. Some hypothetical performance gain
      3 votes
    8. What makes a Linux Distribution Stable instead of Not-Stable? (full-disclosure: I wrote this for Reddit - /r/ManjaroLinux - but I think I'd love to know what you think about the subject))

      Introduction I wanna say that I made several corrections, additions, and improvements just because I love you guys way more than I love the people at Reddit Please note that I'm merely a dedicated...

      Introduction

      I wanna say that I made several corrections, additions, and improvements just because I love you guys way more than I love the people at Reddit

      • Please note that I'm merely a dedicated Linux user, I'm speaking from that point of view. I'm not a developer and not a programmer. These are just my opinions of 10+ years using Linux

      • These are just some commentaries from a dude who happen to love the concept of STABILITY in general (autism represent) and would like to discuss how it works when it comes to Linux distributions. This is all based on my use-cases and on what I think is common sense. I have no knowledge of how open-source projects really work, and make no claims regarding how they should work.

      • Only distributions that claim to be stable are under my scope. So Arch and Debian Unstable are clearly out the scope, but Slackware, CentOS, Debian Buster, and MX-Linux are clearly under the scope.

      • All considerations are void if the malfunctioning is SOLELY a product of hardware, extremely rare conditions or your own lack of knowledge.

      • Except when otherwise noted, non-compliance means the distribution is deemed not stable.

      1 Deal Breakers

      After a correct installation by the user on hardware that is expressly supported by the developers, a stable distribution should, in the period of 1 year (counted from the first boot):

      1. Remains bootable, manageable and fully accessible.
      2. Work with almost no maintenance or intervention (updates excluded)
      3. Present no decrease in performance
      4. Freeze at most once every two weeks
      5. Have no package issue that cannot be solved by a simple command from its own package manager

      2 Major Issues

      Because of the complex nature of major issues, I'm not going to establish any criteria about them. Both stable and unstable distributions have critical problems that cannot have a fixed time-frame.

      3 Minor Issues/Bugs/Annoyances/etc

      Small issues are the ones that do not impede the usage of the machine, but provoke significant annoyances:

      Examples:

      1. Window switching is not working properly
      2. The mouse stops working for 3 seconds every 15 minutes
      3. For some reason, the letter "c" is sending "h" on the terminal
      4. My configurations are not saved after reboot
      5. My configurations are not being saved at all
      6. I must change video output manually every time I switch monitors
      7. I must change audio output manually every time I switch monitors
      8. Some essential configuration is ridiculously hard to find
      9. Configurations have no undo button
      10. Configurations have no reset button
      11. A certain package cannot be installed
      12. A certain dependence cannot be installed (dependency hell)
      13. There's a ridiculously accessible keyboard shortcut that makes your keyboard change layouts all the fucking time

      3.1 Places for Research

      Such minor issues must be solved within 30 days, as long as the user does their part and seek some of the following resources:

      1. Google
      2. Official websites
      3. Official forums
      4. Official warnings, newsletters, etc
      5. Semi-official communities
      6. FAQs
      7. Manuals
      8. Github Issues
      9. Gitlab Issues
      10. Other Venues to post issues

      If the minor issue is not solved in 45+ days, the distribution will be deemed not stable, regardless of the behavior of the user.

      4. Conclusion

      It is my opinion that, if any of the major and minor requirements are not fulfilled according to their particular rules, the distribution in question should not be deemed not Stable.

      4 votes
    9. Programming/software design practice?

      So, I've been going through Project Euler and solving problems as a way to brush up on my programming abilities, but it's mostly a math-focused set of problems. Which is cool..they're nice little...

      So, I've been going through Project Euler and solving problems as a way to brush up on my programming abilities, but it's mostly a math-focused set of problems. Which is cool..they're nice little puzzles that get the gears turning...

      BUT I'm wondering if anyone here has suggestions for a website/course that teaches software design in a piece-wise way. Like... each problem is a nugget of software design that builds off previous problems and eventually you're creating an entire application utilizing different algorithms/design patterns/data structures/etc.

      I'd appreciate any resources similar to that idea. Thanks!

      7 votes
    10. How do you power your personal site/blog? What should I use?

      I currently have a personal "portfolio" site that I haven't updated in close to a year. I'm planning now on revamping it, and I am using this opportunity to reconsider the static site generator I...

      I currently have a personal "portfolio" site that I haven't updated in close to a year. I'm planning now on revamping it, and I am using this opportunity to reconsider the static site generator I am using.

      I host my site on Github pages, which means that Jekyll was originally very appealing due to its nice integration with Github. However, I have found it difficult to greatly customize the themes I find, and I'm the type of person that likes to get everything "just right". It seems like Hugo might be more extensible in this regard, but I'm not sure if that alone makes it worth the switch from my current setup. Anecdotally, a lot of the blogs I find whose layouts I really like tend to use Hugo.

      Pure HTML/CSS is an option but that seems like a big overhead for what I want. I'm no web developer and I don't plan on becoming one.

      15 votes
    11. Linux Distro for an old PC

      I found my grandfathers old PC on the attic and want to revive it for him. He really loved that pc. Sadly that potato barely runs Windows xp so I thought about putting a Linux onto it. My Linux...

      I found my grandfathers old PC on the attic and want to revive it for him. He really loved that pc. Sadly that potato barely runs Windows xp so I thought about putting a Linux onto it. My Linux experience is limited to Mimt and Debian, both way to heavy for this old laptop. I need recommendations for a very light weight Linux Distro!

      Specs:
      256 mb DDR1 Ram
      Intel Celeron M 320 @ 1.4GhZ
      40gb Hard Drive

      It's a small, simple gift and nothing where I want to put money into. Also it won't be my granddads daily driver so please don't recommend me a new one (a lot of people did that on other websites so I am rather careful). Thanks in Advance!

      14 votes
    12. Would it be bad to mount a macbook pro upside down on a VESA tray?

      I've got a smaller desk with two monitor arms -- one with a monitor (left side, different system) and one with a VESA mounted tray for my macbook pro (late 2013 15".) I'm going to be adding a...

      I've got a smaller desk with two monitor arms -- one with a monitor (left side, different system) and one with a VESA mounted tray for my macbook pro (late 2013 15".)

      I'm going to be adding a 1440p monitor from the macbook pro, but I'm short on desk space. Instead of having the laptop on the tray normally, if I lay it lid down with the laptop portion up, the laptop base could sit behind the new monitor with the screen coming out the bottom -- perfect for static applications like VSCode, iTerm2, etc.

      Here's a mock up. The thicker outline represents the macbook pro screen.

      Can anybody foresee any issues with this configuration?

      6 votes
    13. Programming Q&A Thread

      An experiment I've been thinking about lately: a (recurring?) Q&A thread! Ask any questions about programming, answer other users' questions, or post suggestions for future threads. Don't forget...

      An experiment I've been thinking about lately: a (recurring?) Q&A thread! Ask any questions about programming, answer other users' questions, or post suggestions for future threads.

      Don't forget to format your code using the triple backticks or tildes:

      Here is my schema:
      
      ```sql
      CREATE TABLE article_to_warehouse (
        article_id   INTEGER
      , warehouse_id INTEGER
      )
      ;
      ```
      
      How do I add a `UNIQUE` constraint?
      

      Meta questions:

      • Should I turn this into a recurring thread?
      • If yes, should it be a weekly or a monthly thing?
      • Should DBA and SysAdmin questions be allowed or should someone else make a separate recurring thread for these?
      22 votes