Work With Us!

Get A Quote


Dev tip : Embed a Twitter timeline on a website without OAuth


To embed a twitter timeline or a tweet feed on a website, you have 2 choices : use the widget provided from Twitter or use their 1.1 API.

Using the 1.1 API

To use Twitter 1.1 REST API, you’ll need an OAuth or an app token. This API very complete and you can do whatever you want with the data you get.
The worst part is, you are limited on number of queries per time.

All info about available data :

Each query has a rate limiting, divided into 15 minutes intervals :

It’s easy to use the API to display tweets on a website with AJAX. But as it’s limited, if there are to many visitors, your queries will be rejected.

The best way would be to get tweets on server side every 5 minutes, save it into the DB so you won’t query twitter api each time the page is loaded.

Using the Twitter widget

This widget is really easy to use. Twitter even has an assistant to help you set it up :

But this widget is quite limited. Its main drawback is that you can’t customize the way tweets are displayed. You can always use CSS but it’s limited and it also has a few customization options but nothing really advanced.

More info there :

Cheating the Twitter widget

To avoid REST 1.1 API and its limitations, Jason Mayes has created a JS script to get tweets from the widget. So you avoid OAuth and limited queries and you get only tweet data as JSON so you can process it the way you want. Very handy !

You can get more info on his website :


We’ve Added an Accent to Our Office


Hop Studios has added a new accent to our office.  Not a color—a voice, attached to a developer.  His name is Louis Dekeister, and he joins us from France.  Ooh la la!

He’s a top-notch PHP developer with experience in several content management systems and a love for clear, readable code. He has just moved to Vancouver from across the pond, and so far seems to be enjoying our rustic native lifestyle.

We expect that Louis will do great things, not the least of which will be helping with the growing client roster here at Hop Studios. We also hope to increase our add-on development - breadth and depth of features, and to offer a broader range of services, such as e-commerce, app development and additional Web marketing and SEO work.

Take a peek at our staff page for a glimpse of Louis (and the rest of us)!


ARPA Online launches a refined web presence


We recently completed a project for ARPA (Alberta Recreation & Parks Association). They approached Hop Studios to have us manage their site’s development, and to have us modify their community sub-site. We are proud of the end result! Here’s some highlights of the work we did:

The ARPA Online website went through some style adjustments. We refined the look by removing unnecessary visual noise from the site. And we upgraded their ExpressionEngine installation (it had multi-site manager and was quite the complex octopus of an upgrade).

ARPA wanted their ACE Communities website redesigned to more closely resemble their main website. Hop advised in design process and then converted their designs into working templates that worked with their existing content.

The final result is sleek and easy to update, and a great resource for folks looking for information about outdoor activities in Alberta.


5 Reasons Why Mountee Was Better


Mountee IconThe makers of ExpressionEngine add-on Mountee have decided to discontinue it.  I know one of the developers personally, and I’m certain that it’s the best decision for him (and his business partner) to make for themselves. I wish him well and have no hesitation in telling him personally that I support him—but discontinuing his product stinks for me, for the clients of Hop Studios, and for the ExpressionEngine community.  Here are five reasons why Mountee was better than any other workflow I tried:

1) Easy setup

Setting up Mountee to work with your ExpressionEngine site was superbly easy.  You only needed three things: Mountee installed in ExpressionEngine, a password to access the EE control panel, and a Mac*.  If you had those, Mountee would work with any version of EE back to 1.6—no additional information or setup necessary.  With other setups to work with templates as files, you need a Git repository setup and a login, or an (s)FTP password in addition to an EE login (which is often a shared account, not individual per user)—and in some cases, you need VPN access, knowledge of a weird file path, etc…  That’s all fine and fairly straightforward if you control the server or set it up yourself, but it’s harder when dealing with new clients who have their own setups already. Mountee just worked.

2) Searching “templates saved as files” sucks

If you use the EE control panel’s built-in search to search in templates, it only looks at the current database record of that template, not at the file version of that template.  So if a newer template file has code that isn’t in sync with the old unsynced database version, EE’s search is inadequate and misleading.  This has bitten us more times than I care to admit. With Mountee, there are no files, so EE’s template search remained a fast, accurate way to look for code. Mountee let EE template search just work.

3) Versioning

If you use Git, you get fantastic versioning control—outside of EE. (And if you don’t use Git but still edit templates as files, which many people do, you get NO version control and you’re clearly a danger to humanity.) When you save templates as files, EE’s built-in versioning of templates is no longer the whole story when you’re doing forensics or wanting to roll back—whereas if you use EE’s versioning, you can see which EE account made changes and when, in the same interface that you might also be looking up who edited an entry, who logged in when, etc.  Mountee let us have the benefit of file-like access, without giving up the integration of EE’s versioning and logging. Yes, git does versioning and logging very well, but it’s nevertheless not integrated with the rest of EE. Mountee let the default versioning just work.

4) Access and editing

With templates saved as files, it’s not possible to limit access to just some templates and not others at the file level without a huge headache. With Mountee, we could use EE to easily control access by template group and also to quickly give an entire member group access to certain templates. Without Mountee, you had to be more careful about conflicts between allowing the client to edit in the control panel, and having the developer edit templates as files. Because there were times when it was far easier to give the client access to one template by which they could edit things like the number of results to return, or to comment in or out an element in the side bar—and before you say snippets or Low Variables are a better way to do that, realize that neither of those are versioned or logged, and they are overkill for a client who has basic HTML knowledge and could easily make a small change in a template. Mountee let access control and editing just work.

5) On the Road Editing

When you are away from your main computer, there are times you need look at EE to see why something’s going wrong, and you may find you need to make a small edit to a template. It’s nice when that happens if you don’t have to find yet another set of credentials (FTP or git) to edit the file somehow. It’s especially nice when you’re on a device like an iPad or smart phone that makes file editing harder than Web browsing. It’s especially nice when you remember that because you’re editing the true database version directly, the change isn’t going to be overwritten next time you sync the template files. Mountee made that possible.

So Long, Mountee

The loss of Mountee is going to be used as ammo for those who want to say ExpressionEngine developers in general are dwindling; but I know this is just anecdotal data, not an unarguable survey outcome, and it’s important to remember that. Nevertheless, the loss of Mountee is the loss of a single brick in the ExpressionEngine edifice that I will mourn deeply.  It was an elegant, professional add-on to EE, by developers, for developers. It made our lives (and clients’ sites) better, faster, and I will be thankful for the years Mountee was a key part of my toolbelt.

* Yes, and Mountee itself, and Internet access, and power, and… but you know what I mean.


Truthdig wins 2014 Webby Award for “Blog - Political”


Yet again, Truthdig wins another Webby Award!  Congratulations to them for earning the People’s Voice Webby Award for “Blog - Political”.  Truthdig’s continued success comes from continuing to serve its most important people—its audience—and this shows how much their audience does appreciate them!

We are proud of you, Truthdig, and are honoured to be involved in your growth and development.

Updated May 5: Truthdig also just won a Maggie Award from the Western Publishing Association for Best Publication blog. The hits just keep on coming!

Web Design and ExpressionEngine Development Consulting - Vancouver (BC) Canada