Computer hardware
The following is my hardware shopping list, more or less. Observations and
rants are included.
Workstation
- CPU
-
(Low-end) Intel Xeon processors are generally nice and suitable for a
workstation: ECC memory support, fine TDP, and all the perks of being
mainstream. Though there are security vulnerabilities, potential
backdoors, vulnerabilities in backdoors, and numerous backwards
compatibility warts, but there are comparable ones in other affordable
and suitable for common computing tasks CPUs. Though as of 2019, it
seems that AMD CPUs may be a generally better option: ECC is not
disabled even in Ryzen (desktop) CPUs, and they seem to beat Intel in
benchmarks/specifications at the same price. Threadripper CPUs support
it officially, though their TDP and prices are a bit high; and then
there are "embedded" EPYC and Ryzen CPUs, officially supporting ECC and
having low TDP and prices, but apparently not being as commonly
available in stores.
- Memory
-
Software keeps eating all the available memory, and even if one manages
to avoid memory hogs, it's still nice to cache more. So it's usually a
good idea to have plenty of memory (either maximum supported by CPU and
motherboard, or at least aiming upgrades to a maximum size). Kingston
seems to be relatively reliable and produces ECC memory; Crucial and
SuperMicro seem fine too; personally I've only had issues with Corsair
(which makes non-ECC memory anyway).
- Storage
-
Probably it's the time to move to SSDs, but I'm still using HDDs. There
are reliability statistics around (usually it is, from least reliable to
most: Seagate, WD, Hitachi and Toshiba, which is also reflected in
prices); it's hard to deduce reliability by a vendor, but WD Red disks
work fine for me. RAID and/or backups are nice to have anyway.
- Graphics card
-
Some CPUs (even workstation ones) have integrated graphics, though even
if it's present, it may be used just as a backup. As for discrete video
cards, the primary issue for me is software support (both drivers and
higher-level software such as X compositors). Both AMD/ATI and Nvidia
are problematic, and the issues seem to vary from model to model, so the
safest way may be to ask around about compatibility of modern models
with the software one plans to use (and perhaps exact version of it,
including kernel/drivers: h-node.org listing alone doesn't guarantee
that things will work any smoothly), and possibly with libre drivers.
Although AMD seems to be generally more open and friendly to software as
of 2019. As with motherboards, generally ASUS wraps them nicely, though
it's better to check reviews and benchmarks instead of brands.
- Motherboard
-
ASUS workstation motherboards seem to be fine, and usually there is a
few to choose from. Non-workstation ones tend to come with Wi-Fi, LEDs,
and other things one may prefer to not have. Though generally it's
better to check reviews and benchmarks for motherboars on a chosen
chipset at the time of buying.
- CPU heat sinks and fans
-
Noctua is nice. Painless CPU mounting is great, it's silent, and cools
CPUs well. Newer AMD stock coolers are not so bad either (except for
LEDs), though still behind Noctua.
- Power supply
-
Since a PSU malfunction can fry a motherboard and components on it, it
may be a good idea to get a nice one, which would easily handle the used
hardware. "80 Plus" ratings can be consulted, and Thermaltake PSUs are
not the worst, though their newer models are covered in gaudy LEDs.
- Chassis
-
Full-tower metal cases are good for building and for cooling, and often
come with handy features that are less common on smaller cases (e.g.,
front panel ports for SATA HDDs and other I/O, large/slow/silent fans),
though tend to be heavy. Thermaltake ones are fine, NZXT looks nice too.
Unfortunately annoying and ugly LEDs are common on full-towers. Maybe
smaller and lighter cases would be fine too.
- UPS
-
APC seems to be fine (except for its software, which is awful, as usual
for software shipped by hardware vendors, but it's usable without that
software). An RBC7 battery lasts for about 3-5 years (and it's
recommended to change them every 3 years), though it's a pain to recycle
one properly.
- Keyboard
-
The "Truly Ergonomic" keyboard has a relatively nice layout,
though custom keyboards
may suit one better (and are fun to build). Split keyboards seem nice
too, but I haven't tried them yet.
- Mouse
-
Gaming hardware tends to be unreliable, but mice advertised as gaming
ones tend to be handy. Logitech mice seem to live longer than others
(and particularly than those made by gaming companies, like Razer).
- Home router
-
So far I had D-Link and ASUS routers that died, Linksys that lived until
it got outdated, and TP-Link router that lives, though it's not much of
data points. Apparently Zyxel shipped backdoored firmware, so it may be
better to avoid. LibreCMC and OpenWRT maintain supported hardware lists,
which are handy for choosing from. OpenWRT seems to be better at
supporting router models long-term, while LibreCMC drop support sooner
and supports much fewer models.
- Printer
- I don't have a printer, but apparently Brother makes nice and
inexpensive black-and-white laser printers with working Linux drivers.
And there's plenty of horror stories about HP printers.
- Computer speakers
- I'm not using anything fancy: only trying to avoid particularly heavy
computer speakers, since I don't like to move heavy things. Smaller and
lighter ones are certainly better for moving them around.
- Microphone
- While not using a dedicated microphone, I've investigated those.
Apparently (and as one may expect) decent microphones are standalone
(not embedded into headsets, cameras, etc) and fully analog (that is,
don't include sound cards and USB interfaces, but just focus on being
microphones, usually with an XLR interface). Dynamic microphones are
said to be more suitable for non-studio setups, and condenser/capacitor
ones -- for studio setups. Condenser microphones require phantom power,
so a suitable audio interface is required; for dynamic ones one may get
away with just an XLR-to-TRRS cable (although a preamplifier is commonly
recommended, so it may be better to get a basic audio interface anyway).
The popular options (for speech, basic and inexpensive ones) seem to be
Shure SM58 for a dynamic microphone, Audio-Technica AT2020 and a bunch
of others for a condenser microphone, Focusrite Scarlett external audio
interfaces.
Generally it's a good idea to look up the models on websites of vendors in
order to get accurate and complete specifications, though it doesn't
guarantee availability in local stores, and may take a few iterations. As
of 2019, tech companies didn't adopt structured/machine-readable data
exchange/publishing, so hardware search/picking services tend to provide
and use incomplete information. Though they still may be easier to get
information from, since official websites tend to be infested with JS and
marketing. I've considered composing a table with various vendors,
indicating whether they cover hardware in LEDs, make websites unusable and
drivers hard to download, etc, but it's basically as bad as it gets for
every major vendor.
A basic setup can be quite similar to that of a workstation: a computer, a
screen, speakers, some input devices. The major issues are content
retrieval and manipulation (documented separately, in the Home
entertainment centre note), and awkward hardware (documented below).
A computer
It's much easier to give up on workstation priorities (such as ECC memory
and not having gaudy LEDs), since there's plenty of compromises to be made
even then. In the end of 2019, I went for a build with Ryzen 7 3700X
(because of a relatively low TDP, and a stock cooler), ASUS TUF GAMING
X570-PLUS (WI-FI), HX432C16PB3K2/32 memory (which seemed a bit strange,
with my workstation from 2012 also having 32 GiB, though this memory is
faster), GV-R57XTGAMING OC-8GD graphics card, Corsair HX750 PSU, a couple
of NVMe SSDs, and just a voltage stabilizer instead of an UPS (which
probably was a mistake: brief power cuts happen quite frequently here; or
possibly it's just voltage going too far down sometimes, but either way
it's not quite fixable and leads to computers losing power). Finally tried
an NZXT case (H710); it's indeed quite nice, though heavy for a mid-tower.
The Xbox One controller works easily with MS Windows 10 over Bluetooth
(though the batteries only lasted for 40 hours of gaming, and one has to
select "mice, keyboards, etc" when adding a device, despite MS Windows
suggesting to pick a separate option for Xbox controllers) and over an USB
cable (micro-usb). For some reason (which I have no idea how to debug with
a reasonable effort, and likely it would violate long and unreadable game
licenses) games lag when it vibrates, but disabling vibration gets rid of
the lags.
A screen
OLED matrices seem to be used relatively commonly for media-oriented
"TVs", but modern "TVs" are monitors with built-in computers, loaded with
proprietary software, malware, and even advertisements (see also: HN
thread discussing spyware on smart TVs). Apparently there are similar
screens marketed as "conference room" or "commercial" ones, and perhaps
non-OLED can be fine too. With comparable specifications, regular screens
seem to be quite a bit more expensive than TVs; possibly that's because
TVs can feature frame interpolation and double frame rate in their
specifications, and/or advertise resolutions with interlacing. Though it's
commonly suggested that preinstalled spyware and adware lead to lower
prices as well.
I went for a gaming LG screen (32GK850F-B, VA matrix) in 2019, which seems
rather nice and not particularly expensive.
Old cable television
While OTT services may make more sense these days, one may want to
preserve regular TV (such as DVB-C). There are receivers (aka "set-top
box") that can output video over HDMI and sound separately (e.g., over
RCA), as well as speakers with dual inputs (e.g., also RCA), and computer
screens commonly support multiple inputs, so that both DVB-C receiver and
a computer can be connected to both a screen and speakers (so that TV can
function independently of a computer). There are PCI and USB TV tuners
too, but according to comments on the Internet their quality is very low
(both hardware and software), so solving it with additional wires seems
like a better option. See also: MythTV, LinuxTV, DVB-C devices in LinuxTV
wiki.