June 28 th – July 1 st 2006 Implementing Usability: Insights to improve your chances  CFUnited 2007.

Slides:



Advertisements
Similar presentations
Websydian Anne-Marie Arnvig Manager, Websydian Communications & Relations.
Advertisements

Websydian products.
Extreme User Interfaces for Alfresco Kevin Dorr Sr. Solutions Engineer Americas Channel.
A Blackboard Building Block™ Crash Course for Web Developers
The Developer Perspective Michelle Osmond. Design – Requirements Gathering Sales & Research projects –Prototypes/Demos User group meetings Usability workshops.
Web Applications Development Using Coldbox Platform Eddie Johnston.
© 2007 IBM Corporation IBM Emerging Technologies Enabling an Accessible Web 2.0 Becky Gibson Web Accessibility Architect.
Ruby on Rails a popular web application framework, aimed to increase the speed and ease of web development Ruby on Rails, Tim Zappe.
Cloud Computing Lecture #7 Introduction to Ajax Jimmy Lin The iSchool University of Maryland Wednesday, October 15, 2008 This work is licensed under a.
Microsoft ASP.NET AJAX - AJAX as it has to be Presented by : Rana Vijayasimha Nalla CSCE Grad Student.
CSE 219 COMPUTER SCIENCE III PROPERTIES OF HIGH QUALITY SOFTWARE.
Java Stack 4 Providing Robust Back-end Web Services For Your Solution.
-Uday Dhokale.  What is it ??? Prototype is a JavaScript Framework that aims to ease development of dynamic web applications.  Features a unique, easy-to-use.
Development of mobile applications using PhoneGap and HTML 5
Web 2.0 with AJAX Students : LASC Ioana KELEMEN Csilla POP Dan Adrian CIOBANU Dumitru Daniel Project leader : Ahmed RHIAT.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Chapter 6 DOJO TOOLKITS. Objectives Discuss XML DOM Discuss JSON Discuss Ajax Response in XML, HTML, JSON, and Other Data Type.
Prof. James A. Landay University of Washington Spring 2008 Web Interface Design, Prototyping, and Implementation Rich Internet Applications: AJAX, Server.
RIA Introduce Comparison among several technology.
 Computer Information System Club focused on the understanding and applied learning of web development.  The club was founded in April 5,  We.
