Blog

Jun 12

Feature Detection and Device Optimized Builds

By Kris Zyp on June 12, 2012 10:59 am

The mobile device revolution has placed new demands on web applications. Mobile devices generally have lower bandwidth and lower CPU capacity, forcing us to avoid large complex code. Fortunately, the mobile space has a greater percentage of users running modern browsers than on desktops, so it is feasible to write similar applications with much less code when targeting mobile browsers. However, dealing with the multitude of different platforms is non-trivial, and creating appropriately small packages of code for mobile devices, while still providing sufficient capability for older desktop browsers can be challenging. While there are different ways to deal with platform discrepancies, the hard lessons of the last decade have shown that feature detection is the mechanism for branching.

Fortunately, Dojo 1.7 has evolved with a powerful new feature detection infrastructure. Dojo now uses the popular has() pattern for feature detection in combination with a has()-aware build system. While it is easy enough to write feature detection tests with ad-hoc JavaScript expressions, the has() pattern defines a specific syntax such that the build system can detect these feature-based branches, and one can create application builds that are highly optimized for specific devices, with known feature shims factored out.

Apr 23

Decruft. Delight. dgrid Beta Is Here!

By Dylan Schiemann on April 23, 2012 8:50 am

dgrid beta is here
Does the code for your grid customizations involve more lines than an Apple product launch?

You are not alone, brave developer. We feel your pain – the type that results from banging your head on a keyboard until the room spins – and that is why we have an amazing gift for you! Read on…

Dojo users and SitePen customers alike have needed a grid since the Dojo Toolkit project began. At first, we and several other companies banded together to purchase a non-open source grid. Enter Dojo DataGrid. We contributed our shiny new code to the Dojo Toolkit for the benefit of everyone and we’ve spent years maintaining and incrementally improving it in Dojo. But the web evolved, faster and faster, demanding more functionality, more performance, and more data! Others tried to keep up as well, enter EnhancedGrid and LazyTreeGrid. Kudos to everyone for building and contributing to Dojo!

Finally, last year, we took a long, hard look at how our customers were using DataGrid and EnhancedGrid. We agonized over the time and effort spent developing and maintaining such crucial functionality. We knew something needed to change. Enough was enough! Our choice was to attempt a DataGrid refactor or start over. The SitePen Team spoke: We started over.

Jan 17

The Year of Dojo is Here!

By Angela Segovia on January 17, 2012 9:19 am

Welcome to 2012 – The Year of Dojo!  We are expecting an amazing year! Make SitePen your one stop shop for all of your web application needs; Dojo workshops, JavaScript support and web app development.  Together, with SitePen, you will meet your 2012 goals!  When you’re happy, so are we.

Learn Dojo - We are dedicated to providing you with the highest quality Dojo Toolkit workshops in the industry.  Whether you want to learn the basics of Dojo or sharpen your Dojo skills, we have a workshop just for you.  All of our Dojo Workshops are taught by our Dojo experts.  We promise you won’t be subjected to listening to some trainer who can’t live without his slides.  Wondering if our Dojo Workshops will cover Dojo 1.7?  The answer is yes!

Ready to learn Dojo?  Check out our full list of 2012 workshop dates and locations.  Sign up for any of our 2012 Dojo Workshops by January 31, 2012 with promo code IHEARTDOJO and get 10% off!

Here to help - Did you know we also have support plans to fit every size and every need?  No matter which support plan you choose, our expert engineers will help you by answering questions, resolving bugs, and solving problems. We offer no-hassle ways to get in touch with your SitePen Support team, which means no waiting on hold, or having to explain your issue over and over again until you get to the right person.  With us, you always have access to the right people. If your project runs in to a critical issue, our expert SitePen engineers will jump in to help you quickly get back on track. Oh, and yes, all of our support plans include support for dGrid and Dojo 1.7! Having a SitePen Support plan is preparing for possibilities.  Even football teams have backup quarterbacks.

From 2 support hours to 200 support hours, SitePen has a support plan to fit your needs.  Take a look!

Perfect match of design and development - We are your one stop shop for your next project, including mobile web applications! Our expert team will take your web application from concept to launch.  We’ve mastered the front end and are here to help you build powerful, simple, and usable web apps, every single time.

Whether you need a traditional web application, mobile web application or installable mobile web app store application, SitePen can help!

Still not sure how we can help you?  Contact us today! (You can even call us if you want.)  Celebrate 2012 – The Year of Dojo!

Dec 7

Touching and Gesturing on iPhone, Android, and More

By Colin Snover on December 7, 2011 10:46 am

One of the most important parts of creating an effective and intuitive user interface on touch-enabled smartphones has nothing to do with visual appearance—instead, it has to do with creating an interface that properly responds to user input based on touch. For Web applications, this means replacing mouse events with touch events. In Dojo 1.7, new touch APIs help make this process easy.

This is an updated version of the post Touching and Gesturing on the iPhone, published in 2008.

Sep 30

dojox.app: A single-Page Application Framework

By Colin Snover on September 30, 2011 2:00 am

