Friday, April 14, 2017

Tech Talk on Git Workflow Management

This morning, i got an opportunity to share some knowledge about git branching and workflow management to Technopartner Indonesia, a company founded by Guntur Satrya Saputro. Although today is national holiday in Indonesia, but most of the staff were attending this short tech talk. Most of them were my students so it was teaching them again after few years they graduated.

We started at 9 AM and since most of them knew about GIT and have been using it, so i skipped the basic of GIT and jump to the git branching feature and i also showed them some real examples on how to do branching, merging, interactive rebase, and many more. I mostly use SlackBuilds project as an example with some example from other open source project like sbopkg, mate-desktop, and of course Linux kernel. We ended the tech talk in 11:30 AM. It took longer than what i predicted.

What's more important is not about the tool, but how can we utilize this tool to help our work, so i strongly advice them to decide their own workflow and apply a strict policy about some best practices, like coding standard and commit message. It's a simple thing, but it really helps others when working in collaboration.

I was grateful that i joined and contributed to many open source projects before so i learned this naturally. I remember i started to join the community and started to learn about CVS with lots of help by the community. Later on, i joined SBo project and learn more about GIT. By working hand by hand with the community, you can gain more.

Wednesday, December 30, 2015

New Wireless Keyboard

Few days ago i bought a new wireless keyboard from an online store. It's not an expensive one and in return, i got 3 items in fact: a wireless keyboard itself, a mouse, and 4 port USB 3.0 hub. I got it for around $14 for all those items including shipping cost. Pretty cheap actually.

Yesterday the package arrived just one day after i got confirmation  that the package was shipped. That was quite fast since normally it would take 2-3 days to reach my home. Although it's still holiday season, JNE is still doing it's best to deliver them as soon as possible. Thanks to JNE for quick shipping.

I unboxed it and it has a slick design, probably mimicking Apple keyboard with it's unibody casing. It has a LED indicator for battery power and also nice keypad. The keyboard tuts have same response just like an Apple Keyboard.

To try the wireless keyboard i need to plugged the AAA batteries inside it, switch it on, and press the connect button. After that, i turned on my iPad's bluetooth and in short time it will detect a new device that's ready to pair. I click the wireless keyboard device and i need to enter a randomly generated numbers on the keyboard to continue with the pairing process. After entering the numbers, it works nicely with my iPad 3. Gonna try with my Android and laptop later on.

See the screenshot below:

Wednesday, August 19, 2015

Mi4: Birthday Present to my Mom

Last year, i gave a new smartphone to my Dad which was Asus Zenfone 6 and this year, i gave another smartphone, but this time to my Mom and it's Mi 4. She wanted a slim, compact, and easy to use smartphone and i have been searching for some time before finally i decide to give this product to her.

I ordered last week and since it was public holiday (independence) and they were out of stock, i had to wait until this week and finally the phone arrived yesterday. I unboxed it and found that it was very lightweight. It's also very comfortable thanks to an anti-fingerprint soft touch matte cover. It is coated for extra resistance to fingerprints and grease.

The first thing i did was upgrading to the latest firmware. It took some time to complete downloading the new firmware, but i think it's worthed. The new version is a little bit darker, but i didn't really notice much besides the darker theme.

I haven't played much with these new phone, since my focus is to prepare it for my mom's daily usage and gave her some training about this new phone. I hope she likes it and get used to it quickly.

Thursday, May 28, 2015

Good Bye Mandriva

My first Linux distribution back in 2002 was Mandrake. It was a user-friendly, easy, and customizable Linux distribution so i had a love in the first sight at that time. I got the ISO of Linux Mandrake from InfoLinux, a monthly Linux magazine that offered a Linux ISOs in their CD bundle. Without proper knowledge and no background on Linux at that time, i challenged myself to try dual booting my desktop machine into Windows and Linux and it worked!!

I was so happy at that time and i had a resolution to use Linux as my main operating system. I tried to run Mandrake for some time and i switched back to Windows only when i need to work with tools only available in Windows platform. At the end, it all worked well and i used Mandrake for my daily work.

Few years later, Mandrake changed into Mandriva and i became more active in this project by contributing to the i18n and l10n project of Mandriva. They offered me a VIP account so that i can download Mandriva Power Pack+ edition for free due to my contribution. I followed their release time by time and enjoying each release since it worked great until i moved to Slackware in 2005.

Few days ago i heard that Mandriva, the company that support Mandriva Linux distribution is being liquidated. So sad to hear this company finally gave up after for several years struggling to maintain it's core business. So long Mandrake/Mandriva. Without you, i would never meet Linux and Open Source community. Good bye Mandriva!!!

Wednesday, December 31, 2014

Mailvelope: GPG + Webmail

