Skip to content

Software Development News: .NET, Java, PHP, Ruby, Agile, Databases, SOA, JavaScript, Open Source

Methods & Tools

Subscribe to Methods & Tools
if you are not afraid to read more than one page to be a smarter software developer, software tester or project manager!

The Dojo Toolkit - Announcements
Syndicate content
Unbeatable JavaScript Tools
Updated: 1 day 2 hours ago

Dojo Recap – Week Ending May 22, 2015

Tue, 05/26/2015 - 16:33

Last week we made even more progress on Dojo 2 platform. Thanks for your contributions. Let us know if you would like to get involved!

Last week in Dojo 2

Last week we accomplished a number of things with Dojo 2 platform:

Core DOM

Basic DOM operations and CSS class manipulation APIs are complete!

Routing

Initial development efforts started.

Loader

We drafted some proposed functional test scenarios

This week’s Dojo 2 goals

Here are a few of this week's aspirations towards making progress on Dojo 2!

Core

Our goals for Core this week are to finish what we started last week:

  • Finish initial development. (excluding features on hold: Set, WeakSet, and Reflect)
  • This includes: Encoding, Request, Date Features, String shims, Map shim, and Readme updates
  • Finish initial development
  • This includes: Seekable Reader, Canned Streams, Iterable Interface, Readme updates, tutorials
  • Finish documentation and code reviews
DOM
  • Forms
  • Style Manipulation and Stylesheet Injections
Routing
  • Continue development on Router
Crypto
  • Setup repository
  • Begin development
Weekly IRC meeting

As usual, our weekly IRC meeting is on irc.freenode.net #dojo-meeting at 9am Pacific time on Tuesday.

Last week we discussed
  • Discuss code in core repository
  • General community and contributor feedback to the Dojo 2 roadmap
This week’s agenda
  • As we are nearly code complete with an initial verison of the Core package, we invite further discussion at this week's meeting:
  • Discuss code in core repository
  • General community and contributor feedback to the Dojo 2 roadmap
Thanks!

Thanks to everyone for their valuable contributions this past week! Please let us know if you plan to work on any features, or would like to get involved!

Categories: Open Source, RIA

Dojo Recap – Week Ending May 15, 2015

Mon, 05/18/2015 - 20:45

Last week we completed some issues with Dojo 1.x and made more progress on Dojo 2 platform. Thanks for your contributions. Let us know if you would like to get involved!

Dojo 1.x

We continue making small updates towards a Dojo 1.11 release, as well as backporting relevant bug fixes. The 1.11 release is planned as soon as work is completed on a modern flat theme. This past week we landed a few fixes to Dojo and Dijit.

Improvements this week Last week in Dojo 2

Last week we accomplished a number of things with Dojo 2 platform:

Core DOM

Initial repository created. Initial work on basic DOM operations. dom.byId and dom.place are pending code review

Routing

Initial repository created.

Class Declaration Decision

As of May 13, 2015, our original proposal submitted to TypeScript was not accepted so we researched options that would cover Dojo 2’s needs for class declaration.

We have decided to proceed without language-level support of mixins and provide decorators to help accomplish what we need. Given that this solution is the least dependent on third-party interaction, we are choosing to explore it first. With what we know about decorators, we may be able to get exactly what we need from TypeScript. While we do not yet know for sure if this is the final solution, it is promising and something we can start working on today and then explore other options if it fails or if it is a burden to use.

This week’s Dojo 2 goals

Here are a few of this week's aspirations towards making progress on Dojo 2!

Core
  • Finish initial development. (excluding features on hold: Set, WeakSet, and Reflect)
  • This includes: Encoding, Request, Date Features, String shims, Map shim, and Readme updates
  • Finish initial development
  • This includes: Seekable Reader, Canned Streams, Iterable Interface, Readme updates, tutorials
  • Finish documentation and code reviews
DOM
  • Basic DOM access/manipulation APIs functional
  • CSS class manipulation APIs
Routing
  • Begin development on Router
Loader
  • Setup repository
  • Draft functional test scenarios
Weekly IRC meeting

As usual, our weekly IRC meeting is on irc.freenode.net #dojo-meeting at 9am Pacific time on Tuesday.

Last week we discussed
  • Discuss code in core repository
  • General community and contributor feedback to the Dojo 2 roadmap
