Jul 23

Programmers Are Under-Appreciated, Over-Worked & Manipulated


Programmers Under-Bill, Often By Greater Than 10%

It is a well known generalization that lawyers tend to over-bill their clients. I don’t suggest that they really do over-bill, only that it is generally believed that they do. It is a well known fact, in the development community that developers often under-bill their clients, and the do it in amounts usually greater than ten percent and sometimes as high as 100%. The higher percentage of under-billing is usually from the foreign workers.

Does that make developers less smart than lawyers? Not necessarily however it does make the argument that there are too many developers and not enough lawyers. Maybe developers need a voice because we are obviously not in a very good bargaining position.

Foreign Developers Often Under-Bill By Up To 100%

Speaking of not being in a good bargaining position. I have talked to foreign developers that work 80 hours and bill 40. Why would they do this? Because they are held hostage by their sponsoring firm. A foreign worker has a sponsoring firm that handles the lengthy green-card process. If the developer leaves the firm a year into the process, they need to restart the green-card process from beginning.

Foreign Developers Have No Bargaining Power

Once a firm has a foreign developer started in the green-card process they lose pretty much all bargaining power. The firm knows that the developer will likely not risk the green-card process and it puts them in a very poor bargaining position the further they are into the green-card process. And while being in this poor bargaining position, the foreign developer has to deal with the fact they left their home country to make a living.

Developers Expected To Fix Problems, Despised When They Occur

When something happens to a computer system, we are expected to respond, no matter the date or time. We do this without complaint, and put in one hundred percent plus some. We actually enjoy solving problems, we take pride in our work, and we like to help other people.

Developers Are…
  • Despised by a good portion of end-users when systems change
  • Predestined to failure. When we deliver a year-long project to production and it has a 99.9% success rate, we are scorned because there were a few minor problems.
  • Pushed to work on more projects, complete them faster, and more accurately. We are also expected to have high levels of availability and complete projects in minutes not hours or days.
  • Manipulated by firms that have them held hostage because of long green-card processes. The manipulation of foreign workers affects citizen developers as well, because we see our counterparts working sixty hours and billing much less, so we often do the same due to a survival instinct.
  • Under-Appreciated often using inferior equipment compared to our end-users that work in profit centers. We will be found working on a laptop, while our end-users are working on a powerful system, with more than one monitor, and comfortable offices. Developers often work with less than a cubicle.
  • Necessitated to spend dozens of hours per week or more of their spare time learning new technologies to stay competitive.


Are There Too Many Developers?

I think the answer is maybe, it depends on who you ask. The corporations would say no, and the developers would say yes. I think most developers would agree we are compensated fairly well. It is true that we work quite hard for our handsome salary but we enjoy it and take pride in it.

I want to add one VERY important point. Most developers love their careers in spite of all the challenges. We generally enjoy the career and make a nice living doing it. This article was intended to provoke thought on a few important things not complain about our jobs.

So, what do you think? Do you agree, or disagree with anything I’ve said? If so I’d love to hear it.


Jul 21

Attention PowerBuilder Developers – Reconsider StackOverflow Questions by Newbies

PowerBuilder Developers – An Important Message & Call To Action

I waited a few hours to cool down before writing this. I hope that the last sentence captured your imagination and that you’ll read the rest of the story, and leave a comment with your thoughts about this very controversial subject.

The Elephant In The Room


An Indian agency offered 30 PB developers (2-3 years experience) for $20 hourly, and with one month free service. 

This is a call-to-action, and call-for-feedback from other developers whether they be citizens or H1B visa holders. I recently received an email from an agency regarding a PowerBuilder contract, the company wrongly assumed I was looking for PB developers.

The email rubbed me the wrong way. Here it is without any further delay…


On 7/19/14, R******sh K*****r  wrote:
> Hi,
> I have 30 resource in powerbuilder ( 2 – 3 years experience ). We can
> turn around any powerbuilder development , support and enhancement.You
> can check our capability.We can provide 1 month free service.We will
> charge 20 $/hour.Please let me know your convenience.
> –
> Regards
> R*****h k****r
>  91-9********3


Here is what I read above.

Available 30 developers at huge discount and free month of service on top-of-it. All 30 developers know how to spell PowerBuilder, are fast learners and know how to extract difficult questions from StackOverflow and/or the internet, so why bother with expensive citizen developers.

I fully understand the need for H1B visa labor and understand the need for diversification of skills to stay competitive. I study at least 6-8 hours daily, on average above and beyond my day jobs to stay competitive and it is tiring. Most developers I know spend many hours learning and can probably relate to what I am saying.

I see things reaching a tipping point, to a point where we (citizens) are by far the minority. I would hope that the persons on H1B’s reading this can understand the opinion here, just ask yourself how would you feel if the situation were reversed and your family were affected?

I welcome feedback from all sides, there is no moderation other than of spam here.

Citizen Developers – When Is Enough-Enough?

Alarmist? Probably, but seriously, when is enough-enough?

I have many friends who are on H1B visas, and they are brilliant people and wonderful human beings. I will refrain from using the word “but”, however, it is my humble opinion that we are approaching the tipping point and we are becoming the minority and something has to change.

What do you think?

