1. 2. 2021

February 2021

Tools

  • Vite - Next Generation Frontend Tooling

#notices

1. 1. 2021

January 2021

Tools & services

Image hosting

Gears

  • Keychron K3 - World's First Hot-Swappable Low Profile Optical Wireless Mechanical Keyboard
  • A2+ Speakers - A2+ premium powered speakers with high-fidelity stereo sound
  • Gibbon AIR - active monitor system with Bluetooth
  • Neumann NDH-20 - premium quality studio headphones
  • Lagoon anc traveller - Wireless headphones with ANC from BeyerDynamic
  • Sony WH-1000XM4 - Wireless Noise-Canceling Headphones form Sony
  • Raspberry Pi Pico - Raspberry Pi Pico is a tiny, fast, and versatile board built using RP2040, a brand new microcontroller chip designed by Raspberry Pi

Comments

  • Guestbook - GitHub issue based Guestbook
  • Utteranc - A lightweight comments widget built on GitHub issues.
  • Octomments - Using GitHub issues as a comment plugin.
  • Commento - Embed comments without giving up your privacy.
  • Fast Comments - A comment service that will delight your users and developers.

Earl Grey

Webdesign

  • Primer - Design, build, and create with GitHub’s design system

#notices

10. 12. 2020

PHP code speed comparison

function versus(callable $first, callable $second, $repeat = 100000) {

    $f = microtime(true);
    foreach (range(0, $repeat) as $r) call_user_func($first);
    $firstTimer = microtime(true) - $f;

    $s = microtime(true);
    foreach (range(0, $repeat) as $r) call_user_func($second);
    $secondTimer = microtime(true) - $s;

    printf(
        '%s function is %.2f%% faster (%f vs %f)',
        $firstTimer < $secondTimer ? 'First' : 'Second',
        abs((($firstTimer - $secondTimer) / $firstTimer) * 100),
        $firstTimer, $secondTimer
    );
}

Example

versus(
    function () {
        $str = '!loremipsum';
        return substr($str, 0, 1) === '!';
    },
    function () {
        $str = '!loremipsum';
        return $str[0] === '!';
    }
);

Will print:

Second function is 36.72% faster (0.142766 vs 0.090349)

#PHP #Snippets

8. 12. 2020

Optimal Social Media Sizes

Facebook

Facebook Ads
Facebook Video
  • Facebook video ad size: 1280×720
  • Facebook video size: 1280×720
  • Maximum Facebook video length: 240 minutes

Instagram

Instagram Ads
  • Instagram ads size: 1080×566 pixels (landscape), 1080×1080 pixels (square)
  • Minimum Instagram image ad size: 500 pixels wide
Instagram video
  • Minimum Instagram video sizes: 600×600 (square), 600×315 (landscape), 600×750 (portrait), 600×700 (Carousel video dimensions)
  • Maximum Instagram video length: 60 seconds
  • Instagram IGTV video size: 1080×1920

Twitter

Twitter video
  • Twitter video size: 720×720 (square), 1280×720 (landscape), 720×1280 (portrait)
  • Twitter ad size (video): 720×720 (square), 1280×720 (landscape), 720×1280 (portrait)
  • Maximum Twitter video length: 140 seconds

LinkedIn

Company pages:
Personal pages:
  • LinkedIn profile picture size: 400×400
  • LinkedIn background photo size: 1584×396
  • LinkedIn post image size: 1200×1200 (desktop) 1200×628 (mobile)
  • LinkedIn link post size: 1200×628
  • LinkedIn video size: 256×144 (minimum) to 4096×2304 (maximum)
  • Maximum LinkedIn video length: 10 minutes

YouTube

  • YouTube Channel cover picture: 2560×1440 pixels (desktop) and 1546×423 pixels (smartphones)
  • YouTube Display ads: 300×250
  • YouTube Overlay ads: 480×60
  • YouTube Companion banner ads: 300×250 pixels
  • YouTube Skippable video ads length: 6 – 20 seconds
  • YouTube Non-skippable video ads length: 12 seconds to 3 minutes (30 seconds is recommended)
  • YouTube Bumper video ads length: 6 seconds
  • YouTube Standard video: 1280×760 pixels