Writing an email is like a routine to me and since email can be easily forged, it's kinda important to make sure that your email messages can be verified by other parties so that they won't fall for bogus trap set by other people. One way to do that is by the use of public key cryptography which can be used to generate a digital signature that is secure and non-forgeable.

I use GMail as my primary email account and most of the time, i wrote most of my messages on their website. In the past, there's a nice project called fireGPG that can be installed as Firefox plugins that enables me to write a signed email. Somehow, the project was discontinued in 2010 since GMail changes their internal structures so often.

Another project coming in called WebPG and i tried this one as well. It works partially for me as sometimes it doesn't work nicely. I had some time discussing things with the maintainer and he put a nice effort on this project, but for me it's not stable enough for daily usage.

After two attempts, i finally stopped and i switched to Thunderbird + enigmail extension to write a signed email messages for my other email accounts. It works for me so i'm happy with it.

Today, i searched on Google and found this nice project called Mailvelope that have the same function as previous two projects. I decided to give it a try and it does work for me. I installed it in my Firefox account and luckily, it support GMail and several other providers below:
Mailvelope is an open source project, so you can contribute to this project as well. Go to their github account and start contributing.

This should be my last post in 2014.

Happy New Year 2015!!!!!

Friday, November 28, 2014

Looking at New Release of phpMyAdmin

Marc Delisle has sent an announcement on the availability of phpMyAdmin-4.3.0-rc1. This is the first RC release for the upcoming 4.3 release which will be another major release and as you can guess, it's loaded with TONS of new features:

* Smart sorting for int keys
* Confirmation message when dropping user(s)
* Confirm dialog on accidentally leaving a page
* Allow clicking an approximate row count to get a correct one
* Support for editing binary fields in hexadecimal
* MariaDB 10+ multi-master replication support
* Allow saving query charts as images
* Use aliases in SQL export for tables and columns
* Export with table/column name changes
* Dynamic process list
* Drag and Drop SQL import
* Preview SQL instead of executing it
* Run SQL query: Allow rollback for InnoDB tables
* Zeroconf PMA tables support
* Regexp replace
* Avoid session timeout when user is active
* MySQL 5.7.5 compatibility
* Avoid session timeout when user is active
* Multiple-column foreign key relation
* Charts for data in <x-axis, series,="" value=""> format
* Range Search Capability
* Improvements for the table editor (index creation)
* PHP OpenSSL support for cookie encryption/decryption

Other that above features, this release will also have other cool features, thanks to GSoC students:
Smita Kumari worked on two structure tools,
1) “a feature that enables a user to maintain a central list of columns
per database to avoid similar name for the same data element and bring
consistency of datatype for the same data element.”

2) Automated normalization is known as "Improve table structure" within
phpMyAdmin. It helps to bring the table structure upto Third Normal
Form. A wizard is presented to user which asks questions about the
elements during the various steps for normalization and a new structure
is proposed accordingly to bring the table optionally into the
First/Second/Third Normal form.

Edward Cheng implemented a component which provides easy access to a
console, including bookmarking and a history viewer.

Chirayu Chiripal and Ashutosh Dhundhara both worked on many feature
improvements. These improvements may not be glamorous but feature some
much needed maintenance and minor improvements.

Behind the scenes, Dhananjay Nakrani has improved the error reporting
server, an optional reporting feature allowing users to automatically
submit error reports directly to the phpMyAdmin developers. Now, PHP
errors can also be reported.

Additional behind the scenes work was done by Bimal Yashodha to refactor
the code behind the Designer interface. Most of these improvements are
transparent to users but help ease the maintenance required on this
portion of the code.

Wednesday, November 05, 2014

Cinnamon 2.4 and Future CSB Roadmap

Clem has announced the availability of Cinnamon 2.4 which should be premiered on LinuxMint 17.1 (Rebecca) by the end of this month. It has lots of improvements and bug fixes which is very pleasing for end-users.

Here are some of the highlights of this release:

Responsiveness and memory usage
  • CJS was rebased on a newer version of GJS in an effort to reduce memory usage and provide faster execution times.
  • All Cinnamon components were reviewed and their source code was checked with static analysis tools. Although most of them were small, about 30 memory leaks were fixed.
  • Icons used in Cinnamon Settings were added to the Mint-X icon theme. This increased responsiveness (This is specific to Linux Mint so we encourage all artists and distributions to do the same).
More polish
  • Credit to and similar to GNOME Shell, the Cinnamon desktop now starts with a zoom animation.
  • The login sound is now handled directly by Cinnamon (as opposed to cinnamon-settings-daemon) and plays in sync with the login sequence.
  • Modules in Cinnamon Settings and categories in the application menu are now sorted alphabetically.
  • Similar to Windows, “Super+e” now opens up the home directory.
  • Cinnamon 2.4 ships with many small refinements (multiple panel launchers, improvements in the sound applet, removal of the timeout in the logout dialog…etc) and a lot of bug fixes.
