Archive for May, 2010

« Older Entries |

Showcase of Multi-Colored Color Schemes in Web Design

Monday, May 31st, 2010

Multi-colored color schemes used in web designs are only seen on rare occasions, although recently the popularity of this colorful, vivid and sometimes dramatic style has started to increase dramatically. This post showcases a total of twenty multi-colored color scheme web designs, all of which are pretty interesting to look at in numerous amounts of ways.

Julio Silver

Moradito

F91W

Leetside

Design Moves Me

Trashstars

Biko2

Geng Gao

Milrayas

Creative Sessions Tuts+

Beautiful 2.0

Arkix

Giraffe

Camex Theramax

Icebolt

Matt Cronin

Onotate

Colourspace

Domain Advertising

Intuitive Designs

We’d love to know what your favorites are, so please let us know by posting your favourites inside the comment below!

Learn the useful we with Testking 640-863 course. Download the Testking 640-553 tutorials and Testking PMI-001 reviews by expert designers and developers to learn how to create inspiring designs for your web page.

Tags: , , , , , ,
Posted in Inspiration | 5 Comments »

10 Must-Have Free Tools for Developers

Saturday, May 29th, 2010

Those of you who read the site will have no doubt seen the great article written by Callum Chapman (Top 10 Apps and Resources to Speed up your workflow). It lists some great tools and covers a large, general populace of the creative web design/development world.

This list is set to delve in further and look at what is out there to help not only commercial but freelance web developers improve their workflow, carry out important tasks, backup work and generally simplify their working life, whilst being, all importantly free of charge.

Not wishing to step on Callum’s toes, there will be no duplicates in the two lists, however I will mention now that FileZilla would have made it onto the list as the FTP Client/Server of choice.

Hopefully you leave today with at least some new applications that you’ll give a go and maybe, just maybe, one day you’ll think “How did I ever do without.”

Firebug

Firebug

Whilst not an application in its own right (it’s an extension for FireFox) Firebug is, in my opinion, possibly the single most useful free tool that a web developer has access to. As well as providing information on Page Load times, including individual file sizes allowing you to really see what’s slowing your site down, it allows you to inspect the HTML and CSS and debug Javascript all from one location.

Allowing you to right click on any element on a site, inspect its HTML and CSS and make changes on the fly to them is a fantastic way to tweak certain elements of a site, such as button or image positioning. It can also graphically show the margin and padding of an element making those final placements bugs a thing of the past.

Xobni

Xobni

Xobni, Inbox backwards in case you hadn’t noticed, allows you to search your emails, contacts and conversations quickly and easily in Microsoft Outlook (2003 upwards). Used mainly in my line of work for sales and customer management, Xobni collates all your emails into “people”, allowing you to view their generated profiles in Outlook including such details as email, name, address, auto-generated social networking links (Facebook/LinkedIn) as well as showing past emails from them as “threaded conversations” and file attachments. It will also generate a network of people so you can quickly see who knows who in your inbox.

It is most useful if you find yourself on the phone or in close contact with a client, as you can very quickly bring up past conversations and files for a particular client, ensuring that you’re providing quality professionalism.

Firefox Web Developer Toolbar / IE Web Developer Toolbar

Firefox Web Developer Toolbar

Again not technically an application, the Firefox Web Developer Toolbar allows developers to quickly access in depth page information such as, response headers and META data. You can also edit the CSS, show and outline elements on the page, view stored session and cookie information and a whole host of other features, including resizing the browser window, a feature that is very useful when explaining older resolutions to clients.

The IE Web Developer Toolbar is effectively the same but is used in Internet Explorer.

ColorPic/ColorCop

ColorPic

