Few words before we start

Welcome to Pro Developer! I am going to share all my knowledge and experience with you. Also if you have something you want to share with the world, we can publish it here.

You will learn from me and i will learn from you. I am sure that together we can create beautiful development web site with essential resources.

We are going to talk about PHP, AJAX, JavaScript, C#, .NET, Database modeling, Designing and Developing Applications, useful project management tools and who knows what. We will talk about OOP and Programming generally.

I developed a lot of WordPress plugins, so we can talk about WordPress development and customization. WP is powerful CMS, as you can see I am using it to run this web site. I don’t want to talk about me i want to talk about development.

This was enough for start – take care developers!

Create your own rewrite rules in WordPress

When you write your own WordPress plugin you might need to add new rewrite rules to WordPress. Some people add Rewrite rules direct into htaccess file, but when you open it you can see that WP don’t store rules into this file. All WordPress rewrite rules are stored into the database.

Default WordPress htaccess file


RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

For manipulation with rewrite you can use WP_Rewrite class. It’s functions all listed at the WP Codes, but i will show you how to use most important ones.

rewrite_rules() function

function getRewriteRules() {
    global $wp_rewrite; // Global WP_Rewrite class object
    return=$wp_rewrite->rewrite_rules(); 
}

This function “getRewriteRules”, will return array with listed rewrite rules. Array will be something like …

Array
(
    // ....
    [author/([^/]+)/feed/(feed|rdf|rss|rss2|atom)/?$] => index.php?author_name=$1&feed=$2
    [author/([^/]+)/(feed|rdf|rss|rss2|atom)/?$] => index.php?author_name=$1&feed=$2
    [author/([^/]+)/page/?([0-9]{1,})/?$] => index.php?author_name=$1&paged=$2
    [author/([^/]+)/?$] => index.php?author_name=$1
    // ...
)

Continue reading

Let’s kill the bugs

If your development team have more then one person, you will need some collaboration tool to improve team coherence. I love this kind of tools, they help me to improve progress, work and cooperation in team. There is a lot of great products, but this time i want to focus only at the bugs tracking. The 16bugs is nice web tool for tracking bugs on your projects.

After registration, you can create you company account, and include your team into this company, by inviting people to register on 16bugs. You can create projects, and give permissions to people to view or submit bugs.

Every bug can be assigned to some team member, with status and priority. Status can be: “Verified”, “Solving”, “Testing”, “Testing Passed”, “Duplicate”, “Solved” or “Discarded”. You can sort bugs by category or software version. Continue reading

J Post Slider wordpress plugin – jQuery post animation show

Boban Karišik developed nice jQuery slide show images script. This jQuery slide show, rotate images, and showing out transparent div with image description.

I used this jQuery Script, to develop WordPress plugin which can be customized in admin area. This plugin will rotate latest posts from blog, presented with selected image, post headline, and optional post excerpt. One post can have one J Post Slider, image for this animation.

You can set up:

  1. How many latest post to rotate
  2. Post offset, if you don’t want to show latest post in J Post Slider Box
  3. Images Width and Height for animation box. NOTE: every image you pick for J Post Slider plugin need to have same sizes, to make this animation look smootly
  4. Animation speed
  5. To show or not post excerpt
  6. Headline and excerpt can show up from top, left, bottom or right. Plugin can show up text area top and bottom, or left and right reciprocally or it can show area randomly
  7. Text area opacity
  8. Select categories from which this plugin can rotate post.

J Post Slider WordPress Plugin

J Post Slider WordPress Plugin at the admin post page


Continue reading

Maybe better WYSIWYG editor – WysiHat from 37signals

I tried few Rich Text Editors like FCKeditor or TinyMCE, they helped but they have some anomalies, they add extra html code and sometimes you just want more quality.

