I run a multi monitor enviroment, and it defiantly helps with work. One of the other things I run is two dev servers for testing using VNC to control them. I use to run virtual servers but I like having them on dedicated hardware, that way I can shut off my main PC and access the dev servers at any time. Virtual machines have there place but it just didn’t for me.

The more I deal with the VNC, I wish I could just slide my mouse to the left and be on one of the dev servers. I searched assuming someone has built something like this, and I was right. First I wasn’t sure how to word it but I came accross this post:


Which lead me to Synergy!


This thing is awesome! Its exactly what I need and works flawlessly! I setup my main PC as the server, set the devs as clients and about 2 minutes later, I have a working setup. It’s a multi O/S environment, (Centos,Windows 8, and Ubuntu) and I had no issues installing and setting this up, very simple setup!

I got the free version but I will defiantly be sending a donation to this team! These guys did an amazing job! Thanks again!


I thought I would put together a list of why people should use PHP vs all the other options out there.

1. Scalability – PHP is so simple to scale! In the event your project goes viral, you can bet PHP will be there to make sure its done. Since it has the share nothing architecture, you can for the most part drop another server in a cluster and go. With very little configuration.

2. Programming – PHP is simple to program with. There are more PHP programmers then other languages. So when your company needs a new programmer, it won’t take weeks to find him or her. If you hit odesk or people per hour, you could have a programmer in 10 minutes. Not many languages can say that. Most PHP applications you can hand any PHP programmer and he or she will get it. If its complicated, ether your code is wrong or method of doing the job is too complicated to begin with.

3.  Made for the Web – PHP was designed for the net. Its life is on the net. Its not like other languages that try to do everything and anything. That is when things get bloated.

4.  Frameworks – Tons of frameworks for PHP. I can’t even name them all off the top of my head. Some people love frameworks. My personal opinion is that frameworks are for people who need to get up and running fast or are too lazy to write the code from scratch. Every app I have built is fresh from the ground up. Sure it take more time, but I know every line of code to that app. I have less overhead since it is just my code and not the framework included. Frameworks have their place but that place generally isn’t with me.

5.  Failure rate – As long as your app follows the 5 > PHP version method of programming you should have code that doesn’t fail. If it does its probably the programmer, 9 times out of 10. PHP starts requests every time fresh, one request will not corrupt another. Other languages need some work to handle something like this.

6. Loving Google – PHP is so well documented. It’s not even funny. You can search any function in google (i.e. date php) and you will get the function along with examples and very good explanation. I would say the SOAP server side of PHP needs some more work and documentation but that is the only area of PHP that I have come to dislike. And of course the tried and true method, if you can’t figure it out, just Google it! 🙂 When I have run into an issue I didn’t create, I Google it and bam! I got the answer! I recently had a chance to work on another app with a language I was less familiar with and documentation along with general posts on the net just didn’t exist. If you want to learn PHP, just come up with an idea to build and hit the php.net documentation. It will be slow going but you will figure it out. Not many languages can say that ether.

7. Community – Kind of going back to 6. but there is huge following behind PHP of full time and hobbyist of programmers with questions and solutions. One thing that separates the PHP and the ASP.net group of developers is the willingness to help. If you have some code that doesn’t work, post the PHP code on any one of the major forums and most if not all the responses will have the answer and the completed code for you! ASP.net not so much. I have seen a ton of occasions where the answer was given but it was vague. And for funny, see the response times. On PHP forums you will see responses in minutes. Other languages its hours, or even days, and some times no response. I have never posted something about PHP and didn’t get a response. Now this is personal opinion with the forum stuff but from my experience this is the case for me.

8. Sharing – PHP code is shared more then any code I believe. Anything you can dream of has been built and a lot of the times its just given away. Open source rocks and PHP is another great case point.

9. Mac friendly –  Remember the days when stuff didn’t work with Mac or it didn’t work with Windows. I mean that still happens a little bit today but 10 or so years ago, this was the norm. My first computer was a Mac Preforma, No clue as to what the model was but it was a all in one unit.Well buying software or accessories was a pain in the, well you get the idea. There are languages out there that are like the Mac of years ago. PHP is NOT like the Mac. PHP pretty much hooks into everything. Native stuff like MongoDB, MySqlDB, Memcache. PHP powers 30% of the internet. You know that one site, called facebook. Yeah, they used PHP. Banks, governments, you name it use PHP. PHP is not a fly by night language. It has plugins to just about everything. Generally your normally apps will be PHP, Linux, MySql. That’s about 90% of all PHP installs.

10. Greatest thing ever: Dynamic Typing – You do not have to declare the type of var. Oh my gosh, this is the greatest thing in the world. Other programmers call it lazy, I call it the right way of programming. A life time programmer taught me you should not code to code you should code to stop. In other words, you don’t over develop the application, simpler the better, and above all program itself should not be complicated. If I had to declare the type of var I was working with on every var I worked with every day I would have gone crazy. Not to mention the lost in time, it would add up.

