Archive for 'Our Work'

TAI Extends Client Websites With Both Third-Party and Custom WordPress Plug-ins

Last week saw the launch of another Trinity Applied Internet custom WordPress website for northern Nevada short sale and foreclosure experts GreenStreet Realty. It features the new custom sidebars plug-in Patrick is getting ready to release to the WordPress open source code base, allowing for each section, or even each individual page, to carry a completely separate set of widgets in the sidebar. This allows the template to be infinitely more flexible and takes WordPress one step further towards being able to handle content like big brothers Joomla! and Drupal.

We also got the opportunity to play around with the IDX integration piece offered by GreenStreet’s MLS listings vendor, and are happy to report it was smooth sailing. The listings appear in various places throughout the site, and can be searched from the sidebar widget. Clicking a property listing brings the user to GreenStreet’s results page which is actually external to the website, an integration that looks seamless to the user.

Our content department (Erin, Nicole, and for layout, Rachel) contributed extensively to this project as well, with support including social media set-up, research and copywriting. And, there’s more to come! Stay posted for more exciting project updates…

Investing Time and Experience Before We’ve Even Started

Working with Trinity Applied Internet Part B: Investing Time and Experience Before We’ve Even Started

You know the staff. Now, what is the process? How do we approach your project?

The term “applied” in the name of the company is no accident. A cumulative thirty years experience in software and web development speaks volumes on behalf of the partners, and is directly applied to every project we produce, problem we approach, and product we deliver. The process behind your website or web application development is not piecemeal or made up as we go along.

Consult, research, facilitate, plan (and plan and plan some more), design, develop, test, adjust. Rinse and repeat. Every time, for every project. It doesn’t matter the size or the complexity of the project at hand, we spend the time at the beginning on analysis of your company, research, and planning. In fact, if you have already been through an estimating and proposal process with us, you know we spend a considerable amount of time getting to know you before we’ve ever even won you as a client.

Think every shop that advertises their easy and cheap WordPress package, or their hosted solution you dial right into, does that on your behalf? They don’t. Believe us, because we hear time and again from clients who tried out the competition first because of a really attractive price point, and since have realized they didn’t need a cookie-cutter approach. Or they went with a big media and advertising agency and were shoehorned into marketing decisions based on what the agency was “really good at,” and how it wanted to promote themselves as a full interactive shop.

Well, that strayed from the topic a bit, but the point is, at Trinity Applied Internet you get specialized, considerate, and tailored service that addresses your needs specifically. If you are a marketing department working with some IT constraints, we plan for that. If you are a small organization with one paid staff member and no time for teaching yourself website administration, we plan for that when we design your project, rather than discovering it at the end (or not at all.)

The adage about “prior planning prevents…” at best catastrophe and at worse any number of irritating little hassles. We take it to heart, to the extent that we are researching, discussing, and planning your project before you have even officially engaged us.

Perpetual Apprenticeship

Does it seem like you are perpetually learning new things about how tools and strategies online can move your business forward? Over the years, I’ve met many people in many different situations who somehow expected to read up, get some advice, and then carry on with the knowledge of how the internet works and informs their business. Small business owners with marketing websites, IT professionals certified in a particular enterprise system, and plenty of folks somewhere in the middle who have been tasked to generate leads, sell things, or otherwise move business online.

Invariably, after working with us a while, these clients look at me (usually in their mind’s eye because we’re meeting online) and quip something like, “How can you manage this stuff when everything is constantly changing? Doesn’t this drive you insane?”

The answer to question number two is, yes…and no. Luckily, everyone we are fortunate enough to have on this team thrives on learning. Research. Applying lessons learned in one area to another. Patrick brings many years’ experience designing and developing software systems (with a bit of hardware experience, to boot.) Keith has spent an equal amount of time navigating the waters of “we-think-it-can-be-done-let’s-work-it-out” in teams both large and small. We are all perpetual students, continually following industry news and taking learning opportunities wherever we find them. We clock lots of overhead hours to R&D. Those interested in doing one thing over and over their whole day, week, career, need not apply here.