I also will admit that sites like StackOverflow are awesome, and have helped me, however I have helped them much more I am very sure of that. I personally will be much more cautious about my use of such sites and ask you to reconsider some of the questions you answer especially to new users that ask questions they should not be asking.

  • When do we developers stand together and say this is enough?
  • Are you tired of being the minority where you work?
  • Are you tired of being unable to understand co-workers because of strong accent or poor English?
  • Are you tired of bench-time and/or reduced rates at a time when record numbers of American are unemployed?
  • Who do the current policies help?
  • Do we need a “voice” for developers in this country? If so I would like to work with others in starting a political action committee, a non-profit that represents us and nags our representatives until they do the right thing.


PowerBuilder Developers Consider Contacting Your Representative

There are two calls-to-action here:

  • Reconsider offering free advice on StackOverflow and similar sites. Is the question coming from a new user who is asking a question that they shouldn’t be asking?
  • Contact your representative and let them know you are tired of being sold out by H1B visa labor, I suggest a hand written letter or phone call. Using the email form does nothing, you need to nag their administrative assistant daily. The squeaky wheel gets’ the grease.

PowerBuilder Developers Re-Consider Usage of Stack Overflow Sites

I was a loyal StackOverflow user, I assumed it would help bolster my reputation, and as a developer I like helping people. I’m sure you know what I am talking about as every developer I’ve worked with likes helping others. Helping others is what our career is about!

Again this isn’t an attack on SO, or H1B’s but rather someone who is willing to talk about the elephant in the room. Comments can be confidential, simply enter a bogus name and email address – easy-peasy-lemon-squeezy!

Comments, Feedback, Very Welcome Here

I’ll keep this short and won’t get overly political, and believe me it was difficult. I would really welcome comments from anyone here. I think this is an important subject, the elephant in the room that nobody wants to talk about. What do you think?

Jul 18

Blog Manager App – Increase Adsense RPM, Income & Reduce Effort

Blog Manager Performance Tracking & Reporting

C o m i n g  S o o n !

A new web based application for Adsense Entrepreneur’s & Network Marketing Professionals is in under development and will be available for beta testing September of 2014.

Wanted: Adsense Entrepreneur’s for Beta Testing


  • Are you an Adsense Entreprenuer?
  • Would you like to earn more money from your websites?
  • Would you like to know the impact of site revisions such as Adsense Income, Site Rankings, SERP & Quality Stats?
  • Do you need to know the impact of social marketing campaigns, and whether the cost was justified?
  • Would you like to report across multiple websites for yourself or your customers?



If you answered YES to any of the above questions, then you may be interested in becoming a BETA TESTER of the new Blog Manager Performance Tracking & Reporting Application.


Blog Manager Performance Tracking & Reporting – Key Features

The features listed below are planned for version one of the application. All features may not make it into version one, or they may be pushed to a later version.  There may also be additional features added to version one that are not listed below.

P e r f o r m a n c e   &  P r o d u c t i v i t y

  • Web Based Tool – Use Anytime, Anywhere
  • Reporting Across One to Many Websites, for you or your customers
  • Website Ranking Reports (Alexa, Quantcast, etc.) Over Time
  • Reporting on Adsense Income, Analytics & Quality Statistics (Bounce Rate, etc.)
  • Track Effort for later reporting on performance
  • Website Quality Statistics (Bounce Rate, etc.) Over Time


T r a c k  C a m p a i g n s  &  R e v i  s i o n s  

  • Track & Report on Site Revisions (what changed, when, what effect did it have)
  • Track & Report on Social Media Campaigns
  • Track & Report on Advertising Campaigns
  • Learn Which Site Modifications Helped Income, Quality, Rank, etc.
  • Keep Records on Site Modifications, Advertising Campaigns & Other Events


A n a l y s i s   F e a t u r e s

  • Analyze Website Content, Learn What Separates Winners from Losers
  • Analyze & Compare Competitor Website Quality, Keyword Density & Rankings
  • Content Scanning for Keyword Density, Meta Tags & Other SEO Items
  • Analyze Key Statistics such as SERP, Keywords, Quality, Rank Statistics
  • Optionally share confidential metadata, in return compare metadata to public metadata



How To Join The Beta Testing Program

If you are interested in becoming a beta tester of the application, please leave a comment below, along with one or more of your websites and we’ll get in touch with you. You must have at least one website that uses Adsense to be approved.

  • Persons with many websites will receive priority status.
  • Check back soon for status updates.


Benefits of Becoming a Beta Tester

  • Free use of the tool during the beta period.
  • Complimentary Year Memberships upon completion of beta.
  • Complimentary Lifetime Memberships upon completion of beta.

As a beta tester of version one, you will be allowed to use the application throughout the entire beta program and you’ll receive complimentary membership that includes all features for a period of one year at no cost. If you are an active beta tester who has suggested features and/or reported bugs, you will also receive another complimentary year of membership that includes all features in the application.

As a top-performing beta tester, you’ll receive a complimentary lifetime membership which includes use of all features of the application for life or 100 years which-ever is shorter. This benefit is limited to the top twenty contributors, which will be measured by number of bugs reported, number of suggestions that we implement, number of suggestions that we add to future enhancement lists & number of beta-tester referrals. Details of the benefit will be posted before the beta program begins.

  • Persons with many websites will receive priority status.
  • Check back soon for status updates.