Lightning Talk Fred Rodriguez Nguyen Do CPSC 473 May 6, 2012.
Pittsburgh Java User Group– Dec Java PureFaces: A JSF Framework Extension.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
Štefan PERO AIS What is Web 1.0?  statical web pages  contains informations to one use  no reason to comeback  not interactive web pages.
Philly.NET Hands-on Labs JAVASCRIPT SERIES. July 9: JavaScript Syntax Visual Studio ◦Projects ◦Editors ◦Debugging ◦Script blocks ◦Minification and bundling.
CIS 375—Web App Dev II ASP.NET 2 Introducing Web Forms.
1 Web GIS: from Javascript to GWT Pieter De Graef – Community Manager & Lead Developer Geomajas.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
Ajax Runtime Toolkits IBM Emerging Technologies. What is an AJAX Toolkit/Framework? An AJAX Toolkit/Runtime is more than just XMLHTTPRequest Should includes:
Ruby & rails by Nicholas Belotti. What is ruby Ruby is an object orientated scripting language. In Ruby...everything is an object! Ruby was released in.
SDPL 2001Notes 7: XML Web Sites1 7 XML Web-Site Architectures n How (and why) to apply XML techniques in the implementation of Web sites? 7.1 XML, Databases,
Google Web Toolkit An Overview By Shauvik Roy Choudhary.
Weekend MS CS Program Internet and Web Technologies COT 5930 Web Project Development - Ajax Dr. Roy Levow, Associate Chair & Professor
Monthly Publishing System (MPS) Developer Workshop 25 August, 2015.
Usability Issues Facing 21st Century Data Archives Joey Mukherjee and David Winningham
© 2006 IBM Corporation Agile Planning Web UI. © 2006 IBM Corporation Agenda  Overview of APT Web UI  Current Issues  Required Infrastructure  API.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Tuukka Haapaniemi XForms – What’s the need? HTML forms Very outdated Hard to develop and to maintain Requires lot of work To create basic.
Selenium and Selenium on Rails. Agenda  Overview of Selenium Simple Selenium Tests Selenium IDE  Overview of Selenium on Rails  Problems with Selenium.
Project: GenericFrame Framework for Browser Based Applications 1.
AJAX The new hot technology for building Rich Internet Applications? Mikael Hammarlund.
Cs332a_chapt10.ppt CS332A Advanced HTML Programming DHTML Dynamic Hypertext Markup Language A term describing a series of technologies Not a stand-a-lone.
Weekend MS CS Program Internet and Web Technologies COT 5930 Web Project Development - Ajax Dr. Roy Levow, Associate Chair & Professor
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
Google Web Toolkit Dynamic web on Java (Script) Jordan Jordanov 6 March 2008.
REST By: Vishwanath Vineet.
WHAT IS PHP FRAMEWORK? Set of Classes and Functions(Methods) Design for the development of web applications Provide basic structure Rapid application development(RAD)
The basics of knowing the difference CLIENT VS. SERVER.
Website Design Best Practices. Topics  Navigation  Readability  Portability  Frameworks for Web Design  Model View Architecture MVC  SEO  Performance.
Web Technology (NCS-504) Prepared By Mr. Abhishek Kesharwani Assistant Professor,UCER Naini,Allahabad.
Ajax 101 for CF Programmers Randy Brown – Michigan State University
A S P. Outline  The introduction of ASP  Why we choose ASP  How ASP works  Basic syntax rule of ASP  ASP’S object model  Limitations of ASP  Summary.
Open Solutions for a Changing World™ Copyright 2005, Data Access Worldwide June 6-9, 2005 Key Biscayne, Florida Welcome to Synergy 2005! Connect! Chip.
Ajax & Client-side Dynamic Web Gunwoo Park (Undergraduate)
Technologies For Creating Rich Internet Applications Presenter's name
INNOV-16: Rich User Interface for the Web???? AJAX to the Rescue Ken Wilner VP of Technology Progress Software.
Physics validation database
Netscape Application Server
Stable and reliable Web Automation
GeneXus 9.0: Web applications at their higher power
+ A Look at CFAjax Stephen Rittler CounterMarch Systems
AJAX.
Haritha Dasari Josue Balandrano Coronel -
AJAX.
SharePoint-Hosted Apps and JavaScript
Top Reasons to Choose Angular. Angular is well known for developing robust and adaptable Single Page Applications (SPA). The Application structure is.
Lecture 1: Multi-tier Architecture Overview
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Bootstrap Direct quote from source: bootstrap/
Presentation transcript:

June 28 th – July 1 st 2006 Implementing Usability: Insights to improve your chances  CFUnited 2007

June 28 th – July 1 st 2006 Agenda  Why we are here  What we did  What we learned  What we wished we had done differently  Where we are going from here

June 28 th – July 1 st 2006 Why we are here  We CF!  Our developers are having fun doing cool things!

June 28 th – July 1 st 2006 CMS gets with the times  We are a web application  We have been around for a long time (CF v. 1.5!)  A LOT has changed since we started  We wanted to build something to last  Didn’t want to reinvent the wheel  Needed to solve real world problems

June 28 th – July 1 st 2006 What was wrong  Interface icons/menus were outdated  Interacting with dialogs was difficult  Buttons were not consistent  Administration and Content were too separated  Using “window.open()” was slower  It wasn’t fun to play with

June 28 th – July 1 st 2006 What we needed  Faster access to tools Logically organized Common toolbars  Better dialogs Common interface  Extensibility More customization  Maximize available space without “clutter”  Scalable solution

