, launched in November 2011, is a gourmet website containing a large number of recipes from all over the world. With a steady flow of new recipes, along with tools such as the calorie meter and the categorization per ingredient, it provides a fresh outlook to the cooking recipe presentation and discovery as a whole. is a news portal aspiring to cover every event that happens in Greece. With a team of journalists feeding more than 200 news items per day, video channel with exclusive interviews, detailed breaking news analysis and stock exchange coverage it might as well be one of the upcoming authoritative news portals.

PC Magazine is the leading technology publication, worldwide. Published by Ziff Davis in 34 countries, it plays a major role in technological evolotion.

Trustworthy, authoritative and innovative, PC Magazine knows the technology market better than anyone and through the reliable test performed by PC Labs it is in a unique position to precicely imprint a clear picture of products and the overall market status. PC Magazine's PC Labs are the largest labs for objective review of technology products and services in Greece.

International title with strong tradition and reliability in the Greek market, which is cultivated after 16 years of success, continuously innovating topics coverted and the magazine's style.

Madame Figaro addresses the modern, informed sofisticated woman that loves fashion and beauty and helps her define her identity and style through current issues and fashion editorials always registering the latest trends.

T3 Magazine is the largest technology lifestyle publication in the world, all the while being the most widespread title internationally; with 21 localized versions in 36 countries and over 500.000 readers worldwide.

It has a unique concept, modern style and in all the markets it is a part of, it represents a high quality, leading technology lifestyle guide. The publication arrived in Greece in December 2005 and has been published by Attica Media Group.

S: (n) geek A person who has chosen concentration rather than conformity; one who passionately pursues skill (especially technical skill) and imagination, not mainstream social acceptance

Huge fan of

CentOS7, ISPConfig3, and multiple PHP versions

in centos 7, PHP, PHP7, PHP56, ISPConfig, Apache, mariadb

Currently PHP developers face a great problem with PHP version - most OS repos already have outdated versions (CentOS has 5.4 which has passed its end of life!), but just swapping out versions is just not an option - especially with the version requirements of different frameworks / libraries. Furthermore, usually to have more than one version meant recompiling, and keeping up with updates - and no one wants that. Here's how to setup a server (virtual of physical), with ISPConfig3 hosting panel, multiple PHP versions, latest Apache and Mariadb in less than a half hour, with zero compiling. You can then manage your virtual hosts and their PHP version from a nice UI.

Read more »

XDebug your IDE

in xdebug, PHP, Linux, centos, Apache, phpstorm

With most languages, when you develop you get the (wonderfully helpful) option of setting breakpoints, stepping through your code, adding watches and inspecting the overall state at any specific point in time. PHP differs in that, being a scripted language hosted in another process (eg Apache) it normally doesn't offer that. Here's how to enable your IDE to do get all the nifty features.

Read more »

Managing Windows server DNS records from Linux commandline

in dns, Linux, centos, windows, active directory, PHP

I've been in the process of automating the creation of Apache VirtualHosts from the command line for some time now. What always annoyed me, was that after the vHost was generated, I had to manually add the DNS entry on our Windows server. Well…. No more!

Read more »

CentOS 7, Active Directory and Samba

After playing around with CentOS 7, I was amazed at how simple things that are traditionally annoying as heck are - if you get the config right, of course. One of these is getting a Linux share viewable on Windows clients, with Active Directory authentication and authorization, which I'm going to describe in this post.

Read more »

CentOS 7 server installation

in centos, centos 7, Linux, installation, guide

CentOS 7 is out, and it brings some much needed features for web developers! For starters, MySQL is replaced by MariaDB (much better performance for InnoDB, and a better client), and PHP is 5.4 out of the box. In addition, multitudes of tweaks have been made to the system, making it more responsive.

The following is a guide (with screenshots) for installing a basic LAMP stack with the new OS, on an empty machine (in this case, a virtual machine), using the NetInstall image (Minimal is not yet available, but being worked on).

Read more »

Why is my system CPU so high?

Had some performance issues with a client, recently. The server is an absolute beast, and should be able to easily handle the single website hosted on it. Alas, pages took forever to load (D7). A simple top showed that load was at about 60, and CPU utilization was at 10% for user and ... 95% for system. Wait what?

Read more »

Upgrading Redmine to MariaDB

in Redmine, ruby, MySQL, centos

On a stock CentOS installation ( DB wise, ie MySQL 5.1 ) we decided to roll out MariaDB. And it was wonderful, as all our LAMP apps didn't even seem to notice that something has changed. Not the same could be said about Redmine though...

