41554 blogs · [ { "id": "01a08c5a-afc7-7259-9dfd-e8a38e31ab02", "title": "Go (Golang) - Logging that matters", "url": "https://unixdigest.com/articles/go-logging-that-matters.html", "published_at": "2019-07-14T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a38e81904e", "title": "Stop pushing JavaScript!", "url": "https://unixdigest.com/articles/stop-pushing-javascript.html", "published_at": "2019-07-02T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a38ec86277", "title": "When abstractions, design patterns, and design principles lead to spaghetti code", "url": "https://unixdigest.com/articles/when-abstractions-design-patterns-and-design-principles-lead-to-spaghetti-code.html", "published_at": "2019-05-26T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a38fb27460", "title": "Battle testing ZFS, Btrfs and mdadm+dm-integrity", "url": "https://unixdigest.com/articles/battle-testing-zfs-btrfs-and-mdadm-dm.html", "published_at": "2019-05-05T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd3573ef984", "title": "Installing Arch Linux with ZFS on a USB stick", "url": "https://unixdigest.com/tutorials/installing-arch-linux-with-zfs-on-a-usb-stick.html", "published_at": "2019-03-28T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd358371849", "title": "Remuxing ISO, DVD, or Bluray using cat and ffmpeg on Linux", "url": "https://unixdigest.com/tutorials/remuxing-iso-dvd-or-bluray-using-cat-and-ffmpeg-on-linux.html", "published_at": "2018-12-05T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35929859d", "title": "Reviving Cubox with Arch Linux ARM", "url": "https://unixdigest.com/tutorials/reviving-cubox-with-arch-linux-arm.html", "published_at": "2018-11-11T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39026edc5", "title": "The real motivation behind systemd", "url": "https://unixdigest.com/articles/the-real-motivation-behind-systemd.html", "published_at": "2018-05-01T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a3910aa009", "title": "Void Linux - a great and unique Linux distribution", "url": "https://unixdigest.com/articles/void-linux-a-great-and-unique-linux-distribution.html", "published_at": "2018-03-30T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd359ec9fbd", "title": "Real full disk encryption using GRUB on Void Linux for BIOS", "url": "https://unixdigest.com/tutorials/real-full-disk-encryption-using-grub-on-void-linux-for-bios.html", "published_at": "2018-03-30T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35a9c7463", "title": "Package management in OpenBSD", "url": "https://unixdigest.com/tutorials/package-management-in-openbsd.html", "published_at": "2018-03-29T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a3913797ee", "title": "OpenBSD is fantastic", "url": "https://unixdigest.com/articles/openbsd-is-fantastic.html", "published_at": "2018-03-13T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35add585f", "title": "Arch Linux mail server tutorial - part 3 - Get DNS right, it's important!", "url": "https://unixdigest.com/tutorials/arch-linux-mail-server-tutorial-part-3-get-dns-right-it-is-important.html", "published_at": "2017-12-29T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35b639634", "title": "Arch Linux mail server tutorial - part 2 - OpenSMTPD, Dovecot, DKIMproxy, and Let's Encrypt", "url": "https://unixdigest.com/tutorials/arch-linux-mail-server-tutorial-part-2-opensmtpd-dovecot-dkimproxy-and-lets-encrypt.html", "published_at": "2017-12-28T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35b696b4f", "title": "Arch Linux mail server tutorial - part 1 - What is email?", "url": "https://unixdigest.com/tutorials/arch-linux-mail-server-tutorial-part-1-what-is-email.html", "published_at": "2017-12-27T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a3919efea4", "title": "Stay away from Cloudflare", "url": "https://unixdigest.com/articles/stay-away-from-cloudflare.html", "published_at": "2017-12-20T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35b913e48", "title": "Make the current commit the initial commit in a Git repository", "url": "https://unixdigest.com/tutorials/make-the-current-commit-the-initial-commit-in-a-git-repository.html", "published_at": "2017-12-10T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a391c72445", "title": "The typical discussions about BSD vs Linux", "url": "https://unixdigest.com/articles/the-typical-discussions-about-bsd-vs-linux.html", "published_at": "2017-10-15T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35c60a8db", "title": "Real full disk encryption using GRUB on Debian GNU/Linux for BIOS", "url": "https://unixdigest.com/tutorials/real-full-disk-encryption-using-grub-on-debian-linux-for-bios.html", "published_at": "2017-06-23T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35d573eb8", "title": "Real full disk encryption using GRUB on Arch Linux for BIOS and UEFI", "url": "https://unixdigest.com/tutorials/real-full-disk-encryption-using-grub-on-arch-linux-for-bios-and-uefi.html", "published_at": "2017-05-30T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a392b2c621", "title": "No your PHP framework isn't MVC, but don't worry, it really shouldn't be!", "url": "https://unixdigest.com/articles/no-your-web-application-isnt-mvc.html", "published_at": "2016-12-19T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35de18ff1", "title": "How to split your DNS requests when using a VPN", "url": "https://unixdigest.com/tutorials/how-to-split-your-dns-requests-when-using-vpn.html", "published_at": "2016-11-14T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a393587871", "title": "Programming languages and programming paradigms", "url": "https://unixdigest.com/articles/programming-languages-and-programming-paradigms.html", "published_at": "2016-01-02T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39395f88c", "title": "Bummer PHP", "url": "https://unixdigest.com/articles/bummer-php.html", "published_at": "2015-12-20T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39426e85f", "title": "Composer and Packagist - a bad implementation!", "url": "https://unixdigest.com/articles/composer-packagist-a-bad-implementation.html", "published_at": "2015-12-10T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a394adccf7", "title": "To framework or not to framework?", "url": "https://unixdigest.com/articles/to-framework-or-not-to-framework.html", "published_at": "2015-11-10T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39564c1da", "title": "No your API isn't REST, but don't worry, it really shouldn't be!", "url": "https://unixdigest.com/articles/no-your-api-isnt-rest-but-dont-worry-it-really-shouldnt-be.html", "published_at": "2015-11-01T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a3959d911c", "title": "Design Patterns Can Be Very Evil", "url": "https://unixdigest.com/articles/design-patterns-can-be-very-evil.html", "published_at": "2015-03-15T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a396863d3e", "title": "Procedural Programming vs Object-Oriented Programming", "url": "https://unixdigest.com/articles/procedural-programming-vs-object-oriented-programming.html", "published_at": "2015-02-28T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a3977f1ea1", "title": "Web application with a single entry point", "url": "https://unixdigest.com/articles/web-application-with-a-single-entry-point.html", "published_at": "2015-01-01T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35df83663", "title": "Keeping your home in Git, the right way", "url": "https://unixdigest.com/tutorials/keeping-your-home-in-git.html", "published_at": "2014-12-17T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a3985fc46e", "title": "Trying out Arch Linux again", "url": "https://unixdigest.com/articles/trying-out-arch-linux-again.html", "published_at": "2013-10-16T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a398a71d56", "title": "PSR-0 is not a solution it is a bypass!", "url": "https://unixdigest.com/articles/psr-0-is-not-a-solution-it-is-a-bypass.html", "published_at": "2013-04-23T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a398ad7bf7", "title": "Most PHP Frameworks are not for programmers", "url": "https://unixdigest.com/articles/most-php-frameworks-are-not-for-programmers.html", "published_at": "2013-04-17T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a398c1b988", "title": "When template engines for PHP get in the way", "url": "https://unixdigest.com/articles/when-template-engines-for-php-get-in-the-way.html", "published_at": "2013-03-26T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35e8629a0", "title": "Be careful when using docking stations", "url": "https://unixdigest.com/tutorials/be-careful-when-using-docking-stations.html", "published_at": "2013-02-04T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35f32f70a", "title": "An alternative way to play YouTube videos without using Flash", "url": "https://unixdigest.com/tutorials/an-alternative-way-to-play-youtube-videos-without-using-flash.html", "published_at": "2012-12-15T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35facc4bf", "title": "How to Create a New and Empty Branch in Git", "url": "https://unixdigest.com/tutorials/how-to-create-a-new-and-empty-branch-in-git.html", "published_at": "2012-01-18T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35fade70a", "title": "How to set your hostname and domain name correctly", "url": "https://unixdigest.com/tutorials/how-to-set-your-hostname-and-domain-name-correctly.html", "published_at": "2012-01-18T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35fdabf32", "title": "GnuPG Tutorial", "url": "https://unixdigest.com/tutorials/gnupg-tutorial.html", "published_at": "2012-01-18T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd35ffe4ed7", "title": "Enforce strong passwords in Debian", "url": "https://unixdigest.com/tutorials/enforce-strong-passwords-in-debian.html", "published_at": "2011-03-17T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd36001b19c", "title": "Unloading of modules at boot time in Debian", "url": "https://unixdigest.com/tutorials/unloading-of-modules-at-boot-time-in-debian.html", "published_at": "2011-02-12T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a399a53ecd", "title": "Benchmark 4 - Notes About Caching and Benchmarking", "url": "https://unixdigest.com/articles/benchmark-4-notes-about-caching-and-benchmarking.html", "published_at": "2010-12-17T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39a2481c3", "title": "Benchmark 3 - The Alternative PHP Cache (APC)", "url": "https://unixdigest.com/articles/benchmark-3-the-alternative-php-cache-apc.html", "published_at": "2010-12-16T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39a66d167", "title": "Benchmark 2 - MySQL Cache", "url": "https://unixdigest.com/articles/benchmark-2-mysql-cache.html", "published_at": "2010-12-15T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39a7153cc", "title": "Benchmark 1 - Dynamic pages vs. static pages vs. Memcached", "url": "https://unixdigest.com/articles/benchmark-1-dynamic-pages-vs-static-pages-vs-memcached.html", "published_at": "2010-12-14T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39aaaa62a", "title": "Social networking is a poor substitute to real human interaction", "url": "https://unixdigest.com/articles/social-networking-is-a-poor-substitute-to-real-human-interaction.html", "published_at": "2010-11-18T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39b3fa49b", "title": "The Book \"Pro PHP Refactoring\"", "url": "https://unixdigest.com/articles/the-book-pro-php-refactoring.html", "published_at": "2010-11-05T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39bc4d389", "title": "Code comments are good right? Well, not if there are too many!", "url": "https://unixdigest.com/articles/code-comments-are-good-right-well-not-if-there-are-too-many.html", "published_at": "2010-10-21T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39be7d01d", "title": "Code Navigation, Design Patterns, and Too Many Functions", "url": "https://unixdigest.com/articles/code-navigation-design-patterns-and-too-many-functions.html", "published_at": "2010-10-12T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd3607c4b2b", "title": "Git bare vs. non-bare repositories", "url": "https://unixdigest.com/tutorials/git-bare-vs-non-bare-repositories.html", "published_at": "2010-10-09T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd3612aaf9a", "title": "What does GRUB see?", "url": "https://unixdigest.com/tutorials/what-does-grub-see.html", "published_at": "2010-09-07T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd36141f31e", "title": "Windows XP nv4_disp infinite loop problem", "url": "https://unixdigest.com/tutorials/windows-xp-nv4-disp-infinite-loop-problem.html", "published_at": "2010-01-19T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd361a608da", "title": "For Debian - what package does that file belong to?", "url": "https://unixdigest.com/tutorials/what-package-does-that-file-belong-to.html", "published_at": "2010-01-12T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd361c50713", "title": "umount - device is busy", "url": "https://unixdigest.com/tutorials/umount-device-is-busy.html", "published_at": "2010-01-12T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd36267539d", "title": "Simple CHM to PDF conversion on Linux and BSD", "url": "https://unixdigest.com/tutorials/simple-chm-to-pdf-conversion-on-linux-and-bsd.html", "published_at": "2010-01-07T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd36339e110", "title": "Resume SFTP transfer with rsync", "url": "https://unixdigest.com/tutorials/resume-sftp-transfer-with-rsync.html", "published_at": "2009-12-15T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39c2ab595", "title": "Passwords from the attackers point of view", "url": "https://unixdigest.com/articles/passwords-from-the-hackers-point-of-view.html", "published_at": "2009-10-21T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd363fca120", "title": "Localized version in the console? No thanks!", "url": "https://unixdigest.com/tutorials/localized-version-in-the-console-no-thanks.html", "published_at": "2009-10-20T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd364af54c1", "title": "How to convert a man page into PS, PDF or DVI", "url": "https://unixdigest.com/tutorials/how-to-convert-a-man-page-into-ps-pdf-or-dvi.html", "published_at": "2009-10-15T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd364dac219", "title": "Mercurial branching, main and stable, a possible workflow", "url": "https://unixdigest.com/tutorials/mercurial-branching-main-and-stable-a-possible-workflow.html", "published_at": "2009-10-14T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd365c845aa", "title": "PHP include path problems", "url": "https://unixdigest.com/tutorials/php-include-path-problems.html", "published_at": "2009-09-15T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39c58430d", "title": "Why I do not like derived Linux distributions", "url": "https://unixdigest.com/articles/why-i-do-not-like-derived-linux-distributions.html", "published_at": "2009-08-13T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd366a1bf03", "title": "Mount an OpenBSD slice from Linux", "url": "https://unixdigest.com/tutorials/mount-an-openbsd-slice-from-linux.html", "published_at": "2009-08-04T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd367550908", "title": "Finding and removing duplicate files with fdupes", "url": "https://unixdigest.com/tutorials/finding-and-removing-duplicate-files-with-fdupes.html", "published_at": "2009-08-01T00:00:00+00:00" }, { "id": "01a0e45a-c59c-72e1-8c1f-3bd368031642", "title": "Mozilla Firefox Keywords Shortcuts", "url": "https://unixdigest.com/tutorials/mozilla-firefox-keywords-shortcuts.html", "published_at": "2009-08-01T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b704b2ee3", "title": "Encrypting and decrypting files using GnuPG, OpenSSL or Mcrypt", "url": "https://unixdigest.com/tutorials/encrypting-and-decrypting-files-using-gnupg-openssl-or-mcrypt.html", "published_at": "2009-04-01T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b70a13e2c", "title": "CD or DVD Boot problems on MAC", "url": "https://unixdigest.com/tutorials/cd-or-dvd-boot-problems-with-mac.html", "published_at": "2009-03-15T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b7131d117", "title": "Cache your DNS requests using Bind", "url": "https://unixdigest.com/tutorials/cache-your-dns-requests.html", "published_at": "2009-03-15T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b71a5d7d9", "title": "Remove -- MARK -- from the message log", "url": "https://unixdigest.com/tutorials/remove-mark-from-the-message-log.html", "published_at": "2009-03-15T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b71c9bd4c", "title": "Keeping the system time precise using NTP", "url": "https://unixdigest.com/tutorials/keeping-the-system-time-precise-using-ntp.html", "published_at": "2009-03-15T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b72b7d768", "title": "Resume SFTP transfer with PuTTY", "url": "https://unixdigest.com/tutorials/resume-sftp-transfer-with-putty.html", "published_at": "2009-03-14T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b736e607e", "title": "PHP Security", "url": "https://unixdigest.com/tutorials/php-security.html", "published_at": "2008-11-28T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39d149062", "title": "Trying out Arch Linux", "url": "https://unixdigest.com/articles/trying-out-arch-linux.html", "published_at": "2008-11-04T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39d8dd5d7", "title": "Ubuntu as in Debian?", "url": "https://unixdigest.com/articles/ubuntu-as-in-debian.html", "published_at": "2008-11-03T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b743f154f", "title": "Using EncFS to encrypt some of your files", "url": "https://unixdigest.com/tutorials/using-encfs-to-encrypt-some-of-your-files.html", "published_at": "2008-11-02T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b74eb80a9", "title": "Choosing a new backup solution, Duplicity, rdiff-backup or Rsnapshot", "url": "https://unixdigest.com/tutorials/choosing-a-new-backup-solution-duplicity-rdiff-backup-or-rsnapshot.html", "published_at": "2008-10-30T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b74ee6b6a", "title": "Speed down your CPU", "url": "https://unixdigest.com/tutorials/speed-down-your-cpu.html", "published_at": "2008-08-12T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b75959ff4", "title": "Pointers in C", "url": "https://unixdigest.com/tutorials/pointers-in-c.html", "published_at": "2007-12-26T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39e3c7432", "title": "Programming in C, Cpp, and Ada", "url": "https://unixdigest.com/articles/programming-in-c-cpp-and-ada.html", "published_at": "2007-12-25T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39e56db42", "title": "Choosing a good book on programming", "url": "https://unixdigest.com/articles/choosing-a-good-book-on-programming.html", "published_at": "2007-12-14T00:00:00+00:00" }, { "id": "01a08c5a-afc7-7259-9dfd-e8a39ef45e73", "title": "Revision control", "url": "https://unixdigest.com/articles/revision-control.html", "published_at": "2007-11-17T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b75f58603", "title": "Wrong default encoding on the Apache webserver", "url": "https://unixdigest.com/tutorials/wrong-default-encoding-on-the-apache-webserver.html", "published_at": "2007-08-22T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b761ee566", "title": "Who is listening on my ports", "url": "https://unixdigest.com/tutorials/who-is-listening-on-my-ports.html", "published_at": "2007-01-13T00:00:00+00:00" }, { "id": "01a0e45a-c59d-718c-841c-a45b7710e57f", "title": "diff and patch", "url": "https://unixdigest.com/tutorials/diff-and-patch.html", "published_at": "2006-05-22T00:00:00+00:00" } ] posts Claim your blog
Back to Unix Digest
Blog · corpus.blog/blogs/unixdigest.com/posts

Unix Digest

unixdigest.com

2019

2018

2017

2016

2015

2014

2013

2012

2011

2010

2009

2008

2007

2006