Feature Requests, Functionality

  • We are accepting feature requests immediately.
  • What features would you like to see in the application? What core ideas or concepts would you like to see, for example would you like to see integration with Google Tools (Analytics, Adsense, etc.)?

If you have a suggestion for feature please email rich at this domain name and put FEATURE REQUEST in the subject line of the email. You’ll get credit for the feature request if it is used or listed for use in future releases.


Thank You !

We look forward to working with you and making this a mutually beneficial business relationship.

The beta program will live at the currently unused domain: http://blogmgr.com

Jul 04

WaveMaker – First Hosted Application Completed

Finished WaveMaker Application – Ready For System Testing

The program is a drug-half life elimination charting tool. It plots the drug plasma levels of various drugs as they are eliminated based on half life hours.

Drug Half Life Elimination TaperTool

Drug Half Life Elimination TaperTool

I have the program running on my basic linux server, and for now it is running on port 8080, I need to learn how to make it run on port 80, but along with all my other websites that are being served from Apache on the same port. So now if you go to http://www.warm-turkey.com for the Drug Half-Life Elimination Tool you will be forwarded to the temporary location using port 8080.

If anyone knows how I can set this up please leave a comment!

http://www.warm-turkey.com/HalfLife  <– TRY IT OUT HERE


Note: I had to configure port 8080 to map to port 80 incoming using the httpd.conf file. So incoming requests on port 80 are handled by Apache, and if they are a request for a Java application, then Apache automatically forwards the request to Tomcat 8 using port 8080, and when Tomcat 8 passes info back to Apache it uses port 80 so that you don’t need to see an ugly url like http://www.warm-turkey.com:8080/HalfLife.


A while back I promised to complete one of my small applications I was working on using WaveMaker. I finally got the job finished. The app uses a database for the drug list, half life hours, and there are other tables for storing reports that were run, and some advanced features.

The administration login allows for changing users, drugs, and other lookup data for the application. There is an administrator and basic user logon role right now. This is my second completed WaveMaker application. I plan to refine this one over the next few weeks, I may write an article about the other WaveMaker application soon, but I have learned that WaveMaker is faster than PowerBuilder when it comes to building *web* applications. This statement assumes you are using PowerBuilder alone and not Appeon or another third party add-on to PowerBuilder.

This will replace a similar program that I wrote using Silverlight, this will run on any machine unlike the Silverlight tool.

The program also uses the built in wavemaker security, and the page is monetized using Google Adsense.


Silverlight Drug Half-Life Taper Charting Tool vs WaveMaker Drug Half-Life Taper Charting Tool

The Silverlight tool required that Silverlight be on the client computer. It also does not use a database. The NEW WaveMaker (Java) Half-Life Taper Charting Tool will run on any computer that runs Java, and will work for any drug, or addictive substance that can be measured, and has a half-life.

Suboxone taper charting toolThe OLDSilverlight version of the tool on Subotex.com.



Drug Half Life Elimination TaperTool

Drug Half Life Elimination TaperTool

The NEW: WaveMaker (Java) version of the tool on http://www.warm-turkey.com (not cold-turkey… )

The purpose of both is to help people taper off addictive drugs, alcohol, or anything measurable and having a half-life hours. If you get a chance check them out and let me know if you have suggestions or feedback. The new WaveMaker version is database driven (MySQL) so the drug info and other lookup data is available. Also I’ll be adding features to allow saving your own personal taper plans under your logon id for later use. There will be advanced features that let you plan the best taper with the amount of remaining drug you have. So if the drug were unavailable due to major hurricane and you had 150 mg, the tool would help you plan the easiest taper using the 150mg that you have.

How I Published The WaveMaker Application

The application is running on my run-of-the-mill linux hosting provider.

  • I installed Tomcat 8 to go along with the Apache that was already installed.
  • I installed the Java Development Kit on the server
  • Upon completing the application in WaveMaker, I deployed it to a WAR file.
  • I ran the Tomcat manager program, and loaded the War file created by WaveMaker
  • I created the database (MySQL) to match what I was using locally, including the database user
  • Viola, everything worked like magic on the first try. I am really getting the hang of WaveMaker and enjoying it a lot. Look for more on WaveMaker in the coming weeks. I’ve got another completed application besides this one that I’ll be showing.

I have some recent articles on WaveMaker, basically getting started with it.

Jun 16

WaveMaker for PowerBuilder Developers Part 3 (Create Project)

WaveMaker for PowerBuilder Developers Part 3 (Create Project)


We will be taking the first steps in creating a working WaveMaker application in this step. This includes creating a MySQL database, and creating a new project in WaveMaker. You’ll also learn how to use the Import & Export function so that you can import the completed project and export your own projects. This is the third part in a series, if you missed the first two parts you can jump to the beginning here.

XREF Components

Project Components Window – This is the primary info the application stores

The project we’ll be creating is a simple code management type system for saving snippets of code, article parts, script, account information, or anything that you might want to re-use. The idea is to not have to re-invent the wheel and search for information again, the hard way.

