Updates in site titles and headers

With the recent change in translateable site titles and headers, we had to change the way they are rendered on page. Here's what's changed: Read more »

Ruby and Rails introduction workshop 2011

The goal of this two-day workshop is to learn the basics of Ruby programming language and build web applications using Ruby on Rails, the full-featured web framework for Ruby.

This workshop also covers the foundations of Ruby community. We'll learn how to use ruby gems to extend your application with existing libraries. Other must-have tools for working in Ruby will be studied.

Also, all the important resources for further information will be introduced. You'll get a push to explore the Ruby ecosystem to write more complex Ruby and Ruby on Rails applications.
Read more »

Creating templates for product catalogues

Before it is possible to add some objects into product catalogues, a pair of layouts must exists. In this article, we’ll show you the good practice of creating product catalogue layouts.
Read more »

Introducing product catalogues in Edicy

A recent addition to Edicy lets you define custom objects with fields that site owner can fill to create objects based on these object definitions. These objects can be listed on site or displayed separately on dedicated pages.

This feature is more than just product catalogues. It let’s you create objects for almost any purpose, basically. So we call them “Elements”, which is generic enough. In this article we'll show you how they work.

Read more »

Add search box widget to your site

Edicy provides search widget to search the contents of your site through Google. Adding this widget requires three things included in your templates: a default stylesheet file, google search javascript file and a form with search box. Fortunately, all of them are provided by Edicy. See more inside on how to add working search box to your site. Read more »

Painless geolocation

Each site built with Edicy can have multiple language environments and when visitors land on the front page of the site, we'd like to display it in the language that the user understands the most. Of course, we're looking at browser accept_language property but this can be a problem since many users do not know that they can set this property and leave it as default (usually english). Read more »

"Namespaced" cache expiring with memcached

We implemented page caching recently in Edicy with memcached. One of the biggest issues we were facing here was expiring the cache (no surprise - expring cache is never easy). That's because it is very expensive to track down which specific pages need to be flushed from cache when user changes something on site. For example, changing the label for one page in navigation menu, all the pages displaying this menu item must be cleared from cache. Basically, this cannot be tracked down in Edicy. So we needed to flush cache for the entire site when user changes something in there. Read more »

Be warned when deploying with capistrano

In Edicy, we're using capistrano-multistage gem to make software updates to testing, staging and production environments. Kinda standard. SSH Authentication to all these environments is being done with ssh keys and this way it is quite easy to mistakenly type "cap production deploy" when you actually meant "cap staging deploy". So we added few extra lines to our production environment file to ask for a confirmation before doing anything in live app servers. Read more »

Making media and blog panels scream

Recently we noticed that those panels used to manage files and blog posts in Edicy became quickly slower when they contained many objects in it. These scrollers ran the code we created for private beta version and hadn't changed much since then. So this part was a good candidate for refactoring and here's how we reduced loading time from 52 seconds to 1 second on panels with huge number of elements. Read more »