12 tips for preparing your video for success

Rob from VidIQ
Rob from VidIQ

Since then I’m sure you’ve come up with some ideas, created some content, and now your video is ready to go live. What happens next?

Here’s Twelve Steps to Helping Your Video Crush It!

  1. Check your real time analytics and our best time to post tool to find the optimum publish date and time.

2. Your video should have been created with keywords in mind. Now use those keywords in your tags, video title, and description. Reinforce your topic over and over. This is called Search Engine Optimization (SEO).

3. The main keyword should appear in the title and you should include as many keywords as possible in your description, whilst still being natural, free-flowing sentences

4. As you complete your tags, title and description, our upload checklist will grade your SEO score to make sure your video has maximum discoverability.

5. Use vidIQ boost to get recommended tags and suggestions to further boost your video’s SEO.

6. Thumbnail tips:

  • Bright and dark contrasts between foreground and background
  • Make sure the thumbnail compliments the title rather than copying it
  • A human being with a reaction always helps, if it’s relevant
  • Text is not always required in the thumbnail, the title can do that.

7. Add video cards at appropriate times in your content to link to other videos you think the viewer may find interesting and relevant.

8. Always include a voting poll, they encourage a lot of engagement.

9. Always add videos to a playlist. When you post a link to the video, post the playlist link. Consider creating a new playlist for the video: to YouTube this is the same as uploading a video.

10. Include end screens to promote your content but keep your outro brief and to the point. Viewers can tell when a video is ending and switch off very quickly.

11. Make sure to share your content on other social media platforms and with communities you are a part of but don’t randomly spam it on Reddit.

12. Check back on the video within the first 2, 12 and 24 hours and reply to as many comments as possible to drive up engagement.

~ Rob from VidIQ (published with permission)

The post 12 tips for preparing your video for success appeared first on BudiPutra.com.

BBI for 2021

At this special BBI coordinative meeting, the Coordinative Minister of Maritime & Invesment reminded us that the program expansion to leverage the MSME & national product should be accelerated in 2021; and the programs would include the quality improvement for the MSME & their products. Some MSMEs must be leveraged to the class of artisans, whose products will have better quality than the industry comparisons.

Telkom, with its definitive role as the architect of the platform-based digital ecosystem for MSME business will expand the digital market for the MSME, including generating and promoting a wider market demand for the MSME products & services. Some horizontal and vertical integrations have been planned to ensure the MSME economy will be part of national development strategy; and some new services could be established, including financing, certification, quality improvement, export facilities, etc.

How to play Roblox on Linux

I used to play Roblox with my kids from my Linux-based (Ubuntu) laptop – by having a virtual machine set up (on VirtualBox) with Windows, and play there. Of course it’s slow, but I still CAN play.

However one day Roblox decided to disable playing from Virtual Machine. And there goes my little bit of happiness with my children.

One day I found this article about using Steam Link to enable remote access to a Windows desktop, and it got me an idea – can I use this trick to play Roblox again from my laptop?

So I setup Google Chrome to be streamable from my gaming computer on my house’s second floor – and voila, it showed up in my Steam account indeed !

By invoking Google Chrome on my Steam app on Linux – then I can browse to Roblox.com, and then play all the games there.

Mission accomplished !

Use Steam to Stream Your Desktop Instead of Your Games : https://lifehacker.com/use-steam-to-stream-your-desktop-instead-of-your-games-1818722875

Setup OpenVPN Server on Proxmox LXC

I needed to do this, but all the tutorials that I could find are incomplete, or already outdated, such as this.

After hacking around for a while, here’s how to correctly setup OpenVPN server in a container on Proxmox:


# create special device "tun" for OpenVPN
mkdir -p /devcontainer/net
mknod /devcontainer/net/tun c 10 200
chown 100000:100000 /devcontainer/net/tun

# enable your container to use that tun device
# change 124 into your container's number : pct list
echo "lxc.mount.entry: /devcontainer/net dev/net none bind,create=dir" >> /etc/pve/lxc/124.conf