Note: This project was created as a sample for WaveMaker and is not coded using generally acceptable coding practices, for example the database design is not complete and/or de-normalized. There are some missing look-up tables for status codes, etc.. The object names inside of the WaveMaker tool are not consistent and they don’t follow a good naming convention.


MySQL DDL File: XREF_DG_DB20140616.SQL

WaveMaker Code: XREF_DG_20140616.ZIP


Creating the MySQL Database

You should have MySQL installed along with the MySQL Workbench, if not please refer back to part two of this series.

  • Open the MySQL Workbench
  • Open the downloaded MySQL script
  • Run the script, rerun if needed
  • Create a new database user ‘xref_user’ with password of ‘password’
  • Give the new user permissions to the new dg_db schema
  • Give update rights to the new user for the dg_db schema


Importing the Project Into WaveMaker

If you’ve installed WaveMaker, you can import the ZIP file now. If you haven’t created the user in the database then you’ll need to go into the Services tab in WaveMaker, then select the database and click the icon that looks like a wrench to open the connection information, then update the user and password as needed

  • Launch WaveMaker
  • Use menu item File –> Import…
  • Click the import zip-file button
  • Select the downloaded zip file

Running the Project in WaveMaker

XREF Front PageIf the project has imported successfully, you can run it by clicking the “Run” button at the top of the WaveMaker window.


You should now have a working WaveMaker project. In the next article we’ll step back and go through the steps that were taken to get to this point. I have spent about a half-day getting to this point (4 hours) and I’m pretty green at WaveMaker. Feel free to look around at the code and experiment, we can re-import the zip-file if anything breaks.

If you notice any problems with either of the download files please leave a comment below and I’ll get it corrected as soon as possible.

PS – New Drug Half-Life Elimination Taper Planning Tool Application

I just rewrote my old Drug Half Life Elimination Taper Charting Tool, it is written in Silverlight and the new one is written entirely in WaveMaker (Java). You can check it out by going to: http://www.warm-turkey.com , it is in testing phase now so if you find bugs please let me know in the comments. The program uses WaveMaker security and has an administrative login for editing users, drugs, and other lookup tables.

The new tool…

Drug Half Life Elimination TaperTool

Drug Half Life Elimination TaperTool

This will eventually replace the Silverlight version of the tool on Subotex.com. This one will live on http://www.warm-turkey.com (not cold-turkey… ) and will help people taper off addictive drugs, alcohol, or any addictive substance that is measurable, and has a half-life.

So it could be used for alcohol, calories, hours on the internet or whatever you are addicted to.


Jun 12

WaveMaker For PowerBuilder Developers Part 2 (Installing Tools)

WaveMaker For PowerBuilder Developers Part 2 (Installing Tools)



We’ll be installing the tools that will be used in building a new WaveMaker and MySQL web application. The application will be used as a very simple content management slash note taking type application for storing code snippets, article parts, articles, account information, documentation, links, or anything else that you think you might need to use again to maximize the DRY principle. The application is being built by me, a PowerBuilder & .NET developer for the purposes of giving WaveMaker a test-drive and to see how much effort is involved in making the switch to the Java based WaveMaker tool. When completed you’ll have all the tools you need to begin with development, and database creation. If you missed the WaveMaker part one then go back here.

If you’d like to check out another application, a Drug Half-Life Elimination Taper Planning Tool that I just completed using WaveMaker you can check out this WaveMaker article.

Installing WaveMaker Studio

We’ll be using WaveMaker Studio 6.7 to build the developer registry web application, so if you are following along you’ll want to install it now. The community edition is completely free. WaveMaker supports Windows, Linux & Mac (intel), so choose the proper installation for your favorite development operating system. I’ll be using WaveMaker Windows version 6.7.0. WaveMaker Downloads Page

WaveMaker Pre-requisites

The WaveMaker installation program will assist you in installing any missing components. The first time you run WaveMaker, you might be prompted for the location of the JDK. You’ll also be prompted for a program folder for your projects.

Installing the Database (MySQL)

WaveMaker comes with a built in HSQL database but we’ll be using MySQL for the project. Specifically I’m using the MySQL Community Edition for Windows, but you may install which-ever flavor (Linux, Mac) you like. The software is free for personal or instructional use. MySQL provides an all-inclusive installation for all products, you can choose the database server and workbench during the installation. Otherwise download and install them separately, the Workbench isn’t required but it will make following along and running the included DDL more difficult. MySQL Community All Inclusive Installation Page


You should now have a working database, a database development workbench and the WaveMaker Studio tool installed on your computer. Next we’ll work on creation of the MySQL database, the DDL will be made available for simplicity. Start creating your database here.

In the next step, we’ll get started with database and application creation, move to WaveMaker for PB Developers Part 3 next.

Jun 11

WaveMaker For PowerBuilder Developers Part 1 (Introduction)

WaveMaker For PowerBuilder Developers Part 1 (Introduction)



Considering that PowerBuilder 15 (beta) is not publicly available without a special SAP login id for existing customers, I decided to take the time to build a WaveMaker web application and see how it compares to PowerBuilder. We’ll also find out how difficult, or easy it is for a PowerBuilder developer to develop with when they have had no formal WaveMaker training. WaveMaker is now 100% Open Source including the multi-tenant and commercial database functionality.

