Introduction

As some of you may know, today should be the official launch date for the Free Mobile GSM carrier in France. Why is it interesting?

Because Free.fr was always a synonym of evolution.

They were the first to sell 50 hours of dial up internet connectivity for 30€ a month when everybody else was selling 10 hours for 50€.

They were the first to sell unlimited 512k DSL internet access for 30€ when everybody else was selling it for at least twice more.

They were the first to promote ADSL2+, increasing the average customer bandwidth by a factor of at least 5.

They announced a new revolution for today: follow the announcement live with us!

Read the rest of this entry

Introduction

As www.devquotes.com was suffuring for a huge peak of traffic, I figured I should install some caching server to meet the performance requirements.

I knew that Varnish was a good choice because of the many articles I came into the last few years, so I decided to give it a try.

Read the rest of this entry

Hi,

Free.fr is playing with us on http://live.free.fr: they added a MD5 checksum on the side of the space shuffle.

It seems that the checksum value changed twice already, so I built a little script that will fetch the page in an infinite loop looking for a new value.

#!/usr/bin/python

from httplib2 import Http
from re import compile
from time import sleep

URL = "http://live.free.fr"
USER_AGENT = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.12011-10-16 20:23:00"
REGEX = "^[\s]*.*([0-9a-f])[|\\\\].*$"

def fetch():
  h = Http()
  response, content = h.request(URL, headers = { 'User-Agent' : USER_AGENT })
  return content

def parse(content, regex):
  lines = content.split('\n')
  ret = ""
  for line in lines:
    occurences = regex.findall(line)
    ret += "".join(occurences)

  return ret

if __name__ == "__main__":
  latest_hash = ""
  regex = compile(REGEX)

  while 1:
    current_page = fetch()
    current_hash = parse(current_page, regex)

    if (current_hash != "") and (current_hash != latest_hash):
      print "New hash value!"
      print current_hash
      latest_hash = current_hash

    sleep(60)

Introduction

Here are a few notes I took while trying to install Ruby 1.9.2, Rails 3, on a Ubuntu 10.10 Maverick system. The Debian style packaging for Ruby doesn’t sound like a good idea to me in a world where most of the gems are hosted on github and such, so I tried to use only the Ruby interpreter package from Ubuntu (1.9.2-p0).

This should also work on a Debian Squeeze system.

Read the rest of this entry

, , , , , ,

Introduction

Here is the 4th and final post on this subject. Previous posts can be found here, here, and there.

I’ll cover the installation of:

  • A 4 ports SATA card ;
  • A Media Center Remote USB receiver + remote ;
  • Samba for home network CIFS filesharing ;
  • ZFS for the main storage.

Read the rest of this entry

, , , , , , , ,

Introduction

This is the third article about my journey building a HTPC server. If you didn’t follow the whole serie, they are available here: basic & hardware considerations.

I finally received all the hardware required to build my server. I only bought the base: a motherboard which includes CPU plus graphic card (AT5IONT-I), memory (1x1GB + 1x2GB), a case (Lian-Li PC-V354R), and a Blu-Ray reader. I re-used a Antec EarthWatt 500W power supply unit and a old 500G hard drive I had in some server laying at my place.

Read the rest of this entry

, , , ,

The news, coming initially from VUPEN from what I can see, is spreading that PHP.NET has been hacked. PHP sources released on the website seems to have been backdoored, or at least modified.

Read the rest of this entry

, , , , ,

Introduction

This is the second part of my brainstorming which should lead to building a HTPC server. If you missed the first part, its available right here.

After I decided what kind of HTPC I was looking for, I started crawling the Internet trying to figure out what would be the best hardware. This post will try to expose and explain the decisions I made. As of today, I’m waiting for all those parts to be delivered.

Read the rest of this entry

, ,

My initial problem

My previous ISP (Free) provided me with a nice triple-play ADSL set-top box (aka « Freebox »). It has an internal 40GB hard disk drive accessible using FTP and was able to play content streamed through UPnP. I recently switched to a new ISP (Numéricable) because they were offering FTTH (100mbits downstream, 5mbits upstream) in my place, but unfortunately they’re not offering any kind of set-top box. I just got a classic Netgear modem and Netgear DVB device, which is unable to play any video content from the network.

As it turns out, I’m missing the HTPC-kind functionalities a pretty damn lot. Playing my video content on my living room’s TV is important in my eyes. Sadly, my computer is too far from the TV to link both using an HMDI cable. That’s how I decided that I’ll be building an HTPC.

What’s an HTPC?

What is exactly an HTPC (Home Theater Personal Computer or Home Cinéma & Media Center in french):

Read the rest of this entry

, , , ,