Categories: "Full Stack Dev & Design" or "Databases" or "MySQL" or "HTTP/SSL" or "Internationalization" or "Javascript" or "Mobile" or "PHP" or "Syndication (RSS, RDF, Atom)" or "Web Design" or "XHTML/CSS" or "XML"

evo-sublime theme for Sublime Text

evo-sublime theme for Sublime Text

I've just uploaded the evo-sublime theme for Sublime Text on GitHub .

It is a dark text on light background theme, with vivid highlights.

This is the theme I use to work on b2evolution.

Installation

You need to copy the color scheme into the Sublime Text Packages directory.

  1. You can find the path of the directory using the Preferences -> Browse Packages menu within Sublime Text.
  2. Copy the color scheme into this directory.
  3. Use the Color Schemes option of your preferences menu to select the evo color scheme.

Attachments:

Screw it, let's reskin it!

Screw it, let's reskin it!

I think it was about time I re-skinned this site! 

Since my last post pledging to get rid of the ugliness, I feel I’ve made some significant progress on b2evolution.net (especially the home page) but this personal site you’re looking at right now was really starting to hurt my own eyes! (I can’t believe I actually used to be happy with my old design :p)

So today I just decided to “screw it and re-skin it“.

I’ve been procrastinating on this for maybe two years just because I didn’t have time (or the energy) to actually re-design it – meaning: polishing a new design for it. Making it responsive, etc.

So I finally decided to take a shortcut: use another skin I like and make it fit as fast as possible. And sometimes I actually forget how fast this can be done with b2evolution. Once I had uploaded the new skin, it took me about 30 minutes to set up all the menu/navigation widgets so the site navigation makes sense. And voilà.

Of course, there’s a million details in this skin that need fixing but I think the improvement is massive already! 30 minutes of work vs. 2 years of procrastination. What a shame! :/

Now, there’s a couple interesting thoughts down the road:

  • I just made the 20% of the effort that yields 80% of the benefits;
  • I still have 80% of the work to do to get the details right;
  • Some day this new deisgn will probably feel ugly again… :(
  • How do I prevent letting it slide into ugliness again next time? hum… it feels like I have so many gardens that need constant care… :p

Anyways, Dear Reader, I hope you’ll enjoy this site in its new form! :)

Did I abandon my sites?

Did I abandon my sites?

2014. Time to wake up, eh?

First off, why have I been blogging so little in the last couple of years?

I guess it's a combination of:

  • Too much work
  • Having a real life (which I might not have had a few years back...)
  • Google did a great job at scaring me off posting "non-useful" content (Shall we call it "Panda angst" ?)

All of these are lame excuses.

  • Blogging is part of my work
  • Don't even get me started on balancing work and real life - there has to be a solution!
  • Sharing ideas, no matter how mundane they might seem at first, has been the beginning of many great projects in my own experience. Plus: it definitely helps to structure a lot of thoughts that would otherwise just swirl around in my head, without ever leading to anything tangible. Moving forward, even small steps at a time is far more important than a particular Google algorythm might think of it... especially on my personal blog (I'm still debating this regarding some other sites :p)

2014. Time to get rid of the Ugly!

The most vexing part in this wake up call is that so many of my (many) websites are just plain ugly... compared to the current web-design state of the art.

I don't recall exactly what led me to this realization but part of it was comparing b2evolution.net to its competitors. Ironically, it's not that the competitors (Free CMS tools) look good. It's actually that those competitors look bad compared to commercial solutions.

Full story »

flush() bug in PHP 5.4

flush() bug in PHP 5.4

For some reason, nobody seems to acknowledge there is a bug with flush() in PHP 5.4.

In any previous version of PHP, you could just do:

PHP


and the PHP output buffer would be sent to Apache which would in turn send it to your web browser.

We are not talking about any side effects due to compression or charset sniffing here. We are talking about: flush() was working just fine.

And then compes PHP 5.4 and it doesn't work any more. And you revert to PHP 5.3 and it works again. PHP 5.4, broken again. And you can reproduce that to infinity but still, nobody wants to acknowledge it.

So we had to find a workaround. Here it is: just replace your flush() calls with a custom call like flush54() defined like this:

PHP

function flush54()
{
  @ob_end_flush();
  flush();
}

This will restore the initial behaviour...

Live HTTP Header tracking for Firefox

Live HTTP Header tracking for Firefox

LiveHTTPHeaders is a FireFox extension that lets you look at all HTTP headers for all requests issued by the browser.

I am updating and resurfacing this post today since -- after a long while of being mildly maintained -- this fine plugin seems to have effective backing again. Version 0.17 works on FireFox 9.x.

Even in the days of FireBug, LiveHTTPHeaders is still an irreplaceable tool in a web developer's toolkit. As a matter of fact, LiveHTTPHeaders is the best way to track chains of redirects, which FireBug doesn't display right, as it will often clear the "Net" tab from one request to the next.

The header tracking window can be opened through Tools > Live HTTP Header. It will then capture all requests and display HTTP headers being sent as well as headers being received. Note that it is possible to stop capture at any time so the display stops scrolling. It is also possible to filter out specific requests (for example images) with a regular expression (regexp).

The extension also extends the Page Info windows with a Headers tab, which is useful if you just want to see the headers for the current page.

Finally, it's also possible to edit requests and replay them again, modified. At this time this is still in beta though, and Tamper Data may be a better extension for that purpose.