'Launching Soon' – Helping Startups Build Online Identity Even before the Actual Launch

The process of brand building begins even before the actual website is launched. To have an eye-catching temporary ‘Launching Soon’ page can do a world of good for your online brand identity. It is the first step that lets you create initial buzz about your business and, therefore, it becomes imperative to have a dedicated ‘Launching Soon’ or ‘Coming Soon’ page in place. Needless to say that an aesthetic landing page embosses a long lasting and distinctive impression in the visitors’ psyche, ensuring a successful first step in climbing the long ladder.

Quick Introduction about ‘Launching Soon’

'Launching Soon' is a simple rails plugin that helps rails projects to manage a dedicated launching soon page before the actual launch date. The plugin also collects email from potential customers and can be integrated through an API to popular email marketing service providers like MailChimp & CampaignMonitor (to store customers email contacts). It lets you have a launch timer in place, and you can even have your company logo, about us section and much more. In a nutshell, all primary branding elements are present on your landing page (even before the launch of the official website). Exciting, isn’t it!

To hack over the excitement, ‘Launching Soon’ is an open source rails plugin which can be used by anyone & everyone to set up a fully customized and dedicated landing page in just a few minutes.

Why bother for a dedicated launch soon page?

Gone are the days when terrible yet oh so nostalgic ‘Under Construction’ animated GIF was appreciated by visitors. In its place, the use of more effective, functional and boiled down single ‘Coming Soon’ page is a cogent trend, capable of instantly satisfying the primary goals of the website owners.

For obvious reasons, there are other benefits of exerting efforts to have a great ‘Coming Soon’ page:

1.   Jumpstart your web presence – An effective landing page is the best way to ease the transition from going from naught to a full matured website launch.
2.    Engage with the visitors – Think from where you can benefit the most, a garish graphic which says coming soon or one page site that interacts with the visitors.
3.    Capture user data – This is perhaps one of the most important aspects of having a landing page. It lets you gather a database of genuinely interested users to whom you can send a newsletter notifying the release of your website. Big enough to help your site gain momentum.
4.    Search engine optimization – Getting a domain name booked is not enough. It is essential and imperative to have something substantial online immediately rather than wait for the final product.

With Launching Soon, it is possible to encompass all the above mentioned aspects without any rigorous development and design hassles. With a simple rails plug and play you would be up and running within minutes with your landing page, buzzing about your business and building an online identity. So, if you need a launching soon page then this is it…'Launching Soon' can be a near perfect solution.

Get the app code at:

https://github.com/vinsol/Launching-Soon

Note - Currently ‘Launching Soon’ works  with only rails 2.x. We are working on its compatibility with rails 3.x and would keep you posted with the updates.


Jquery Full Calendar with Ruby on Rails

Contrary to popular belief, working on a client project gives us a generous margin of creativity and explore innovative solutions. Take the example of a recent project I was working on. The client required a collaboration-based calendar module for their application similar to Google Calendar. Initially we started developing it from scratch , but then, we found an awesome Jquery plugin.

"FullCalendar" provides a full-sized, drag & drop calendar. It uses AJAX to fetch events on-the-fly for each month. It also supports an intuitive interface to manage events that spans over multiple days or weeks. It is visually customizable and exposes hooks for user-triggered events (like clicking or dragging an event).

I decided to give it a try and utilize its hooks for user triggered events within our Rails application. This small effort resulted in a barebone Rails app that might provide a good base for your project which require calendar, scheduling or appointment features. I called it fullcalendar_rails and it is now available on github with a working demo at http://fullcalendar.vinsol.com.

Feel free to give your valuable feedback. I hope you will find this useful.

Update: On popular demand, I have added recurring events functionality with daily, weekly and monthly frequencies. It also allows for exceptions to recurring events including delete and edit features.


Integrating Yahoo! BOSS with your ruby on rails application

What is Yahoo! BOSS? Yahoo developer website cites it as:

"Yahoo! Search BOSS (Build your Own Search Service) is an initiative in Yahoo! Search to open up Yahoo!'s search infrastructure and enable third parties to build revolutionary search products leveraging their own data, content, technology, social graph, or other assets. This release includes Web, News, and Image Search as well as Spelling Suggestions."

Some of the possible implementation of Yahoo! Boss may be finding related posts for your article, suggested tag/category for an article/query, correcting misspelled words by providing suggestions, fetching latest news on a topic dynamically, search over delicious tags, customized language search. Some of these have been tried and successfully implemented. An example is the TechCrunch's Search Engine.

Here is a concise guide on how to use this new service in your next rails application.

Obtain API key

Get an application key from http://developer.yahoo.com/search/boss/.

Install BOSSMan Gem

BOSSMan is a gem for interaction with the Yahoo BOSS web service written by John Pignata. Install it using the following commands:

Usage

Put this in your environment.rb

Web Search

Use the following code to execute search over the web:

Apart from universal arguments mentioned at the end of this document, the following arguments can also be used:

