PHP UK Conference 2012 schedule – London

This year, for the first time, I will be attending to the PHP Conference in London. There are going to be so many interesting talks.
Have a look with your eyes..
Here you find the official schedule. Unfortunately it’s still provisional.

Anyway I took the time to create a simple spreadsheet to organize, with my colleagues, what talks we will be attending.
Here you can download it: PHP UK Conference 2012 Schedule Spreadsheet.

For those of you who haven’t registered to the PHP conference yet, you can register with a significant discount, instead of the original price, thanks to the PHP London meetup.

I’ll see you there! :-)

Enjoy the conference! :-)

Logical Volume Management basics

I have explained how to activate an LVM logical volume before, but never talked much about LVM itself. Here is a brief introduction.

I have been playing with LVM for about a couple of years now and I must say I have found it very practical, even for managing simple home desktops and servers. The main feature I use is the ability to resize volumes online, but LVM is useful for other things too: creating snapshots, combining multiple disks into a single volume group, and adding redundancy through mirroring.

Physical Volumes, Volume Groups, Logical Volumes

LVM works in three layers:

  • Physical Volume (PV) — a disk or partition that LVM can use. Initialised with pvcreate.
  • Volume Group (VG) — a pool of storage made from one or more physical volumes.
  • Logical Volume (LV) — a virtual partition carved out of a volume group. This is what you format and mount.

Start by preparing a partition (use fdisk to set the type to 8e — Linux LVM):

sudo pvcreate /dev/sdb1
sudo vgcreate my_volume_group /dev/sdb1
sudo lvcreate -L 10G -n my_volume my_volume_group

Now format and mount it:

sudo mkfs.ext4 /dev/my_volume_group/my_volume
sudo mount /dev/my_volume_group/my_volume /mnt

Resizing

Need more space? If you have free space in the volume group:

sudo lvextend -L +5G /dev/my_volume_group/my_volume
sudo resize2fs /dev/my_volume_group/my_volume

The filesystem is resized online — no unmounting required.

Snapshots

LVM snapshots let you take a point-in-time copy of a volume. Useful for backups:

sudo lvcreate -L 1G -s -n my_snapshot /dev/my_volume_group/my_volume

The snapshot starts small and grows as changes are made to the original volume. Remove it when no longer needed:

sudo lvremove /dev/my_volume_group/my_snapshot

Enjoy!

Re-open last tab/tabs closed on Google Chrome/Chromium

We’ve all done it. You’re flicking through tabs, your hand moves faster than your brain, and bam — you closed a tab you still needed. You stare at the screen for a second before remembering there’s a keyboard shortcut for that.

Ctrl + Shift + T (or Cmd + Shift + T on a Mac).

That’s it. Press it once and the last tab you closed comes back. Press it again and the one before that comes back. Chrome and Chromium keep a stack of your recently closed tabs in memory, so you can walk backwards through your mistakes as far as you need.

It works across sessions

If you close Chrome entirely and reopen it, Ctrl + Shift + T will restore the last window you had open with all its tabs. This is separate from the “Continue where you left off” startup setting — it’s a one-time restore that works even if you have Chrome set to start on a blank page.

Right-click also works

If you prefer the mouse, right-click on any tab and select “Reopen closed tab” from the menu. Same result, one extra click.

What about the History panel?

For tabs you closed a while ago (not just the last few), go to Menu > History or press Ctrl + H. You’ll see a full chronological list — the “Recently closed” section at the top shows your last few tab closures with their full titles, making it easier to find the one you actually want.

The shortcut is one of those things you don’t think about until you need it. And once you know it, you’ll use it more often than you’d expect. :-)

Install NX server/client on Ubuntu Lucid

My favourite NX server is Freenx.
FreeNX is a GPL implementation of the NX server/client that allows you to graphically access your machine over the Internet.
FreeNX runs natively on SSH, it’s open source and, above all, fast.

So, first of all you need to add the free-nx repository:

sudo add-apt-repository ppa:freenx-team

and then update and install freenx:

sudo apt-get update
sudo apt-get install freenx

The client I use instead, is from NoMachine.
The Linux version can be download from here.
If you use a different Ubuntu version you can follow the Freenx documentation.

Enjoy!

IDE Netbeans 7.0 is out: PHP, Java SE/EE and C/C++

Netbeans 7 is out. I have been using it for PHP, at work as well as at home, for almost two years and I have to say it has become by far my favourite PHP IDE.