June 28 th – July 1 st 2006 What we did  Focus on the backend first  XML Transport for Client/Server ColdFusion Custom Factory Extensible and exposed  JS frameworks on the front end Extended easily to suit our needs Open our UI code base  Took advantage of existing code base – when it made sense  Listened to our customers

June 28 th – July 1 st 2006 How we did this  We planned! What was the goal of the UI? What was the XML Format What were the commands How were they constructed How will we handle errors

June 28 th – July 1 st 2006 How we did this  We gathered information (tons of information)  Hired someone with usability experience  Built a STRONG back end model  Built a prototype  Integrated some frameworks  Had some fun

June 28 th – July 1 st 2006 Why Frameworks?  Development frameworks help you build cool stuff - faster  Reinvent the wheel?  Documentation  Learn from other’s experiences  Most have an open code base  Easy separation of successes and failures  Easier to test/debug

June 28 th – July 1 st 2006 Frameworks Will…  Help you build better things … faster  Sometimes hide complex coding  Help you do COOL things!

June 28 th – July 1 st 2006 Frameworks Will NOT…  Make you a better coder  Solve all of your problems

June 28 th – July 1 st 2006 From Back to Front  The “Woodward” Presentation Model

June 28 th – July 1 st 2006 Why is the back end SO important?  The data is your lifeline  Interface design is volatile Browser incompatibilities UI designers are constantly changing their mind The browsers were not designed for asynchronous applications  Building architectures/frameworks is what we do best  Scalability starts from the back end not the front end  Utilize resources: CF/Java skill set on back end | JS/Flash skill set on the front end

June 28 th – July 1 st 2006 Problems…  Not a lot of documentation on how to build a robust engine for Ajax in CF  Interacting with CFC’s through forms – not so fun CF 8 – “Thank you Adobe”  Constant “chatter” was a concern  Debugging

June 28 th – July 1 st 2006 Solutions  Built framework without concern for front end  Built test harness to guarantee results

June 28 th – July 1 st 2006 Popular Ajax Frameworks  jQuery (2006) Strong community backing Good Documentation Plugins  Yahoo UI Library (2006) Maintained by large organization Many implementations Soup to Nuts  Prototype Large Ruby on Rails community support Shorthand access to many common routines Supports OO programming styles

June 28 th – July 1 st 2006 Popular Ajax Frameworks (Cont.)  Mootools (2006) Object Oriented Good examples  DoJo Toolkit (2004) Open source Supported by IBM and Sun Large code base  AjaxCFC (2005) Built by Rob Gonda Delivers serialized data (not JSON/XML) to JS Easy  Spry (2006) Maintained by Adobe Different approach then other framework Doesn’t pollute global space

June 28 th – July 1 st 2006 How to choose  Are you good with JS?  Are you good with XML/XSLT?  What about the other developers/resources

June 28 th – July 1 st 2006 The front end  Started out as a prototype using Prototype XSLT on the client side (heavy browser caching) Constructed DOM objects manually  Implemented several Frameworks Spry Script.aculo.us Prototype  Overwrote/extend several standard properties/functions commonspot.spry.Dataset commonspot.spry.getRecordSetFromXMLDoc

June 28 th – July 1 st 2006 Problems…  Namespaces  HTTP Timeout  Spry Transport Layer  JSON and eval()

June 28 th – July 1 st 2006 What makes Spry so different?  Dynamic HTML/Templates (i.e. very similar to CF development) Dynamic HTML building vs. Native HTML  Focused heavily on the data (richer user experience)  Hooks well into “presentation” frameworks Script.aculo.us Yahoo UI Library  Open code base  Integrates nicely into ColdFusion Even nicer in 8!  Supports XML, HTML or JSON Data Objects

June 28 th – July 1 st 2006 Testing  Back end Automated testing (multi platforms, databases, CF versions etc…) Refactoring becomes easier  Front end Set up XML files to handle the “Post/Get” results instead of getting at the data directly

June 28 th – July 1 st 2006 Conclusion  Plan 2 Freight trains need to meet in the middle  Separate content from presentation Easy development/debugging  “A” framework will not solve your problems