Parameters Values/Description
:filter Filter out adult or hate content
Syntax: :filter => "-hate, -porn"
:type Specifies document formats (pdf, msoffice,etc)
:view Syntax: :view => "view1,view2", etc

:view => "keyterms" will retrieve related words and phrases for each search result.

:view => "searchmonkey_feed" will retrieve structured data markup, if available, for the search result in dataRSS format.

:view => "searchmonkey_rdf" will retrieve structured data markup, if available, for the search result in rdf format.

:view => "delicious_toptags" will retrieve the top public delicious tags for a document and the counts associated with each tag

:view => "delicious_saves" will retrieve the number of times a document was saved in delicious

:view => "language" identifies the language of the document

:abstract :abstract => "long" will retrieve and display an abstract of a web document up to 300 characters. This expanded abstract provides the requestor with a larger piece of information to work from in a web search query. The default for abstract is an abbreviated description.

Click here to view list of response fields returned by web search.

Images Search

For searching images on web, use the following code:

Click here for list of additional arguments that can be provided with image search.

Click here to view list of response fields returned by image search.

News Search

Yahoo! BOSS also provides news search capabilties.

Click here for list of additional arguments that can be provided with news search.

Click here to view list of response fields returned by news search.

Spelling Search

Correct your misspelled words using its spelling suggestion feature:

Site Explorer

You can also search for the pages from other sites linking into your site pages.

For displays a list of all pages belonging to a domain in the Yahoo! index, use se_pagedata method provided.

Universal Arguments for Web, Images and News

Following is the list of most commonly used arguments with web, image and news search. For more comprehensive list click here

Argument Options/Details
:start Ordinal position of first result. First position is 0. Default sets start to 0.
:count Total number of results to return. Maximum value is 50. Default sets count to 10.
:format The data format of the response. Value can be set to either "xml" or "json". Default sets format to "json".
:callback The name of the callback function to wrap the result. Parameter is valid only if format is set to "json". No default value exists.
:sites Restrict BOSS search results to a set of pre-defined sites. Multiple sites must be comma separated. Example: (:sites => "abc.com,cnn.com"). The Images service does not yet support multiple sites.
:view Retrieve additional search data provided by the respective BOSS service. Please see individual chapters to see what view options are available.
:style By default for web search result titles and abstracts contain bold HTML tags around the search term. Use :style => "raw" to remove the bold tags around the search terms in titles and abstracts.

Open Maturity Model - Let's share Best Practices without auditors or certifications

Nothing to do with OSMM (open source maturity model). There is some discussion  going in  rails community for  Obie Fernandez post on idea of Rails Maturity Model.

I like the basic idea behind defining some sort of maturity model for rails but I don't think RMM or anything like that should be modeled on CMM.

After spending  hours looking at views of many people regarding RMM in blogosphere, twitter and rails business google group , I concluded  that we might need some open system instead of something like RMM.

Following is an aggregation of views by various people who feel the need of a some model but dont like the idea of auditors, closed systems or certifications :

For time being , I am calling it Open Maturity Model and trying to draft some  basic principles and guidelines.

So, What is Open Maturity Model ?

For Developers

1. Roadmap for Rails developers to adopt best practices defined by the community.

2. Community giving newcomers a more-or-less official set of guidelines for how to produce quality work. Having some sort of guideline from a trustworthy source is becoming more difficult.

3. It will not take fun out of rails or kills innovation. It will just make the rails community stronger and will attract more people who are not yet sure about rails.

4. Judge yourself , instead of an expensive auditor judging you - if you are serious about doing quality work, open maturity model will give you a good point to start with.

5.  Let experienced developers share their experience on a common wiki in addition to blog posts about their experiences all on their own.

For Clients

1. A no nonsense, no lingo system to help a prospective client to choose a ROR shop. Give them more than just testimonials , a blog post, or a portfolio. The intent is to establish a minimum standard of operational efficiency so that clients who hire based on it can be sure they aren't dealing with complete idiots.

2. Let's share Business Knowledge - most development shops are busy coding and spend little to no effort on marketing or business development. Groups like rails business is a good start in this direction.

For Process

1. XP , SCRUM or whatever. One size doesnt fit all. At Vinsol, we follow a process which has evolved after lot of not-so-successful iterations. It works for us and we want to improve and share it with community. But we don't want to call our process or anybody else's practice "The Rails Way". Again , a community website  where companies can register and document the level of process they implement allowing for clients and other companies to provide feedback so they could get ranked.

2. Instead of wasting resources proving that we are level 4 or level 5 by an external auditor, lets just focus on why we are in the business - writing good quality code, having fun doing it and building awesome applications.

3. Continous improvement is very important for growth and survival of many rails companies with thousands of rails shops opening around the world.

Certifications

1. Replace open source projects with certification - open source can play the role of  certification.  Have you ever contributed or tried to contribute  to rails core ? or, show us an interesting/useful open source project you started, or point to bugs that you submitted.

Looking for ideas and suggestions.

Update :  Matthew Ford has started a rails manifesto document in github. Please add your best practices here - http://gist.github.com/65183