There are few things more annoying (to me anyway) than being in full-flow whilst coding only to have to stop to check the hex value of a colour. ColorPic (pictured) and ColourCop are small applications that act as an eyedropper tool but for your desktop, meaning that you don’t have to boot up Illustrator/Photoshop every time you need to check a colour one on of your designs, or if you are interested in what particular colour another website is using during the design process (as opposed to taking a screenshot and loading it into your design application of choice). Personally, I use ColorCop as there are a few extra features, including a third party plugin to produce web colour palettes, but it’s always good to give options.

IE Tester

IE Tester

IE Tester is a free tool that allows you to create instances of previous versions of Internet Explorer. With the death of IE6 it is perhaps not as useful as it once was, but it is still great for debugging sites where a user may be on an older browser or forced to use older software. Public sector companies or larger corporations with a locked down IT infrastructure are notorious for this.

Karens Replicator

Karens Replicator

Talk about peace of mind. Karens Replicator is such a simple program but one that allows you to backup, either manually or automatically via a schedule, a group of files or folders. Sounds pretty simple but what makes it so powerful is that you can also specify, with filters, which files should not be copied and also to only copy files that have changed.

Working predominantly from a Laptop, which, after a few years isn’t as looked after as it once was, there is a requirement to constantly backup files as any good developer should do. Using this program you can run a backup when your home which ensures that the contents of your web root or, say, your database files are copied onto a separate machine or external HD to ensure that you always have a complete backup should any problems arise, and personally, with a webroot of around 40gig it’s the facility to only move files that have changed since the last backup that makes this a must have.

Notepad++

Notepad++

A fantastic replacement to Notepad/Wordpad, Notepad++ is great for editing all types of text files (and some data ones) in a rich, highlighted syntax environment. Allowing the syntax highlighting (both automatically and user customizable) to change per file type and tags means that you can easily edit an ASP page and then a Javascript file, ensuring the correct formatting for both. It also supports tabbed, multi document browsing.

Visual Web Developer

Visual Web Developer

If you code predominantly in VB/C#.NET you are going to need a decent IDE (integrated development environment) in order to organise all your code files, class files and configs. Visual Studio does an excellent job but aside from being costly it can also be very bulky and confusing (certainly if you are just starting out). Thankfully Microsoft have released (and have been doing for a few years now) Visual Web Developer. This is effectively a stripped down version of Visual Studio aimed solely at C#/VB.NET development, be it a website, web service or class file. With an integrated Web Server for build purposes and all the core web development functionality of Visual Studio, it’s simply a must have.

They also provide an express version of SQL Server bundled with it so you’ve got everything you need to start coding dynamic websites in ASP.NET, all delivered through the Microsoft Web Platform Installer.

Paint.NET

Paint.NET

Paint.NET is a free photo manipulation tool built on the .NET platform. Whilst not as feature packed as Photoshop, Paint.NET certainly provides more than enough features to keep most people, even at an intermediate design level, happy. Basic tools such as crop, rotate, resize, etc are included but so are layers, action history, adjustments (hue/saturation) and some effects (blur, distort and red eye removal to name a few) providing a great small, free design platform to use, with a layout very familiar to Photoshop users.

Whilst I personally wouldn’t recommend it over Photoshop for a site wide design, or Illustrator for logo or typeface, I do actively recommend Paint.NET to clients who wish to create their own adverts or banners to use on their sites.

Spotify

Spotify

Alright, so it’s not really useful (in a work sense) but allowing users to literally thousands and thousands of free music tracks must be worth an honourable mention, and when getting stuck into designs or code it’s always great to stick the earphones in and zone out.

Advertisement funded, Spotify allows you to listen to free music, nice and legally, with the interruption of an advert every 4/5 songs. It’s like listening to the radio except you’re choosing the music. Aside from the obvious, it’ll free up all those MP3s that are cluttering your music folder and with its most recent incarnation there’s a whole load of social network integration including connecting playlists and Spotify profiles with Facebook accounts and sharing said playlists.

Those in the UK will require an invite code to join: Many people seem to have had good results from http://www.spotinvite.se/

