PHP

InfinityTracker entering BETA

Posted in Main, PHP on June 25th, 2011 by Mike – Be the first to comment

As I mentioned in February, I was looking for a Basecamp alternative. I looked into several options and spent a LOT of time trying to find something that was simple and pleasant to use, but it had to be self-hosted and written in PHP so I could extend it or fix bugs (and contribute if they wanted) myself without having to wait on new releases if something was urgent.

I really enjoyed using Retrospectiva while working on the "BIG NAME" contract (they haven't launched yet, so I can't say who it was just yet)… but it's based on Ruby. So that was out, but I *really* liked it. It was simple, clean and crisp. The user interface was unobtrusive… it gave me exactly what I needed, and stayed the hell out of my way. Productivity was great!

I've also explored (and continue to use) ActiveCollab with one of my clients who has used it for quite some time and seems to be satisfied with it. It is nice software, but it's MORE than what I wanted. In other words, it gets in the way for me.

Ideally, what I want is something that gets back to the basics, but does so in a very clean, unobtrusive manner, and does its job extremely well… just like Retrospectiva.

So I set out to develop my own solution:

InfinityTracker Demo Screenshot

If you've used Retrospectiva, you will probably see some similarity there. It doesn't have ALL of the features of Retrospectiva (or any other issue tracker)… but it includes what I feel are the most important features from all issue trackers that I've used in the past.

It gets back to the basics, keeps it simple, lets you do your job and stays the hell out of your way.

Admins can create projects, create users, deactivate/suspend users, give users permission to access specific projects, etc. While users can access projects, create tickets, add comments, edit their profile, etc.

When creating a ticket, you can also upload an attachment, which is super useful when you need to upload a screenshot, word document, PDF, etc that people assigned to the ticket should have access to easily.

Each comment allows you to upload a new file as well, which has already come in extremely handy.

I should also mention that there is an email notification system in place as well. New ticket created? Email is sent to person creating ticket, and person assigned to ticket.

Comment added? Everybody subscribed to notifications to the ticket gets an email notification!

InfinityTracker is currently in BETA and is not open to the public yet. If you're interested in using InfinityTracker as a self-hosted solution for your own team, please contact me for details or leave a comment on this post. I am currently using it with several of my clients to work out any bugs that may show up.

And I can't conclude the post without giving credit to EllisLab and the fantastic CodeIgniter community, as InfinityTracker was built with CodeIgniter 2.0.2. Total development time, including initial design on paper, database design, web design, programming, debugging, etc… 5 days. That is the power of CodeIgniter and the M-V-C design pattern.

Thanks for reading, folks!

Why use PHP?

Posted in PHP on January 24th, 2011 by Mike – Be the first to comment

When considering the server-side language you want to use for your next web project, you have a few choices to select from. My personal favorite, tried and true, is PHP. Why? Very simple… it just WORKS. Not only that, but the user-base is phenomenal. Security patches are released quickly. Support is widely available (and it should be, considering it's the most popular server-side web development language currently).

Whether I'm building something more complex that requires me to design an elaborate object oriented solution, or a quick script to generate a one-time report based on data in a MySQL database, PHP makes the job easy without sacrificing performance or stability.

If you're a new web developer looking to get started with the field, I would strongly urge you to consider PHP as your first web development language, assuming you're already familiar with HTML/CSS. PHP is incredibly well documented and has a minimal learning curve. As you'll discover, the hardest part is designing the logic behind your applications. There is no "quick" way to learning that. You just simply have to get out there and start coding.

Using PHP makes creating database-driven websites very easy. Interacting with MySQL, PostgreSQL, etc is a snap. A prime example of an application that uses PHP for creating database-driven websites is WordPress (which is what this exact web-site is powered by!). Other content management systems have found PHP to be fast, robust and secure as well, such as Joomla and Drupal.

And finally, another excellent reason to choose PHP is because it's so widely available. Every major web-hosting provider supports PHP and will continue to for many years. PHP has experienced explosive growth in a very short amount of time, and continues to thrive and enjoy tremendous success.