And then, just as we start to feel smart-ish, there’s a new version of IE, or Google releases some big hairy updates, or someone goes and invents something. (Twitter?) Every lesson we learn seems to point to more undiscovered territory, but also allows us to keep a solid footing when recommending solutions, troubleshooting issues, and making informed choices throughout the design and development process. We are keep at it on behalf of our clients, because we’re curious, fascinated, maybe even a little obsessed.

Excuse me, but I’ve got to go review my Google alerts on search marketing now.

2011, Wrapped Up at Trinity Applied Internet

As we return from our holiday break ready to conquer 2012, we feel it is only fair to offer a short wrap-up of 2011. In brief, it was a great year with some challenging and intriguing projects, and a ton of changes for Trinity Applied Internet.

One year ago, TAI consisted of Keith, Patrick, and Erin. We have grown by more than 60%, adding Nicole and Rachel full time, and Kym part-time. We have built a content marketing team, and now are able to offer clients services including copywriting, blog management, social media management, shopping cart administration, and other strategic marketing tasks in conjunction with our standard websites and application development. Many thanks go to our outstanding content clients, including Joelle K. Jay and The Inner Edge, TopLine Leadership, Our Broken Family Court System Conference, and NV Stem Education Coalition. We can’t wait to see what the next year brings!

Our ongoing maintenance, hosting and support business has been humming right along, as well. We continued providing service and support to Server Technology, PDUS Direct, KUNR, and a number of other companies, while adding the Nevada Immunization Coalitions and ITS Logistics to the mix. We provided project management and support to Vitamin Research Products and performed a Microsoft AX to Salesforce systems integration for Haws Corporation. As always, Trinity Applied Internet is proud to be invited to work for these industry-leading, globally or regionally respected companies.

And, as always, we’ve been launching a steady stream of custom content managed websites for companies big and small. This year’s site launches included the Nevada Small Business Development Center, The Nicholas and Dorothy Cummings Foundation, Edible Pedal 100, Reno Sunrise Rotary, and Cart Barn, just to name a few!

We had some new opportunities this year including the chance to participate in Reno’s first ever Hack-a-Thon, Hack4Reno. We had a great time and even won Best Social App for our community-driven event application, EventSmash.  We also jumped into the conversation online, and created a goofy little app that helped anyone keeping track of the Old Spice Guy contest know who was ahead in “mentions” at any time during the contest – great fun!

There isn’t really any way to wrap everything up in one blog post – it has been such a busy year. But suffice to say there is a lot going on, with even more exciting developments on the horizon. The start of 2012 will see the reveal of some very exciting projects, as well as new developments in the office… (Namely, an office!)

We’ll keep you posted!

 

 

Trinity Applied Internet Voted Best Social Application at Hack4Reno

Hack4Reno was a fantastic experience, and we really enjoyed working with several local teams!

Keith Anderson of Trinity Applied Internet Working at the Hackathon

First, a giant thank you to Reno Collective and The City of Reno for putting on this incredible event – we look forward to participating again next year. And, we were blown away by the talent of all the teams, but want to give a special congratulations to our friend Dawson Loudon of Sapphire, who took Best in Show for GoOutsi.de.

We created EventSmash: a mobile-friendly, area-wide events calendar website. Anyone can post an event, but only registered users can vote on these events. Users can sort events by category, including: art, training, music, nightlife, and more. All posted events are geo-located, so users will only see events that are relevant to their location. Fields to be published for each event include event title, description, date, category and place.  Also, the map icons change based on the type of event. Users can sign in through Facebook, Twitter and Google.

Some of the technology behind the app:

  • consumes and publishes events via RSS and iCal
  • allows developers to integrate EventSmash with their own website or application using a publishing API
  • built on Ruby on Rails and hosted on Heroku

Keith and Patrick Anderson at Reno Collective for a Hackathon Mixer

 

We are honored to have won Best Social Application, and will be fine tuning and updating the app for full use very soon. Check back or keep in touch through our Facebook and  Twitter updates!

 

