Every now and then, you run into a situation where you have a large amount of code executing to create a complex page. This can lead to response times for web page requests that are not adequate for your client. Everyone should know by now that some basic coding standards and some simple caching can go a long way to prevent slow page load times. Sometimes, however, those simple steps are just not enough. Be sure that pages only load the code they require to display information. Also, be sure that you have set up some caching on your website (this also helps with heavy traffic loads). Another thing to remember: to find out where any bottlenecks might be hiding, it is important to run some benchmarks on your code. Sometimes a simple database call that might be executed multiple times on a page can be running very inefficiently and drastically affecting all of your load times.
One tool that can be useful is XDebug (which we previously talked about here). One thing not covered in our previous blog article is the ability to perform benchmark analysis on data captured with XDebug. Using a tool called WinCacheGrind, you can analyze the cachegrind profile file output by XDebug. This will allow you to target and eliminate or reduce functions that negatively impact your website’s performance. If you are hosting your site with Apache, another notable option is to set up Alternative PHP Cache (APC). You will need to verify all your website’s functionality is working properly with APC enabled. Our experience is that APC provides a great reduction in load times when configured properly.
Last but not least, be sure to think about performance when writing your code. There is a great article with 40 optimization tips over at reinholdweber.com. Click here to check out the optimization tips and feel free to comment with any other performance tools or tips you or your company have found useful.
With major concerns in the Information Technology industry around Digital Rights Management (DRM), the Canadian version of the Digital Millennium Copyright Act (DMCA) named “Bill C-61″ and other hot topic issues you need to know where your politician stands on these critical topics that could affect every man woman and child in Canada. Where does each party stand on open source software, DRM, Copyright Reform, Net Neutrality?
What are the current government’s views on these topics? Well, we can make assumptions based on the copyright bill “Bill C-61″ but unfortunately at this point we don’t have any promises or statements from the Conservative Party of Canada on any of these topics. We were shocked that most parties didn’t include any of these critical issues in their platforms. South of the border, in the current presidential election, each candidate has specifically noted their stance on many technology issues facing their IT industry.
After reviewing the New Democratic Party’s platform we found that none of these important topics are mentioned, however at the very least they’ve expressed their views on copyright reform in several news releases. Specifically we were able to find out that the Green Party of Canada and some NDP MP’s are in support of a copyright reform proposal by Michael Geist. Obviously these vital topics not registering on parties platform’s is far from ideal so we were again surprised to see that the Liberal Party of Canada had nothing on all of these topics along with the BLOC Québécois.
The only party that has addressed these issues in their official party platform is the Green Party of Canada. You can read more about their views here and here. We must applaud the Green Party for taking a stance on these important issues. The Green Party has come out in support for open source software development, and open discussions on a variety of topics including internet privacy, copyright and DRM issues. This is a step in the right direction but rather disappointing that no other parties are providing their views and stances on these important issues.
We need to demand more as professionals in the IT field and help our politicians make informed decisions on these critical issues by providing information, support and feedback.
Let’s work together and demand that all parties in Canada provide their stance on technology challenges moving forward within Canada and internationally.
Don’t forget to exercise your rights and Vote!
For more information on these topics we recommend Michael Giest’s blog. We would also recommend contacting your member of parliament and all political parties to bring these important issues to their attention. Click here to find your member of parliament.