More settings and hardware support
  • Single-button touchpads are now supported (like the one used on the Macbook) and actions for 2-finger and 3-finger clicks are configurable. By default they correspond to right-click and middle-click.
  • Compositing in full-screen mode is now configurable and does not require to restart Cinnamon. This means less screen-tearing by default for most users and the option to undirect windows for gamers and users requiring an application to run at full speed without being impacted by the composition manager.
  • The desktop font is now configurable.
  • It is now possible to give the screensaver a custom date format, and custom fonts.
I'm targeting this version as my next milestone for my CSB project along with next Slackware release. I can't support Cinnamon 2.4 under Slackware 14.1 since it requires many new packages which aren't yet available under 14.1. Asking users to upgrade those libraries is not an option, since it may break many other applications and user experiences.

We will just have to wait for 2.4 to land in Slackware :)

Monday, October 06, 2014

CUPS 2.0.0 Released

Four days ago marked 15 years of CUPS development since 1999. The developer also took this chance to release a new major release of CUPS, 2.0.0. Honestly, i didn't follow CUPS development lately, so i missed their development releases and was kinda surprised to see that they jumped from 1.7 to 2.0.

Anyway, this release is focused on performance and security improvement. Several highlights on this release:
  • Added support for systemd
  • Added support on TLS certificate validation and policy enforcement
  • OpenSSL support has been dropped in favor of GNU TLS.
  • Dropped support for AIX, HP-UX, and OSF/1
  • Provides a complete set of APIs for implementing HTTP and IPP services
  • The scheduler is now also launched on demand
Check out their blog post for more information about their first Beta release, RC release, and finally final release.

Tuesday, September 16, 2014

Three Exciting Releases

There were three exciting open source releases  yesterday. They are proxmox 3.3, ffmpeg 2.4, and enlightenment 19.

First, let's talk about Proxmox. The new release is a big one and it was announced here. There are several big changes on this release, including:
  • Firewall support (new package pve-firewall)
  • Two-Factor Authentication (Yubico and OATH) 
  • noVNC console  (use HTML5)
  • new Proxmox VE Mobile, GUI for mobile devices 
  • ZFS Storage support
  • Updated to Qemu 2.1.0
  • pve-kernel-2.6.32-32-pve: 2.6.32-136  
  • pve-kernel-3.10.0-4-pve: 3.10.0-17 
  • based on Debian Wheezy 7.6  
Next is ffmpeg 2.4 which was announced here. It was released just 2 months after 2.3 release and it has a codename of "Fresnel". Please note that this release IS NOT ABI-compatible nor fully API-compatible with previous version. But on the other hand it is aligned with the Libav 11 release series, and will as a result probably end up being maintained for a long time. Don't get rush to upgrade if you have lots of applications that depends on earlier API version otherwise it will break.

FFmpeg 2.4 includes the following library versions:
        • libavutil      54.7.100
        • libavcodec     56.1.100
        • libavformat    56.4.101
        • libavdevice    56.0.100
        • libavfilter     5.1.100
        • libswscale      3.0.100
        • libswresample   1.1.100
        • libpostproc    53.0.100

Important API changes since 2.3:
        • The new field mime_type was added to AVProbeData, which can
          cause crashes, if it is not initialized.
        • Some deprecated functions were removed.
        • The avfilter_graph_parse function was made compatible with Libav.
        • The Matroska demuxer now outputs verbatim ASS packets.

Last, but not least, is enlightenment 0.19.0. Mike Blumenkrantz has announced on the mailing list and this release brings huge updates, including:

* greatly improved wayland support
    - E_WL_FORCE environment variable for forcing output types
* e_uuid_store: Add infrastructure to store window/surface properties.
* Add a tiling profile.
* per-screen desklock logo visibility config
* Tiling: Merge the tiling module rework..
* check udisks1 DevicePresentationHide flag
* ACTIVATE_EXCLUDE window active hint policy
* show video resolution in filepreview widget
* add fileman option to clamp video size for video previews
* handle xrandr backlight using a single, accurate handler
* blanking options for wakeup on events (urgent + notify)
* packagekit module for package manager integration
* ibar now optionaly triggers its menu on mouse in
* selective redirection toggling
* new focus option "raise on revert focus"
* add PIN-style desklock for lokker module
* make desklock hookable, break out current desklock into module, move pam stuff to separate file
* revive personal desklock passwords
* allow moveresize visuals to be replaced
* allow desk flip animations to be handled completely externally
* E16-style live pager returns!
* comp config is no longer a module
* E_FIRST_FRAME env variable
* new compositor API
* add E_MODULE_SRC_PATH for setting current module src path without needing to install modules
* use non-recursive makefiles for entire build system

