Web Developer Tips April 2015

A few takeaways from my web development experiences this month. CSS, HTML and more. more …

MySQL Bulk Insert or Update

Any technique that saves round trips to the database pays for itself exponentially over time. MySQLs bulk Insert or Update syntax is one of those techniques. more …

The simplest possible way to prevent brute-force logins

Protecting your login from brute-force attacks is much simpler than you might think. With three quick updates to your code and database, you'll be all set. more …

iOS8 Card Scan – Making your payment form “compliant”

Making your existing e-commerce payment forms work with the new iOS 8 Scan Credit Card feature is worth the minimal effort required. more …

Top SiteKickr Tweets of 2014

What’s a good blog without a year-end report on our top tweets for the year? I think this kind of thing is a good way to see what was trending as the year goes by. Based on my Twitter reporting, … more …

A shorthand substring search function for JavaScript

Make your life about 1% easier by creating a convenience substring search method on the JavaScript String prototype. more …

MySQL Sales Reporting by Holiday

Not all real-world reporting requirements align well with how your data is organized. In my case, I had to produce sales reports tied to a US Holiday (which varies year-to-year). more …

Installing ImageMagick on CentOS for use with PHP

It's not brain science, but it did take me a reasonable amount of time to figure out how to properly configure my CentOS server for using ImageMagick with PHP. more …

Combining multiple SQL queries for listing pages into one

With a little extra effort, you can construct a single query that returns multiple rows using the SQL IN operator. From there, you can convert the query results into a language construct that is easy to work with. more …

Usability and end-of-document padding

Just an hour ago I had a client email me to let me know that they couldn’t see the text at the bottom of a quick report I created for them. Reason: The task bar at the bottom of Windows … more …