This is by no means an exhaustive list, simply an insight into what I use on a day-to-day basis as a Web Developer. Hope you enjoyed reading this article and checking out some of the tools/applications mentioned.

Learn how to make your website more functional with Testking 70-432 web development course and become expert using Testking 70-662 tutorials and Testking E20-001 resources related to web development.

Tags: , , , , , , ,
Posted in Articles | 20 Comments »

49 Fascinating E-Commerce Websites for your Inspiration

Friday, May 28th, 2010

E-commerce has always been part of the vast world of Internet. E-commerce emerged as a new way to shop. It made it so that people could shop online and buy items without going to the store. Online shopping has rapidly gained popularity and the revenues by shopping online has increased drastically over the decade.

As the online community gets bigger and evolves, e-commerce websites also need to evolve their design and make it comply with the current design trends. It has been essential for e-commerce websites to be clean, beautiful and simple.

E-Commerce websites have to follow with the current web 2.0 trend.  Illustrations are very important when creating a e-commerce website because if a visitor doesn’t get to see what the product looks like, they are very unlikely to buy the product. The examples below use illustrations beautifully on their website.

Good e-commerce websites also have a good shopping carts, this element is a must because a shopping cart is where visitors make purchases and visitors don’t want to get confused. Here are some of the E-commerce websites that have taken a unique approach and made their e-commerce sites the best of its kind.

Aldo

Puma

UO

Ocean Sales

Loja Birds

Kallow

Toobydoo

Quentin Mackay

The Brown Corporation

Apple

Tigerleisure

Seibei

Mojo-Themes

Checkout

Coda

Converse

dripping in fat

ShoeGuru

14Tracks

Úvod | TON a.s.

H&M

Hellothemes

Upthemes

20Ltd

Better Closet

FEEL THE POWER

Rifle Paper Co.

River Island

Oakley

reisenthel

Twelve South

Armani Exchange

Bilka

Palm

Hollister Co.

Atom Bicycles

Chaussettes Archiduchesse

Famous 4th Street Cookie Company

DesignByHumans T-Shirts

All Wines

Stickermule

Nike

Sebastoni

Prickle

nestliving

Zingsale

Walkie Talkie

Voodoo Controllers

Valiant Royale

Conclusion

As you can see, they are very creative and are visually attractive. They are very simple and easy to follow. You don’t have to look hard to know where to go and know how to order. These are key elements of having a good website. These have hopefully exposed to some of the best e-commerce websites and given inspiration. Please share your favorite ones in the comments below.

Download the testking 117-101 design tutorials to learn how to create user friendly web layouts. Learn the best way to promote your website using testking 70-686 live demos and expert testking JN0-531 guides.

Tags: , , , ,
Posted in Inspiration | 8 Comments »

Monday Fun: Creating a Clock Animation Without CSS3

Monday, May 24th, 2010

Monday seems to be the most boring day, starting a new week can be really tough. So we will start with something fun and exciting, today we are going to create a clock animation that works in all browser, no CSS3. So Let’s get started.

Step 1 – Setting up workspace

For our little animation effect we are going to use Raphael library, you can get it from here. Now First create a html page and import the Raphael javascript file.

Step 2

After that you have created the html page and imported Raphael.js. Create a new javascript and name it clock.js. Here we will code the animation effect. Now just add a div which will act as stage for our clock and that’s it for the html page. So far our code looks like –

<html>
<head>
<script type="text/javascript" src="js/raphael-min.js"></script>
<script type="text/javascript" src="js/clock.js"></script>

<title>Clock</title>
</head>
<body>
<div id="pane" ></div>

</body>
</html>

Step 3

First we are going to create a canvas using Raphael, wrap it in the window onload function. Canvas is created by calling Raphael() , which creates a Raphael object which we will use it for future reference when we will call other methods.

window.onload = function(){

var canvas = Raphael("pane",0,0,500,500);
};

Here using Raphael’s function we have converted the div with id pane into an canvas with coordinates 0,0 and with dimensions 500 by 500.