Read more »

Recovering InnoDB tables from ibd and frm files

in MySQL, innodb, recovery, Linux, centos, ibd, frm, shell

First day of the year in the office, and a call came up "site isn't working". Browsing to the site, I noticed it couln't connect to the database. Thinking it was probably some glitch, I logged in remotely to the server, to find that the filesystem was readonly. After trying to figure out why me, being root, could not do anything to the filesystem... it rebooted. My first filesystem crash.

Read more »

Protecting your cache folders

I spent the past few days in the VERY unpleasant situation where I had to remove tons of spam-sending scripts from a couple of websites I host. These were in relation to unsecured, unmaintained Joomla! installations, and exploited the cache folder. I won't bother you with the why or how, just know that the vulnerability existed, and has been fixed for versions 2.x and up -- NOT 1.x. Here's the simple way to secure yourself without changing the Joomla site code.

Read more »

Drupal filefield errors on node forms

in drupal, formAPI, filefield, error

For a recent client, I needed a node-add form in a custom path. Unfortunately, loading the form there via code (in order to prepopulate the node object) lead to all sorts of FileField errors, and the solution proved to be extraordinarily simple.

Read more »

Apache SSL certificate errors - wrong certificate

in Apache, ssl, vhosts, IE, windows xp

So you've configured Apache just like you want to. You've even added an SSL certificate to allow your users to securely navigate on your site. And you test it, and everything works, across all browsers you have access to... and you receive a dreaded call that there is a certificate error on a client (typically some higher up, because that is just your luck). What the hey?

Read more »

Saving Excel files with HTML tables - quirks

in html, tables, PHP, excel, style, formatting

Sometimes you need to save data from your webpage to an excel file. Though there are many libraries that can accomplish that the "proper" way, it is much faster (and easier!) to just output an HTML table to a file with the "xls" extension. However, there are a couple of things to note to make theming look as it should!

Read more »

No save button on vocabulary page?

I recently got a call from the content managers of a website I support, complaining that they couldn't reorder vocabulary terms any more. Specifically, the Save button was gone! Took me a while, but here is why, and how to solve it (if you just want the solution, scroll to the bottom)

Read more »

Making field collections play nice with hook_node_presave

Field Collections are basically multifields in Drupal 7. They're so much user-friendlier than having referenced nodes, and so much lighter. However, if you try to add items to them (that is, an unlimited field collection field) in hook_node_presave , you get stuck in an endless loop. If you have XDebug or similar, you will see the extremely unhelpful message " Maximum function nesting level of '100' reached, aborting!". So what now?

Read more »

Debugging Active Directory in CentOS

Having a Linux server querying Windows Active Directory for credentials gives your users a wonderful, unified experience - they only need a single logon for the intranet, and their machine. However, sometimes you need to browse the AD tree to see if/what is going on. Two things I've learned while debugging follow.

Read more »

Taxonomy term URLs gone FUBAR

One of the things I love about Drupal is the taxonomy system. It's convenient and stable... except when it's not. I got 404s for the term URLs (both system and alias) and the cryptic message "Notice: Undefined index: href in menu_local_tasks() (row 1973 in path2site/includes/". Well, here's what worked.

Read more »

Joining the world of 3D Printing

in reprap, 3d printing, parts, bom

I've been hearing tons about 3D Printing for a long time. Well, it's about time I joined in on the fun! First parts have arrived today for a RepRapPro Mendel Mono!

Read more »

(Finally) upgraded to Drupal 7

in drupal, upgrade

It's been long. Too long. I always wanted to upgrade my blog to D7... and never had the time or patience. Well, that's done!

Read more »

Solving Sudoku, the Geek way

in PHP, css, ajax, sudoku, github

You probably know Sudoku - the nifty little number puzzle that has taken over most of the world. What I don't like, is having paper versions without knowing if I'm right or wrong. Hence, I made a bot to solve Sudoku grids.

Read more »

Drupal Tableselect with fields

in drupal, form api, fapi, fields, tableselect

We all know that Drupal provides the FormAPI, in which very powerful form elements exist (in our case, the tableselect element). This magical element behaves like a table, but has a checkbox for each line, and associated JS/CSS to handle checking rows. But it is normally impossible to add additional form elements on each row ( there have been many workarounds, but all seem hackish) due to the way Drupal handles form submission. This is how to have a clean (and simple!) way to go around those restrictions.

Read more »