# forward OpenVPN traffic to your container's IP address
# change to your container's IP address
iptables -t nat -A PREROUTING -i vmbr0 -p tcp -m tcp --dport 1194 -j DNAT --to-destination

iptables -t nat -A PREROUTING -i vmbr0 -p udp -m udp --dport 1194 -j DNAT --to-destination

iptables -t nat -A PREROUTING -i vmbr1 -p tcp -m tcp --dport 53 -j DNAT --to-destination

# save iptables's rule
iptables-save > /etc/iptables.rules


# execute the automated OpenVPN installation script 
mkdir /root/scripts
cd /root/scripts

wget git.io/vpn --no-check-certificate -O openvpn-install.sh ; chmod +x openvpn-install.sh ; ./openvpn-install.sh
# if you'd like to change the default 10.8.0.xxx IP address, do this :
# vi openvpn-install.sh
# :%s/10.8.0/10.88.0/g

# setup NAT, so the OpenVPN clients can connect to the internet 
# while connected to this OpenVPN server
iptables -I POSTROUTING -t nat -s -j MASQUERADE

# save iptables's rule
iptables-save > /etc/iptables.rules

After executing the /root/scripts/openvpn-install.sh script , it will result in a file with ovpn extension

Download that to your computer / client,
install OpenVPN client,
and use that ovpn file as the configuration

Enjoy !

OBS (Open Broadcasting Software) As Video source (for Zoom, Google Meet, Skype, etc) in Ubuntu 20.04

I used to use my Android smartphone as webcam for Zoom / Skype / Google Meet / etc because my laptop’s webcam is so bad. This is possible thanks to the Droidcam app.

But sometimes there are problems, like the wifi got interference so the video would slow down or freeze for a while. And for long conference / meeting, it got my phone pretty hot because sometimes I have to charge it. And of course I can’t use my phone while it’s being used as webcam.

So I bought Logitech C920 Pro webcam, and started using it instead. In Linux it’s recognized and can bs used straight away.
But you may need to tweak its image quality a bit using guvcview before being used for work.

The picture quality is not as good as my smartphone’s , because my smartphone is heavily processing the images, so it came out even with HDR quality, in real-time. But as a daily work webcam, this Logitech webcam is good enough.

Then I need to start using Green screen as well with this webcam. There’s one problem – my Green screen is not wide enough to cover the webcam’s wide angle.

With Droidcam, this is not a problem, there’s a “Zoom” feature. So I just Zoom-in, until the green screen fills the view.
But since Logitech does not provide any kind of software for this webcam on Linux, I use OBS instead.

Using OBS, I can set up green screen in it, so we don’t need to use Zoom’s green screen / Virtual Background feature. And also that means all other software (Google Meet, Skype, etc) will automatically got the already green screened video from OBS.

To zoom-in in OBS, I just enlarge the webcam’s image box, until the green screen fill the view.
To activate green screen, I use the Chroma key filter.

choose Tools – V4L2 Video Output to enable OBS as Video Source for other software
Make sure to tick the “Auto Start” option
(no green screen tho when I took this screenshot)

To make OBS become a video source, we’ll need to install obs-v4l2sink : https://github.com/CatxFish/obs-v4l2sink

Turned out there are a few problems installing it in Ubuntu 20.04 , we’ll discuss here the workaround for those:

# Another possible solution is using Snap's version of OBS, 
# which already include v4l2loopback kernel module 
# & obs-v4l2sink plugin
# sudo snap install obs-studio.
# sudo modprobe v4l2loopback video_nr=10 card_label=”OBS Video Source” exclusive_caps=1

# If by any reason you can't use this Snap-based solution, 
# then continue : 

# download needed software for compilation
sudo apt-get update ; sudo apt-get install -y install obs-studio git cmake build-essential libobs-dev ffmpeg qtbase5-dev

cd /tmp ; mkdir myobscode ; cd myobscode

# get OBS' source code
git clone --recursive https://github.com/obsproject/obs-studio.git

# get plugin's source code
git clone https://github.com/CatxFish/obs-v4l2sink

