Operator

Recently we were hired to build a desktop HTML5version of a client's existing iphone offering. First we evaluated platforms for development. The app already had an API in place for use with the iphone application so we settled on just building another client, in the browser. We didn't see the need to develop in ruby and create a second bottle neck with our ownserver sideapplication that would act as nothing more than a "smart" proxy for the api. After some quick white boarding we decided to build the application with EmberJS and manage the project with middleman. I'll save those details for another post, the important thing is that to understand in this scenario is that the API is hosted by google app engine, and our web client is not. The...

Continued...
Screen_shot_2013-03-27_at_8.09.24_pm

We recently worked on a Drupal website. Not our favorite but we made the best of it. After having one of our devs hack away locally we had to migrate it to a staging server. We were versioning it using git so we didnt want to just throw it up via ftp as it could change frequently and we worked all the bugs out. Since we use ruby for almost everything these days I thought how hard could it be to throw it up with capistrano. The answer was "kind of hard." There were no big problems, just small use-cases and differences between how a system like drupal or even word press would work vs how most of our rails apps work.

To start with we lacked any rake tools to facilitate database management. I had our develop shoot me a dump of his DB to get a...

Continued...
Blog_medium_responsive_web_design

Responsive images seems to be an ongoing problem without any great solutions yet. As we continue to develop responsive front-ends, we continue to develop better way to address the problem.

The Problem

Most solutions tend to be either client-side implementation likeHiSRCorrwdImagesor occasionally, there are server-side solutions for Apache that require .htaccess.Optionally, there are some third-party services likeReSRCthat have a JS plugin and a CDN to serve the assets. For more details, check out this article on CSS Tricks.

Unfortunately, we don't use Apache and I'm not a big fan or relying on third-party services. We needed a controllable solution that addressed the server-side component and the client-side.

A few months ago I developed a simple...

Continued...
Blog_small_screen_shot_2013-03-22_at_12.20.59_pm

Recently when working on an iOS project ourawesomedesign team created a neat element, but I was concerned it would be a lot of workto create as nothing in the standard UIKit really looked like it.



See that neat button based selection bar in the design. I believe it was inspired by facebook's new status screen seen here.



After a quick look through cocoa controls, and github such a thing didn't exist as prebuilt component or I don't know what the terms are to search for it so I set out to create it. At first I considered doing the whole thing as a custom UIView, however this seemed tedious, then it struck me, I could create this as a UIToolbar. Basically we just need a strip of the toolbar background from our design and we can use that in a...

Continued...
Authorization

We've been working on a projectfor a client with the requirement of integrating this application with Salesforce. Unlike many of theapplications beingdeveloping on top of thesalesforce platform, theapplication we are developingis split into two parts. One half is an entire catalog of product offerings, complete with spec sheets, pdfs and videos. This half runs on kohCMS, a powerful content management system for websites and mobile applications. The second half of theapplication allows sales reps to use this catalog to generate quotes in their salesforce organization. Unfortunately Salesforce's new ios-sdk expects Salesforce authentication to be at the forefront of the application, butin our case the Salesforce implementation is more ofan...

Continued...

When Gino first witnessed a deployment occurring in somebody's terminal window he was amazed by "the thing" that was happening. As a joke, we used to always notify him when we're "doing the thing". I decided to take our joke to another level and send text messages to him before and after each deployment, regardless ofwhether he's sitting across from me or not.

It was incredibly easy to set up, so I figured I'd share, maybe somebody would use this for a real need. To get started, you'll need the following:

I create a simple rake task that uses's Twlio's API to send the message. Twilio is fantastic and we've used it for a few years now for some awesome projects. Go register, it's...

Continued...

Happy 5th Birthday, kohactive!

Five years ago kohactive began with a simple mission, build great web and mobile products for clients, ourselves and the world. Since our inception, we've grown in size, worked with some amazing clients and learned a lot while the riding theroller coasterof the interwebs.

In the last five years, we've:

  • Worked on over 200 projects
  • Tracked over 3 million page views
  • Built over 10 internal projects and apps
  • Grew the team from 2 to 7
  • Written hundreds of thousands of lines of code
  • Designed millions of pixels
  • Launched a few iPad apps
  • Contributed to the open source community
  • and much more...

None of this would be possible without our amazing team. The work that Gino, Nick, Sulaiman, Lawrence and Patrick have contributed has been amazing and we're incredibly...

Continued...

Back in July we were working on a fairly large project for Groupon. We had a number of meetings in their office and one of the things I found most impressive were mounted monitors that would stream news updates and NewRelic graphs throughout their engineering department. I thought this is really neat and was something I wanted to bring into our office.

Recently, I realized that we made investments in monitoring services like NewRelic, pingdom, raygun.io and coalmine app but only checked them when something went wrong. So I set forth to build a fun piece, of dare I say tech art, that would get people interested in the quality of service our servers. The first thing I needed was a way to mount a screen on one of ourconvenientlylocated wood...

Continued...

I believe speed is one of the most important aspects of a successful website or application. There are a variety of approaches that you can take to optimize your load times. Aside from server configuration, CDNs and other techniques, we also like to focus on caching. Our CMS iscustomizable. Not just the content but the settings and configurations, too. Including items likelike commenting, posts per page, default meta title, default meta description, Twitter handle, Facebook handle and much more. Some projects have customized settings as kohCMS allows admins to create new settings.

These settings are great for users. They can define and manage the simplest details without having to contact a developer. The problem these create is an abundance...

Continued...
Blog_medium_basecamp

Over the years, we've adopted and fell in love with a variety of tools and apps that increase productivity, enable us to kohllaborate and power kohactivity. After using, abusing and testing hundres of tools, we've found these to be the most useful andeffective.

Basecamp is a fast and easy-to-us project management tool that we use everyday. From client projects to internal projects to our weekly grocery list, we use Basecamp to communicate, share and manage each other. Basecamp is incredible useful for task management and discussing assets, ideas and tasks.

Dropbox is a simple tool to share files. We use it for each project, both internally and externally. We usually share a folder with clients so we can share assets, ideas and designs. Likewise,...

Continued...