Step 4

Creating a skeleton, now we are going to create a basic structure of our clock, for that we will two concentric circles with outer circle’s radius will be our clock’s size and inner clock’s circle will be a reference point.

canvas.circle(200,150,100).attr("stroke-width",2);
canvas.circle(200,150,3).attr("fill","#000");

Step 5

Now we are going to add numbers along the side of our clock’s circumference. For that, we will be using little maths. First we will declare variables –

var rad = Math.PI / 180,
    cx = 200,cy =150 ,r = 90,
    startangle = -90,angle=30,x,y, endangle;

	 for(i=1;i<13;i++)
	 {

		 endangle = startangle + angle ;

		 x = cx + r  * Math.cos(endangle * rad);
		 y = cy + r * Math.sin(endangle * rad);

		 canvas.text(x,y,i+"");

		  startangle = endangle;
	 }

Then we will loop from 1 to 12 calculate x,y position and finally insert the number at it’s position.

Step 6 – Adding hands

So for we have added the numbers, now time to add the second, minute and hour hand. This can be done by creating paths from starting point from the center of the circle, to the length depending on each hand.

var hand = canvas.path("M200 70L200 150").attr("stroke-width",1);
var minute_hand = canvas.path("M200 100L200 150").attr("stroke-width",2);
var hour_hand = canvas.path("M200 110L200 150").attr("stroke-width",3);

Step 7 – Setting up Current time

Our clock has now all it’s parts. Time to set it to the the current time. For this, we will retrieve the current date using date object and retrieve current seconds, minutes and hours.

var time = new Date();
angle = time.getSeconds() * 6;
minute_hand.rotate(6 * time.getMinutes(),200,150);

var hr = time.getHours();
if(hr>12)
hr = hr -11;
hour_hand.rotate(30 * hr,200,150);

After that we are going to rotate each have hand based on time. For minute hand one minute takes 6 degrees, so we will multiply current minutes by 6. For hour in our clock it
takes 30 degrees so will multiply current hour by 30. There is different in degrees because there are 5 minutes between two numbers and only 1 hour for the consecutive one.

Step 8 – Finally making the clock tick

Finally making the clock tick, to animate the clock we will using setInterval function and rotate each hand by defined amount of degrees

var minute_angle= 6 + time.getMinutes()*6,hour_angle=0.5+ time.getMinutes()*30;
setInterval(function(){
					 angle = angle + 6;
					 if(angle>=360)
					 {
						 angle=0;

					minute_hand.rotate(minute_angle,200,150);
				     minute_angle = minute_angle + 6;

					  hour_hand.rotate(hour_angle,200,150);
						  hour_angle = hour_angle + 0.5;
					 }
					  if(minute_angle>=360)
					  {
						  minute_angle=0;

					  }

					 hand.rotate(angle,200,150);

					 },1000);

Step 9 – Putting it altogether

Finally our code looks like.

window.onload = function(){

var canvas = Raphael("pane",0,0,500,500);

canvas.circle(200,150,100).attr("stroke-width",2);
canvas.circle(200,150,3).attr("fill","#000");

var angleplus = 360,rad = Math.PI / 180,
    cx = 200,cy =150 ,r = 90,
    startangle = -90,angle=30,x,y, endangle;

	 for(i=1;i<13;i++)
	 {

		 endangle = startangle + angle ;

		 x = cx + r  * Math.cos(endangle * rad);
		 y = cy + r * Math.sin(endangle * rad);

		 canvas.text(x,y,i+"");

		  startangle = endangle;
	 }

var hand = canvas.path("M200 70L200 150").attr("stroke-width",1);
var minute_hand = canvas.path("M200 100L200 150").attr("stroke-width",2);
var hour_hand = canvas.path("M200 110L200 150").attr("stroke-width",3);

var time = new Date();

angle = time.getSeconds() * 6;

minute_hand.rotate(6 * time.getMinutes(),200,150);

var hr = time.getHours();
if(hr>12)
hr = hr -11;

hour_hand.rotate(30 * hr,200,150);

var minute_angle= 6 + time.getMinutes()*6,hour_angle=0.5+ time.getMinutes()*30;
setInterval(function(){
					 angle = angle + 6;
					 if(angle>=360)
					 {
						 angle=0;

					minute_hand.rotate(minute_angle,200,150);
				     minute_angle = minute_angle + 6;

					  hour_hand.rotate(hour_angle,200,150);
						  hour_angle = hour_angle + 0.5;
					 }
					  if(minute_angle>=360)
					  {
						  minute_angle=0;

					  }

					 hand.rotate(angle,200,150);

					 },1000);

};

