Hi, this blog is no longer maintained, my new blog is here

Ruby On Rails and a Conning Israeli entrepreneur

USA - Debrief (indomite, Bojam and me)

It's been a very long time since I last posted anything, I had some rough times trying to adapt to living in the USA.
I have a lot of things to do here, since I am the newly announced marketing division point men for indomite.com (did you sign the beta notification already? Go now to our blog and do it.). Along side with Rotem Bar, i have a lot of meetings to do here and a lot of people to talk to.

We are currently meeting up with some people which are very interested in making a market move along side with indomite.com, anyone can see that the music industry is coming to life and there are some new companies emerging to this unknown market such as Bojam (which are very similar but yet behind us) and the newly annouced Myspace Music, so we are working fast and hard to make it a better application and service for musicians to play and share their music and creation with complete strangers.

Visit the indomite blog for more information about the next ground shaking online music collaboration application there is.

http://www.indomite.com/blog


We are working hard to make this world a better place for musicians all over the world, show us your support and sign up for a beta tryout.

 
--
Elad Meidar, Marketing




activity_streams Plugins for rails

http://agilewebdevelopment.com/plugins/activity_streams ActivityStreams is a Rails plug-in providing a customizable framework for cataloging and publishing user activity and social objects.

Half way to victory for FireFox

According to a statistics page at w3c firefox holds over 42% from the browser usage statistics. yaa!

Indomite.com Development Blog

As i previously mentioned, i am working on a start-up related to music.
Well, the time for a private beta has come and we collected a bunch of musicians that we know to start using the desktop application (and the web application as well of course).

Currently we do not accept any more new users, but if you are interested (further reading on the Indomite development blog) in getting a user to this amazing musician community, drop me a line in the comments.

Official Gmail Blog: We feel your pain, and we're sorry

Official Gmail Blog: We feel your pain, and we're sorry

Is Web2.0 ever going to arrive in Israel

Ok, so the title is a little bit harsh, there are some great sites being done here in Israel, but there are some things i just can't understand.

walla.co.il is one of the biggest sites in Israel, huge traffic and many many services to the regular israeli web-surfer. One of these services is Walla's webmail, which gives you a 5gb free mailbox.

but, and there is a huge but... take a look how my compose page looks like. nothing more to add.
although it's in hebrew, nobody including a native hebrew speaker can't understand what the h**l the layout is all about.


Buzz: rubyonrails.org vs. walla.co.il

Walla.co.il is one of the most visited web sites in Israel, it is some sort of an all-purpose-portal and holds the homepage spot for many people.
I wanted to check how many people are visiting in rubyonrails.org to walla.co.il at compete.com, this is what i got back.

Top 10 Design mistakes on the web

a great article about Do's and Don'ts on web design