Hack4Reno: Choosing a Project

Headed to Hack4Reno this weekend? Choosing your project can be difficult. The Hack4Reno organizers offer some guidance on brainstorming ideas. We’ve come up with a few hints of our own to help you get those creative juices flowing, along with a little advice.

One way to get ideas is to go and look at what data is available. The City of Reno provides several data sets to the public, and the Hack4Reno organizers have put up a Reno is Artown.

Our advice is this – consider whether the data you’re showcasing encourages repeat viewers. Raw statistics, such as crime data, while being a curiosity, usually lead to something people check once and never revisit. And if you’re planning on integrating social media, having something offer not just this weekend, but a month, two months or a year from now is an important consideration. People want to share new things with their friends, not data from six months ago.

Happy Hacking!

Hack4Reno Is Coming!

Calling all developers and designers! We are super excited to be a part of the fun happening in 5 short days.

If you haven’t heard yet, The City of Reno and Reno Collective are organizing the first ever Hack4Reno – a 24-hour ‘hackathon‘ which is a team competition where apps are to be built to benefit the community. Apps can be anything from serious and potentially life changing to something fun and light hearted.

Why are we participating?

We want to help get the community involved in giving back with their mad designer and developer skills to the city (and region) and to promote the openness of platforms and data.

We are not only forming a team (Go Trinity!) but we are also sponsoring the kick off luncheon for participating teams on Saturday at noon, and coffee for participants later in the evening.

Perhaps it is not for the faint of heart: let’s remember that this is October in Reno and the competition is being held outside (out in the open – like the open public data), but it will be 24 hours of having a great time with fellow developers and giving back to the community.

Come root on the Hack4Reno teams this Saturday, October 15th at noon at the Pioneer Center for the kick off and if you are really excited you can join us and stay all night! Or come back on Sunday, October 16th at 2:30pm for the announcement of the winning team!

Engineering Socially: Traffic Spikes and the old new Old Spice Guy

A while back, we did a little promotional project to tie into Old Spice’s online marketing campaign running on YouTube.  It was very spur of the moment, since we launched the project after the Old Spice campaign had already started.  Because of how fast we needed to get something working, and the size of the potential exposure, some of the engineering issues were more prominent for us than they have been in the past.

Engineering Challenges

We knew right away that if we got any pick up at all, we’d be looking at a significant traffic spike.  While we were hoping for the best in regards to traffic, that also meant preparing for the worst – a huge traffic spike.  The big engineering challenges were:

  1. The promotional page must not impact regular operation of the other websites we manage for our clients
  2. It must not negatively impact bandwidth allocation from our hosting partner Slicehost.  And by negatively impact, I mean cost us money.
  3. The hosting must be able to scale easily, so we weren’t looking at a lot of server errors, or being offline completely.
  4. Ideally, the hosting for this should cost as little as possible, since it was pretty much a one shot deal.
  5. We knew the campaign was already going on, so we needed to get it up and running fast.
  6. The application had to handle several large data sets, namely: Twitter feeds and Facebook, Digg, YouTube and Reddit comments.

Clearly, we weren’t going to be hosting it on our own servers.  Too much risk of a slowdown causing denial of service for our customers.  The sites we host generally don’t get the level of traffic that warrants the engineering investment in load balancers, content delivery networks, redundant servers, etc.  And setting all that up for a spur of the moment deal like this just wasn’t worth the investment of time.  We also didn’t want to afford the cost of setting up at least one, but possibly several, new virtual servers, since we would be paying the full monthly cost.

While there are many virtual application platforms out there, such as PHP Fog, Heroku, and Google App Engine just to name a few, the short timeline and my previous experience with Heroku made it an obvious choice. Since we had no idea when Old Spice would declare a winner and end the campaign, we set ourselves the goal of having something up and running the same night.