FYI – I just completed another WaveMaker application, and hosted it on this web server. You can check it out on my first WaveMaker application article. This app is unrelated to the series.

This article is the first in a series covering the creation of a web application using WaveMaker with mySQL.

WaveMaker Studio Overview

WaveMaker Studio Overview

The first objective is to provide a high level overview of WaveMaker and point out the main differences between WaveMaker and PowerBuilder. Next we’ll provide step-by-step instructions for building a functional WaveMaker & mySQL application (many to many) that will be used as a simple content management database for storing code snippets, article snippets, links, code documentation, or anything you might use more than once, and associate it with a project, a language type (PowerBuilder, JavaScript, HTML, Plain English Text, etc.). The program is intended to assist someone who’s memory is starting to get a few null pointers, and to maximize the DRY principle. The instructions will be tailored towards a PowerBuilder developer. The DDL and code will be provided as the development progresses and the finished program will be hosted so that you can try it out.

Quick History & Opinions of WaveMaker

In short, WaveMaker is a Java based rapid application development tool similar to PowerBuilder. The tool has gone through at least two ownership changes in the last five years, it was recently acquired by Pramati Technologies, a business incubator and enterprise software company founded in the 1990′s.

If you’d like a to read more about WaveMaker first you can take a look at some of my previous articles or see the WaveMaker About Page which has a nice summary of the tool history.


Differences between WaveMaker and PowerBuilder

At a very high level, here are the main differences between PowerBuilder & WaveMaker.

  • WaveMaker is designed to develop web/cloud applications using Java, and other Open Source technologies. PowerBuilder is designed to develop client-server & web based applications using proprietary & .NET technology.
  • WaveMaker does not have a datawindow, nor does the IDE have any obvious support for object oriented design. WaveMaker being Java based should support OOP however the development tool doesn’t appear to provide any support for inheritance that is built into PowerBuilder, this observation may be a result of my minimal experience with WaveMaker.
  • WaveMaker generates Java, JavaScript, Spring, Dojo Framework code, so the resultant code could be used as a starting-point to a typical Java project, or to learn/study Java development. PowerBuilder generates compiled (p-code or machine-code) and proprietary source code files that require (generally speaking) the PowerBuilder IDE to modify and re-compile.
  • WaveMaker has an impressive list of customers but has never reached critical mass becoming a mainstream tool like PowerBuilder did in the ’90′s.


Features of WaveMaker Development

This quick list of features is based on my opinion. Some shops may view them differently, specifically open-source technologies which is not embraced by some large companies. PowerBuilder shares many of these or is capable of sharing most with the exception of responsive screen layouts and open-source.

  • Visual Development (similar to PB)
  • Smart Layouts for Devices (aka Responsive)
  • Re-usable API Prefabs that can be published for use by others
  • One-click deployment to many environments
  • App-Store Integration for applications or API prefabs
  • Collaboration & Release Management
  • Standards based, uses open source technologies


WaveMaker Videos

Here are a few WaveMaker videos that will show you the basic features, and new API prefab functionality. If you haven’t used WaveMaker before you may want to watch a few of them.


WaveMaker Studio – The Grid Designer

WaveMaker Studio – Creating a Database From Within WaveMaker

WaveMaker Studio 7.0 – API Prefabs



We learned that WaveMaker is an application development tool used for building web & cloud based applications. The development IDE offers drag-and-drop visual development similar to that in PowerBuilder. WaveMaker is Java based and uses many open-source technologies such as Spring, Dojo Framework & Struts. WaveMaker builds a stand-alone Java application, and the source code can be opened in any Java development IDE.

This was the first in a series of articles that cover creation of a working web application used as a developer registry. Next we’ll make sure we have all the necessary tools and begin development.



Part two of the series is now available, WaveMaker Series Part II. 


Do you have any comments or suggestions? Is there anything specific that you’d like to see in future articles, just leave a comment, no registration is necessary and you can enter a fake email address if you’d like.



Jun 11

Askimet Plugin for WordPress Blogs

How to eliminate spam comments in a WordPress blog

I’ve been using the Askimet plugin to eliminate spam-comments for almost four years on several blogs. It works great and is free for personal use. I am feeling guilty about not paying to use Askimet and figured that promoting the tool was the least that I can do.

According to their website, the tool has zapped 145 billion spam comments.

Askimet Site

Askimet Site

Are you tired of deleting spam-comments from your blog?

I am not associated with Askimet in any way other than being a user of the plugin. I highly recommend using it on all of your WordPress blogs because it works well, is free, and will save you a lot of time.

In the four years that I’ve used the WorePress plug-in there hasn’t been a single problem. You’d think that spam comments wouldn’t be a problem if you use spam prevention tools like CAPTHA forms, but somehow spammers are able to defeat these.


Askimet Stats Screen – Shown in the WordPress Dashboard

As of June 11, 2014, Askimet removed roughly 125,000 spam comments which equates to around 21,000 per-month and 700 per-day. Assuming you work a ten hour day, you’d need to review and delete around 70 per hour without deleting legitimate comments by mistake! Even with the tool, a handful of bad comments will slide through every day but it is manageable.


Askimet Blog Comment De-Spammer Promotion

Askimet Blog Comment De-Spammer Promotion

