For valuable work on creation of sites you need a good comfortable editor necessarily. There are many requiring paid products for this purpose, but we would like to select free of charge very functional and at the same time of simple in the use editor – Codelobster PHP Edition .
Let us consider some important possibilities and advantages of this program:
- HTML/CSS inspector on the type of Firebug, which allows easily to correlate the selected elements of page with a code and proper style.
- Context help on all supported languages. By pressing F1 key the page with detailed description for current tag, attribute or function will be opened.
- PHP debugger. PHP debugger allows to execute PHP scripts incrementally, watching the values of all variables in every line.
- SQL manager allows to produce all necessary actions with a database – to add, delete, edit a structure and records in tables, to export data, execute SQL queries. Highlighting and autocompletion works for SQL files also.
- Support of FTP allows to work straight with a remote server and to do all necessary changes with files;
- The portable option allows to use editor without the preliminary installation.
- Other useful utilities: pair highlighting, possibility of blocks selection, collapsing, tooltips, navigation on descriptions of functions and included files at withholding of the key of CTRL, viewing of structure of files and project, preview in a browser, book-marks, and all other standard possibilities for work with a code
Also there are special plugins for work with
- CMS: Drupal, Joomla
- PHP frameworks: CakePHP, CodeIgniter, Symfony, Yii
- WordPress blogging engine
- Smarty template engine
Developer: Codelobster Software
Language: English, Russian, German, Spanish, French, Portuguese
Supported: OS Windows 2000, Windows XP, Windows Vista, Windows 7
Asia’s largest conference on open source, to be held from 19th-21st September, 2010 at Chennai, India (more: http://osidays.com).
OSI Days 2010 is the 7th and latest conference in the rich legacy established by the Linux Asia series of conference in India. Organised by the Forum for Open Source Initiatives in India (FOSII) and the Linux for You magazine (part of the EFY Group), OSI Days serves as the focal point for the convergence of the Open Source Community and Industry in Asia.
The conference is targeted at the Policy & Decision makers in a technological ecosystem – Government, Academicians, CXOs, SMEs, Developers and hardcore hackers. OSI Days 2010 will bring together over 3000 of the finest people in the open source domain together to discuss and confer on varied and relevant topics including:
- Mobile: App Development, Game Development, Android, iPhone, Symbian & Others
- IT Managers / Business: Legal, Community Management, Best Practices, Marketing Strategies, Open Web / Standardization, Business Models
- Cloud Computing: Tools and Platforms, Cloudnomics, Cloud for Dummies & Others
- Government: Applications, eGovernance , Case Study, Legal
- Hardware: Infrastructure Management, Security, Semi Embedded Devices, Parallelization, Grid, Multi Core, Multi Threading, Virtualization & Others
- PHP: PHP 5 & 6, PHP Security, Frameworks, Architecture / QA & Best Practices
- Ruby on Rails
- Drupal: Best Practices, Module Development, Theme Development, Scaling/ Management/ Performance & Others
- Databases: MySQL, NoSQL, CouchDB, PostgreSQL, Ingres, SQLite & Others
- Java Script
- Developer / Tools & Techniques
(For details: please See the conference schedule at: http://osidays.com/schedule)
The Call for Papers are open for the conference till June 15th (more: http://osidays.com/call-for-papers). We invite you to come join us in promoting open source technologies and projects by participating at the confernce as speakers and contributing to the knowledge and wisdom at OSI Days 2010.
For any clarifications,
OSI Days 2010
Schedule at a Glance
Often times developers only think about tracking the bugs in the code for their “real jobs” and don’t worry about issues that might pop up in their personal projects. Brandon Savage suggests that they should both be important and that not tracking bugs on your personal projects can be a bad thing for the quality of your code.
Too often, it seems like these development practices are abandoned, especially with regards to the use of a bug tracker. I know I have personally been guilty of failing to use a bug tracker, even though I use things like Subversion and develop specifications. It’s easy to forget, but important to remember.
He lists five reasons why you should use a bug tracker for your personal development:
- Our minds are imperfect repositories of information.
- Bad development practices can form.
- It makes it harder to force ourselves to use bug trackers for private paying clients.
- Predicting time to completion becomes more difficult.
- Seeing progress being made is that much more difficult.
On the Proof Group’s blog there’s a recent post about a “gotcha” Andy Chase found when using the Drush command line tool for Drupal installations and a system that has MAMP installed.
Recently, however, I installed MAMP to debug some older, PHP4-specific code. […] I also use Drush, which is an indispensable Drupal command line tool, and I began getting the following error on some sites: Drush command could not be completed.
This only caused a problem when he went back to his previous PHP5-based installation. He finally found the culprit – a section of the Drush script that looked for MAMP installs and tried to use those binaries and configuration files (the PHP4 ones) instead of his more correct PHP5 ones. A quick commenting later everything worked fine.
On the ServerGrove blog there’s a recent post about the speed boost that you can get using APC caching (with an example of a symfony application’s perfomance).
I’ve been developing a website based on symfony. Since symfony 1.3 and 1.4 came out this week, I decided to upgrade it to 1.3 and then when I feel confortable to 1.4. […] Then, I decided to run some benchmarks using ab (Apache Benchmark) to see how symfony 1.2 and 1.3 compared. To my surprise, I did not see an improvement on speed. I was expecting the new version would be faster, but for some reason I am not seeing any improvements.
When his testing showed no noticeable results, he turned on view caching in the framework. This helped a good bit but the real boost came when he implemented APC caching. His requests per second jumped from fourteen up to seventy, a five-fold improvement.
On NETTUTS.com today Burak Guzel has written up some good tips on how to make your code much more readable (and easier to maintain in the future. Not all of them are directly PHP related, but they are general enough to be applied in other places in your development.
Code readability is a universal subject in the world of computer programming. It’s one of the first things we learn as developers. Readable and maintainable code is something to be proud of in a finished product. We can share it with others, contribute to other projects, and reuse code from applications we wrote months or even years ago.
Tips included in the list cover topics like:
- comments & documentation
- code grouping
- avoiding deep nesting
- using consistent temporary names
- using object-oriented code versus procedural
- effective refactoring
The IBuildings techportal has release the latest episode of their podcast series from this year’s Dutch PHP Conference. This time it’s a talk Jonathan Lawrence gave on IBM WebSphere sMash.
In today’s dynamic Web environment, developers want to build Web applications quickly, re-use and combine them simply, and adopt an agile approach to development. IBM’s WebSphere sMash (aka Project Zero) is a complete platform for developing, assembling and executing agile Web 2.0 applications. In this talk I’ll demonstrate how PHP developers can use WebSphere sMash, with its focus on speed, simplicity and agility, to develop and deploy leading edge Web 2.0 applications.
You can listen in two ways – either via the in-page player or by downloading the mp3 directly.
If you already have a set of unit tests (PHPUnit) and are thinking of implementing a build tool like Phing, you might want to check out this new post from Giorgio Sironi about combining the two with a simple addition to your build configuration.
Integrating these two tools means giving Phing access to a PHPUnit test suite and letting the Phing build files, which manage configuration, contain also information on how to run the test suite. In the build.xml file of an application you should find different targets like generate-documentation, test-all, compile-all (if php were a compiled language), and so on.
He mentions the two ways you can run your unit tests – one being more native (a phpunit task) and the other a bit more “blind” (exec task). He looks at the first, allowing tighter integration with Phing and can actually break the build if something fails. He includes the XML for both to include in the build file and a brief explanation of what they’re doing behind the scenes.
Padraic Brady has a quick post in response to some questions he saw about installing PHP on a Ubuntu system (9.10/Karmic Koala) via apt-get.
As there was some exclaimation marks on Twitter about this, here’s a quick article on installing PHP 5.3.1 on Ubuntu 9.10 using aptitude or apt-get. I use aptitude primarily, but the installation uses normal .deb files. Since Ubuntu will not officially adopt PHP 5.3 until next April, the PHP 5.3 debs I use are pulled from the Dotdeb Debian “Lenny” repositories. These are perfectly compatible with Ubtuntu 9.10 and only require the manual installation of two extra dependencies which Ubuntu cannot resolve itself.
You’ll need to add in some new sources to your list, but after that it’s a pretty simple process to pull in the PHP 5.3 packages, add in a few extra libraries and then run the update for apt-get to install it all.
In a new post to his blog Abhinav Singh shows you how to create a simple application that uses the memcached atomic increment command to help prevent concurrency issues.
Memcached provide atomic increment and decrement commands to manipulate integer (key,value) pairs. However special care should be taken to ensure application performance and possible race conditions while using memcached. In this blog post, I will first build a facebook style “like” application using atomic increment command of memcached. Also, I will discuss various technical difficulty one would face while ensuring atomicity in this application. Finally, I will demo how to ensure atomicity over a requested process using custom locks in memcached.
Example code is included to show how you can take a normal “store to memcached” example and modify it with the increment method to resolve issues that might come up from one or more scripts trying to get at the same values. He also includes an example of using locking to provide a similar effect.