Because of its close integration with rake and git, Heroku seemed like the best choice to host the application.  Heroku makes it easy to create, deploy and scale rails apps, and has lots of seamless automation to make maintaining them easy.  A bonus for us is that they only charge you for the time you actually use.  So we could scale up our processes (to serve the app) during the initial rush, and then scale down again when it was over.

Also, Heroku is a Rails 3 hosting service and Ruby made the app a breeze to build (satisfying the time constraint).  I went from idea to working site in an evening. I built the app as a single page, which updates the data on a fixed interval.  While I could have used Heroku worker processes to remove  the refresh process from the page display code path entirely, that would have added to the final bill, so I stuck with refreshing the data during page load and causing an occasional slow request.

Implementation Challenges

While it would be nice to say everything went smoothly, despite all this planning, there were occasionally problems, but surprisingly all of them were from our outside data sources.  We used Google Fusion Tables as mass storage for the collected tweets, comments and feedback that we were mining for “votes.”  I discovered the hard way that very occasionally the comma separated values (CSV) formatted output from the Google Tables API was not quite as CSV standard as Ruby would have liked it to be.  Comments from Twitter with newlines in them were occasionally showing up without being enclosed in double quotes.  In fairness, this might have been a garbage-in-garbage-out issue from the software that was scanning Twitter, but the time we had the problem, it was much too late to fix the Twitter side of things, as the data was already somewhere amongst the tens of thousands of records in the raw Twitter feed table.

Fortunately, we could exclude records from our API calls to Google, but we needed a unique record id to do it.  Unfortunately, Ruby’s CSV parser was somewhat unhelpful about exactly which record was causing the problem.  And the web front end to Google Fusion tables doesn’t have a way to jump to a specific record easily in any case.  Paging through a table with tens of thousands of records a hundred at a time is no way to do things.  And of course, rather than returning nothing, or the data up until that point, or trying to recover, the Ruby CSV parser just throws up its metaphorical hands and raises an exception when the CSV data isn’t up to its standards.  So it was a perfect storm of mediocrity.  While the argument can be made that that’s exactly what the Ruby CSV parser should have done, having it return nothing meant that suddenly our numbers were all over the place.  I did eventually track down the offending data and hide it from the Ruby CSV parser, but it would have been much more helpful to have a parser that could at least try to continue in the face of corrupt data.  I think the robustness principle applies here.

Lessons Learned

We learned several lessons from this exercise:

  1. Plan to be inundated with traffic.  We got more than 25 thousand unique requests the first day.
  2. Make sure you have a backup plan when relying on remote data.  You never know when or why problems might crop up.
  3. Secure a domain name or other stable URL sooner rather than later.  After all that work, we almost blew it by announcing too soon, before we could be sure our domain name was working.
  4. If you think you might need to scale, plan ahead.  It’s much easier to take advantage of someone else’s infrastructure which was designed for scalability than to roll your own or try to shoehorn it in after the fact.

But all in all, we learned a lot from this about how to handle high profile events.  We also had a lot of fun doing it.  And hey, a shout out from the Old Spice Guy is pretty cool too.

The Content Crunch: Setting Your Project Up For Success

We focus on content management systems here at Trinity Applied Internet, but we are constantly reminded that for our clients, the system is not the difficult part when putting together a website redesign. (Probably, that’s because they are relying on us to work the magic.) The system, the code, custom plug-ins and even (to an extent) the design and user interface are usually relatively easy compared to… that’s right… generating the content itself.

In fact, we have worked with some outstanding organizations and businesses that, despite having an awesome story to tell, have no writers, no time, or no inspiration to get the story down on the page.  I understand their plight, having agonized for days over exactly what to write this blog post about, and how to write it.

The key to the success of your new website, depending on its goals and purposes, is probably writing some solid copy that will engage your audience and leave them wanting more. (More product. More information. More of your smiling face or your stellar services. ) This takes time, technique, and at best some experience. And while it is tempting to say it takes talent, the truth is it takes very little talent and can be learned over time.

The Content Crunch Part A, Step 1: Make the Time