How do you use the Askimet WordPress plugin?

Using the plugin is very simple, though it does require that you create an account. Considering the tool is free this is an acceptable request.

  • Install & Activate the Asimet plugin
  • Get your free Askimet account, and application key
  • Go to Settings –> Askimet and enter your key (see screen print below)

That’s all you need to do!



Assigning the Askimet API Key

Askimet Settings

Askimet Settings


This is where you enter the API key that you received when signing up for a free account. Once you enter the key, everything works like magic.

Viewing your Askimet statistics

You can view the stats screen by going to the Askimet settings screen via Settings –> Askimet.






Leave a comment?

Search Engine Optimization

The SEO Guy…

If you have any questions or comments please leave one below, and you are welcome to promote your own blog if you want as long as the promotion is secondary to the comment.


Comments are free, they don’t require registration, and you can use a fake email address if you want to remain anonymous to everyone except the NSA.


May 17

PowerBuilder Memory Lane, Version 3

This is the detail page for PB3. If you’d rather start from the beginning the main article is called, PowerBuilder, Memory Lane for PB Developers.

PowerBuilder History, Version 3.0

Rewind to 1993, and explore PowerBuilder Version 3.0. This was a big release for PowerBuilder, a historic release in my mind. I felt like PB3 had demonstrated it had enough maturity & stability to be worthy of consideration for application development in the corporate environment. It was definitely a safe bet for department-level application development and showed potential for large and complex mission critical application development.

Launching Pad To The Future

PB3 was the stepping stone away from the mainframe world, where corporate applications were written using second generation, procedural languages like Cobol and CICS. PB3 included robust reporting from the beginning which was typically handled using complex, archaic mainframe reporting tools like Easytrieve.

PB3 was so impressive that calling it a stepping stone is a massive understatement. It was more like a launching pad, catapulting business applications into the future, which at that time was client server. Client server development leveraged the power of the desktop allowing corporate apps to evolve into modern, robust, attractive and intuitive business applications.

Dream Come True For Everyone

PowerSoft invested a substantial amount of money in the marketing of PowerBuilder. It usually takes an exceptionally good salesperson to sell software to Fortune 500 companies, but this was not the case when it came to PowerBuilder.

A child could have sold PowerBuilder to 499 of the 500 companies in the Fortune 500. An exaggeration… yes, but the tool pretty much sold itself in the first ten minutes of a PB demonstration. Anything beyond the first ten minutes of a demo was entertainment for the developers anxious to get their hands on the software. Developers were salivating at the opportunity to develop using such an advanced tool, one that they saw as being historically significant. The developer instincts were correct because PB has not only become historically significant but it has written many chapters in the history of information technology over the last few decades.

The PB System Tables Soap Opera

Any shop large enough to have dedicated DBA’s likely went through several iterations of corporate politics before coming to an agreement about the internal PB system tables (pbcatcol, etc.). PB created the system tables automatically when running the tool for the first time but it required SYSTEM credentials to the database. Connecting to the database as SYSTEM by developers is something that is not going to happen in a corporate IT shop. If you’ve gone through this phase than you know exactly what I’m talking about.

The General Protection Fault, or GPF

This summary wouldn’t be complete without mentioning the general protection fault (GPF). A GPF to PowerBuilder is analogous to the blue-screen-of-death and early versions of Microsoft Windows. It happened when the PowerBuilder IDE would crash without warning and any unsaved work lost. The GPF is something the veteran PB developer lived with, learned to work around, and gained a few grey hairs because of them. PB3 was a pretty solid IDE but it was leading edge software, so crashes were part of the cost of doing business. Most developers learned the “problem” areas and were able to minimize the negative impact of GPF’s.

PB3, The Specifics


Release Date

Some time in 1994. Please leave a comment if you know a more accurate date.

Notable Enhancements & Fixes

Version three was the first one used by me so I am not aware of any notable enhancements or fixes.

Notable Problems

There were no serious problems with PB3, however the dreaded GPF was something that a busy developer might see several times per day. Repeated GPF’s would precipitate the need to reboot Windows and get some fresh, clean memory allocated.

Market Share & Trend

Add sales numbers here, or other notable statistics.


PB3 Visual Flashback

These images are near and dear to my heart. I poured a lot of sweat & tears into learning PowerBuilder, and developing applications using it. I don’t think I’ll ever forget how the splash screen looks in PB3, it is burned into my memory forever.

Marketing Media

Install Packaging

PowerBuilder Marketing Media Version 3

PowerBuilder Marketing Media Version 3

“Everything you asked for” image was provided by Bruce Armstrong. Bruce has been using PowerBuilder since version 1.0b. He is the senior editor for the PowerBuilder Developer’s Journal in which he has authored numerous articles and has a monthly news column. He was one of the editors and authors for PowerBuilder 9: Advanced Client/Server Development by SAMS.

Splash Screens

Would you help fill in the blanks in the PB Memory Lane article? Learn how right here.

IDE Images

Would you help fill in the blanks in the PB Memory Lane article? Learn how right here.



PB3, Looking Forward

PowerBuilder 3 was an amazing tool, but good things don’t last forever. I can not think of any specific goals that PowerSoft had looking forward to version 4 & 5. I suspect that adding more native database interfaces was a goal at this point because early versions of PowerBuilder lacked native drivers for Microsoft SQL Server and Informix.

