Category Archives: Web Design - Page 2

Install Subversion with Web Access on Ubuntu 8.04 (Hardy Heron)

well, it is very useful to have a subversion server so u can have different versions of your applications; for back up and to be able to restore old versions, and be able to share the project with the team, when there is more than one developer working on it.

1- install apache

sudo apt-get install apache2

2- install subversion

sudo apt-get install subversion libapache2-svn

3- We’re going to create the subversion repository in /svn

sudo svnadmin create /svn

4- Now we’ll need to edit the configuration file for the subversion webdav module

sudo gedit /etc/apache2/mods-enabled/dav_svn.conf

we will comment the following line, so we can access the repository using the address http://www.servername.com/svn


and the following line to enable the dav module

DAV svn

and the following line to set the path to our repository which is /svn in our case

SVNPath /svn

and the following 3 lines to enable basic authentication

AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd

5- We create a user to have access to our repository

sudo htpasswd -cm /etc/apache2/dav_svn.passwd

where is the desired login name
6- We restart the apache server

sudo /etc/init.d/apache2 restart

7- You can access now the repository using the address : http://www.servername.com/svn

Aroma Systems – Be Guided By Your Senses

It has been 3 months since i joined the team at Aroma, and i have to say i enjoyed every single day.

Since i have been always a chaser to my dreams, i found the environment there suitable for me, it gives you the time and the conditions that will make you learn, develop, apply and innovate.

During these 3 months i have finished many projects, i learned a lot, and applied a lot of what i have been learning before during my career.

The team there is amazing, i enjoy working with them, we brainstorm on crazy ideas that looks impossible and we do it :),

We always focus on the new and top technologies that helps us build secure and fast application with very attractive user interface, and since the team is experienced in them and certified from large companies like Adobe, IBM, and Beta Testers for the technology makers like Zend “The php company” we know how to use the tools well to get the best output ever.

We made a new page to demonstrate our work, u will find a video there and some shots behind the scenes, i am sure u will like it. the video is quiet large but it is worth it, be patient πŸ˜‰

The link to the page is http://systems.graphicaroma.com

Aroma Systems is a department of Aroma Design & Solutions

we are working now on some projects that will rock the market soon πŸ˜‰

wish me good luck πŸ™‚

Zend Framework, Flex & PHP – Best Practice Cautions

Hey guys,

recently me and my flex developer colleague had a weird problem while exchanging data from zend framework to flex as web services using json.

well, 1st caution :

don’t ever use a closing tag ” ?> ” in your controllers or classes, as it will result in new line in the output json data, which will make flex not able to recognize it correctly.

2nd caution :

when u echo output from php don’t leave space between the variable and the equal “=” sign and also between the equal “=” sign and the value.
to be clear :
example 1 :

This won’t work as flex will not recognize a value for the variable Json.
example 2 :

This will work because we removed the spaces.

hope u don’t fall in this trap as we did.
& enjoy πŸ˜‰

Adobe to contribute AMF support to Zend Framework

Hey folks,
i have read this great news yesterday, that Adobe has made a proposal for an AMF (Action Message Format) component in Zend Framework.
what a great addition to the strong & superior framework.
this will facilitate my work a lot with my colleagues here that works with Flex, we have been developing some Air applications, and as a solution of the interaction between Flex & PHP we used web services to exchange the data in Json format between us, it works fine, but having the options of AMF will make it more powerful and smooth.
long live ZF, long live flex πŸ˜‰

here is the link for the news i got :
http://andigutmans.blogspot.com/2008/07/adobe-to-contribute-amf-support-to-zend.html

and here is the link for the proposal :
http://framework.zend.com/wiki/display/ZFPROP/Zend_Amf

Enjoy πŸ˜‰

Installing ffmpeg-php on Centos 5

It took me a couple of days to figure out the right way to install ffmpeg-php extension for php, so i documented all the instructions to not waste another 2 days for me and anyone interested
i started with http://www.amman-dj.com/Slim/2008/01/29/how-to-installing-ffmpeg-mplayer-flvtool-2-and-ffmpeg-php-4-youtube-clone-script/ but didn’t work with me and i needed more plugins, so i modified it and added the other packages
enjoy πŸ™‚

##########################
# add dag repository

rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

##########################
# update system

yum -y update

##########################
# Download Packages

