Building Backbone.js Apps With Ruby, Sinatra, MongoDB and Haml
IntroductionIn this post we're going to explore writing Backbone.js applications with a Ruby back-end. To assist with this, we're going to use Sinatra - a DSL (domain sp...
You can find my latest AI engineering articles on Substack, leadership on LeadDev, or browse my topic guides and personal blog posts below.
IntroductionIn this post we're going to explore writing Backbone.js applications with a Ruby back-end. To assist with this, we're going to use Sinatra - a DSL (domain sp...
Some exciting news to share today! I'm joining Google as a Developer Programs Engineer on the Chrome team.I'll be lucky to join an incredibly talented team of developers...
This article will be appearing in my forthcoming book on Backbone.js and continues the section on unit testing. We previously looked at Jasmine and will now look at QUnit and Si...
Hey guys. Here are the slides for a talk I gave at jQuery Conf (Europe), where I presented a number of effective design patterns for scaling and decoupling your JavaScript (and ...
Developers creating JavaScript applications these days usually use a combination of patterns like MVC/MV*, modules, widgets and plugins for their architecture.Whilst this works ...
Episode 145 of The SitePoint Podcast is now available. This week interview host Louis Simoneau (@rssaddict) interviews me about Backbone.js and the free online book I'm in t...
Last updated: 16th Jan, 2012.Before exploring any JavaScript frameworks that assist in structuring applications, it can be useful to gain a basic understanding of architectural ...
Lately, there have been a number of developers getting in touch to discuss the tech stacks for their web applications. In this short post, I'd like to focus on the JavaScrip...
I recently released the first version of a new project called jQuery UI Bootstrap - a Twitter Bootstrap inspired theme for UI widgets. For a demo of the theme or to download it,...
About a week ago, I began working on a new article about Backbone.js. It was due to cover some concepts and insights intermediate or advanced users might appreciate, but I found...
[vimeo clip_id="33765496" width="535" height="301" title="1" byline="0" portrait="1"] Today we're going to take a look at how you can greatly simplify how you locally d...
We all want to use the hot new features being implemented in modern browsers right away, but there's a small problem holding us back: how can we use these great new capabili...
In this article I’d like to talk about how you can help give back to the Web and a new project that seeks to make this process easier: MoveTheWebForward.org. If you’...
Developers creating JavaScript applications these days usually use a combination of MVC, modules, widgets and plugins for their architecture. They also use a DOM manipulation li...
In a perfect world, cross-browser testing would be straightforward. We would download a legacy version of a browser, run it, and be able to instantly test our pages and scripts ...
In JavaScript, logical operators are used for boolean logic where a boolean value may be returned depending on the outcome of an expression. With the || (OR) operator, since val...
Today I'd like to talk about how you can involved with open-source, making the web a better place and standards. Interested? Hit the shiny play button below (or click here&n...
When we say an application is modular, we generally mean it's composed of a set of highly decoupled, distinct pieces of functionality stored in modules. As you probably know...
Before we start, I’d like to pose a question: when was the last time you asked someone to review your code? Reviewing code is possibly the single best technique to improve...
We all know that web standards are important. They help ensure the code we write works across different technologies, for people of different abilities and most importantl...
A brand new feature introduced in jQuery 1.7 is $.Callbacks, which we'll be taking a look at today. $.Callbacks are a multi-purpose callbacks list object and if you'...
I occasionally write about implementing design patterns in JavaScript. They’re an excellent way of building upon proven approaches to solving common development problems, ...
In this post, I'll be discussing both intermediate and advanced patterns and approaches for namespacing in JavaScript. We're going to begin with the latter as I believe ...
Practical strategies for engineering careers in the future
A field guide and why we need to rethink our expectations
Engineering with user empathy is the foundation of great products
How to thrive in imperfect conditions
Navigating comparison with mindfulness
Actionable advice for empowerment
My lessons learned along the way.
Extending your influence past your immediate circle isn't as straightforward as you'd like to hope. But there are a few strategies you can employ to help.
Building a tech strategy requires a lot of moving parts. Learn about what routes to take and whether decisions should be top-down.
With so many developments in the tech world it's difficult to keep up. Here are some strategies to stay on top of your upskilling.
How can you prioritize when everyone's ask is an urgency and you don't have time to fit it all in?
It's time to examine the good, the bad, and the very ugly elements of context switching. Even better, we'll take a look at some strategies for managing it.
Software engineering teams should focus on outcomes over outputs to deliver the best user and business value.
Being a good software engineer is not necessarily the same as being an effective one. Here, Google's Addy Osmani identifies the ten key traits of effective software engineers.