Early versions of PB lacked some of the datawindow object types that exist in new versions, such as the tree view dataobject, not to be confused with the tree-view control.

This document is one part of many belonging to the PowerBuilder trip down memory lane document started here, and that has had contributions by many PowerBuilder experts from around the world. If you have information or images that would improve this article, and are willing to share them please leave a comment below. Also indicate if you’d like attribution, and how you’d like it done. I am happy to promote your personal blogs in return for helping to make this a better document for everyone.

Here is the link to the main PowerBuilder, Trip Down Memory Lane page.

May 16

PowerBuilder Developers Trip Down Memory Lane

Memory Lane for PowerBuilder (PB) Developers


Have you ever noticed that a good number of the die-hard PowerBuilder evangelists started using the development tool some time between versions one and three? It seems that way to me anyway.


I started developing with version three back in the mid-90′s. Most of the long-time developers I’ve worked with started somewhere between version one and three. There are plenty of PB experts that started with later versions, but generally speaking it seems that those who were first to the party are the last to leave. Versions one through three acted as an anchor for locking down loyal PB developers.


PowerBuilder 3 Decades of Refinement

PowerBuilder 3 Decades of Refinement


The goal of this article is to create a nice visual trip down memory lane for long-time PB developers, and newer developers interested in the history of the tool. I’m looking for splash screen and/or installation images for every version of PowerBuilder all the way back to version one.



An article like this would be difficult to complete without help from the PB community. This section is dedicated to acknowledging contributing authors. A complete list can be found at the bottom of the article. If you can help fill-in-the-blanks you will be rewarded with attribution (if you desire). Simply leave a comment below or check out the detailed instructions.

PowerBuilder – A Trip Down Memory Lane


Nearly three decades of PowerBuilder development beginning with version 1 through version 15. Finding graphics for some of the first versions will likely be difficult as there are probably only a handful of people that are capable of coming up with it, Chris Pollach, Bruce Armstrong are a few names that come to mind.


PowerBuilder – Perceptions Over Time


These are opinions of one developer having worked with PowerBuilder for almost twenty years beginning with version three. If you’d rather see a factual history of PowerBuilder you might want to check out the PowerBuilder Phenomenon. And the most detailed history on the internet (borderline dry for non-PB enthusiasts) see PowerBuilder History How Did It Evolve?

Versions 1 to 4 – Bleeding Edge Phase

Those of you that started using PB in the early days, back when PowerSoft still owned the tool remember the excitement of working with a powerful tool far ahead of it’s time. You remember the days when PowerSoft aggressively marketed the tool, sending sales-persons for on-site demonstrations that usually lead to purchases.

DataWindow’s & General Protection Fault’s (GPF)

Memories tend to be the most vivid when they evoke strong emotions. The two that come to mind with the early versions are:

Good: The DataWindow Control needs no introduction as it is still the heart-and-soul of PowerBuilder, the novel connection between database and business logic.

Bad: The General Protection Fault (GPF). The GPF in PowerBuilder is analogous to the Blue Screen of Death (BSOD) in Windows. Like the blue-screen-of-death, everything you were working on stops abruptly and without warning. Resourceful developers found ways of reducing GPF’s by avoiding known problem areas within the application.

PowerBuilder Versions 5 to 8 – Rapid Growth Phase


Versions five through eight were used to build a lot of business applications. During this phase the more serious bugs were worked out of the development IDE and the tool went mainstream. In my mind PB hasn’t peaked yet but it had some great momentum.


PowerBuilder Versions 9 to 12 – Consolidation Phase


Versions nine through twelve represent the peak of PowerBuilder development, and the period when new development peaked and started becoming less common. It seems that once PB 10.5 was released that most PowerBuilder jobs consisted of maintenance or application enhancements. These versions represent some of the most solid releases in my mind with most of the PB quirks worked out of the program. Sadly these are the years when Sybase took over marketing and new development with PowerBuilder began to decline as IT managers believed the water-cooler talk that PB was dead.

Time has shown that PB is about as dead as Cobol, it just refuses to go away. A lot of smaller, simpler applications were converted to .NET but the legacy corporate-wide applications were not even close to being re-written or migrated to other development tools.


PowerBuilder 15 And Beyond


PB Was Supposed To Be Dead

My first year of an eight year contract at a German company that is large enough to be a Fortune 100 company I was told by the business, and IT that the PowerBuilder applications would be gone within a year most likely replaced with SAP. I can still remember some managers betting me a soda that the application was gone in a year, and I’d be gone with it. But us developers in-the-know, the ones keeping these applications running know better and we were confident that the PB applications were going nowhere. It has been almost fifteen years since the bet was made and the applications are still going strong– and I never received my soda either.

Without naming any companies, there are some other Fortune 100 companies I’ve worked since that said the same thing about some huge legacy applications, and not a single one has been re-written or retired. Management planned to replace them but they didn’t bother to ask the developers opinion. We knew the applications were going nowhere and that is exactly where they have gone. Same story, different Fortune 100 company. The best thing that could have happened did happen, SAP took ownership of the tool and committed to supporting it until the end of the decade.

