New certifications in the landscape: Linux+ | LFCS

As advised previously, I started a my new job exactly a month from now. There has been many things to learn, many hats to wear. The willingness to help by everyone in the team (which is a big one, by the way) makes everything easier.

At this moment it is clear that continuing the cPanel/WHM training is extremely helpful, not to say required. I was thinking about going after RHCSA, but it happens that there’s no chance to take that certification exam in my country, and to make things more complicated, you are required to renew the certificate yearly. So, even if I decided to travel USA in order to take the exam (which is not going to happen anytime soon), I would have to do it once a year. That definitively puts RHCSA certification out of the equation for me.

By the other hand, we have weightier certifications in the landscape: Linux+ (CompTIA Linux+ Powered by LPI) and LFCS, so there’s nothing to cry about. I already found a considerable amount of preparation guides for those two.

Finally, it has been a challenge to reorganize my schedule, but many things that were not previously being achieved are a reality today.

And that’s it. That basically resumes what has been going on lately.

Bonus point: here’s a picture of how my home office looks like. My wife helped me choosing stuff at IKEA:

Pavel Espinal: Home Office
My home office.

Next stop: cPanel & WHM Administrator Certification

So here’s the deal. Soon I’ll be managing new responsibilities that involves serious knowledge of cPanel/WHM, and although I have experience working with this platform, I’ve been studying the cPanel documentation as if my life depends on it.

For the aforementioned purpose, I’ve been making my way through the documentation available in the cPanel University. So far it has been an outstanding resource. And incredibly enough, they offer this certification for free. They have my total respect for this.

One of the advantages of going through the cPanel University curriculum is that you can opt for taking the certification exam, which will be a valuable asset for your career.

Go ahead and sigh up. There’s nothing to lose and a lot to gain.

See you soon,

Bash: spaces turn into newlines on for loops

Bash Session

Have you ever tried to loop through a set of items in a for loop in bash just to discover that bash turns spaces into newlines making your script to break?

Well, if you are in a hurry, use this before starting the for loop and come back afterwards for an explanation of what happened there:

export IFS=$'\n';

Your final result might look like this:

export IFS=$'\n';
for stuff in `ls -1 | grep -iE '[a-z]+'`;
do du "$stuff" -hs;

Welcome back. Now, here’s what happened, IFS is a variable set by bash which contains a set of separators in order to perform word splitting. That is, every time bash is going to determine  which sequence of characters will be considered as a single unit, it will assume as such each sequence of characters that is contained between separators.

By default, the shell will set IFS to contain 3 values as separators: spaces, tab, newlines. So, if one of the elements in your loop contains a character considered as a separator (in our case, the space) the shell will consider each set of characters between spaces as one additional element.

In a more graphical example, the following element:

My Car Picture.png

…would be considered as three different elements:


And from this point on your script will start to yield errors and unexpected results.

So, what we did to correct this was to override the value of IFS in order to having it only consider newline ($’\n’) as an element separator.

You can consult the bash man page for further information.

Feel free to leave a comment if you found this article helpful or think there’s something to improve about it.

CodeIgniter + Quickbooks Online SDK integration

I’ve just recently published a little Github project with the purpose of showing how to integrate CodeIgniter and the PHP SDK provided by Intuit in order to connect to Quickbooks Online services.

The idea is to continue working on it until it reaches some degree of maturity. It should not take too much time, but time is scarce lately.

I’m planning to create another project (sample application) which serves as a starting point of implementation, and a little article explaining the implementation process on real live scenarios.

See you later,