So, you are designing a new website for your company. You have a list of features and functionality you need, you have completed your branding, you have plans for both online and offline campaigns to drive traffic and be supported by the website, synergistically. Now, you need to take some time out and plan for, collect and craft your content. We urge the companies we work with to do this during the few weeks or months when we are heads-down coding. We, or your developer of choice, will be busy working on things that won’t be ready for review for a while; you can be busy sharpening your pencil and crafting that content!

The Content Crunch Part A, Step 2: Assign The Right Resource(s)

Your company may have a marketing department, you might be lucky enough to have an agency, or it might all be up to you, as the owner, executive director, or team member who drew the short straw. We have a content team that can be contracted to write your copy, if that’s helpful. But in any case, someone is going to sit down and begin writing and it will be easier, faster and smoother for everyone (your audience included) if your staff or contract resource is the right resource. If you love to write, are excited about the prospect, and can spend a little time reading up on web copywriting –then go for it, you’ll do great! If (and we see this every few months or so) you break into a cold sweat at the prospect and suddenly it feels like you are back in the eighth grade with a big report due, then you are probably not the right resource for this task. Trust me. It will be agony for you, and probably not turn out very well.

Make sure you know who is going to write this (preferably before you start a single thing), and take care that that person or team is the best person or team available to you. Setting your project up for success by attending to these two (easy! simple!) tasks will jumpstart the process and have you just that much closer to some outstanding web content.

Thanks for reading. Next month…The Content Crunch Part B: Getting Past the Blank Page.

Social Media Tracking Application for the Old Spice Campaign

We love our jobs. As part of our daily course of business, we get the opportunity to work with some wonderful clients, provide solutions to solve some of their tough problems, and generally make things better for them. Some of the work is not very glamorous, but we are here to get the essential important stuff done for our customers – not grab headlines. Last week, we got the chance to work on something that was challenging, fun, and a little crazy in its reach. We built an application (overnight) to display data about the current Old Spice online campaign, and got a huge response. It does not get much more fun and exciting than that.

If you are not familiar with the re-vamped Old Spice brand and their innovative use of social media channels, let me give a brief synopsis. Last year, Old Spice hired the “Old Spice Guy” to promote their new products. Their agency (Weiden + Kennedy) created a series of fanciful commercials with the Old Spice Guy.  The campaign moved online with a series of YouTube videos,  posted as responses to users asking questions (both famous and not famous) on social media channels like Twitter, Facebook and YouTube. For a more in-depth description, head over to Mashable or Digital Buzz.

This year Old Spice‘s online campaign involved a YouTube based battle of words between Fabio (yep, that Fabio) and the Old Spice Guy. Fabio was attempting to usurp the title of New Old Spice Guy, and Old Spice Guy rose to defend it. You can still watch the story unfold on their YouTube channel.

After watching the first day of the campaign, we decided to build an application that tabulated mentions of Fabio and Old Spice Guy (and related terms) across five social media channels (Twitter, YouTube, Facebook, Reddit, and Digg.) We displayed which character had more mentions (as well as made a worm graph of the trending in real time) ostensibly to figure out who was “winning.” You can view it here.

We blatantly stole some of the design elements off of Old Spice’s YouTube channel (they didn’t mind, apparently) to make our site identify with the campaign, then Pat went to work furiously coding the entire database application working well into the night. (He can do that, he lives in the Land of the Midnight Sun.)

The next day we crossed out fingers, and Tweeted out the application’s URL to Old Spice. Old Spice must have liked it, because they tweeted it out to their followers and posted it on Facebook.

We got 25,000+ unique visitors in one day. As a thank you the Old Spice Guy even made us a video. How awesome is that?

Despite their response making us a little giddy–

(I mean, this campaign made some big waves in our industry last year, and here they are, Tweeting and posting to YouTube about us!)

– we got a lot more out of this than a video. We demonstrated working with large amounts of data coming from different sources, creating data-crunching applications quickly and with creativity, handling irregular and enormous traffic surges, and enhancing an existing social media campaigns.

And, we had a great time. Thank you Old Spice, for a great opportunity.