The Netbeans IDE started in 1996 for Java. PHP support came with version 6.5 in late 2008. Since then, every release has improved significantly.

What I like about it is that it just works out of the box — the PHP code completion, the debugger integration with Xdebug, the SVN/Git support built right in. You don’t need to piece together half a dozen plugins to get a productive environment.

One of my favourite features is the ability to search across files with Alt+Shift+O. It’s one of those things you don’t appreciate until you try going back to an IDE that doesn’t have it.

Curious about it? Download the version you need from the Netbeans site and give it a try.

Enjoy it!

10 reasons open source is good for business

According to PCWorld, Open Source software is good for business for exactly ten reasons. Here is a summary.

Security — The more people can look at the source code, the more likely bugs are found and fixed.

Quality — Open source software generally gets closest to what users want because those users can help make it so.

Customizability — If you don’t like the way something works, dig into the code and change it yourself.

Freedom — You are not dependent on the vendor’s priorities or timetable. If you want the software to go in a direction the vendor isn’t interested in, you can do it yourself or pay someone to do it.

Flexibility — You decide when and if to upgrade the software.

Interoperability — Open source software often adheres to open standards, making data exchange between applications easier.

Auditability — The application is transparent. Anyone can see what it does behind the scenes.

Support Options — There are communities of developers ready to help for free, as well as private companies offering paid support.

Cost — You can get open source software for free.

Try Before You Buy — Being free, you can always try before committing.

The whole article can be found at PCWorld.

Enjoy

Open Source Multimedia alternatives to common proprietary software

A common problem in the “Open Source World” is finding the right software that does a similar job (even exactly the same if you are lucky) to our favourite proprietary.

I’ve just found a nice list of multimedia alternative software, divided by category, which might help you finding the right one for your needs. There are “replacements” for software like iTunes, Windows Media Player, Nero, Photoshop etc..
Of course the alternatives are not always as powerful as the original ones but, for normal users, most of the time are more than enough.

3D Graphics and Animation
Art of Illusion as a possible alternative to AutoDesk Maya
Blender as a possible alternative to AutoDesk Maya

Audio Players
Songbird as a possible alternative to iTunes
Amarok as a possible alternative to iTunes
Aqualung as a possible alternative to iTunes
aTunes as a possible alternative to iTunes
Jajuk as a possible alternative to iTunes
Jukes as a possible alternative to iTunes
CoolPlayer as a possible alternative to Windows Media Player
Zinf as a possible alternative to Windows Media Player
Moosic as a possible alternative to iTunes

Audio Recorders and Editors
Audacity as a possible alternative to Sonar X1, Adobe Audition, Sony ACID
Frinika as a possible alternative to Sonar X1, Adobe Audition, Sony ACID
InfraRecorder as a possible alternative to Nero Burning ROM, Roxio Creator
Cdrtools as a possible alternative to Nero Burning ROM, Roxio Creator

Audio Ripping and Conversion
BonkEnc as a possible alternative to Exact Audio Copy, Audio Convertor Studio
CDex as a possible alternative to Exact Audio Copy, Audio Convertor Studio
MMConvert as a possible alternative to Exact Audio Copy, Audio Convertor Studio

Audio Mixing/DJ Tools
Mixere as a possible alternative to Traktor Scratch, Scratch Live
Mixxx as a possible alternative to Traktor Scratch, Scratch Live

File Sharing Clients
BitTorrent as a possible alternative to BearShare, Kazaa, Warez
Ares Galaxy as a possible alternative to BearShare, Kazaa, Warez
Shareaza P2P as a possible alternative to BearShare, Kazaa, Warez
BitTornado as a possible alternative to BearShare, Kazaa, Warez
ABC (Yet Another BitTorrent Client) as a possible alternative to BearShare, Kazaa, Warez
ANts P2P as a possible alternative to BearShare, Kazaa, Warez
DC++ as a possible alternative to BearShare, Kazaa, Warez
eMule/eMule Plus as a possible alternative to BearShare, Kazaa, Warez
Mute as a possible alternative to BearShare, Kazaa, Warez

Graphics Editors
Dia as a possible alternative to Visio Professional
Gimp as a possible alternative to Photoshop
Inkscape as a possible alternative to Illustrator, CorelDraw
Paint.Net as a possible alternative to Photoshop

Multimedia Players
VLC Media Player as a possible alternative to Windows Media Player
Mplayer as a possible alternative to Windows Media Player
XBMC Media Center as a possible alternative to Windows Media Player
Media Player Classic Home Cinema as a possible alternative to Windows Media Player
xine as a possible alternative to Windows Media Player
MediaPortal as a possible alternative to Windows Media Player

