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!
When people hear the phrase “profanity filtering” their minds typically go directly to the gaming industry. Certainly gaming has a very strong need for filtering as communication between players in chat and forums is a key component of how companies can build and grow an online community. Many of our early clients came from the gaming industry.
The Gather API enables websites, apps (desktop/smartphone), anything really, to fully interact with user generated content stored in Gather. The use cases are limitless. Here I’ll show how Gather’s search API can be integrated into a browser-based game to enhance the user experience.
Let’s assume you’ve built an amazing game that has revolutionized in-browser role-playing. It’s called Candide 3D. In the first six months after launch both the game and the community website have been wildly successful. The website community allows users and administrators to create game guides, post tips, answer questions, and more. The community content has become so valuable that your users are asking for a way to access the content from inside the game. The game-play experience, best played full-screen, is hindered when users must: minimize the game, run a community search, commit relevant results to memory, and finally, return the game to full-screen. Certainly not a great user experience. Good thing you chose to build your community with Gather!
Here’s an example screenshot of what we want to end up with:
If you’re not a developer or some other breed of nerd, you may be asking “What the heck is an API and why does everyone keep talking about them?” An API is defined as an ‘Application Programming Interface’. That definition doesn't help much for for the non-technical, so in practical terms it is simply a documented way for one application to talk to another application.
Why are we talking about APIs? Because they are cool! Yes, APIs are cool. Let me explain.
API vs. Ford Model T
For the unfamiliar, you may more easily identify with a user interface and understand the importance. When you get into your car, unless you’re one of the few remaining Ford Model T owners, you don’t have to cross wires and yank on pulleys to operate your vehicle. These manual steps are not required because the designer built a user interface for you to operate your vehicle. The interface includes the steering wheel, gas and brake pedals and even some knobs to turn up and down the heat to keep you comfortable. The better this user interface is designed, the easier and more enjoyable it is to operate your vehicle.