This week’s agenda
  • As we are nearly code complete with an initial verison of the Core package, we invite further discussion at this week's meeting:
  • Discuss code in core repository
  • General community and contributor feedback to the Dojo 2 roadmap
Thanks!

Thanks to everyone for their valuable contributions this past week! Please let us know if you plan to work on any features, or would like to get involved!

Categories: Open Source, RIA

Dojo Recap – Week Ending May 8, 2015

Tue, 05/12/2015 - 18:53
Another exciting week is underway in the Dojo camp! Dojo 1.x

In preparation for the 1.11 release planned for late Spring, we are landing high quality pull requests to fix various bugs and add enhancements to the dojo, dijit, and dojox packages.

Improvements this week Last week in Dojo 2

Initial Dojo 2 core repository is now public

In the intial core repository, you will find initial efforts in the repo for:

  • async
  • Promise
  • has
  • streams
  • WeakMap
  • decorators
  • lang
  • math
  • number
  • object observation
  • string shims
  • task queuing
Class Declaration

We've run into a small roadblock with our proposal for traits or mixins in TypeScript, so we are evaluating our options.

Style Guide

We have an updated and exhaustive Dojo 2 style guide available. Please follow these guidelines when contributing to Dojo 2.

This week’s Dojo 2 goals

Here are a few of this week's aspirations!

  • Verify all code conforms to Dojo 2 style guide
  • Further core development efforts including Encoding, Request, Events, Batch Processing, Date Features and streams (Transformers, Seekable Reader, Canned Streams, Iterable Interface)
  • Begin dom/html and history/routing development efforts
  • Refine proposals and readmes
Weekly IRC meeting

As usual, our weekly IRC meeting is on irc.freenode.net #dojo-meeting at 9am Pacific time on Tuesday.

Last week we discussed
  • General community and contributor feedback to the Dojo 2 roadmap
This week’s agenda
  • Discuss code in core repository
  • General community and contributor feedback to the Dojo 2 roadmap
Thanks!

Thanks to everyone for their valuable contributions this past week! Please let us know if you’d like to help out too!

Categories: Open Source, RIA

Dojo Recap – Week Ending April 30, 2015

Mon, 05/04/2015 - 20:28
Another exciting week is underway in the Dojo camp! Dojo 1.x

In preparation for the 1.11 release planned for late Spring, we are landing high quality pull requests to fix various bugs and add enhancements to the dojo, dijit, and dojox packages.

Improvements this week Last week in Dojo 2

This week we have some exciting updates to share with you on the planning and development progress of Dojo 2!

First off, we updated the Dojo 2 Roadmap to reflect the changes that took place this week. These changes include:

  1. The collection of packages we were calling "Dojo 2 Core" has been renamed to "Dojo 2 Platform" to prevent any confusion with the core package.
  2. The package combination that we outlined in last week's blog post was completed this week and the package status section of the Roadmap reflects this new package structure.
Browser support decision

We made the decision support IE9 through the launch of Dojo 2. While there are undoubtedly some pain points with supporting IE9, we believe that the effort to support it is not substantially greater than IE11. We also wanted to ensure that Dojo 2 launched with a core that would be compatible with Intern, which needs to be able to test a wide range of modern browsers. If the effort to support IE9 becomes too great, we reserve the right to amend this decision!

In other Browser Support news, we also decided to support Android Browser 4.3+. We discovered that this is the cutoff point for Android market share and that it was the most logical point for Dojo 2 to begin support for Android versions.

As we stated last week, please note that while the platform packages will support a more conservative list of browsers, widgets and other features on top of the platform packages may choose to support only more modern browsers.

Dojo 2's current Browser Support is:
  • Firefox latest and recent versions
  • Chrome latest and recent versions (desktop and mobile)
  • Safari 7+ (desktop and mobile)
  • IE 9, 10, 11
  • Microsoft Edge
  • Android 4.3 and 4.4
TypeScript compiler improvements

We are conducting research this week on compiler improvements to determine the needs of the project and best approach. We will keep you apprised of our findings as we figure things out!

This week’s Dojo 2 goals