Chasing Microsoft Technology

As cool, and fun as it is using all the new things coming from Microsoft, their development tools still lack the maturity and power to replace the remaining legacy PB applications in production right now. Microsoft is great at building sample applications, or basic CRUD applications but anything beyond that will be painful re-design from PowerBuilder. Now this is happening while IT budgets are sliced RAZOR thin, and I become more confident that PB applications will be here well beyond the next two or three years.

PB is still the only development tool in which one developer can support, and continuously enhance as the business changes. I have been the one-man-team more times than I care to repeat. If you work at a shop that has legacy PB apps than you probably know exactly what I’m talking about. You know about the one, or two developer teams doing the work that a small IT team used to do. This is the reason that a seasoned PB developer is able to command contract rates approaching $100 per hour, and this is the reason that us old-dogs will always have a job if we want one — but that is a different story because we are getting tired and no amount of money is worth killing yourself over — not anymore.

Microsoft Development Tools, Almost Ready For Prime Time

Microsoft still has not addressed the reporting weakness (lack of it) of their development tools. If you need reports then you’ll need a third party tool. If you want to be as productive with Microsoft plan on buying a lot of third party tools and putting together a solid framework.

The dangerously thin IT budgets today cause me to doubt that much progress will be made in replacing legacy PB applications with Microsoft in the next decade.

I am what they call a PB evangelist. I am a die-hard PB loyalist… but I do have fun working with Microsoft development tools such as ASP.NET MVC, or Silverlight. The IDE is second-to-none and documentation outstanding. Microsoft has  hinted that Silverlight is a thing of the past and they are changing direction once again. What else is new?

I have digressed from the primary purpose of this, a quick ride down memory lane for us long-time PowerBuilder developers. The way things are going with SAP & PowerBuilder my days of being a PB evangelist may be nearing an end but the tool will survive without me.


The Future Is Unclear… Really Unclear


This is the part where I have absolutely nothing useful to say. This is the first release that I have less confidence in PB surviving than I did before mainly because of the iron-grip SAP has on the software, keeping it out of evangelists’ hands like myself.

I admit having some bitter feelings about the situation– I mean there is no doubt that this blog has contributed to PowerBuilder in a positive way over the last five years but I am unable to obtain a beta copy of the program to review, or use in making a sales pitch to some IT managers that I am friends with.

I’ve been called at least half-a-dozen times by salespersons from SAP and not a single one understands the “S-ID” and PowerBuilder dilemma. And I don’t blame them for wasting their time finding out because they are, after all looking to “sell” the product not help a developer market it for them. This is an SAP management failure and it will come back to haunt them. Just ask the developers that knew PB applications were going nowhere ten years ago.

PB Competitors, Fighting To Go Prime Time


Some have made some snide remarks about my WaveMaker enthusiasm I have shown on this website. I have been playing with the latest release of WaveMaker lately and once again I’m blown away with the progress they have made.

Once again WaveMaker has made the tool more powerful, more intuitive, and solved issues raised by myself and others. I think WaveMaker has a chance to compete in the crowded marketplace especially if SAP fails to understand that developers have a part in marketing their tools. I hate to sound like a whiner but without the PowerBuilder software there won’t be any new PB articles coming, and in the meantime I am really growing fond of WaveMaker.

Those that know me are already aware that I’m not much of a Java fan… that is an understatement. But even with WaveMaker being a Java based tool it continues to grow on me with each release. I can’t predict their future but I do know that for a PB developer it is easy to jump in and use their tool with little or no training. It is actually fun to use and I am working on a third review of WaveMaker and this one will have a sample program with downloadable code like I promised with the last release.

Time will tell what the future holds for PowerBuilder. I look forward to watching that history unfold. If anyone has feedback about PowerBuilder 15, please leave a comment and let us know how it looks. If anyone else is frustrated about SAP’s policy of requiring “S-ID’s” to participate in the beta program feel free to voice your frustration in comments below. Perhaps SAP will pay attention before it is too late, us loyalists are getting tired of holding our breath.


A Community Sourced Article


An article like this would not be possible without a significant amount of collaboration (or a really organized person) so this section is dedicated to acknowledging those that have contributed. They are listed in alphabetical order.

If you appreciate their help, consider visiting and/or sharing their articles, and if you would please let them know we referred you. If you’d like to contribute to the article simply leave the information in a comment below and don’t forget to let us know what you’d like for attribution.

Networking, Life and Death Decision

Hindsight is blah, blah, you know the cliche’. The bottom line is that you have everything to gain and nothing to lose by networking with other developers. If things go bad and your world starts to crumble around you, a network of friends and colleagues may be the difference between life-and-death. I speak from experience, and I learned the hard way.

The universe is expanding, all-day, every-day and unless do something to keep things together you may find yourself alone with nothing in sight at a time when you need help the most. I hope that you decide to begin networking today and begin making your future brighter.

Contributing Authors

Bruce Armstrong has been using PowerBuilder since version 1.0b. He is the senior editor for the PowerBuilder Developer’s Journal in which he has authored numerous articles and has a monthly news column. He was one of the editors and authors for PowerBuilder 9: Advanced Client/Server Development by SAMS.

Bruce Armstrong’s Publications

Older posts «