Our reading list January 17, 2007
Posted by Slobodan Kovacevic in : Resources and Links, ArrayStudio News, Web , add a comment
photo by brothercake.Recently we wanted to experiment with Amazon shops, so we have decided to setup a store with books we would would recommend - essentially our reading list. Books vary from those about web design and web programming to books about running a business (a must for anyone wanting to run their own business or even if you are only freelancing).
I hope you find our book recommendations useful.
We would also like to hear back from you. Have you read a good book that we haven’t included? Let us know and we’ll add it to our list.
6 Web Designer Health Tips January 14, 2007
Posted by Predrag in : Web Design , 3 comments
It is silly to complain about a Web Designer’s job. You sit in your favorite chair with a laptop in your lap or in the office behind your custom made table. However, when you lack inspiration - you’re in trouble. Specially if the deadline is tomorrow morning. That is the time your mind and body overheat. In every possible way.
I have some weird mind flow with deadlines. Even though I have weeks to complete a design, in 90% of cases I work through Sunday night, completely stressed and freaked out with a bunch of cold energy drinks. Don’t even want to talk about how I look next morning.
Here are some health tips based on my experience.
Health tips
- Don’t rely on deadlines. Start soon. If you expect you’ll need 2 hours to complete the project and have a clear vision of what you need to do – do it right away. In most cases, it will take you at least 1 day to polish your creation. If you have 2 weeks, leave the second week for small adjustments. Don’t wait last day to start! It is much better to spend last day playing PES6 with your colleagues.
-
Don’t smoke next to your computer. Well, don’t smoke at all! I do, and I’ll start a new blog once I try to quit.
If you smoke, don’t smoke next to your PC. When I did that, I stopped counting packs. To be honest, new tip is just born. Don’t smoke while you write your blog entry. Just don’t.
-
Change your everyday routine. Go to places you’ve never been before. I read some study regarding F5 neuron syndrome (refresh for non geeks). Anyway, when you are stuck in your every day routine, you refresh only part of your brain which leads you to a sort of depression and inspiration deadlock. So, change your behavior. If you have your 9-5 work, you have 16 hours a day for trips, nature, off topic books, movies, friends, PES6, your loved ones… Combine these the way you like.
- Follow common trends. You don’t need to invent your design. The worst nightmare for Web Designer is to look at empty white sheet for 30 minutes. This is a best way to get stuck. Browse through some successful websites and see what they do. Compare your projects with them and see what is working best. Start from there and everything will go smoother. Even though I don’t visit microsoft.com often, now I do since they did a great job with their new website.
- Use Red Rabbit Technique. If your mental health is in bad shape because of clients, use this technique I explained in one of my previous posts.
- Try to find some personal space. When you work in your office, you are usually disturbed by your colleagues and pulled out of your creative flow. If you are a nervous guy (some say I am, damn it), buy some studio headphones as your #1 office sanctuary. Fill your PC, iPod, iPhone (bless it), or Zune (God forbid) with a music you find inspiring. Off-site solution is working in your home studio (usually part of your room) or wherever it is where you find your peace.
Rails Simplified: Migrations December 25, 2006
Posted by Slobodan Kovacevic in : Programming, Ruby & Rails , add a commentWhen you start learning Ruby and Ruby on Rails you are faced with very powerful set of tools and sometimes it can be overwhelming. You are often faced with long cryptic explanation of some feature and all you want is a quick overview of what it does and how you could use it.
Rails Simplified will be a series of posts is giving you a brief description of various Ruby / Rails related features, as well as pointer to other articles that give you a more in-depth view of those features. Rails Simplified - Migrations will be the first one in this series…
Rails Migrations
What are migrations?
Migrations are an easy way to manage your database schema in a way that you can easily synchronize it between different servers (for example between development and production server). Simply put: you can write code that can upgrade or downgrade your database schema - think of it as database versioning.
If you did any programming you probably know how hard it can be to keep track of database changes - migrations make your life a lot easier.
How do you use migrations?
- Create migration using: ./script/generate migration ShortDescriptionChange
- Edit file that was created in db/migrate dir and describe changes that need to be made
- Run rake migrate which brings your database up to date
How do you describe schema changes?
Once you create migration defined class will have two methods self.up (used when upgrading schema) and self.down (downgrade schema). If you want to create a table you’d write code like this:
def self.up
create_table :lists do |t|
t.column :name, :string
t.column :description, :string
t.column :created_on, :datetime
end
end
def self.down
drop_table :lists
end
First method defines table that needs to be created (notice that it’s database independent) and second provides a way to undo changes made by this migration.
These are just a simple example and you can do a lot more using migrations - change existing tables, delete tables, insert default values to tables and if necessary you can even execute plain SQL code.
Where can I get more information about Rails migrations?
- Rails API Class ActiveRecord::Migration - it describes everything you can do with Rails migrations.
- Screencast about Rails Migrations
- The Joy of Migrations - more detailed post on migrations.
- Rails Migration Cheat Sheet
- Foreign key and rails migration - an excellent helper method that fixes an oversight in Rails migrations (you cannot define foreign keys natively).
The CAPTCHA Alternatives December 9, 2006
Posted by Slobodan Kovacevic in : Programming, Web , 22 commentsMost people know what CAPTCHA is and if they don’t then I am sure that they have seen one. Furthermore, I am sure that everyone has been molested by bad CAPTCHA. Once I tried to register at a forum and it took me 8 times to get the CAPTCHA right - 8 times! I had to register at that forum, but if I didn’t after couple of tries I would just presume that the CAPTCHA isn’t working and I would have closed the browser.
Of course CAPTCHA is very useful and it can help you reduce spam, false/automatic registrations, etc. But at the same time is a big accessibility and usability problem - which means that your site or web app can lose precious visitors/users. In fact inaccessibility is such a big problem that there’s W3C document outlining CAPTCHA problems and possible solutions.
All this means that there are plenty of people searching for an alternative way to tell computers and humans apart. Here are some of the proposed alternatives and fixes…
(more…)
1280×800 Wallpaper: Warrior October 6, 2006
Posted by Predrag in : 1280x800 Wallpapers , 1 comment so farUPDATE! We placed all our 1280×800 widescreen wallpapers on one page.
Here is another free wallpaper. This little drawing was created while I was shaked up by some terrible fewer. I tried to reflect that state of mind through background.
Let me know what you think.
Path to SitePoint Stardom September 14, 2006
Posted by Slobodan Kovacevic in : ArrayStudio News, News , add a commentOur dear colleague Jelena (you can read more about her on our team page) must really love what she does, because beside all the work we are doing together she managed to find time and strenght to be one of the most active people on SitePoint.