Tuesday, July 22, 2014

New President for Indonesia

In the next few hours, we will have an official announcement from the Election General Committee (KPU) about who will become the next Indonesian president, even  though the results are already known by many people, thanks to many quick counts hold by many organizations.

There are 132,896,438 valid votes for this year's election and based on the final calculation, president candidate no 2 (Joko Widodo and Jusuf Kalla) got 70,633,576 votes (53.15 %) while candidate no 1 (Prabowo Subianto and Hatta Rajasa) got 62,262,844 votes (46.85 %). There are 8,370,732 vote differences and it's more than enough to make candidate no 2 to become the next president of Indonesia.

Saturday, June 28, 2014

Z1 Upgraded to KitKat 4.4.4

Yesterday, i saw a tweet from Sony that they are releasing Android KitKat update (4.4.4) to all Xperia Z1, Z, and Z Ultra after releasing it for Z1 compact a day earlier. This is really a surprise for me, as usually Sony is not that fast on bringing updates to their product (well, based on their KitKat update history). I'm suspecting that because it fixed a critical security issues and also the long-lasting camera bug that consumed a lot of resources when activated.

Anyway, i decided to take this chance to upgrade my Z1 to the latest Android release and the upgrade was done successfully, but i haven't really tested the camera issues. I did the upgrade using Sony PC Companion. For OTA users, you will have to wait further before it arrives on your phone.

Here are the notes from Sony's website:
  • Android 4.4.4 including the latest enhancements and security updates from Google
  • Updated and improved camera experience
  • Improvements when using Google voice, Contacts, Music streaming and Google+
  • The latest versions of our Sony apps for you to enjoy
  • All of our latest bug fixes, optimisations & improvements

Monday, June 23, 2014

Opera 24 for Linux Users

Ever since Opera switched from their own rendering engine to Webkit last year, they left Linux users without any new release of Opera. Until today!!!

Opera has just announced that they are bringing back Linux support for their Opera Developer 24. So far, they only tested it on a single platform: Ubuntu Linux 64-bit with Unity or Gnome Shell. It may work on other platforms, but that’s not guaranteed.

Here's the screenshot for the latest Opera release for Linux. 
I haven't tried this on Slackware Linux though

Thursday, June 19, 2014

Skype Update for Linux

After some time, finally Microsoft/Skype is updating Skype for Linux with a new 4.3 release, announced on their blog.

This changes brings many new features and changes:
  • An updated UI
  • Our new cloud-based Group Chat experience
  • More reliable file transfer support when using multiple devices at once
  • Greater accessibility by blind and visually impaired users
  • PulseAudio 3.0 and 4.0 support
  • Lot of bug fixes
Meanwhile, there's also a drawback on this new version:
  • This version dropped support for direct Alsa support; please install PulseAudio 4.0 or greater for the best calling experience.
You can install the new Skype using the same Skype SlackBuild script available on SBo. You only need to edit the VERSION line or override it on the fly using VERSION= sh ./skype.SlackBuild

Thursday, May 29, 2014

GIT 2.0.0 Released

Junio C Hamano has just announced the availability of GIT 2.0, a major release of the popular distributed SCM tool used by Linux Kernel project and many other open source projects. I even used it in many of my own projects (both open source and personal projects).

This major release brings some big changes, but it has been introduced since 1.9.x, so the transition period should be easier for everyone who have been using 1.9.x. In overall, the changes are scattered everywhere: UI, workflows, performance, documentations, and code clean-ups.

Saturday, May 24, 2014

New Sync Protocol in Firefox

If you are a Firefox users and you happen to use their Sync feature which was introduced back in Firefox 4, you might be pretty upset when the design is so confusing and hard to use since you have to have access to the other browser in order to set up a sync account.

Well, great news for you since Mozilla has changed their Sync protocol mechanism in the latest version which was released last April (Firefox 29). The new system only requires you to sign up using the new Firefox account and it's password-based system (two-factor authentication is now being developed, with a possibility of using Google Authenticator App and SMS).

Here are the easy step to migrate to the new sync protocol:
  • upgrade everything to FF29
  • disconnect old browsers from Sync
  • create a Firefox Account
  • sign all browsers into your new account with the same email and password
That's it. You are now synced using the new Firefox account and all your data remains safe during migration.

For those who are still using the old sync, please note that they will end the old protocol at the end of ESR release maintenance period (14-Oct-2014), so what are you waiting for? Upgrade now :)

Here's some warnings:
pairing-based Old Sync and password-based FxA-powered New Sync don’t mix: if you used pairing to connect two FF28 browsers together, you won’t be able to connect a third FF29 browser to them, even if you upgrade them all to FF29.