11. Cost of ownership – The overall cost of PHP is less then any language. Initially and overall. The over abundance of PHP programmers brings cost down. The initial investment in hosting is always cheaper with PHP vs other languages since most installs are Linux based and they do not have to pay the licensing cost of the O/S installs. PHP solves issues quicker, easier then the next language.

12. If it hasn’t been built, its getting built. – Ease of learning PHP and the abundance of PHP developers mean applications are being developed faster, quicker, and more often then the next language. See Hotscripts.com and compare the amount of scripts for PHP vs other languages. Its huge. WordPress the application I use to control this site, is PHP based. Go to the extend part of wordpress.org and see it grow by checking in every day!


There you go, thats my simple list. Some fact, some opinion. I admit I’m a PHP programmer but I have converted ASP.net, Coldfusion, even Ruby on rails guys and gals to PHP after chatting for only a few minutes. I generally say, how would you go about this and have a random example. Tell them to write the code and before they are done I have it done on my laptop. That says a lot I think.

Posted in PHP.

I’m kind of playing catchup with posts. This is a post I wanted to make a few months back. I was going nuts because I have a 1gbps nic and a wifi N card running. Some downloads would slow down and I knew it was because the wifi nic was taking priority over the 1gbps nic. Since it has been awhile since I did it on my last machine, I found a post by techrena.net. See that post here: http://techrena.net/view-change-network-adapter-card-priority-binding-order-windows-7/

Its a repost but I thought I would help anyone else looking for it, thats the link to the info.

As most people with a WordPress site, it seems like you can never get up to date. I thought I would be a good idea to clean up the server. Dump the current install and do a fresh install, remove all the unneeded plugins, and start fresh. Kept all the comments and data but thats it. Defiantly runs better. I also use Piwik for tracking visitors on this site as well as others since Google Analytics has a site limit. Before I had it hard coded to the template, now I’m using the WP-Piwik plugin by André Bräkling. I must say this is a great plugin! It does much more then I need and it uses little to no overhead. Shows all my stats without logging into my Piwik install. Beyond that, WordPress 3.4.2 runs great!

Recently ran into this issue where I was trying to enable mod_rewrite thru the httpd.conf file. I went in to edit it and saved it. They I went to restart the apache service. And I would get this issue:

Windows could not start the Apache2 on Local Computer. For more information, review the System Event Log. If this is a non-Micorsoft service, contact the service vendor, and refer to service-specific error code 1

After some time searching and messing around I found the issue. It was because of permissions. My way of getting around this issue maybe a bit more complex then needed but it works.

1. Go download Notepad++  and install it.

2. Once installed go to the programs directory. Generally its “C:\Program Files (x86)\notepad++\” and find the application notepad++.exe.

3. Right click on said program and select “Properties.”

4. Hit the “Compatibility” tab, and check the box at the bottom – “Run this program as an administrator.”

5. Hit “Apply”

6. Now open Notepad++ and go to the location of your httpd.conf file location. Generally its “C:\apache\conf\.”

7. Once your done editing it save it as “httpd.conf.bak1”

8. Now go to your httpd.conf file location. Copy the current httpd.conf file and paste it in that directory as a backup.

9. Delete the current httpd.conf file. Rename the httpd.conf.bak1 file to httpd.conf

10. Restart Apache and see if it works.


I would be glad to help if it doesn’t work for you. This was a total pain for me, but hopefully I can help someone else that runs into this issue.


Just posted the SimplyCaptcha WordPress Plugin, Click here to see it. Really simple to install. Drag and drop, like most WP plugins. Once installed you will need a key and your URL to start using the SimplyCaptcha system. In the next hour or so I will post the new SimplyCaptcha website which will allow you to register your site and get your key.

I made SimplyCaptcha because I was sick of all the other captcha systems. SimplyCaptcha solves the number one issue with Captchas, they don’t convert. I have worked with clients where they would loose 30% to 40% of they’re customers because the customer couldn’t read the captcha. So I went with a simple format for the captcha system. I use simple questions anyone can answer, instead of the image based systems.

Now, I know the question based versions have been done. The thing is, they are just question based. SimplyCaptcha is not. SimplyCaptcha has multiple spam monitoring features and blocking capabilities.

Two of the biggest are the bot and IP monitoring features. As queries are made to SimplyCaptcha, the input is monitored, including the user agent and IP address. If they’re are too many attempts at a form, the IP is blocked. If the same user agent is constantly showing up on other sites, its blocked. When an IP or Bot is blocked, they cannot submit the form at all.

Let me know what you all think. I have some additional plans to add more layers of security and I’ll be rolling out another layer in a few weeks. So far since I have built SimplyCaptcha, I have seen 100% spam blocked. On all the sites I run, Including client sites.

I built this simple form to help users get API credentials faster from WePay. Some plugins have the capabilities to have the API credentials sent right to the plugin. With this form it will tell you if you can have the API credentials sent right to it or not.

When your using this form it will setup PRODUCTION API credentials. Their isn’t away to get staging. So, make sure you set your plugin to Production when using the API credentials supplied by this app.