Multimedia Library Management
Data Crow as a possible alternative to MediaMan

Music Composition
DrumTrack as a possible alternative to DrumCore
Hydrogen as a possible alternative to DrumCore
Linux MultiMedia Studio as a possible alternative to FL Studio

Video Editing
Cinelerra as a possible alternative to Adobe Premiere
OpenShot Video Editor as a possible alternative to Adobe Premiere Pro CS5
Avidemux as a possible alternative to Adobe Premiere
Kdenlive as a possible alternative to Adobe Premiere Pro CS5
CineFX as a possible alternative to Adobe Premiere Pro CS5
Movica as a possible alternative to Adobe Premiere Pro CS5
VirtualDub as a possible alternative to Adobe Premiere Pro CS5
LiVES as a possible alternative to Resolume Avenue 3, AVMixer

Video File Conversion
DVDx as a possible alternative to Zamzar
DVD Flick as a possible alternative to Zamzar
FFDShow as a possible alternative to Zamzar

Video Player
Miro as a possible alternative to Windows Media Player

Enjoy it!

Linux patch to boost Desktop performance

I have been using Linux (Ubuntu is my favourite distribution) for a few years now. I really like it, actually I love it. ;-) Sometimes though I notice that some software is not as fast as its Windows equivalent.

A common culprit was the kernel scheduler. The Linux kernel offers several I/O and CPU schedulers, each tuned for different workloads. The default in many distributions was the Completely Fair Scheduler (CFS) for CPU and CFQ for I/O — both excellent for servers but not always ideal for desktop interactivity.

The Con Kolivas “BFS” scheduler (Brain Fuck Scheduler) was a popular alternative for desktops. It was designed with a simpler algorithm that prioritised interactive responsiveness over throughput scaling. Many users reported a noticeably snappier desktop after switching.

You could test it without recompiling the kernel by passing boot parameters in GRUB. For the I/O scheduler, adding elevator=deadline or elevator=noop to the kernel command line could improve desktop responsiveness on certain hardware. The deadline scheduler, for example, tries to minimise latency for individual requests rather than maximising total throughput.

Your mileage will vary depending on your hardware and workload, but it was worth experimenting if you felt your desktop could be snappier.

Full article: Linux patch able to boost desktop performance.

Give it a try and see if it works for you! :-)

Android vs iPhone

Let me begin by saying that I don’t own any of those phones, so I’m not going into a technical comparison. But knowing I’m an Open Source fan, you should immediately understand which side I am leaning towards. :-)

You might think: “he hasn’t tried any of them and he wants to tell me which one is better! How is that?!?” Well, as I said, I’m not going to tell you which one is better technically but I can tell you which one is better philosophically.

Here are the key points I think matter:

Open Source — Developers and manufacturers are free to implement and change Android in any way they like, which opens up the platform to tons of new ideas and innovations.

Fully Hackable — You can do whatever you want with it. It’s your phone. Try hacking the iPhone. There is nothing you can do unless Apple wanted you to do it.

Dozens of Phones to Choose From — The iPhone is a beautiful piece of hardware, but what if you want a QWERTY keyboard? Or something bigger? Or smaller? Or cheaper? With the iPhone you’re stuck with just the iPhone. With Android there are dozens of options.

Never will a software be perfect, but we should never renounce to freedom and choice. That’s what open source is about. And Android, being open source, wins on that front.

That is it! :-)

10 Greatest Open Source Software of 2009

Open Source software was becoming more and more popular in 2009, even though many of these applications were still little known. According to PCWorld, here are ten of the greatest.

Firefox — The open source browser that challenged Internet Explorer and changed the web.

Chromium — The open source project behind Google Chrome. Fast, clean, and constantly evolving.

OpenOffice.org — The free office suite that could read and write Microsoft Office files.

VLC Media Player — Plays almost anything you throw at it, no codec packs needed.

GIMP — The GNU Image Manipulation Program. Not quite Photoshop but incredibly powerful for a free tool.

Apache — The web server that powered most of the internet.

MySQL — The database behind countless websites and applications.

PHP — The scripting language that made dynamic websites easy.

Linux — The kernel that runs everything from phones to supercomputers.

WordPress — Started as a blogging platform, grew into a CMS that now powers a significant portion of the web.

Check out the original article on PCWorld for the full list with descriptions.

Enjoy!