topic: Development | Wednesday, October 5, 2011
MobileTest.me is a tool that allows you to see how your web site or app looks across different mobile devices and resolutions. You select a device, type the URL you want to test and it will show you the selected device displaying your website in the device’s original resolution. As you can see in the picture below all types of devices are covered, from the relatively small Samsung S3650 to the iPad.

Everytime you test a different website, the URL changes dynamicaly. This allows you to send the exact same test to someone just by sharing the URL. For example this link is a classic responsive design example by a list apart as seen on the Google Nexus one in landscape mode. Real life scenarios include showing completed work to clients or pointing out bugs and errors to collueagues.
Click on any of the images bellow to see the corresponding test.



Advertisement
topic: Development | Thursday, September 29, 2011
One of the biggest drawbacks of a framework is the absence of built in theming functionality. CodeIgniter is no exception to that rule. Although there are quite a few libraries out there which aim to provide theming support, they don’t feel like being part of the framework. I was annoyed with having to use anything which looks like an ugly hack so I created a library which supports themes in CodeIgniter in a native style.

First of all let’s see how this baby works:
Using themes:
$this->load->theme('demo');
$this->load->view('home');
Loading CSS and Javascript files from within your views:
$this->load->css('/themes/demo/css/styles.css');
$this->load->js('/themes/demo/js/javascript.js');
Yes that was all. It is that simple.
Structure of your files
In the same path as your application folder create a theme folder and inside it a folder with the theme’s name. Also create a folder with the theme’s name inside views.
Inside the download you will see how the demo theme is structured.
/application/views/demo/... (Your views go here)
/themes/demo/css/... (CSS files)
/themes/demo/js/... (Javascript files)
/themes/demo/theme.php (The theme file itself)
Bonus: Caching control
Have you noticed that sometimes when you update your css or javascript files the changes don’t take effect until the browser empties it’s cache ? This library supports a suffix for all css and javascript files which allows you to control the caching of your files by the browser. Inside the config folder you will find a file mainframe.php. Make sure you autoload it and set a version for your files.
$config['cjsuf'] = '0.1';
When you change that version to say 0.2, browsers will be forced to reload them since they think it is a different file.
Inside the download there is a demo theme to get you started
Download it here
topic: Web | Thursday, September 29, 2011
They say that one image is one thousand words and in this case it’s true. I won’t say much, the image speaks for itself. This is a screenshot from the most popular Greek site. I followed this link from twitter. The article I was looking for was buried deep and I had to scroll, and scroll and scroll.
As you can see the article takes up 5% of the page (counted in pixels). The rest 95% is ads, menus, ads, offers, ads and some ads.

topic: Development, Productivity | Sunday, September 4, 2011
Most people I know use a piece of paper or a word document to take quick notes on things to be done in a web project. For me nothing is more to the point than handwritten notes on a screenshot of your app.

When you keep your notes on a text file, you will eventually have to get back to your application to remember what “background of sidebar on tasks overview page” actually refers to. When you take your notes on a screenshot, the word “grey” right above the sidebar does the trick. Visual note taking saves you from the annoying back and forth between your notes and your application. It’s like a post it with the text “buy milk” on your fridge.
topic: Miscellaneous | Friday, August 26, 2011
Of all the CEOs ever retired, Steve Jobs caused the greatest noise on the blogosphere and social media. A couple of days ago when his resignation was announced, my twitter timeline was literally full of Steve Jobs tweets. Only one out of about 20 tweets had a different subject. This effect caused a lot of people to express their annoyance on the overload of Steve Jobs news on online media.

One of the things I dislike on people, is impiety. So I’d like to take a couple of minutes to remind you who is Steve Jobs and why all this fuss is taking place.
- At the age of 21 and without having any money at all, he co-founded the company that popularized personal computing.
- He popularized the mouse. Did he not, our computers could be still running some weird text based OS like windows 2.0
- His company NeXT created NeXTSTEP which later became OSx. The worlds most popular UNIX desktop operating system and till now the only viable competitor of Microsoft Windows. If Jobs had not created NeXT, our computers could be still running Windows 95.
- He popularized the touch screen interface on mobile devices. Otherwise, instead of the mobile revolution we are witnessing these days, we could be still stuck with some lame Nokia running Symbian.
- He turned tablet computing from a theoretical and experimental concept to the next generation of computing with the revolution called iPad.
- At the moment of his resignation Apple INC was the most valuable company in the world.
Now forget what you just read and consider that the large majority of people younger than 40 is spending more than 12 hours a day in front of a computer screen, either at work or at home. And for the rest of the day most of us use frequently a smartphone with a touch screen.
So if we put technology aside for a moment and try to think in absolute terms, it’s no exageration to say that Steve Jobs shaped the way our generation will spend half of it’s entire life. He literally helped to turn the information age from an intellectual conversation topic, to a day to day life reality for everyone. If that’s not enough for a media flood, then I don’t know what is.
And before you call me a fanboy, I should point out that I’ve never owned an apple device in my entire life. Not even an iPod.