Toying around with backbone.js

Toying around with Backbone.js

At $work, we've been using more and more backbone.js to create a more responsive front end experience and help the dev team manage the code.

I like backbone.js and find that its it is very helpful to seperate data and code on the client. But I've found that it challenges me to think in different ways.

I find it helpful to create an app so I did :)

Introducing Brewers Radio Finder

Over the years, i've often driven between Milwaukee and St. Paul, MN. While on the drive, there are areas of the state where finding the close Brewer's radio station is tough and figuring out which station is the closest to you is difficult when looking at the map from Brewers Radio network. Am I currently closer to Reedsburg or Portage?

The app is pretty simple, you can type in or give it your current location and it will show the 3 closest Brewers radio stations to you. 

You can check it out at http://radiofinder.leecarmichael.com/

If anyone is interested I'd be willing to make the code public on github. I didn't do it by default since I had to do some geocoding and storage of the station locations and i'm not sure if i can share that (even though its public). And i haven't dropped a license in there (not sure which one to do).

The app is only a few parts:
  • backbonejs + bootstrap front end 
  • Perl Dancer backend (serving JSON to front end and some initial templates)
  • MySQL Database
  • Use of Google's geocoding library/service (for initial coding of stations) and GIS::Distance
Using Dancer with backbone is very slick. The Dancer json (de)serialization setup is very elegant. Basically set it in the config and you can return data structures in 'ajax' routes and it does its (de)serialization magic. Pretty nice way to hide that complexity.

As a full start from scratch project in backbonejs that didn't involve todo items. It was a good learning experience. I ran into some mental issues using templates w/ widgets that didn't have a model but otherwise it went pretty well. I had some trouble with routes that opened and closed widgets ('about' dialog was a bit of a fight and still isn't perfect). And I still haven't got my mind around using a view and route with something that didn't have a model (the search inputs). I felt like making it a model was a bit of extra cruft that didn't add value (but i bet it might be helpful as the app grew). There are areas, that i'll revisit when i get some time.

A few future things that I'm working on:
  • Displaying current location and stations on a map (this is pretty close)
  • Fixing a few display issues with the responsive layout on smaller screens
  • More unit tests for "live" dev instance
That's all for now.

__END__

Comments

  1. Chase4Net IT Solutions
    Best Website Design company - PHP,JAVA,ANDROID App Development Company

    Chase4Net is a Software Company and having office at Chennai & bangalore . Our main focus areas are Web Development and Software Development.
    Chase4Net has been ranked as the No.1 for the web designing company in Chennai & Bangalore.

    How to start the Online Business ?

    To start the Business in online is very simple and more profitable. Today starting the Website designing Company is one of the more profitable business with less investment.

    We are having 8 years’ Experience in web design business , we will guide to start the software company quickly with less effort.

    Now a days all the business are moving towards online . Too start the company we need correct Business Model and that is Chase4Net . We will help you to setup the Website design Company at less cost . The website design company can offer the following Logo design, website design , webhosting , domain registration ,android app development .

    Even If you do not know how to develop website no worries !! Chase4Net will be there, always with you , we can help you on the business by developing a website a behalf of you.


    Our company products are Hotel booking website design |, Bus ticket booking website design | , shopping cart website design | , hospital website design |,
    bill software design |,job website design |,tickect booking website design | ,matrimoney website design |.

    By just becoming a reseller (or) By just taking franchise with Chase4Net, We will take you to the next level.

    Enter into partnership with us so that we can help you to setup your business including website design for your company, Email-Id creation, Web Hosting membership , Domain Reseller membership, Payment Gateway Integration, SMS Integration.
    Chase4Net ensures you to start the business from day one rather than making you run behind business plans.

    To be our franchise we charge as low as INR Rs 20000/- (or) $296

    To pay the franchise membership fee follow the link How to Pay Membership fee

    Chase4Net IT Solutions
    (+91) 9884925203 or 4464130523
    info@chase4net.com

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. Amazing post Thank for such a knowledgeable post, I am a newbie please also check my website about Civil engineering, Working hard and sharing more simplified topics, Thank u Brother ��
    https://www.civillearners.com/2019/11/types-of-rocks.html

    ReplyDelete
  4. Thanks For Sharing The Information The Information Shared Is Very Valuable Please Keep Updating Us Time Just Went On Reading The article
    by cognex offers AWS Training in Chennai

    ReplyDelete

Post a Comment

Popular posts from this blog

Template Toolkit Debugging inside of Perl Dancer

BootstrapX clickover

Changing Dancer::Plugin::Ajax's content type