# compile the OBS plugin
cd ~/obs-v4l2sink
mkdir build && cd build
cmake -DLIBOBS_INCLUDE_DIR="../../obs-studio/libobs" -DCMAKE_INSTALL_PREFIX=/usr ..

make -j4
sudo make install
sudo cp v4l2sink.so /usr/lib/obs-plugins/
sudo cp /usr/lib/obs-plugins/v4l2sink.so /usr/lib/x86_64-linux-gnu/obs-plugins/

# Turned out we need to compile and build v4l2loopback by ourselves - this is because the Ubuntu's version is too old
# Thanks to user jplandrain : 
# https://github.com/CatxFish/obs-v4l2sink/issues/54#issuecomment-722966599
cd ..
sudo apt-get remove v4l2loopback-dkms
git clone --branch v0.12.5 https://github.com/umlaeute/v4l2loopback.git
cd v4l2loopback
make && sudo make install

# make v4l2loopback automatically loaded by kernel after reboot
echo "v4l2loopback" >> /etc/modules-load.d/modules.conf
echo 'options v4l2loopback video_nr=2' >> /etc/modprobe.d/v4l2loopback.conf

echo 'options v4l2loopback card_label="VirtualCam"' >> /etc/modprobe.d/v4l2loopback.conf

echo 'options v4l2loopback exclusive_caps=1' >> /etc/modprobe.d/v4l2loopback.conf

# load the loopback module into kernel now
sudo modprobe v4l2loopback video_nr=10 card_label="OBS Video Source" exclusive_caps=1

# start OBS - now there should be a new menu : 
#     Tools - V4L2 Video Output
# also you'll need to tick "Autostart" option after choosing that menu
obs &

BBI Q4/2020

BBI (Bangga Buatan Indonesia) is a coordinative & collaborative programs to improve the economy and commercialisation of national products with special emphasis on MSME products, led by the Government of Indonesia — in this case the Coordinative Minister of Maritime and Investment (Menkomarves). Telkom is actively involved in this program via its MSME Digital Ecosystem programs, incl PADI UMKM and Rumah BUMN.

This year, some footholds have been established, including the BBI program itself, PADI UMKM & Bela Pengadaan, and some programs related to MSME in Creative Economy and Maritime & Fishery. For Telkom, the main role is to build, establish, and expand the platform-based digital ecosystem for MSME business, including their development and economic improvement.

The next thing to do is to build a context for integration among those separated systems and applications, to establish a real ecosystem supported with integrated information and platform, where all programs and activities could provide mutual support in leveraging different segments of MSMEs, including small and medium business in agriculture, fishery, forestry, creative industry, etc.

Круглый Стол в ЮФУ

This weekend, Mr Ford asked me to provide a presentation in a forum organised by the SFedU. The title of the forum is «Круглый Стол : Развитие Компаний в Период COVID-19: Вызовы и Возможнпсти» — or more or less: Round Table: Business development in the COVID-19 era: challenges and opportunities. SFedU, or Southern Federal University (Южный федеральный университет = ЮФУ) is a university in Rostov Oblast, Russia, with campuses located at Rostov-on-Don and Taganrog.

The speakers for this forum are from the academicians and business people from Japan, Italy, Thailand, and Indonesia.

In my presentation, I discussed again how these COVID-19 crises actually provide some contexts for us to design a strategic transformation by exploring the new opportunities and using potential collaborative innovations. In theory, we have all we need to start establishing it with synergistic efforts. I described in brief the way we can start planning the ecosystem.

Indonesian Computer Society Gathering

The IEEE Computer Society Indonesia Chapter has carried out a member gathering today. Apparently, during the COVID-19 crises, it is not very easy to organise such meeting, albeit an online one — so this gathering presented no less than six presenters; two of which are Prof Cecilia Meras, the Past President of the IEEE Computer Society, and yours truly.

My presentation was titled «Digital Platforms for Society Resilience in Time of Crises». We have understood that these crises have motivated businesses to plan, do, or speed up some kinds of digital transformation. But the transformation should not only stop at adapting the business to the new situations — whatever they are. Instead, it is actually a just-in-time context to design a strategic transformation by exploring the new opportunities and using potential collaborative innovations. In theory, we have all we need to start establishing it with synergistic efforts.