With many of the ops kinks worked out, we hope to begin making good progress on package development this week. Here are a few of this week's aspirations!

  • Make initial efforts on the Dojo 2 core package available via GitHub
  • Core development efforts including:
  • stream: Node stream adapter implemented and tests written along with Transformer unit tests
  • platform shims: String, Map, Set, and maybe WeakMap
  • Object copying, task queuing, property observation, and date handling
Weekly IRC meeting

As usual, our weekly IRC meeting is on irc.freenode.net #dojo-meeting at 9am Pacific time on Tuesday.

Last week we discussed
  • Core package consolidation: Discussion of included modules & approach
  • Dojo 2 Browser Support Decision: feedback received to make decision
  • General community and contributor feedback to the Dojo 2 roadmap
  • Any pressing issues with 1.x
This week’s agenda
  • General community and contributor feedback to the Dojo 2 roadmap
  • Any pressing issues with 1.x
Thanks!

Thanks to everyone for their valuable contributions this past week! Please let us know if you’d like to help out too!

Categories: Open Source, RIA

Dojo Recap – Week Ending April 24, 2015

Mon, 04/27/2015 - 23:50
Weekly Update

A lot goes on in Dojo each week and in the past we haven’t done a great job of telling the world about it. As we begin this new chapter (working towards Dojo 2), we will be publishing a weekly update that gives some insight into what was accomplished the previous week, our goals for this week (in case you want to get involved), and a brief agenda for the weekly IRC meeting.

Dojo 1.x

In preparation for the 1.11 release planned for late Spring, we are landing high quality pull requests to fix various bugs and add enhancements to the dojo, dijit, and dojox packages.

