- Make Fewer HTTP Requests
- Use a Content Delivery Network
- Add an Expires or a Cache-Control Header
- Gzip Components
- Put Stylesheets at the Top
- Put Scripts at the Bottom
- Avoid CSS Expressions
- Make JavaScript and CSS External
- Reduce DNS Lookups
- Minify JavaScript and CSS
- Avoid Redirects
- Remove Duplicate Scripts
- Configure ETags
- Make Ajax Cacheable
- Flush the Buffer Early
- Use GET for AJAX Requests
- Post-load Components
- Preload Components
- Reduce the Number of DOM Elements
- Split Components Across Domains
- Minimize the Number of iframes
- No 404s
- Reduce Cookie Size
- Use Cookie-free Domains for Components
- Minimize DOM Access
- Develop Smart Event Handlers
- Choose over @import
- Avoid Filters
- Optimize Images
- Optimize CSS Sprites
- Don't Scale Images in HTML
- Make favicon.ico Small and Cacheable
- Keep Components under 25K
- Pack Components into a Multipart Document
Thursday, November 6, 2008
Best Practices for Speeding Up Your Web Site
Thursday, October 16, 2008
Different Browser Compatibility Test
IE NetRenderer allows you to check how a website is rendered by Internet Explorer 7, 6 or 5.5, as seen from a high speed datacenter located in Germany. Just type in a URL in the field above and try it out - it's free!
New: They have added an Internet Explorer 8 Beta 2 Rendering Engine.
Unlike other screenshot services (listed below), they are able to process a large number of capturing jobs in parallel and in realtime, making it the fastest service.
Website screenshot services
- browserama
German language screenshot service. Supports 40+ browser / OS combinations, including Linux and Macintosh. It allows several rendering options, including which exact Flash version to use. Browser support is not quite up-to date and response times of 2-5 minutes cannot be considered realtime. Prices start at € 9.95 / 24h, they also offer micropayment per screenshot capture. - browsercam
As their website title says: “Screen capture and Remote Access service for cross platform compatibility testing and HTML design quality assurance”. This is probably the most feature complete service around. It is offering screenshot services with project management and image format options, as well as VNC remote control for numerous operating systems. Special platforms, such as Windows Mobile (Pocket Explorer), RIM Blackberry and up to date Beta platform (Windows Vista).are also supported. Pricing starts at US$ 19.94 for 24h hours access (one user).. - browserpool
Well designed VNC Remote access service with full access to different operating systems and browsers, including Mac OS X, Linux, Windows 98, Windows 2000 and Windows XP. Browserpool claims to restore each OS session after use, but there is no official privacy policy. Prices start at €29.99 / month. - browsershots
Open Source screenshot service, allowing to test your webdesign in different browsers. Access is relatively quick and it allows to immediately view past versions of your page - not only to you, but also anybody else, since “there is no privacy”. This service is free. - browsrcamp
Free Webpage Rendering Service for Safari Browser (MacOSX). For more elaborate testing there is a paid VNC access plan with 10 additional browsers. - iCapture
Free Webpage Rendering Service for Safari Browser (MacOSX) from Dan Vine. Service seems to be down at the moment, so it could not be tested. - ieCapture
Free Internet Explorer Rendering Service from Dan Vine. At a waiting time of 20 hours this service seems to be heavily overloaded. It is not clear which Internet Explorer version is used. - IE NetRenderer
This is a new, free screenshot service for Internet Explorer 7, 6 and 5.5. Not meant to replace Browsercam, it is designed just for that single job, and it renders faster than any other service. Since we are providing this service, you can safely assume us to be somewhat precudiced here, So why not simply try it out yourself? ;-) - IEs 4 Linux
Not a validation service, but a cute installation script for Linux boxes to help install multiple IE versions within Wine. It might violate Microsoft EULA and IE7 is not yet fully supported. Considering the number of clever tricks needed to get this working, there is no 100% guarantee that the emulated IE versions will behave exactly like their standalone counterparts, but for casual webdesigners this might be O.K. - Litmus
Commercial screenshot service with instant rendering of 17+ browsers in full page mode as well as many popular email clients. Snappy user interface. - lixlpixel
Free Mac G5 Safari screenshot service, it is currently down. - superscreenshot.com
Fast and free screenshot service using the Safari (Mac) rendering engine. Allows full page length rendering and a nice preview view before downloading the full size image. - Thumbalizr
Fast and easy to use screenshot service that uses the IE7 Explorer engine to deliver thumbnail images of arbitrary width. - Tredosoft Multiple IE
This is not a validation service but an installer that allows you to run multiple IE versions side by side on the same MS Windows machine. Besides the fact that you still need a Windows box and that it might violate the Microsoft EULA, it is not really a professional grade solution. Since IE is designed to be tightly integrated into the OS, there is no guarantee that the different IE versions will behave exactly like their standalone versions. Even if the mechanism does work for you, it will ruin several other HTML rendering functions found in Outlook, HTML Help, Dot NET webbrowser controls etc. In addition, any upcoming MS patch could instantly break this multiple IE mechanism. This is not Tredosoft´s fault (they did a great job building a usable installer), the concept itself is somewhat questionable. - WebshotsPro
Rather slow service built for developers to integrate thumbnail webpage views into their apps.
Sunday, October 12, 2008
Google Translation API: Translate on server side using PHP
As you know, there is google translate ajax api which can be used on client side translation using it's javascript interface. But how do we do translation on server side languages such as PHP, Java, ASP.NET or Rails. There is a task for us to translate multiple records on the database into 6 different languages as cron job. Similar problems may face you. So here is the solutions that you can use for your servers-side google translations.
function translateTexts($src_texts = array(), $src_lang, $dest_lang){
//setting language pair
$lang_pair = $src_lang.'|'.$dest_lang;
$src_texts_query = "";
foreach ($src_texts as $src_text){
$src_texts_query .= "&q=".urlencode($src_text);
}
$url = "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0".$src_texts_query."&langpair=".urlencode($lang_pair);
// sendRequest
// note how referer is set manually
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, "http://www.YOURWEBSITE.com");
$body = curl_exec($ch);
curl_close($ch);
// now, process the JSON string
$json = json_decode($body, true);
if ($json['responseStatus'] != 200){
return false;
}
$results = $json['responseData'];
$return_array = array();
foreach ($results as $result){
if ($result['responseStatus'] == 200){
$return_array[] = $result['responseData']['translatedText'];
} else {
$return_array[] = false;
}
}
//return translated text
return $return_array;
}
// translate multiple texts
print_r(translateText(array('hello world', 'italian'), 'en', 'it'));
?>
Monday, October 6, 2008
I am now Zend Certified Engineer :)
It is been long since i wrote blog last. I was busy dealing with company projects, and also do some preparation for zend PHP5 exam. I looked for testing center in our city, Ulaanbaatar/Mongolia, and luckily found active 1 pearson vue center in Science and Technology school. First try and pass :) The guys in the testing center were very happy that i was the first engineer passed Zend PHP5 Exam from Mongolia. Here i now going to share my experience with you, on how i prepared, what i read, where i went. etc...
- I worked for 7 years on web based project using different languages such as PHP/Java/.NET
- and them i managed web based project for last 2 years
- and then i visited Zend website to buy practice test package
- and i went to amazon to buy few books including PHP Objects, Patterns and Practice, High Performance MySQL (actually i didn't order them for Zend exam, but for daily use ;)
- and find nearest testing center and register for exam using Pearson vue website
- and finally take a good sleep before exam night, no practice test, not reading
- passed it. My certificate verification is here.
Thanks,
Bayar
Sunday, September 7, 2008
Google Chrome Usage Statistics
Internet Explorer - 55.08 %
Firefox -34.366 %
Safari -5.922 %
Google Chrome -2.183 %
Opera -0.966 %
Mobile -0.907 %
Mozilla -0.49 %
Console -0.071 %
Konqueror -0.014 %
iCab -0.001 %
Sunday, August 31, 2008
How to sort randomly with pagination on MySQL
Useful information that saved my whole day. The credit goes to Nyroblog
The problem is simple: we have to list randomly data from a MySQL table, by creating a paging.
Let's start with the basis: A normal paging. To do so, you use the LIMIT parameter in the MySQL query:
SELECT * FROM user LIMIT 20,10
Where we show the second page for the users with 10 elements by page.
You will probably order the result to be easier to use. For example:
SELECT * FROM user LIMIT 20,10 ORDER BY name ASC
At this point, everything was pretty easy and you probably already knew that.
Now we want to randomly order the result. Intuitively, you will do something like:
SELECT * FROM user LIMIT 20,10 ORDER BY RAND()
Which is not totally wrong. The problem with this solution will occur when changing the page, the order will be different -for sure, it's random. By changing the page you will probably see some recurrent data, and the visitor will never see all the result by reading all the pages. That's not expected.
The solution consists to generate a random number in PHP, stores it in a session variable, and finally use it in the MySQL query inside the RAND parenthesis. And it's finish. Therefore the random number used is every time the same for the visitor session, and the global order will stay the same in the differents pages.
The PHP code to generate and stored the random number:
$rand = $_SESSION['rand'];
if (empty($rand)) {
srand((float)microtime()*1000000);
$rand = "0.".rand();
$_SESSION['rand'] = $rand;
}
Of course, you have to open the session with session_start() at the top of your PHP script before every out or header send -or you can use ob_start().
Finally the MySQL query becomes:
SELECT * FROM user LIMIT 20,10 ORDER BY RAND($rand)
VoilĂ , you can make pagination with random order.
Sunday, August 24, 2008
Where do I live?
I have been celebrating 2 Gold, and 2 Silver Medals from the Olympics. It is been my honor to write about our first 2 Olympics Champions in the history. I am proud of being Mongolian citizen. We are the in the 31'th place of all 205 countries in Beijing Olympics. I'm so happy that we are far from the countries such as Belgium, Finland, Sweden, Greece, India, Indonesia, Portugal, Austria and many mores who have more populations, and more developed in terms of economies.
Thanks to the medalists for making me proud of it
See you at London 2012
Sunday, August 3, 2008
PSD Slicing Service Providers
Credit goes to Sentences Blog. Very useful resource.
As freelancers, we limit what we make according to how many projects we can take on. With that being said, sometimes the most time-consuming (and often dull) aspects of a project can be the xHTML/CSS or CMS Integration phase, where the design is done, there is hardly little to no client contact (until the site’s coded) and its extremely monotonous. One of the fastest growing markets are xHTML/CSS/CMS slicers and coders who do quality work with a fast turn-around time.
Below is a list that we compiled of all the service providers that we could find and share with you, along with their prices and some services offered. In our search, we found hundreds of different service providers, but from that list, we narrowed it down to a few quality looking sites with decent portfolios. This list is not in any order, and we do not support or endorse any of the companies listed.
psd2html
- Basic xHTML/CSS: $117
- Wordpress Integration: Yes, +$195
- Advanced Options: Yes
- Turnaround time: Very Fast (hours)
WeUseScissors
- Basic xHTML/CSS: $195
- Wordpress Integration: Yes, +$100
- Advanced Options: Some
- Turnaround time: Average (3 days)
- Basic xHTML/CSS: $249
- Wordpress Integration: Yes, $495
- Advanced Options: No
- Turnaround time: Slow (5 days)
- Basic xHTML/CSS: $129
- Wordpress Integration: Yes, $209
- Advanced Options: No
- Turnaround time: Fast (2 days)
- Basic xHTML/CSS: $250
- Wordpress Integration: No
- Advanced Options: No
- Turnaround time: Average (3 days)
- Basic xHTML/CSS: $200
- Wordpress Integration: No
- Advanced Options: No
- Turnaround time: Average (3 days)
- Basic xHTML/CSS: $129
- Wordpress Integration: Yes, $250
- Advanced Options: No
- Turnaround time: Very Fast (Hours)
- Basic xHTML/CSS: $119
- Wordpress Integration: Yes, $250
- Advanced Options: Yes
- Turnaround time: Very Fast (Hours)
- Basic xHTML/CSS: $129
- Wordpress Integration: Yes, $408
- Advanced Options: Yes
- Turnaround time: Slow (5 Days)
- Basic xHTML/CSS: $200
- Wordpress Integration: No
- Advanced Options: No
- Turnaround time: Average (3 Days)
- Basic xHTML/CSS: $119
- Wordpress Integration: Yes, $179
- Advanced Options: No
- Turnaround time: Average (3 Days)
- Basic xHTML/CSS: $279
- Wordpress Integration: No
- Advanced Options: No
- Turnaround time: Slow (6 Days)
- Basic xHTML/CSS: $135
- Wordpress Integration: Yes, +$150
- Advanced Options: Yes
- Turnaround time: Average (3 Days)
- Basic xHTML/CSS: $199
- Wordpress Integration: Yes, $399
- Advanced Options: No
- Turnaround time: Average (3 Days)
- Basic xHTML/CSS: $249
- Wordpress Integration: Yes, +$399
- Advanced Options: No
- Turnaround time: Very Slow (7 Days)
- Basic xHTML/CSS: $77
- Wordpress Integration: Yes, +$115
- Advanced Options: No
- Turnaround time: Very Fast (Hours)
- Basic xHTML/CSS: $110
- Wordpress Integration: No
- Advanced Options: No
- Turnaround time: Very Fast (Hours)
- Basic xHTML/CSS: $99
- Wordpress Integration: Yes, $199
- Advanced Options: No
- Turnaround time: Fast (2 Days)
- Basic xHTML/CSS: $45
- Wordpress Integration: No
- Advanced Options: No
- Turnaround time: Very Fast (Hours)
We’re looking to hear your responses. If you’ve had a chance to work with any of these companies, we’d like to hear your testimonial about them. We want to be able to mark those companies that do good work, and those that don’t. So please, share your experiences with us by leaving a comment.
Sunday, July 13, 2008
Regular Expressions for username, date, ip address, color, postal code, and phone
Here are eight examples of practical PHP regular expressions and techniques that I've used over the past few years using Perl Compatible Regular Expressions. This guide goes over the eight different validation techniques and describes briefly how they work. Usernames, telephone numbers, email addresses, and more. Here are eight examples of practical PHP regular expressions and techniques that I've used over the past few years using Perl Compatible Regular Expressions. This guide goes over the eight different validation techniques and describes briefly how they work. Usernames, telephone numbers, email addresses, and more.
Validating Usernames
Something often overlooked, but simple to do with a regular expression would be username validation. For example, we may want our usernames to be between 4 and 28 characters in length, alpha-numeric, and allow underscores.$string = "userNaME4234432_";
if (preg_match('/^[a-z\d_]{4,28}$/i', $string)) {
echo "example 1 successful.";
}
Validating Telephone Numbers
A much more interesting example would be matching telephone numbers (US/Canada.) We'll be expecting the number to be in the following form: (###)###-####$string = "(032)555-5555";
if (preg_match('/^(\(?[2-9]{1}[0-9]{2}\)?|[0-9]{3,3}[-. ]?)[ ][0-9]{3,3}[-. ]?[0-9]{4,4}$/', $string)) {
echo "example 2 successful.";
}
Thanks to Chris for pointing out that there are no US area codes below 200.
Again, whether the phone number is typed like (###) ###-####, or ###-###-#### it will validate successfully. There is also a little more leeway than specifically checking for enough numbers, because the groups of numbers can have or not have parenthesis, and be separated by a dash, period, or space.
Email Addresses
Another practical example would be an email address. This is fairly straightforward to do. There are three basic portions of an email address, the username, the @ symbol, and the domain name. The following example will check that the email address is in the valid form. We'll assume a more complicated form of email address, to make sure that it works well with even longer email addresses.$string = "first.last@domain.co.uk";
if (preg_match(
'/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',
$string)) {
echo "example 3 successful.";
}
Postal Codes
Validating Postal codes (Zip codes?,) is another practical example, but is a good example to show how ? works in regular expressions.
$string = "55324-4324";
if (preg_match('/^[0-9]{5,5}([- ]?[0-9]{4,4})?$/', $string)) {
echo "example 4 successful.";
}
What the ? does in this example is saying that the extra 4 digits at the end can either not exist, or exist- but only once. That way, whether or not they type them in, it will still validate correctly.
IP Addresses
Without pinging or making sure it's actually real, we can make sure that it's in the right form. We'll be expecting a normally formed IP address, such as 255.255.255.0.$string = "255.255.255.0";
if (preg_match(
'^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$',
$string)) {
echo "example 5 successful.";
}
Hexadecimal Colors
Moving right along with numbers, we could check for Hexadecimal color codes, in short hand or long hand format (#333, 333, #333333 or 333333) with an optional # symbol. This could be useful in a lot of different ways... maybe previewing CSS files? Grabbing colors off pages? The options are endless.$string = "#666666";
if (preg_match('/^#(?:(?:[a-f\d]{3}){1,2})$/i', $string)) {
echo "example 6 successful.";
}
Multi-line Comments
- A simple way to find or remove PHP/CSS/Other languages multi-line comments could be useful as well.$string = "/* commmmment */";
if (preg_match('/^[(/*)+.+(*/)]$/', $string)) {
echo "example 7 successful.";
}
Dates
- And my last simple, yet practical example would be dates, in my favorite MM/DD/YYYY format.$string = "10/15/2007";
if (preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $string)) {
echo "example 8 successful.";
}
The source is here.
Tuesday, July 8, 2008
firefox 3.0 crashes
Planning to move back to FF 2.0
Sunday, July 6, 2008
Outsource your Symfony and Zend framework applications
On the other side, the are buyers who wish to have their software codes in a cheapest and shortest way, while the others are looking for someone who can implement their ideas in quite cheap but qualified way. We'd rather to work with the companies who are looking for qualified team, but the quite reasonable price. Our aim is not to become the cheaper than others, but more qualified.
If you are looking for a responsive and responsible team to implement your ideas into real life, we are available for hire. You can outsource your Symfony and Zend Framework projects to us.
Thanks,
Bayar
Wednesday, April 30, 2008
Useful articles and links 5
- Free Admin Template For Web Applications
It is a 3 column design with a tabbed menu. The idea is having the standard categories in the tab menu for an easy reach and have all the detailed ones in the left menu. And there is an info box at the right to inform users what’s going on at that page. You can customize it however you want to fit your project. It has a listing and a new entry sample which covers %99 of an admin screen. - Lightweight JavaScript Accordion with CSS
The JavaScript accordion above is 1.65 kilobytes when packed. If you have a small project that could use an accordion and don’t want to include an entire JavaScript framework to do the job then give this script a try. - 5 PHP 5 features you can't afford to ignore
There are dozens of reasons to switch to PHP 5—not least the fact that, if you're still stuck on PHP 4, the PHP team is about to pull the rug from under your feet. Despite the fact that you may not have a choice in the matter, upgrading comes with a number of bonus new features that can help you write better code and gain access to new functionality that required a fair amount of hacking in previous version. Here's a quick list of 5 personal favourites - 30+ Unusually Awesome Freshly Created Designs
Today we got you some incredibly awesome website designs that is freshly created with unique ideas, graphics and layouts.
Monday, April 28, 2008
Useful articles and links 4
- Build custom templates for your data-driven Web sites
Most developers dread dealing with HTML tables and cells to build their Web sites. For one thing, tables make it difficult to modify the site later or to change its appearance. Discover some basic techniques for writing Web sites that you can later re-skin by using templates during the site's initial creation. Also, learn why you should use data-driven techniques for your own Web sites. - 30 Exceptional CSS Techniques and Examples
In this article, I’ve pieced together 30 excellent CSS techniques and examples that showcases the capabilities and robustness of CSS. You’ll see a variety of techniques such as image galleries, drop shadows, scalable buttons, menus, and more - all using only CSS and HTML. - Interview with Donald Knuth
Andrew Binstock and Donald Knuth converse on the success of open source, the problem with multicore architecture, the disappointing lack of interest in literate programming, the menace of reusable code, and that urban legend about winning a programming contest with a single compilation. - So long TextMate?... Hello NetBeans? Really? Yeah, really.
I'll admit it, I'm one of many folks that used to treat NetBeans as a whipping boy. Questioning why Sun would bother dumping money into the horse that so obviously lost the race to Eclipse and IntelliJ to win the hearts and minds of Java developers around the world. - Build a customizable RSS feed aggregator in PHP
You'll appreciate this article's fully functional PHP code snippets, demonstrating the use of PHP-based server-side functions to develop a customizable RSS feed aggregator. In addition, you'll reap instant benefits from using the fully functional RSS feed aggregator code, which you can download from this article. - Here’s the list of some websites that are offering website screenshots services which you can use if you are planing to start a web gallery for example.
- jThumb dynamically wraps images and/or link images with a div. You can add them an specific size (width and height) inside the css file. And optionally it can automatically center the image inside the frame.
- You may have seen recent reports that have surfaced stating that web sites running on Microsoft’s Internet Information Services (IIS) 6.0 have been compromised. These reports allude to a possible vulnerability in IIS or issues related to Security Advisory 951306 which was released last week.
- It’s time to upgrade your Rails 2.0 application with user authentication, and we hear that RESTful Authentication is the way to go, but all the instructions out there (even on the plugin repository sites) are out of date or don’t completely work or only work on Rails 1.2.x. In this tutorial, however, we’ll go step-by-step to install a complete RESTful authentication suite with all the trimmings your advanced Rails 2.0 application requires. Best of all, we’ll maintain complete control of our user administration code instead of relying on 3rd party and/or outdated software.
Monday, April 21, 2008
IT Outsourcing Job Trends
Here you go; http://www.odesk.com/trends
Tuesday, April 15, 2008
7 days tutorial of Symfony 1.1
- 7 Days of Symfony 1.1 – Forms, Widgets and Validators (Day1)
- 7 Days of Symfony 1.1 – Forms, Widgets and Validators (Day2)
- 7 Days of Symfony 1.1 – Forms, Widgets and Validators (Day3)
- 7 Days of Symfony 1.1 - Forms, Widgets and Validators (Day4)
- 7 Days of Symfony 1.1 - Forms, Widgets and Validators (Day5)
- 7 Days of Symfony 1.1 - Forms, Widgets and Validators (Day6)
- 7 Days of Symfony 1.1 - Forms, Widgets and Validators (Day7)
Sunday, April 13, 2008
Useful articles and links 3
- Google Code University
This website provides tutorials and sample course content so CS students and educators can learn more about current computing technologies and paradigms. In particular, this content is Creative Commons licensed which makes it easy for CS educators to use in their own classes. The Courses section contains tutorials, lecture slides, and problem sets for a variety of topic areas: - AJAX Programming
- Distributed Systems
- Web Security
- Languages
- 10 JavaScript Effects to Boost Your Website’s Fanciness Factor
Here’s a collection of 10 powerful – yet easy-to-implement — JavaScript effects to supplement your web page’s interface. These were picked using a “bang for your buck” methodology; meaning that these effects were chosen specifically because they provide high-impact effects with very little effort in installing and using them. - 10 things IT needs to know about Ajax
The introduction of any new Web technology will affect a network's infrastructure in ways that range from inconsequential to earth shattering. Ajax is one of the more disruptive new Web technologies traveling across networks today. To help you minimize future surprises on your network, we've outlined the 10 things you should take to heart about Ajax. - Calling WebServices via AJAX
how do you call web services from JavaScript? At least, that's what they asked me, but not really what they meant (I'll explain what their real question was in a subsequent post).
Friday, April 11, 2008
4 places for developers to make money
- oDesk
Most qualified providers and most qualified suppliers, developers. Rate are either hourly or fixed. Competition is much more than other places.
oDesk is a global service marketplace for small and medium sized business to hire, manage, and pay remote freelancers or teams. - Rentacoder
Not always software jobs. sometimes translation, edition etc... Buyers are not so qualified. They try to find someone to do their job under $1. They have even 5$ bid there :)
Rent a coder is an international marketplace where people who need custom software developed can find coders in a safe and business-friendly environment. - Scriptlance
Again cheap place.
Outsource your projects to freelance programmers and designers at cheap prices. Freelancers will compete for your business. Get programming done - GetaFreelancer
Freelance programmers and web designers. Get custom web design. Freelancers bid on outsourced projects. Outsourcing to India, Romania, Ukraine and many .. - Elance (updated on 17/04/08)
Outsourcing to Freelance programmers, copywriters, graphic designers and consultants who submit competitive bids for your projects.
Symfony vs Zend framework vs Cakephp vs Others
Why you should use Symfony?
- Ajax and Javascript
- Instant admin interface: Advanced crud generation for admin interface
- Nice Urls: The Routing System
- Form Handling: Fillin, Validation and Creation
- Debugging on Steroids
- Internationalization and Localization (i18n & L10n)
- Caching
- Development environments
- Do not repeat yourself!
- Bridges to other frameworks
http://www.mellowmorning.com/2007/08/18/ten-reasons-why-symfony-rocks-part-1/
http://www.mellowmorning.com/2007/09/08/ten-reasons-why-symfony-rocks-part-2/
Wednesday, April 2, 2008
SSH, SVN, Putty, Tortoise, and Zend Studio using svn+ssh://
-
HowTo: Configure SVN+SSH with Subclipse on Windows
Use ssh tunnelling to access a Subversion repository using SSH tunneling (i.e. with a subversion repository url of svn+ssh://myservername/myrepo) using the Subclipse subversion integration with Eclipse. I tried various things and used each of the three interfaces for configuring Subclipse (Window, Preferences..., Team, SVN). - How to setup svn+ssh
This Guide will explain in easy steps how to setup your Linux server
working for Subversion repository access through SSH client access.The svn+ssh:// protocol enables you to use SSH client access is throught
This guide assumes that you know how to setup SSH with public/private
the password prompt or using public private keys validation.
No Public/private key generation is necessary to use the simplified
svn+ssh protocol, but it might be a good idea, so that you can avoid
password prompts all the time when using the SVN client access.
keys on the server and on your client, and that you already have
installed Subversion on your Linux box. - Secure SVN repository using svn+ssh
This article assumes you have shell access on a remote server, where you intend to host your repository, and svn successfully installed. If you’ve got that, let’s right jump in! - Zend.com Forums: Zend Studio => HOW-TO: Using SVN+SSH in ZS 5.5 - More ssh, ssh-keygen, installing keys on client via Putty and Pageant, and using the ssh tunnel with Zend Studio. (This seems to be missing one step for Zend to work though which is included next)
- SVN - SSH connection produces errors - This post from the Zend knowledgebase adds the mysterious SVN_SSH environment variable that magically makes this work for Zend. NOTE - while they show this using the path to TortoisePlink.exe, you may also use Putty’s Plink.
Tuesday, April 1, 2008
Useful articles and links 2
Most PHP developers have heard of the CURL extension for PHP or even used it. However it is mostly used in a basic form: to retrieve content from other websites or (RESTful) webservices. Ofcourse PHP itself offers several functions (like fopen or fsockopen) for getting this content, but they are all very basic. It is easy to run into limitations, for example you might want to define the request method or set another user agent (if you're building a webspider). This is where the curl extension kicks in. It is a separate library that has to be compiled with PHP in order to use it. The Curl extension has many functions and options which offer the developer more flexibility than the standard PHP functions.
Top 10 tips to get better PHP jobs - PHP Classes blog
1. Qualify yourself to stand out from the crowd
2. Stay upto date with the latest trends
3. Get more exposure to yourself in the PHP community
4. Advertise yourself conveniently
5. Do well on job interviews
6. Get ready to adapt to a new company culture
7. Evolve in your career making your employer profit more
8. Preserve your job
9. Get ready to move on to a better job
10. Other people tips
Scaling Out MySQL
With the recent acquisition of MySQL by Sun, there has been talk about the MySQL open source database now becoming relevant to large enterprises, presumably because it now benefits from Sun's global support, professional services and engineering organizations. In a blog post about the acquisition, SUN CEO Jonathan Schwartz wrote that this is one of his objectives.
33 Most Beautiful Javascript and Flash Galleries
This is Vivalogo's list of the most beautiful free Javascript and Flash gallery software.
Programming is all about passion.
Yes, you can be a programmer and get your job done without actually loving your job. You can clock in 9 am and clock out 5 pm and collect your salary at the end of the month, day in and day out but you don't enjoy the job at all. You can even climb up the management ladder and collect a far fatter paycheck after you grow tired of the technical things. Oh no, moving up the management ladder is the way to go (besides switching track, of course) if you don't love programming.
The 6 Most Important CSS Techniques You Need To Know
I thought I would give a quick tutorial, with examples, of the 6 most important CSS techniques that I think you need to know:
1. Get a Consistent Base Font Size
2. Get Consistent Margins
3. Set a Float to Clear a Float
4. Image Replacement
5. Faux Columns
6. CSS Sprites
Learning jQuery: A Roundup Roundup
I’ve been really getting into this jQuery phenomenon lately. jQuery is tightly tied to CSS, so if you are already comfortable with CSS and are looking for ways to expand your possibilities, jQuery is the place to be. You can achieve so many cool effects with it, and there are so many good learning resources out there for it I think it makes sense for serious web designers to start getting their hands dirty with this.
Monday, March 24, 2008
Useful articles and links
- YUI 2.5.1 Released: Improved AIR support, JSON security patch, YUI Configurator, and bug fixes
The YUI team released version 2.5.1 today and it’s available for download from SourceForge. This is a general patch release with 67 issues addressed throughout the library. 2.5.1 improves support for developers running YUI in Adobe’s AIR environment and addresses an important security issue raised over the weekend regarding JSON parsing in FireFox. - CSS Message Box collection
Message boxes are useful elements to display status messages after or during a specific user request. Some days ago I wrote this post about how to implement a nice Ajax chains of effects (fade in, delay, fade out) for a common message box using mootools. - Top Open Source PHP Frameworks
After RoR there are lot many frameworks in PHP which are either inspired by it or based on MVC pattern. Today I am throwing some light on some of it, which I came across (I mean heard) during my development experience in PHP. Here I am talking about next generation Open Source PHP frameworks which I came across. - Rails for PHP Developers
This function reference covers commonly used PHP libraries to their closest Ruby equivalents. The reference is structured very closely against the PHP reference library. - To use Open Source or not
We all know about open source software. The seemingly endless libraries of code and applications ready to use and implement into a business environment. Now colleague Myles Eftos has been discussing the use of open source applications and there implementations of late. This debate is an old as the hills, but still from time to time it’s good to pull it out of the draw, dust it off and start the discussion off again. - 10 tools for Modern PHP Development
A simple list of tools for modern PHP development. There are alternatives to most of the tools, but I’ll list native PHP tools wherever possible.
Monday, February 25, 2008
Zend vs Symfony framework
Instead i visited Symfony website, and found there everything needed to go forward. There is a great online free book of Symfony, explaining everything in detail and tutorial directory, trac, wiki, and plugins repository. I warmed up very fast and changed my mind. Now i am far from that days, and very happy with Symfony Framework. And i know that i can integrate Zend framework components into my Symfony application when it is needed.
Symfony is a real MVC framework that makes web application development easier and faster, while Zend framework is not a framework, just container for useful components or libraries. Zend framework doesn't have command line tools, crud generator, plugins etc... which means you have to stilllll repeat your codes, and spend time on useless boring tasks like CRUD.