How to run Proxmox with only a single public IP address

IPv4 address is becoming rarer by each day. In some cases, it can be pretty hard to get multiple IPv4 address for your Proxmox server.

Thankfully, Proxmox is basically a Debian Linux OS with Proxmox layer on top of that. So that gives us quite a lot of flexibility.

This tutorial will help you to create a fully functional Proxmox server running multiple containers & virtual machines, using only a single IPv4 address.

These are the main steps :

  1. Create port forwarding rules
  2. Make sure it’s executed automatically everytime the server is restarted
  3. Setup a reverse-proxy server : to forward HTTP/S requests to the correct container / virtual machine
  4. Setup HTTPS

For CT (container) / VM (virtual machine) that contains webserver, point 3 is important – because there’s only one public IP address, so there’s only one port 80 and 443 that’s facing the Internet.

By forwarding port 80 and 443 to a reverse-proxy in a CT, then we’ll be able to forward incoming visitors, by hostname / domain name, to the correct CT/VM.


Modify the following to match your host’s interface name & CT/VM’s internal IP addresses, then copy-paste to terminal :

###### All HTTP/S traffic are forwarded to reverse proxy
iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to

iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 443 -j DNAT --to

###### SSH ports to each existing CT/VM
iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 22101 -j DNAT --to

iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 22102 -j DNAT --to

iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 22103 -j DNAT --to

iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 22104 -j DNAT --to

Then we save it :

iptables-save > /etc/iptables.rules


Edit /etc/network/interfaces file, find your network interface name that’s facing the Internet (in my case, vmbr0) – then add the pre-up line as follows :

auto vmbr0
pre-up iptables-restore < /etc/iptables.rules


In a CT, install Nginx. Then for each domain, create a configuration file like this, for example: /etc/nginx/sites-available/www.my_website.com :

server {
listen 80;
server_name www.my_website.com;

location / {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;


To activate it (assuming you’re using Ubuntu) link it to /etc/nginx/sites-enabled/ , then restart Nginx :

ln -s /etc/nginx/sites-available/www.my_website.com /etc/nginx/sites-enabled/www.my_website.com

/etc/init.d/nginx restart

note: as noted before, all HTTP/s traffic will have to go through this reverse-proxy. You may wish to tune this Nginx installation accordingly.


It’s very easy with Let’s Encrypt once you’ve done point 3 above. Do the following on the reverse-proxy CT :

sudo apt-get update ; sudo apt-get install -y certbot python3-certbot-nginx

sudo certbot --nginx

sudo /etc/init.d/nginx restart



Gershwin’s Rhapsody in Montblanc

Rhapsody in Blue — a composition I used to wake myself up for years. As if understanding how hard it is to start a day, it starts with a slow and random clarinet melodies. But then it raises to an orchestra with dynamic harmonies to absorb the spirit with no stop to our soul. And that is how life used to begin for years.

Its composer, George Gershwin (September 26, 1898 – July 11, 1937), was an American composer and pianist whose compositions spanned both popular and classical genres. Besides Rhapsody in Blue, his best-known works are an orchestral work An American in Paris (1928), the jazz standard I Got Rhythm (1930), and the opera Porgy and Bess (1935) which gave birth to the hit Summertime.

Montblanc has an annual tradition to launch donation pen collection for honouring world-famous classical musicians. This program supports selected cultural projects from pioneering artists the world over with a donation of 20 euros per fountain pen (and 10 euros per ballpoint or rollerball). The edition of 2019 paid the tribute to George Gershwin.

The design of Gershwin fountain pen is quite distinctive — easily recognised. The clip is in the shape of a clarinet — a tribute to the clarinet opening from Gershwin’s Rhapsody in Blue. Another tribute to Rhapsody in Blue is the ink window which features a blue colour. The cap ring is inspired by the Brooklyn Bridge to symbolise the close relationship George Gershwin had with his place of birth. The cap and barrel are made out of black resin combined with platinum-coated fittings. The length of the pen with the cap is 15.6 cm, and the total weight is 89.84 grams.