Hope you enjoyed the tutorial, works on all browsers. Be sure to check out the demo, you can use it instead of a flash with a little more styling.

Sign up for Testking 70-433 online web designing course and download Testking 70-294 CSS tutorials and Testking 642-373 videos to learn how to create inspiring designs for your web project.

Tags: , , , , , , , ,
Posted in Tutorials | 4 Comments »

Getting Started With PDF Generation in PHP

Friday, May 21st, 2010

PDFs are everywhere now a days. From documents to e-books to invoicing they are becoming a standard. Generating pdf from programming languages can be tricky, though there are libraries provided to ease up the task.

Now a days more and more web applications are requiring some form of document generation whether it be reports, stats or billing. In this tutorial we are going to get in the basics of generating a pdf using php.

Getting Started

This tutorials assumes you have basic a knowledge of php and have a server (WAMP is good) installed on your system. First go to to FPDF website and download the library. Then create a folder in the server’s root directory and name it pdf_project. Then extract the zip file you have downloaded in the project library and you should see a similar structure.

For now we are interested in the fpdf.php file and the font folder. Create a new php file called test1.php, in the pdf_project folder and add the following code.

<?php
require('fpdf.php');

$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Times','I',16);
$pdf->Cell(0,10,'Yay TutToaster Rocks !!',0,1,'C');
$pdf->Output();
?>

That’s it, now enter the url of the project, for localhost – http://localhost/pdf_project/test1.php . The output will be in pdf format.

What happened here is –

Always call the SetFont method before adding cells in header, body or footer else nothing will be printed.

Taking a closer look

Now we will see in detail some of the important functions of FPDF class.

1) FPDF()

FPDF is the basic constructor which creates an instance of the FPDF class. It accepts 3 parameter orientation , unit and size. By default page is of A4 size. You can extend the fpdf class to add your own functionality.

2) Cell()

For the first cell code is

$this->cell(100,10,"This is a cell with width 100 and height 10",1,1);

For the Second cell code is

$this->cell(0,20,"This is a cell with width 100 percent and height 20",1);

For the Third cell code is

$this->SetFillColor(123,245,132);
	$this->SetY(60);
	$this->cell(100,10,"This is a cell with background fill",1,1,'',true);

Cell also supports background fill, you can do that by calling the SetFillColor method which accepts RGB values. Now whenever the fill option is set to true it will fill it with the color mentioned previously. Default color is black.

Final cell series

 
          $this->cell(30,10,"Cells",1,0,'',true);
	  $this->cell(30,10," without",1,0,'',true);
	  $this->cell(30,10," line break",1,0,'',true);

If the line break option is set to 0 cells appear floating adjacent to each other.

A cell is a block in which text is added. It has many parameters, starting from width, height , text , border,position, alignment and fill. A cell with 0 width represents a block with 100% width. Below are examples which will give you a clear picture of how cells work.

Note: That if text is more than the width, it overflows. Width is used as reference for next cell to be aligned if no linebreak is given.

3) Output()

Finally after creating the data, we need to output it. That is done by Output() method. This method outputs the data and opens the file in the browser only. In many situations this is not desired. We want the pdf file to be downloaded. For that options are provided –