The 37signals announced new open source JavaScript rich text editor based on WYSIWYG JavaScript framework called WysiHat. This is very early developer release, and it provides extensible foundation to design your own design for text editor. Witth few lines of code, we can run the WysiHat editor. The 37signas let us the customize it by our need, so this is for developers who want to develop own rich editor, and WysiHat can be groundwork. Continue reading

Pro Developer tested NetBEans 6.5 Beta

NetBeans 6.5 Beta

NetBeans 6.5 Beta

Today I installed NetBeans 6.5 Beta, after many years using Zend IDE for PHP development. I download NetBeand with PHP pack only. NetBeans 6.5 start up was much faster than Zend, and working with NetBeans was very smootly. Both IDE’s running under Java platform, but Zend is lazy in comparation with NetBeans IDE.

NetBeans is open source, free and you can download NetBeans pack you need. If you developing only php then you don’t need Java or Ruby pack. But if sometimes you want to extend NetBeans, you don’t need to download new package, just extend it with plugins. I might extend my NetBeans with UML pack, because i want to create UML diagrams when analyzing projects.

What i liked the most?
NetBeans have support for Version Control and developer collaboration. You don’t want that your team member overlap someone else codes, do you? You can choose between CVS, Subversion, or Mercurial subversion control systems, i using CVS. You can connect on CVS with pserver, ext, local and fork authentication protocols.

Line based diff viewer wil show you new, changed and removed code lines. You can compare two files, file from repository and your local file side by side.

You can see local history, and roll back into older file version any time if needed. All changes are saved into file history while you developing. Continue reading

Revision control systems for development teams

To improve productivity in your team i suggest you to use… no i begging you to use revision control software. Software tools for revision control are something every developer team need to use.

Why do you need to use this kind of tools ?

  • To track code changes for every team member
  • To track code changes trough every revision
  • Look differences in code since last revision
  • To avoid code overlapping when two coders work on same file
  • When they work on same file, just merge changes
  • To roll back all code in any revision if needed
  • To share code changes with your team members
  • When upload on server this tools send only changed files
  • this tools creates project developing history

Revision Control System

Revision Control System

The revision control software can be assorted in two categories: client-server and distributed.

In client – server model, server holds latest software version, and it’s history. Client connect to server and read latest changes. Whole team work on this copy, and later send changes to server. Well known are : Concurrent Versions System (CVS) and Subversion (also known as svn), both are in open source. Continue reading

Great place to store your code

My last article was about revision control systems, but we didn’t talk about hosting for central repository. If developers team is located in the office, then you will put the repository at the LAN, but when your team have need to work over Internet, and your developers are dislocated, then you need host repository at the web, so team members can access it, and pull changes from it or create copied repository wherever they are.

What kind of hosting do you need ? You need hosting with revision control systems support. If you using Mercurial, then you need host with Mercurial installed on it, if you using Subversion you need hosting with it.

Assembla

Assembla

I will never promote some product or service, unless i think this is very useful for my readers. I was looking for hosting with revision control systems on it, to host my project on it, and i find out a great one. It is Assembla, place where you can store and track your code changes, and collaborate with you team. You can create as many workspaces / projects at the Assmebla as you need. If you want to make your workspace private / commercial, you will need to pay for workspace, but if your project is open sourced then it is free, but you need to know that your files will be available at the web. Continue reading

Dev questions community – Stack Overflow

Developers always looking for new technologies, faster, better and cleverness code. We constantly need some answers, it doesn’t matter how much experience we have, because developers want more and more knowledge.

StackOverflow

StackOverflow

Stack Overflow is web location with dev questions and answers. It doesn’t sound special, right? No – Wrong!

I think that Stack Overflow is full with quick solutions and helpful answers, and if you need answer dev community will help you.

Stack Overflow member rate questions, and answers, that means quality will go on the top, questions are sorted by hotness, just like at the DIGG or similar services. This is web 2.0 website and it is very collaboratively. Users have own reputation, community scores them and they are very motivated to help. Continue reading