TikTok

  • Tik Tok Video length: 1080×1920, maximum 15 seconds recommended.
  • Tik Tok Profile photo 200×200
  • Profile Picture: 180×180 pixels (Displays 170×170 on Desktop)
  • Cover Photo: 820×312 pixels

#webdesign

1. 12. 2020

Debug WordPress 404 page

Insert following code to functions.php for debuging 404 page:

ini_set('error_reporting', -1);
ini_set('display_errors', 'On');

add_action(
    'parse_request',
    function (&$wp) {
        global $wp_rewrite;

        printf('<h2>rewrite rules</h2><pre>%s</pre>', var_export($wp_rewrite->wp_rewrite_rules(), true));
        printf('<h2>permalink structure</h2><pre>%s</pre>', var_export($wp_rewrite->permalink_structure, true));
        printf('<h2>page permastruct</h2><pre>%s</pre>', var_export($wp_rewrite->get_page_permastruct(), true));
        printf('<h2>matched rule and query</h2><pre>%s</pre>', var_export($wp->matched_rule, true));
        printf('<h2>matched query</h2><pre>%s</pre>', var_export($wp->matched_query, true));
        printf('<h2>request</h2><pre>%s</pre>', var_export($wp->request, true));

        global $wp_the_query;
        printf('<h2>the query</h2><pre>%s</pre>', var_export($wp_the_query, true));
    }
);

add_action(
    'template_redirect',
    function () {
        global $wp_filter;
        printf(
            '<h2>template redirect filters</h2><pre>%s</pre>',
            var_export($wp_filter[current_filter()], true)
        );
    }, 99999
);

add_filter(
    'template_include',
    function ($template) {

        printf(
            '<h2>template file selected</h2><pre>%s</pre>',
            var_export($template, true)
        );
        exit();
    }
);

#Wordpress #PHP

1. 12. 2020

December 2020

Libs

Tools

  • Kap - open-source screen recorder built with web technology
  • Rectangle - Move and resize windows in macOS using keyboard shortcuts or snap areas

#notices

20. 11. 2020

Create macOS Big Sur ISO Image File

First download macOS Big Sur From Apple with App Store. Quit installator with ⌘+q, then create new empty volume:

sudo hdiutil create -o /tmp/BigSur -size 16384m -volname BigSur -layout SPUD -fs HFS+J

Mount new volume:

sudo hdiutil attach /tmp/BigSur.dmg -noverify -mountpoint /Volumes/BigSur

Create bootable dmg and copy to new volume:

sudo /Applications/Install\ macOS\ Big\ Sur.app/Contents/Resources/createinstallmedia --volume /Volumes/BigSur --nointeraction

Eject installator:

hdiutil eject -force /Volumes/Install\ macOS\ Big\ Sur

Convert dmg to cdr file:

hdiutil convert /tmp/BigSur.dmg -format UDTO -o ~/Downloads/BigSur

Rename cdr to iso:

mv -v ~/Downloads/BigSur.cdr ~/Downloads/BigSur.iso

Delete original created dmg file:

sudo rm -fv /tmp/BigSur.dmg

How to create a bootable installer for macOS

#macOS

12. 11. 2020

Retrieve IP adress of AirPrint Printer

You can use ippfind command that finds services registered with a DNS server or available through local devices. Its primary purpose is to find IPP printers and show their URIs, show their current status, or run commands.

ippfind

Then you get local adress of printer (Internet Printing Protocol (IPP, RFC 2911)):

ipp://3036B5000000.local:XXX/ipp/print

then ping local address

ping 3036B5000000.local

and here we go

PING 3036B5000000.local (192.168.0.108): 56 data bytes
64 bytes from 192.168.0.108: icmp_seq=0 ttl=64 time=262.342 ms
64 bytes from 192.168.0.108: icmp_seq=1 ttl=64 time=285.290 ms

our printer has 192.168.0.108

#macOS