Five Linux-Ready, Cost-Effective Server Control Panels


Five Linux-Ready, Cost-Effective Server Control Panels” reviews 5 some alternatives to cPanel, which, they say, is rather expensive.  My beef with cPanel is not the price, but the technical merit.  Even though I love the fact that it is written in Perl, I don’t agree with its “let me handle everything” approach.

cPanel installs all the software that it helps to manage.  This might be a “so what” issue for most people, but not for me.  I like my servers clean.  And I want to utilize the tools that already come with my server – RPM, yum/dnf, etc.  Control panels can help with routine, but when something breaks, I should be able to go to the config files and deal with the problem using the distribution’s recommended ways.  cPanel, unfortunately, breaks that.  It downloads sources, applies patches, locally compiles things, and has its own layout for configuration files.  That’s too much mess for me.

I haven’t used any of the other control panels reviewed in the article (I usually prefer the command line way), but I hope they aren’t as intrusive and abusive as cPanel.  Sometimes control panels are useful for providing a bit of help to non-technical users (create mailbox, change email password, backup the website, etc), but if they are as needy as cPanel, thanks, but no thanks.

When monospace fonts aren’t: The Unicode character width nightmare

I don’t deal with Unicode and other character encoding on the daily basis, but when I do, I need every piece of information that has been written on the subject.  Hence the link to this interesting issue :

As long as you stick to precomposed Unicode characters, and Western scripts, things are relatively straightforward. Whether it’s A or Å, S or Š – so long as there are no combining marks, you can count a single Unicode code point as one character width. So the following works:


Nice and neat, right?

Unfortunately, problems appear with Asian characters. When displayed in monospace, many Asian characters occupy two character widths.

Free Data Science Books

I came across a collection of free data science books:

Pulled from the web, here is a great collection of eBooks (most of which have a physical version that you can purchase on Amazon) written on the topics of Data Science, Business Analytics, Data Mining, Big Data, Machine Learning, Algorithms, Data Science Tools, and Programming Languages for Data Science.

Most notably, there are introductory books, handbooks, Hadoop guide, SQL books, social media data mining stuff, and d3 tips and tricks.  There’s also plenty on artificial intelligence and machine learning, but that’s too far out for me.

Fixing Twitter

Fixing Twitter – here’s a reasonable rant on what’s wrong with Twitter and how to fix it.  Product managers and marketing people should definitely read.

Second–and this one is obvious to almost everyone–Twitter needs to focus on realtime events. When I open Twitter during a major debate in the US, or when a bomb has exploded in Bangkok, there should be a huge fиcking banner at the top that says “follow this breaking event.” It shouldn’t just search for a hashtag–it should use intelligent algorithms to show me all of the relevant content about that event. It should be the place you go to learn about what is happening in the world right now. When something major happens in the world/your country/your city, you should be trained to immediately and automatically think, “open Twitter to get updates.” This is so obvious to me that I wonder what Twitter’s product team has been doing—are they over-designing a solution to this? It’s so simple. 90% of the UI and 80% of the search functionality is already in the app.

On full stack developers

I came across an excellent blog post on full stack developers – “The full stack developer is a myth“.  I do much agree on what is being said there.  Firstly, the stack itself.

Non-exhaustive list of a technical stack layers and components
Non-exhaustive list of a technical stack layers and components

Secondly, on the problem:

A full stack developer is a myth not because none exist, but because the term is meaningless. It’s no different from a coding ninja or rockstar, but at least everyone knows those terms don’t actually mean anything.

Even limiting the term to a more specific context like web stack or mobile stack, you’d still get quite a bit of technology for a single person.  And yes, it’s changing a lot and fast too!

Every year there are new components added to each layer and every couple of years there’s a new layer added to it. Is it really reasonable to put out job applications asking for a full stack developer? It’s not only unreasonable, it’s stupid. Particularly when you start looking for one person who’s an expert in security, web development, UX, and servers; and this isn’t at all an uncommon expectation.

More so, there is a geographical component to this as well.  If you are in a small country like Cyprus, with very few technical establishments, even further down simplifying the stack won’t help you much.  Finding a web developer with good knowledge of HTTP, HTML, CSS, JavaScript, PHP, and MySQL is already a challenge.   And that’s like three or four layers…

11 Highly Underrated Plugins for WordPress

I came across this list of 11 highly underrated plugins for WordPress.  I wouldn’t go as far as call of them highly underrated, as some of them are rather highly rated.  But that’s not the point.  I wanted to share the list especially for these three:

gitfs – version controlled file system

This was only a matter of time … gitfs – version controlled file system:

gitfs was designed to bring the full powers of git to everyone, no matter how little they know about versioning. A user can mount any repository and all the his changes will be automatically converted into commits. gitfs will also expose the history of the branch you’re currently working on by simulating snapshots of every commit.

Here is a brief feature list:

  • Automatically commits changes: create, delete, update files and their metadata
  • Browse through working index and commit history
  • Merges with upstream by automatically accepting local changes
  • Caching commits reduces the memory footprint and speeds up navigation
  • Reduces the number of pushes by batching commits