mkdir ~/ffmpeg-packages
cd ~/ffmpeg-packages
wget http://www3.mplayerhq.hu/MPlayer/releases/codecs/essential-20061022.tar.bz2
wget http://rubyforge.org/frs/download.php/9225/flvtool2_1.0.5_rc6.tgz
wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz
wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.2.tar.gz
wget http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz
wget http://downloads.sourceforge.net/faac/faad2-2.6.1.tar.gz
wget http://downloads.sourceforge.net/faac/faac-1.26.tar.gz
wget http://superb-east.dl.sourceforge.net/sourceforge/lame/lame-3.98b8.tar.gz
wget http://www.tortall.net/projects/yasm/releases/yasm-0.7.0.tar.gz
wget ftp://ftp.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-20080630-2245.tar.bz2
wget http://downloads.xvid.org/downloads/xvidcore-1.1.3.tar.gz
wget http://www.linux1394.org/dl/libraw1394-1.3.0.tar.gz
wget http://mesh.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.5.3.1.tbz2

##########################
# Install SVN/Ruby

yum install subversion
yum install ruby
yum install ncurses-devel

##########################
# Extract all the source files

bunzip2 essential-20061022.tar.bz2; tar xvf essential-20061022.tar
tar zxvf flvtool2_1.0.5_rc6.tgz
bunzip2 ffmpeg-php-0.5.3.1.tbz2; tar xvf ffmpeg-php-0.5.3.1.tar
tar zxvf libogg-1.1.3.tar.gz
tar zxvf libvorbis-1.1.2.tar.gz
tar -zxf a52dec-0.7.4.tar.gz
tar zxf faad2-2.6.1.tar.gz
tar zxfv faac-1.26.tar.gz
tar zxfv lame-3.98b8.tar.gz
tar zfvx yasm-0.7.0.tar.gz
bunzip2 < x264-snapshot-20080630-2245.tar.bz2 | tar -xf -
tar zxfv xvidcore-1.1.3.tar.gz
tar zxfv libraw1394-1.3.0.tar.gz

##########################
#Create the codecs directory & import them