4) Line Break and positioning

You can explicitly give the line break options using Ln() function. This gives a line break with height equal to the height of the previous cell if no value is given. If you want to add data at a specified position you can do that by calling setX() and setY() method.

$this->cell(30,10," Cell",1,1);
$this->Ln();  //produces a line break...

$this->SetY(60);
 $this->cell(30,10," Cell at Y - 60",1,1); // produces a cell at 60 px from the top.

Extending the class

So far we have rounded up the basics. There are times when we need repetitive use of functionality. So we can extend the fpdf class to make our own class with those functions. For that we will create a basic class which outputs a simple table.

<?php

require('fpdf.php');

class SimpleTable extends FPDF
{
	function generateTable($no)
	{

		for($i=1;$i<=10;$i++)
		{
		   $this->cell(20,10,$no,1,0,"C");
		   $this->cell(20,10," * ".$i,1,0,"C");
		   $this->cell(20,10," = ".$i*$no,1,1,"C");
		}
	}
}

$pdf=new SimpleTable();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->generateTable(2);
$pdf->Output();
?>

As you can see here that when we have inherited the FPDF class and inherit all the methods and can directly invoke the subclass with our new functions.

Adding Header and Footer

FPDF allows you to add footers and headers into your file. Though the initial functions are empty you can extend the class and add your own functionality by overriding them.

<?php

require('fpdf.php');

class Example extends FPDF
{
	function Header()
	{

    $this->SetFont('Times','B',15);
    $this->Cell(0,10,'TutToaster',1,0,'C');
    $this->Ln(20);
	}

	function Footer()
	{

    $this->SetFont('Times','B',9);
	$this->SetY(-15);
    $this->Cell(0,10,'Copyright TutToaster',1,0,'C');
    $this->Ln(20);
	}
}

$pdf=new Example();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Output();
?>

Here as you can see we didn’t called the header and the footer explicitly. They are called internally.

Images

You can use images too, it is relatively easy and supports all format. The main parameters include file path, x coordinate, y coordinate, width, height.

$this->Image('test.png',10,10,200,300);

Adding New Font support

FPDF supports basic fonts, but what about when you need more fonts. FPDF provides a way to import external fonts. For this tutorial we will use Aller font, you can download it here. Follow the steps –

First we need to make a afm file for our font. You can get the utility that is ttf2pt1.exe here which does that.

Now paste the font you want to be converted here and open up command prompt.

Navigate to the folder where ttf2pt1.exe is extracted as well as your font is placed. Enter the following command

ttf2pt1 -a yourpath\AllerDisplay.ttf Aller

Since in this tutorial , I have used Aller display. You can use your font.

Execute it and we will have two files type created with the last name on command prompt we have given. We are interested in the file with the afm extension.
Now add the ttf and afm fonts to the project folder.

Now create a php file and add the following code. Call it once by entering its address in the url. Two files aller.php and aller.z will be created. Move them to the font folder.

<?php
require('font/makefont/makefont.php');
MakeFont('AllerDisplay.ttf','aller.afm');
?>

Now to use our new font, first we will call it and then use it like we use any other font.

<?php
require('fpdf.php');

$pdf=new FPDF();
$pdf->AddFont('Aller','','aller.php');
$pdf->AddPage();
$pdf->SetFont('Aller','',20);
$pdf->Cell(0,10,'Yay using Aller font with FPDF !!');
$pdf->Output();
?>

Note the path of the font’s php file is relative to the font directory.

Thats it Folks

Now you are equipped with basic knowledge to create full fledged applications that require pdf generation. Next week we will take it to a more advance level by creating a Invoice Management Application from scratch including its UI, styling and back-end.

Join Testking 1Y0-A17 course to learn php and other web applications. Download the latest Testking 000-152 tutorials and Testking 70-291 demos to learn how to generate pdh in php.

Tags: , , , , ,
Posted in Tutorials | 9 Comments »

Next Page »