Just released the new version of OsCommerce WePay Plugin. Its now 2.0!

Some of the new features include:

Request API credentials from the Plugin Directly

Prefill customer information on the checkout

New method of tracking order for the IPN.

For more information on this update see this post.


Whats Next

Update for ZenCart – 8/29/12

Update for WordPress – 8/30/12

Update for OpenCart – 8/31/12

A few new Plugins. 9/1/12


Tokenization plugins are about to roll out soon. There will not be a tokenization plugin for ZenCart. There will be for the other shopping carts and applications.


So after some emails and friends letting me know their is a “t” in captcha, I thought I should change the name. I knew there is suppose to be a “t” but I thought the misspelling made it easier to remember. Never the less I changed the name to SimplyCaptcha.


Other News

SimplyCaptcha so far is blocking 100% of all spam comments on all websites using SimplyCaptcha right now! Some new security features will roll out this weekend that will make SimplyCaptcha even stronger!

SimpleCapcha is now live. Still in beta testing to a select few. Very simple to setup and use. There will be a WordPress SimpleCapcha Plugin in the near future among other things!

Its great because now I can get rid of the 50+ comments I get a day of spam! And Ill get a chance to see if their spam bot can break the capcha!


I have been really busy so for all of you waiting for me to respond you should get a email or comment shortly.

WePay News

There will be updates this week. I have a handle full of updates to all the plugins. As soon as they post I will post on here. There are also 2 new plugins posting. I will probably post them this weekend since I am currently wrapped up in code right now on other projects.


So I get slammed with spam all the time. I have tired all sorts of different capcha systems and plugins. I built a simple one a while back ago that works great! So I thought why not make a service for Simple Capcha and make a WordPress Plugin for it. And then Simple Capcha was born. The site will be up and running shortly and hopefully the plugin will be out in the next week. The features that Simple Capcha offers is full control of the look of your forms, or using a pre built capcha form. Its handled with JSON and POST calls to the server. All that is needed is your website address. The website address is needed to monitor usage. All accounts are free up to 5,000 requests a day for all websites under that account. You can register as many websites as you want under one account. Pretty sweet little system and it works flawlessly.

Expect to see a lot of posts this week.

Here is the word, WePay API is advancing and becoming more powerful then I have seen from many other API’s. Deploying plugins like I have built will become much easier in the near future. I’m extremely glad to say as a user of WePay, things will only get better!

Magento WePay Plugin
Yep, I have announced development of it. The exact date it will roll out is questionable at the moment. The current date I have set for it is July 12th, 2012. That date may change, and it more then likely will roll out sooner.

WordPress WePay Plugin 2.0
The long awaiting update only gets pushed back further. Sorry! More features and bug fixes have delayed release. I know the 30th was the planned date but now its probably closer to July 5th.

OpenCart WePay Beta to v1.0???
Its about to go to v1.0. Working with users right now to get it there. I know of at least 5 sites running in production mode under BETA 0.7, with about 15 more under staging mode in that same release. If your running 0.5 or 0.6 update asap, as there are issues with 0.5 and 0.6. I know a few of you have had issues getting it going and I’m working on setting up a couple tutorials. They should post right after this.

WordPress WePay Add-ons
If you liked the WordPress WePay API Plugin then you will love the up coming add on plugins. To mention a few the affiliate plugin, which uses tools like aweber, constant contact, and others to make the affiliate marketers lives better. S2 Member add on plugin is another in the works and should be pretty sweet when its done. The WordPress WePay API Plugin will be getting another update in the coming days. I have some additions and changes I want to make to improve the overall experience.

(Quick plug thanks to Thomas Butler and Tim Davis for the recommendations. Thomas not only introduced me to WePay and started this plugin building fest but he also gave me the ideas for the API plugin as well as the soon to release affiliate marketers plugin. Tim Davis intially sparked the idea of an affiliate marketer plugin, Thomas helped fill in the details. So thank you to both of you! As for the others sending ideas thank you!)

Beyond the tutorials I will throw up a few other posts on how to customize and other things related to WePay. Also all plugins pages will be getting a much needed FAQ thanks to the WP Super FAQ plugin. If you want to see faster updates and more features please donate.

I highly recommend all potential users of my plugins to read WePay’s TOS. We recently had someone try to sell guns and ammo with a plugin and found out they couldn’t after they spent all that time with integration of WePay. So check it out before you add your plugin. https://www.wepay.com/about/terms Future plugin updates will have the TOS in the read me.

This how to assumes you have already read this post: http://www.alanpinnt.com/2012/06/29/how-to-get-wepay-api-credentials/

If not I recommend you do.

1. Extract the plugin

2. Copy both folders directly into your OpenCart Installation, just drop it in there.

3. Once both folders are uploaded, login to your OpenCart admin login.

4. From there go to “Extensions > Payment”, Scroll down to WePay and click install on the right.

5. Now that it is installed you will click “Edit” on the right again.

6. You should now have a page that needs your API credentials, fill in the details and hit submit.

7. Test and confirm its working.