mkdir /usr/local/lib/codecs/
mv essential-20061022/* /usr/local/lib/codecs/
chmod -R 755 /usr/local/lib/codecs/

##########################
# Install Lame

cd lame-3.98b8
export LD_LIBRARY_PATH=/usr/local/lib
./configure
make
make install
cd ..

##########################
# Install libOGG

cd libogg-1.1.3
./configure
make
make install
cd ..

##########################
# Install libVorbis

cd libvorbis-1.1.2
./configure
make
make install
cd ..

##########################
# Install flvtool2

cd flvtool2_1.0.5_rc6
ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install
cd ..

##########################
# Install a52

cd a52dec-0.7.4
./configure --enable-shared=PKGS
make
make install
cd ..

##########################
# Install FAAD2

cd faad2
autoreconf -vif
./configure --disable-drm --disable-mpeg4ip
make
make install
cd ..

##########################
# Install FAAC

cd faac
./bootstrap
./configure --disable-mp4v2
make
make install
cd ..

##########################
# Install yasm

cd yasm-0.7.0
./configure
make
make install
cd ..

##########################
# Install x264

cd x264-snapshot-20080630-2245
./configure --enable-shared
make
make install
cd ..

##########################
# Install Xvid

cd xvidcore-1.1.3/build/generic
./configure
make
make install
cd ../../..

##########################
# Install libraw1394

cd libraw1394-1.3.0
./configure
make dev
make
make install
cd ..

##########################
# Install libdc1394

yum install libdc1394 libdc1394-devel

##########################
# Install libtheora

yum install libtheora libtheora-devel

##########################
# Install vlc & mplayer

yum install vlc mplayer

##########################
# Install ffmpeg

svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
cd ffmpeg
./configure --enable-gpl --enable-postproc --enable-nonfree --enable-postproc --enable-libfaad --enable-avfilter --enable-pthreads --enable-libxvid --enable-libx264 --enable-libmp3lame --enable-liba52 --enable-libfaac --disable-ffserver --disable-ffplay --enable-libtheora --enable-libvorbis --enable-shared

make
make install
export LD_LIBRARY_PATH=/usr/local/lib
cd ..

##########################
# Install FFMPEG-PHP (make sure the php.ini path is correct.)

cd ffmpeg-php-0.5.3.1
phpize
./configure
make
make install

echo 'extension=ffmpeg.so' >> etc/php.ini
cd ..
service httpd restart

php -r 'phpinfo();' | grep ffmpeg

how to enable mod_rewrite in apache2.2 (debian/ubuntu)

Here i am going to describe how to enable mod_rewrite in apache2.2 -specaily for debian.

In default installion of apache2.2 on debian never enable mod_rewrite default. So you may need to enable .

First install the apache2.2 with this command :
debian user please use

Architectural principles

  1. Each project must have a clear customer and deliver a real benefit.
  2. Don’t Repeat Yourself (DRY). Life is too short to spend your time re-inventing things.
  3. Be as simple as possible. Just do what we need to do now.
  4. Be as open as possible. Assume that all services can be accessed from outside the BBC, by default.
  5. Start simple, then iterate. Build the smallest thing you could possibly need, deploy it, then build applications on top of it. Think building blocks, not monoliths.
  6. Don’t optimise prematurely. The service might not grow the way we think it will.
  7. Build to scale. Think stateless, think content delivery networks, think database resilience.
  8. Test often. So you know when you need to optimise. So you can maintain your code. So you can maintain your platform.
  9. Evolve. Teams, systems, support structures. The platform. These principles!
  10. Let it die. Be prepared to turn your system off, or change it unrecognisably.

The future is PHP

With PHP continuing to gain massive support from programmers looking to expand their programming horizon, new versions of the language are likely to be geared towards solidifying its position as opposed to revolutionising.


The job market is telling nothing but good news

When Perl 6 was being designed, many huge changes were brought that alienated a lot of developers – hopefully PHP will not go the same way.In the meantime, be happy that you have chosen such a popular language that is advancing so quickly – PHP is here to stay, and things are only going to get better.The simplicity of scripting language PHP means it will be more popular than Java for building Web-based applications, Internet browser pioneer Marc Andreessen predicted in a speech in Burlingame, California, at the Zend/PHP Conference.

What i am reading now – HTML Dog: The Book

HTML Dog: The Best Practice Guide to XHTML and CSS, published by New Riders, has recently hit the shelves!

HTML Dog book coverWith best practices (using web standards) at its heart, it outlines how to do things the right way from the outset to produce highly optimized web pages, in a quicker, easier, less painful way than you might think.

The book builds on and complements the HTML Dog website and applies the same concise, easily digestible, straight-talking, engaging style to achieve the same ultimate goal: to help the reader come to grips with XHTML and CSS and successfully use them in the best possible way.

What’s In It

Split into 10 easy-to-follow chapters such as Text, Images, Layout, Lists, and Forms, and coupled with handy quick-reference XHTML tag and CSS property appendixes, HTML Dog is the perfect guide and companion for anyone wanting who wants to learn about:

  • In-depth XHTML: Learn about all of the valid tags and attributes.
  • Comprehensive CSS: Explore all of the valid selectors, properties, and values.
  • Web Standards: Discover how separating content (using HTML) from presentation (using CSS) can lead to lightweight, easily manageable, reliable web pages.
  • Cutting-edge techniques: Leap beyond the old-school days of font tags, table layouts, and frames.
  • Accessibility: Exploit the mechanisms in HTML designed explicitly to make your pages more user friendly to more people.
  • Cross-compatibility: Make your web pages not only cross-browser compatible, but optimized for screen readers, mobile web devices, and print.
  • Practical demonstrations: See the lessons in action in 70+ “bare bone” online examples constructed especially for the book.

Who It’s For

This book is for those who want to get to grips with best-practice (X)HTML and CSS, and for those who want a solid, reliable reference book.

For novices it details all of the essential bits and pieces to get started (and progress towards a professional standard). For those who want to sharpen up their existing (possibly rusty) skills, it comprehensively lays bare the latest web standards approaches to HTML and CSS. There’s even value for more experienced developers – we all need a trusty reference!

The Author

Patrick GriffithsPatrick Griffiths has been an HTML specialist since 1999. Not a designer nor a programmer, but a front-end developer, with XHTML and CSS his trusty weapons of choice. He has worked in this specific capacity for, among others, Vodafone, Wiley, educational establishments, and on various government projects, and more recently as a developer and instructor for his own company, Vivabit, through which he has provided training for organizations such as Amnesty International, Legal & General, and London’s Natural History Museum.

In addition to writing and maintaining the HTML Dog web site, he has contributed to resources such as A List Apart and the CSS Zen Garden, and is an active, well renowned member of the web design community.