Improvements this week
  • Fix for dijit Tree node rename when textDir is auto (#18543)
  • Convert LocalStorageProvider to AMD (#18565)
  • Add Basque language support (#18560)
  • Fix reconnect options for dojox/socket (#17761)
  • Fix RangeSlider callback notifcations (#18381)
Last week in Dojo 2 Package Template Updates

We are using this package template as the starting point for creating the Dojo 2 packages. Key changes to it were to enable TypeScript build and testing support for both atom-typescript and the included Grunt task, as well as support for a new combined CJS+AMD module format that supports both CJS and AMD in an exported module, but does not export a global like UMD. The main benefit of this is to prevent the need to compile all code twice for Node.js/io.js and browser usage of modules.

Package combination discussion

We discussed whether it truly makes sense for each package to be delineated as described on the Dojo 2 roadmap. The challenge is that some of these packages are dependent on each other, and to make them truly stand-alone in all cases may require a lightweight version of the API in one place, and then a duplicate but more complete implementation in a child package. This would be fine if they were large packages, but some of these packages are not expected to be very large. Some of these packages cannot easily be stand-alone without a shim when native capabilities aren’t available.

The current plan for each package is:
  • loader: remains stand-alone package
  • platform: combine with core
  • async: combine with core
  • stream: combine with core
  • io: combine HTTP client with core, leave remainder as stand-alone package
  • core: remains stand-alone, add core events, io, async, platform, and perhaps stream
  • dom/html: remains stand-alone, add DOM events
  • i18n: remains stand-alone
  • dstore: remains stand-alone
  • parser: remains stand-alone, in the future it may make sense to combine with dom/html
  • history/routing: remains stand-alone
  • crypto: remains stand-alone
  • events: split into core events and DOM events and merge into respective core and dom packages

These decisions may change as get further along and revisit our options, but for now, we want to find a good balance between separate packages and ease of development experience.

This week’s Dojo 2 goals Publish initial packages

We are working on getting the repositories in shape so that we can open them up to the community to start contributing!

Core package
  • platform: We expect to have some initial shims complete, and some work on polyfills.
  • async: pre-alpha implementation
  • streams: pre-alpha implementation of readable streams, progress on writable streams.
  • object copying: pre-alpha implementation
  • string functions: pre-alpha implementation
  • comparison: pre-alpha implementation
TypeScript compiler improvements

To improve the developer workflow, we will be making improvements to the TypeScript compiler.

These improvements include
  • Allowing the configuration of modules that should (or should not) emit JavaScript
  • Source map generator should be configurable to inline the TS content into the source maps rather than having to keep separate files
  • tsconfig.json should allow globbing
Browser support decision

We are currently discussing which minimum version of IE and browsers for Android we should support. For IE, we are deciding between IE9 and IE11. The popular decision is to start with IE11, but some dependencies such as Intern prefer having a core that is more widely compatible, if the effort to support IE9 for core is not substantially greater than IE11.

Similarly, we are analyzing current Android market share and effort to support Android versions to determine what the earliest version of either Android browser or Chrome for Android that Dojo 2 should officially support. It is worth noting that the core packages may support a more conservative list of browsers, whereas the widgets and other features on top of them may choose to support only more modern browsers.

Weekly IRC meeting

As usual, our weekly IRC meeting is on irc.freenode.net #dojo-meeting at 9am Pacific time.

Last week we discussed
  • Why TypeScript was selected
    • interfaces, export to AMD/CJS/ES2015, typing, and an extensible compiler
  • Current status of class declaration and multiple inheritance with TypeScript
  • ES 2015 module syntax
  • GFX/charting and widgets in the Dojo 2 story
    • Not yet defined, but expected to be their own top level packages
  • Why crypto is a separate top level package
    • To make it easy to remove
  • New website feedback
  • Current status of 1.11
    • Waiting on flat theme work to be completed before finalizing the release plan
This week’s agenda
  • Core package consolidation: Discussion of included modules & approach
  • Dojo 2 Browser Support Decision
  • General community and contributor feedback to the Dojo 2 roadmap
  • Any pressing issues with 1.x
Thanks!

Thanks to everyone for their valuable contributions this past week! Please let us know if you’d like to help out too!

Categories: Open Source, RIA

The Road to Dojo 2

Thu, 04/16/2015 - 21:42

“When will Dojo 2 be released?” That’s pretty much the number one question we’ve been asked about Dojo since Dojo 1.0 was released in 2007. Over the past seven plus years, we have made numerous updates and improvements, while preserving a high level of stability for our users.

What’s in a number?

Our shift to AMD in Dojo 1.7 was a massive change that could have been called Dojo 2.0, but because we kept backwards compatibility to help developers transition over to AMD syntax, it felt right to call it 1.7. We continued building on that groundwork releasing 1.8, 1.9 and 1.10!

What should Dojo 2 do?

We have spent many months collecting thoughts and ideas from our users as well as reviewing the current and near future state of the web, to decide what Dojo 2 should and should not do.

Moving to the next major version number is an opportunity for us to assess our strengths and weaknesses, and to formulate a vision for 2.0.

The Roadmap

We’ve added a new section to our (brand new!) site, the Dojo 2 Roadmap. On the roadmap you will find a proposal for each of the planned Dojo 2 core packages. We will continue to update the Roadmap as we progress through the various phases of development for Dojo 2.

Get Involved!

We are very interested in community feedback on the package proposals. Some of the proposals are very polished, and others are less complete and noted as such. If you are interested, now is the time to take a deep look at these proposals!

We plan to discuss packages at each of the upcoming Dojo weekly meetings, IRC, 9am Pacific time on Tuesdays, irc.freenode.net, #dojo-meeting. For April 21st, we will start with the loader and platform packages. If you cannot make the meeting, or have feedback you want to provide prior to then about a specific package, please leave comments within each package proposal document found in the roadmap. We don’t want to lose your feedback, so the best place to offer that feedback is within the proposal documents.

On Widgets…

The roadmap currently excludes Dijit and other user interface elements, as we’re aiming to get core planning finalized and development underway, and then determine the path forward for user interfaces and widgets. The team at IBM has been working in parallel on an effort called Delite and Deliteful, and we hope that we will be able to efficiently align efforts in the near future.

Thanks!

We look forward to working together to release Dojo 2 in the near future. Thank you for your ongoing support and interest!

Categories: Open Source, RIA

Dojo Winter and Spring 2015 events

Mon, 02/16/2015 - 18:32

There are a number of Dojo events this winter and spring. Some of these events are still tentative, so we’ll add links once they are confirmed. We hope to meet you at one of these events. Let us know if there’s an event you would like to host in your area.

Dojo Community Day

A Dojo community day is planned, but the details are not yet available.

Conferences

Conferences we’re planning to attend and/or deliver talks.

Meetups Training Workshops

Let us know if you’re speaking at an event, and we’ll add you to our listings!

Categories: Open Source, RIA