Springler безплатни книги

Докато трае хаоса със K-19 много издателства пускат безплатни книги. Ето и линка към Springler към техните такива:
https://link.springer.com/search?facet-content-type=%22Book%22&package=mat-covid19_textbooks&%23038;facet-language=%22En%22&%23038;sortOrder=newestFirst&%23038;showAll=true

Разбира се книгите може да бъдат смъквани като PDF и като ePub.

Springler безплатни книги

Още web архивиране с Archive.today

След като вчера ви показах как да архивирате със archive.org днес ще ви покажа друг инструмент за архивиране – archive.today

Archive.today разполага със една много проста страница на която има 2 функционалности – архивиране на страница и търсене във архивите. Там някъде има и bookmarklet за по-лесно архивиране на текущата страница както и API което сега ще покажа как работи.

Да кажем, че искате да видите какво е архивирано за peter.nikolow.me ето и как да го направите:
http://archive.today/timegate/http://peter.nikolow.me
Ако искате да смъкнете специфичен архив:
http://archive.today/20200324235923/http://peter.nikolow.me
Ако искате да видите всички архиви по дати:
http://archive.today/timemap/http://peter.nikolow.me
Ако искате да видите най-стария архив:
http://archive.today/oldest/http://peter.nikolow.me
Ако искате най-новия:
http://archive.today/newest/http://peter.nikolow.me
Пълен списък на функционалността има тук:
http://archive.today/faq

Основната разлика между archive.org и archive.today е начина на архивиране. Втория има сякаш малко по-добър архиватор и записва всички ресурси на страницата. В добавка към всеки архив се прави и снимка така как изглежда в момента на архивирането. Но това не е всичко! Може да се смъкне и zip файл със всички ресурси на архива. Друга благинка е, че не се спазва robots.txt и е възможно да бъде архивирана страница която е забранена за индексиране. За съжаление обаче няма робот който да обхожда интернет за архивиране на страници. Архивират се само страници за които е изрично указано да се архивират и нищо повече. В това отношение arhive.org е категоричен победител защото разполага със собствен паяк който обхожда интернета.

Още web архивиране с Archive.today

GitHub compare releases

GitHub е де-факто стандарт за съхраняване на изходни кодове и работи брилянтно. Една от прекрасните фукнции която обаче е леко скрита е да се сравняват разликите между различните версии. Сега ще го покажа как работи при normalize.css.

Първия вариант да се сравни е да се отиде във проекта. При мен линка беше това:
https://github.com/necolas/normalize.css
после „Releases“, после текущата версия (при мен 8.0.1) и отляво излиза бутон „Compare. След натискане там излизат всички версии. Примерно аз исках да сравня разликите между 3.0.3 и 8.0.1.

Втория вариант е доста по-хакерски. Общо взето трябва да се отвори линк като този:
https://github.com/потребител/репо/compare/таг1…таг2
и примерен линк:
https://github.com/necolas/normalize.css/compare/3.0.3…8.0.1

В конкретния случай ме интересуват промените по един файл от целия проект. Разбира се винаги мога да смъкна двата releases и след като ги разархивирам да diff-на докато намеря това което ме интересува. Но онлайн от GitHub е доста по-лесно и по-бързо.

GitHub compare releases

Auto-Archive

Archive.org е все по-важен ресурс за съхраняване на линкове в интернет. Сега ще покажа 3 начина със които да записвате линкове СЕГА, а не да чакате на случайността.

Първия вариант е да отворите:
https://web.archive.org/save
и да допълните какво и как искате да се запише.

Втория вариант е да напишете линка така:
https://web.archive.org/save/peter.nikolow.me
което ще предизвика записване на линка (peter.nikolow.me) във Archive.org сега.

Третия начин е по мейл. Ако добавите към всеки мейл този получател също:
savepagenow@archive.org
то тогава Archive.org ще запише всички линкове от този мейл. Можете да го прибавите като bcc.

Разбира се втория и третия начин са изключително подходящи за автоматизиране.

Auto-Archive

LED лампи

Ако сте се чудили как изглеждат евтините LED лампи отвътре ето какво съдържат:
https://electronupdate.blogspot.com/2019/12/dollar-store-led-bulb.html
и дискусията във Hacker News:
https://news.ycombinator.com/item?id=22366084
и цял канал посветен само на ревюта на подобни лампи:
https://www.youtube.com/playlist?list=PLv9WfM3NgK2xFHrD9BJ4-4CEbRpbe6DFP

