GR8Conf 2011: myBalsamiq


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

GR8Conf 2011: myBalsamiq

  1. 1. myBalsamiq Luis Arias balsamiq
  2. 2. What well look at today Whats Balsamiq and what do we do myBalsamiq a different beast in our product line Lets do a demo So how does myBalsamiq work ? Towards myBalsamiq 2.0 Some community contributions
  3. 3. myBalsamiq - A different beast Always on Support thousands of users New technology New deployment model New people New business model
  4. 4. Demo Time!
  5. 5. Some cool facts First commit Jan 2009 (mvn archetype !) Some 4000+ commits now DB changelog has 615 commits Started on grails version 1.1, now on 1.3.7 Started on flexsdk, now on custom Currently in gamma (invitation only, some 50 customers) Runs on Amazon EC2, RDS, moving to clustered tomcat Launch if everythings ready in June on Balsamiqs third birthday
  6. 6. So how does myBalsamiq work ?
  7. 7. A more detailed view
  8. 8. Main Plugins feeds jdbc-pool liquibase mail pretty-size pretty-time quartz sanitizer shiro spreedly ui-performance wordpress
  9. 9. How did Grails make a difference ? Provides the flexibility we need so we can focus on our first priority : user experience Liquibase provides essential database refactoring capability Provides the right tools for integration with third party services (plugins, services, taglibs, commands) Groovy language close to javascript, action script
  10. 10. Towards myBalsamiq 2.0 Third party API clients Virtual private myBalsamiq instances Private databases Mockups Desktop Pro interoperability Improved collaborative features Alternative datastores / caches
  11. 11. Community Contributions Spreedly Plugin Beaconpush Plugin Wordpress Plugin
  12. 12. Spreedly Plugin Let spreedly deal with subscriptions for your service SpreedlyService maps to Spreedly REST API () createSubscriber findAllSubscriptionPlans giveComplementarySubscription ... SpreedlyTagLib provides important links Allow your users to choose a plan for your service Allow your users to update their credit card info Spreedly API Guide : http://www.spreedly. com/info/integration
  13. 13. Beaconpush Plugin Provides a js event push model on top of beaconpush.coms real-time push service Works on SSL BeaconpushService PostToChannel PostToUser Mockup, Project and Site events Created Deleted Renamed Saved ...
  14. 14. Beaconpush ExampleMockup is renamed:def beaconpushServicebeaconpushService.mockupRenamed(mockup, user)On the client:$(document).bind(Renamed.Mockup, function(event) {$(mockup-name).html(;}
  15. 15. Wordpress Plugin Use wordpress as a backend web content editor Caches content in in-memory HSQLdb instance Refreshes periodically Provides domain model Category Comment Page Post Tag User Provides Service and Tag Lib
  16. 16. Wordpress Plugin ExampleDisplaying content from a wordpress page:def wordpressServicedef page = { [page: wordpressService.getPage(params.long(id))]}
  17. 17. To go further Balsamiq Web Site Spreedly Integration Guide Beaconpush Developers Guide Sendgrid API Documentation Amazon Web Services