Blog

Jan 13

Simplified Dijit Functional Testing

By on January 13, 2016 10:03 am

dgrid

One of the nice features of testing with Intern and Leadfoot is the ease of authoring functional tests to mimic end-user behavior. The API for retrieving relevant DOM nodes is relatively straightforward, usually with a single line of code needed to get a reference to the relevant node.

When we started writing tests for Dijit, we realized that it was often a fair amount of boilerplate to get references to specific widget instances, attach points within those widgets, and property values of widgets. One of the advantages of Intern is you can integrate this boilerplate into a helper. So, we set out to create a simple Intern helper utility to make these operations as efficient to author as normal functional tests.

Dec 10

HalfStack Conference Recap

By on December 10, 2015 10:22 am

HalfStack

Picture this: 100+ developers and their phones and laptops making crashing noises playing a live-created clone of Flappy Bird. Now picture the same devices working together to create a live MIDI concert, followed by a challenging and fun JavaScript pub quiz.

All of this happened at HalfStack, a one-day JavaScript conference organized by the London Ajax User Group. For over five years, London Ajax has organized monthly meetup events, followed by more discussion time in the pub. In the spirit of London culture, the conference was hosted in a Shoreditch area pub at Corbet Place Bar & Lounge (in the former Truman Brewery).

Oct 27

October jQuery Foundation board meeting

By on October 27, 2015 7:56 am

In mid-October, I attended my first jQuery Foundation boarding meeting. In case you missed the news, we announced in early September that the Dojo Foundation and jQuery Foundation are merging. The primary goal of this open source foundation union is to encourage greater collaboration between open source web projects, and also provide a home for other open source JavaScript and web projects. Our board of eleven members got together in New York City and met for about eight hours to cover a number of topics. It was great to meet a number of people from the board in person for the first time. It was also great to reaffirm how much we have in common, and to learn more about how we can help!

Oct 19

Connect-JS: Quickie Recap

By on October 19, 2015 10:26 am

Connect-JSLogo

I had the pleasure of attending Connect-JS in Atlanta this past weekend and had a great time speaking, attending talks and meeting some very talented people. Connect-JS totes itself as being a low-cost, community conference that brings in recognized experts from around the world. They did a great job this year and I’m glad I had the opportunity to be there!

Sep 30

SitePen JavaScript Support in Action

By on September 30, 2015 1:20 pm

SitePen’s team of JavaScript experts provide high quality development and production support to a wide range of companies, from the Fortune 500 to small startups.

Recently, we had the opportunity to assist BuyWinR, a company based in Brisbane, Australia. In this case, we went from initial inquiry to solution in less than 48 hours. To provide insight into how a typical support issue might be solved, the founder of BuyWinR has allowed us to share this story.

Sep 8

Recent TypeScript talks

By on September 8, 2015 11:04 am

TypeScript

SitePen is a huge supporter of TypeScript. It allows our developers to write using modern standards support for ES6 and some ES7 features while still targeting ES5 browsers. It also includes a type system that adds to our code’s integrity and makes it easier to write good software.

As noted in the Dojo 2 vision, we have chosen TypeScript as our approach to building tools we rely on for a next-generation JavaScript and TypeScript stack. With the emergence of ES6 (a.k.a. ES2015), as developers we’re currently in a state where the language and environments (browsers, servers, desktop apps, mobile apps, IoT devices, etc.) are greatly improved, but in a backwards-incompatible manner. In the short term, this means that to leverage new features of the platform, we need a tool to transpile to things that work in browsers today.

Aug 7

Working with Intern Recorder

By on August 7, 2015 7:00 am

intern

So you’ve had a chance to try out Intern Recorder, our new Chrome DevTools extension for recording functional tests, and now you want to efficiently work these tests into your workflow? This post will guide you through these steps and provide helpful advice for improving the tests you record.

The goal with Intern Recorder is to reduce the tedium of creating functional tests by 80-90%, but to make tests work flawlessly, you still have some steps to follow to perfect them. Intern Recorder is very useful for getting started when creating functional tests, but the test code should ultimately be fine-tuned by hand and maintained and updated manually. It may take multiple runs with the Recorder to get the sequence of actions just right, but once you have it, plan to discontinue using Recorder for ongoing updates to the test as you will now have code you can continue to improve.

Jul 28

Simple Model-View synchronization with dstore and Dijit

By on July 28, 2015 7:14 am

dstore

Nearly every sufficiently large web application looks for a mechanism to efficiently synchronize or bind data between the Model and the View. There are many large scale application frameworks and approaches focused on this, whether the binding is one-directional like React, or follows other approaches such as those seen with AmpersandJS, Angular, Aurelia, Backbone, Ember, Knockout, Mayhem, or many others listed on ToDoMVC.

Simple Model-View synchronization

Many of our customers use Dojo and Dijit, because it’s a comprehensive toolkit for building web applications that work today, and while it does not intend to be an MV* framework, it already includes a lightweight approach to getters and setters.

Mar 26

Dojo FAQ: How do I upload a CSV file, then access that data in my application?

By on March 26, 2015 12:24 pm

DojoFAQ

While a more recent advancement allows us use the HTML5 file API to retrieve contents from files, this approach is not universally supported in web browsers as yet. Instead, we will access data from user-uploaded CSV files using the following steps:

  • Upload a file to the server
  • Retrieve the file from the server
  • Load the data into an easy-to-use format

JavaScript Workshops