В допълнение тук Ivo Minchev от PCtechnik показва как може да се ремонтират изгоряли LED лампи:
https://www.facebook.com/watch/?v=2446735175445692
общо взето светодиодите са свързани последователно. И когато един изгърми и цялата верига се прекъсва. Разбира се изисква се малко умение за работа с поялник.

LED лампи

Chitanka for Kindle

Всички книги на Читанката за Kindle във Mobi формат тук:
https://pechkov.chitanka.info/mobi/index.php

Ако не ви се занимава ето и онлайн конвертор:
https://www.epubconverter.com/epub-to-mobi-converter/
недостатъка е, че трябва да смъквате .ePub файловете от Читанката и после да ги качвате в този конвертор за да имате .Mobi файлове. А това без лаптоп си е приключение.

Chitanka for Kindle

Безплатно обновяване от Windows 7 към Windows 10

Въпреки, че процеса на безплатното обновяване приключи преди години все още можете да обновите от Windows 7 или 8.1 към Windows 10. Процеса е лесен:

  1. Архивирайте си всички важни файлове и документи.
  2. Отворете тази връзка: тук
  3. Смъкнете инструмента за създаване на Windows 10 инсталационен носител и го стартирайте.
  4. Когато ви попитат какво искате да правите – „Да обновите този компютър сега?“ или „Да създатеде инсталационен носител за друг компютър“ изберете да обновите този компютър.
  5. Натиснете бутона „Напред“ (next) и това е.

Ето и оригинала: https://www.theverge.com/2020/1/14/21065140/how-to-upgrade-microsoft-windows-7-10-free-os

Безплатно обновяване от Windows 7 към Windows 10

PHP Simple HTTP Server

Ето как лесно и просто да стартирате HTTP Server под PHP:

php -S 127.0.0.1:8080

След което отваряте в браузър http://localhost:8080 и можете да видите как се изпълняват PHP скриптове от папката в която е създаден. Основната разлика в сравнение със сървъра работещ под Python е, че няма показване на папките във директорията. Директно се опитва да намери index.php и ако няма такъв сървъра тържествено обяснява, че не може да достъпи „/“ и връща 404.

PHP Simple HTTP Server

Python Simple HTTP Server

Понякога когато човек работи на Linux сървър и му трябва да си види няколко файла, но без да активира допълнителни клиенти или сървъри. Ето и решението за Python 2:

python -m SimpleHTTPServer 8080

Ако използвате Python 3:

python -m http.server 8080

След което отваряте браузър и пишете това:
http://ip.на.сървъра:8080/път/към/файла.txt

Това е всичко! Когато си свършите работа просто набивате един Ctrl-C на Python. Имайте на предвид, че Python се изпълнява под текущия потребител и наследява всички негови ограничения за достъпи до файловете. Под *nix портове под 1024 могат да се отварят само под root права и затова използваме порт 8080. Ако искате да отворите порт под 1024 ще трябва да използвате sudo, но тогава Python също ще се изпълнява под ниво на root и ще може да има достъп до всички файлове.

Python Simple HTTP Server

OpenVPN benchmark

Как да пресметнем колко е максималната пропусквателна способност на OpenVPN:
openvpn –genkey –secret /tmp/secret
time openvpn –test-crypto –secret /tmp/secret –verb 0 –tun-mtu 20000 –cipher aes-256-cbc

Резултата от втората команда е:

Tue Dec 17 22:27:25 2019 disabling NCP mode (--ncp-disable) because not in P2MP client or server mode
real    0m42.917s
user    0m42.738s
sys    0m0.075s

Приемаме, че командата се изпълнява за 43 секунди. Сега правим следната сметка:
(3200 / секундите) = максималната теоритична пропусквателна способностна OpenVPN в Mbps
При нас е:
(3200 / 43) = 73.41 Mbps

Откъде идва 3200? Това е сумата на числата от 1 до 20000, умножава се по 2 за шифроване/разшифроване и после се умножава по 8 бита и се разделя на 1000000 за да се получи като мегабита в секунда. Резултата показва колко е максималната пропусквателната пропусквателна способност ограничена от процесора (шифриране/дешифриране).

OpenVPN benchmark