dojox.app is a small application framework providing a set of classes to manage the lifecycle and behavior of a single page application hosted on mobile or desktop platforms. The main class, Application, is responsible for managing the lifecycle of the application and is designed to be easily modified with additional custom behaviors. An Application instance contains Scene objects and View objects which provide the visible user interface. The available views, scenes, module dependencies, and other information about the application are all passed into the Application class using a JSON configuration file (by convention).

Aug 3

dojo/on: New Event Handling System for Dojo

By Kris Zyp on August 3, 2011 12:01 am

Dojo 1.7 includes a rewrite of the event handling system and introduces a new module, dojo/on, to provide lighter-weight, faster, more succinct, and more direct event handling. The new event system is highly optimized for mobile applications, with a lightweight footprint and cross-platform touch event normalization. While Dojo continues to provide backwards compatibility with dojo.connect, the dojo/on module eliminates much of code that is rarely used in dojo.connect and can be loaded in 5.2KB minified, half the size of dojo.connect, and fires non-native events twice as fast. The dojo/on module also includes new functionality for extension events, dispatching events, and providing a base class/mixin for adding event emitting functionality to classes. In addition, there is now a new on() method for NodeLists (the results of dojo.query()) based on the new event listening with event delegation.

Apr 20

Dojo Mobile Tutorial: Finishing Up TweetView

By Torrey Rice on April 20, 2011 1:40 pm
This entry is part 2 of 13 in the series Dojo Tutorials


Continuing our series of Dojo mobile tutorials, we wrap up our work on the TweetView app.

TweetView: Android, Packaging, and Review

In the previous two posts, Getting Started with TweetView: Tweets and Mentions and TweetView: Creating the Settings View, we created the HTML, CSS, and JavaScript code required to power the TweetView mobile application. This tutorial will focus on implementing an Android theme, leveraging the Dojo build system to keep the application compact for production, and a basic review of the entire dojox.mobile-powered application. Want to read more? Check out the tutorial.

Want to see a specific Tutorial? Want to Learn More?

Is there something you’d like to learn how to do with Dojo? Always wanted to know how something in Dojo works? Leave us a message in the blog comments and we’ll see about getting a tutorial created for you. Or sign-up for an upcoming SitePen Dojo Workshop to get a fully immersive hands-on experience with Dojo.

Apr 6

Dojo Mobile Tutorial: Getting Started with TweetView

By Torrey Rice on April 6, 2011 1:21 pm
This entry is part 6 of 13 in the series Dojo Tutorials


This week in our series of Dojo mobile tutorials, we continue building our TweetView app.

Getting Started with TweetView: Tweets and Mentions

In the previous post, Introduction to TweetView, we introduced the mobile application we will be building with dojox.mobile: TweetView. We built the general layout template for our application and now it’s time to make TweetView work. This tutorial will focus specifically on the “Tweets” and “Mentions” views of our application. Before we begin coding our application, let’s set up our application file structure and review a few mobile app development concepts. Sound interesting? Check out the tutorial.

Want to see a specific Tutorial? Want to Learn More?

Is there something you’d like to learn how to do with Dojo? Always wanted to know how something in Dojo works? Leave us a message in the blog comments and we’ll see about getting a tutorial created for you. Or sign-up for an upcoming SitePen Dojo Workshop to get a fully immersive hands-on experience with Dojo.

Mar 30

Dojo Mobile Tutorial: Introducing TweetView

By Torrey Rice on March 30, 2011 10:51 am
This entry is part 9 of 13 in the series Dojo Tutorials

Take Dojo Everywhere

Dojo 1.5 had initial support for creating mobile web apps and that work continued into Dojo 1.6. While you’ve been able to view the developer tests if you knew where to look, how to actually build an app with Dojo Mobile has been a trial and error process until now.

Getting Started with dojox.mobile

Before you can begin writing an app with Dojo Mobile you need to understand what Dojo Mobile is all about and how it works. Dojo Mobile is a framework of controllers, CSS3-based themes, and device-like widgets that will allow you to effortlessly create intelligent, flexible, and cross-device-compatible mobile web applications. Our first Dojo Mobile tutorial goes into detail on getting started with Dojo Mobile.

Creating an App: Introduction to TweetView

In the multi-part TweetView series, we’ll embark on creating our own fully functional dojox.mobile web application called TweetView. This tutorial will focus on familiarizing you with what TweetView is, what we want it to do, and we’ll get started on building the mobile application’s HTML and CSS layout. Sound interesting? Check out the tutorial.

Want to see a specific Tutorial? Want to Learn More?

Is there something you’d like to learn how to do with Dojo? Always wanted to know how something in Dojo works? Leave us a message in the blog comments and we’ll see about getting a tutorial created for you. Or sign-up for an upcoming SitePen Dojo Workshop to get a fully immersive hands-on experience with Dojo.

Jan 22

Platform Optimization Strategies for Ajax Toolkits

By Dylan Schiemann on January 22, 2009 12:05 am

With the proliferation of real web browsers on mobile devices (iPhone, Android, Palm Pre, Nokia), an increasing number of browsers (Chrome) or browser-like platforms (AIR, Titanium, Jaxer), portal standards for widgets and gadgets (Caja, AdSafe, work by the OpenAjax Alliance, and much more), are the days numbered for a JavaScript toolkit that uses the same code base across all platforms without a compile step numbered?