Now we are proud to announce that Jelena has been promoted to SitePoint Advisor. As an Advisor she is joining a handful of people who are leading one of the biggest web related community. Congratulations!
In honor of her promotion to SitePoint Advisor she was interviewed for SitePoint Community Crier Newsletter. Here is the whole interview (you can also read original interview):
Blog design tips September 5, 2006
Posted by Predrag in : Web Design , 2 commentsToday I want to talk about blog design. As I browse the Web, I stumble on many different blogs, most of them ugly. It’s understandable that people can’t design web pages, but with many free descent templates available, there’s no excuse for ugly looking pages. All I can say - if you don’t know how, get a free or buy a template, or hire a professional.
However, if you still want to design your own blog template, here are some tips that could be helpful:
- Keep it simple
The master advice. Don’t use many different fonts and colors. Pick few fonts and a color scheme, and stick to it. - White background
Except if you’re in some unusual industry where colored backgrounds are in, forget about it. Most of the third-party images you will insert in your blog posts are made for the white background, making their appearance on some other-than-white background, well… ugly. - Clear navigation
Usability is important in blogs, as it is in regular websites. Don’t complicate too much. There are dozens of plugins available which tempt you to install them and add some additional elements to your navigation. Resist the temptation and leave the navigation alone. - Don’t let the social bookmarking ruin your design
I’ve seen many sites that add social bookmarking (del.icio.us, digg, etc) buttons to their design even if it looks awful. If it can’t look good - forget about it. Use text links instead (as we use on AS Workshop).
- Make sure that user knows what’s a title
This seem too obvius, right? However, I’ve seen blogs where it’s hard to know what is the title and what is the content. They put the title in some heading boxes and one can not determine where post begins and where it ends.
At the end I want to mention two good-looking blogs from a friend of mine. One is Japanese Cars Watch and the other is Symbian Watch. Take a look at them and analyze them thoroughly - you can see a great blog design and even better information structure there.
Make OL list start from number different than 1 using CSS August 31, 2006
Posted by Predrag in : Web Design , 6 commentsIf you need to create an OL list that starts from number different than 1, here is an elegant solution. This is very useful if you need to display a listing on more pages (eg. there are 100 search results, and you want to display 10 results per page). In this case, if you are using OL list, it will start from number 1 on every page, and that is not a good solution because it will look like this:
In order not to use deprecated < ol start=”6″ > parameter in my second list, we’ve searched the Web for an adequate solution which complies with W3C standards - and we found it.
You need to write the following in your CSS:
OL#page_one { counter-reset: item }
OL#page_two { counter-reset: item 5 }
LI { display: block }
LI:before {
content: counter(item) ". ";
counter-increment: item;
display:block;
}
And, this is how your lists should be defined:
<ol id="page_one"> <li>Division Bell</li> <li>Atom Hearth Mother</li> <li>Relics</li> <li>Dark Side of the Moon</li> <li>Wish You Were Here</li> </ol> <ol id="page_two"> <li>The Wall</li> <li>More</li> <li>Piper at the gates of Dawn</li> <li>Final Cut</li> <li>Meddle</li> </ol>
These fieldsets represent separate pages, of course. Now, our lists look as we wanted them to look in the first place:
Amazon on Rails - search Amazon using Rails and Ruby/Amazon
Posted by Slobodan Kovacevic in : Programming, Ruby & Rails , 4 commentsCurrently I am working on my first big Rails application and I needed an simple and quick way to get matching movies and music based on user entered keywords. The best place to get such information is Amazon as they have almost anything in their store.
So I decided to write a small Rails application that takes input from user and displays products from Amazon matching that criteria - in essence Amazon search. In the end it will look something like this - Amazon on Rails
(more…)
Excellent PHP Thumbnailer Class August 29, 2006
Posted by Slobodan Kovacevic in : Resources and Links, PHP , 3 comments
I’ve found an excellent PHP Thumbnailer Class which lets you manipulate images easily. Beside usual functions you’d expect from thumbnailer class (such as resize and crop) it also has ability to create thumbnails on the fly or to save them. You can see it in action on PHP Thumbnailer demo page.