How to save money in your startup company


  • Buy Macs, They are a little more expensive, but worth a hell lot of money in productivity terms

  • Buy a second monitor for every programmer, passing through windows (a.k.a: browser to Textmate and back) take a lot of time. worth the money.

  • Buy everyone food, all week long. when people go out to work it takes a lot of "extra" time, by buying them the food, you'll cut off about 20 min. per lunch break.

  • Expensive chairs, crappy desks. most of the programmers i know, appriciate their chair more than their table, their chairs are those big high-backed cousins, while the desk looks like a dump, besides everything you buy should be ergonomically designed

  • Programmers don't need phones, don't buy an expensive phone system, most of the programmers i know talk to each other across the room using Skype :), save the money for an executive phone system, if needed at all.

  • Rent to grow, don't rent offices with no space to grow (expected growth is something you need to calculate prior to renting an office). rent 100% more than what you need.

  • Outsource HR, YOU DON'T WANT THE HEADACHE, assign a professional employee to view the final candidates

  • You don't need an office, you need Google. Don't buy Microsoft office for everyone, buy for 4-5 stations and the rest can use Google Docs of one of those Java based editors (OpenOffice or Neo Office)

  • Use Google Apps, Emails, Documents, Wiki.. why hiring a system programmer for those? or even waste your employees time on building a wiki

  • Key programmers should get a laptop, do i need to expain?

  • Hire devoted programmers, these guys (when payed to the full) will work harder and faster than anyone else in the crazy startup life, compansation via paycheck will be required, but these are valuable employees.

  • Refrigerator, everyone knows that programmers drive on Coffee, Coke and Bamba (in Israel at least, in USA it's Cheetos or something:) ) so i suggest a Coffee machine and a snack drawer in the kitchen, a chocolate bar can do wonders to code.

  • Just finish, allow your employees to work in their own hours, (within reason and except the situation a bunch of programmers is needed to work together) when they are aware that they have a deadline, some people need to sleep until 10:00am, this does not mean they are not right for you

  • Cars, very important, an employee that needs to drive around buses for 2 hours in the morning traffic, is not a happy man

  • Clients don't speak to programmers, they don't speak the same language, use a dedicated person to bridge between the programmers and the clients, or if possible, hire a support personnel

  • Source Control, use Svn, Git or something, just do it...

  • Allow remote connectivity, you can hire people from abroad and still not to micromanage them, think about online collaboration too

  • Task management, use an online application, like basecamp or something, they keep your life easier and cost almost nothing.

  • Open Source, use open source software when possible.

  • (No) power to the people, empower a power saving policy in your startup, turn off screens and hibernate stations on the end of work for starters

  • Big Bad Bandwidth, there is nothing more annoying than slow connections so buy the biggest bandwidth possible, BUT, keep an open eye for Emule connections and such, you don't want it around.


  • that's it for now, thank to all of my programmer friends that helped me composed this one, i'll view the comments and update if necessary

Rails Tip: Annotate models

Ever happened to forget what columns does a Model has?
well, instead of Model.column_names, you can easily install the annotate_models plugin which adds the models schema info as a comment at the top of your model.rb file.

install from

script/plugin install http://repo.pragprog.com/svn/Public/plugins/annotate_models


and from the project root

rake annotate_models

Rails Tip: Render, Better, JS Later

There are certain standards we got used too when creating rails views and layouts, which may cause a problem or some set backs to our applications.
We are all used to coding the JS includes way up in our document, moving the JS to the bottom of the page will render your page a little bit faster, and this is why.

When a browser reads a page, it goes through from the top to the bottom, So when we put the JS include's up, the browser will attempt to download them and hold the dom parsing until it finishes.

Rails Tip: AR eager loading and :select

The AR::Base.find support the options of :include (for adding associations as JOINs in the select) and :select (which pinpoints the columns you wish to select.
For some reason, it is impossible to do them both toghther for example

Article.find(:all, :include => :author, :select => 'authors.name')

This line will raise an exception.
Luckily, there is the select_with_include gem which enables this feature!

first, install the gem

gem install select_with_include

next, require it in your environment configuration file (or in environment.rb)

require 'include_with_select'

Now, you can use the :select option, remembering to use the table name even if a column name is not unique.
There is a single fault back, in case you want to select all the table columns, you need to write them all, one by one. yeah, it sucks.

Restful Web services gem

i recently read at John Nunemaker's blog about a gem he wrote for simplifying the consumption of REST web services.

Read more about the HTTParty Gem

Rails Tip: URLs ending with .html

This is not a must by all means, just for the hack of it.

add to ApplicationController

def default_url_options(options)
{ :format => 'html' }
end


and you don't need any routes.rb changes.

Rails Tip: image_tag, SEO Optimization

when you use rails's image_tag, by default it sets the HTML attributes of alt and title to the filename of the image. so for

image_tag 'dscn0001.jpg'

will produce the following html something like that

<img src="images/dscn0001.jpg" alt="dscn0001" />


the alt attribute for image tag is meant to explain the content of the image in case the actual image was not found, or for non-graphic browsers.

The default value for the alt attribute should not be used, unless the file name does not really supply information about the image. my suggestion is to use the :alt option in the image_tag helper.

important: do not attempt to use the alt for keywords heaping ('elad-rails-blog-ruby.jpg'), this will not help you in your SEO.


The Web Ask eizesus.com

Subscribe

    follow me on Twitter

    Twiters Around

    About Me

    My photo
    I am a web developer for more than 9 years, managed, cried, coded, designed and made money in this industry. now trying to do it again.

    Labels