Recently, I was working with a customer that had a URL slip through CleanSpeak’s URL filter. The URL looked something like this:
The trick this user employed to get around our URL filter was using the Unicode character “ 。”(code point 0x3002 or UTF-8 0xE38082). This character looks like a period but wasn’t in the list of valid URL separators that CleanSpeak handles.
My initial thought was to simply add the character to the list. That required me to look up the Unicode code point for it first. I then realized that there were a ton of other characters that also looked like periods. In order to properly handle this, I’d need to add all of them to the list. I also noticed that there were numerous other characters someone could use to trick the URL filter like arrows, pictures and symbols.
With the number of apps and mobile users projected to increase exponentially, developers who create the most advanced technology fastest will gain the competitive edge needed to stand out amongst competition.
The software industry is ever-changing. The field is highly dynamic, focused on building and changing the way we live, work and play. 2015 was a tumultuous year for developers.
IT was impacted by innovations from within as well as external factors, such as increased government regulations and cyber-crimes originating both in the U.S. and abroad.
I’ve been working to convert a bunch of our database columns from integers to UUIDs. I was having a hard time figuring out how to handle this conversion easily in PostgreSQL. For some reason, the PostgreSQL developers decided that the int data type was not converted to UUID automatically. This is somewhat shocking because both of these data types are binary types with different lengths (int being 4 and UUID being 16),. Since I couldn’t submit a feature request and wait 2-3 years to have it implemented, I had to find a solution that worked in an SQL script easily.
After some playing around and hacking in sql, I figured out the solution. Here’s a little snippet of my solution:
CREATE TABLE foo (
ALTER TABLE foo ADD COLUMN new_id UUID NULL;
UPDATE foo SET new_id = CAST(LPAD(TO_HEX(id), 32, '0') AS UUID);
ALTER TABLE foo DROP COLUMN id;
ALTER TABLE foo RENAME COLUMN new_id TO id;
ALTER TABLE foo ALTER COLUMN id SET NOT NULL;
The trick here is you need to convert the integer column to a hexadecimal string and then pad it with zeros. Since PostgreSQL happy converts strings to UUIDs, you can just cast the string to a UUID. Simple!
New Zealand recently enacted a bill that will make cyber-bullying illegal and punishable for the bully and the company that hosts the application used for the bullying.
Though there were a few legislators that voted against the bill, the vote was an overwhelming 116 to 5.
Opponents believe that this will impact free speech and that determining if specific user-generated content is in fact cyber-bullying could be difficult or impossible.
From my perspective, I don’t feel this bill impacts free speech. It is similarly illegal to harass or threaten someone in person, so why should it be any different online?
Furthermore, identifying user-generated content that is cyber-bullying shouldn’t be overly difficult. If someone feels cyber-bullied and reports the issue, that should be enough to investigate. Likewise, companies can also use automated solutions like CleanSpeak to help get alerts when conversations look like they contain cyber-bullying. Companies can let moderators make the final judgement and remove the content from their applications and/or kick the bully out as well.
Support forums are now a requirement for almost any business that has customers. Most support forums are hard to use, unorganized and look terrible. To illustrate some of these issues, I’m going to pick on the Logitech forums, which are powered by Lithium (http://forums.logitech.com).
One of the first things customers do when looking for support in your forums is to search. If your search isn’t awesome or has any odd bugs, it will probably drive your customers crazy and they might give up and return the product instead of trying to fix it.
Here’s the Logitech search bar: