Google
 

Sunday, January 10, 2010

Your New Account

Feed My Inbox - Confirm your feed

Greetings,

Today we launched an all-new version of Feed My Inbox. Since you have an account, we wanted to pass along some important information and tell you about all the cool new features that are now available.

You have a new password
Moving to an all-new system behind-the-scenes means we had to reset all account passwords to keep your personal information 100% secure.

Here is your new temporary account login:

Login Here - https://www.feedmyinbox.com/members/login/
Email Address - ajaxian.ajaxian@gmail.com
Password - YpT4DNvg

Upon logging in for the first time, you will be asked to change your password to something unique that only you know.

Your Plan
You are currently subscribed to five or fewer feeds.
Your account will continue to be free and will function as usual. If you would be interested in some of the advanced new features below or would like to subscribe to more than five feeds, you can enjoy a 30-day free trial of any paid account by upgrading.
New Paid Account Features
Real-time updates - You have the choice of getting emails as they happen, or continue receiving updates no more than once per day.
HTML/text format - Choose whether you would like to receive updates in HTML (fancy) or plain text format for each feed.
Email summary options - Instead of getting the full update, you can choose to receive a brief summary of each or titles only and a link to read more.
Customize the send time - Choose what time you would like emails to be sent to you each day.
Read about all of the new features along with detailed pricing options on the new website: http://www.feedmyinbox.com/pricing/.
We thank you for being a customer and sincerely hope that Feed My Inbox continues to be a useful service for you!
QUESTIONS OR FEEDBACK? Feed My Inbox
If you have any, simply reply to this email for help.
 
Your friends at,
FeedMyInbox.com
help@FeedMyInbox.com

Tuesday, December 8, 2009

12/9 Ajax Bestiary

Please add updates@feedmyinbox.com to your address book to make sure you receive these messages in the future.
Ajax Bestiary - AJAX Development, News, Techniques & More Feed My Inbox

Event handling in jQuery widgets
December 8, 2009 at 1:00 pm

This is simple – provided you understand that the reference the keyword this refers to changes depending on when it is called.

When called during initialization, this refers to the widget you're initializing. When the event itself is triggered, this refers to the DOM node node and not the widget.

As such, we need to introduce a new variable during initialization which the jQuery.UI library calls self which is, of course, equal to the initialization this, not triggered this. (Those of you familiar with Object Oriented Programming and by-reference calls should have no issue with this concept).

<$.widget("ui.clicker", {    _init: function() {       self = this;       this.element.click(function() {          self.increment(self);          self.render();       });       this.render();    },    increment: function(target) {       target.value(target.value()-1);       //The exact handling of target.value will be shown another day    },    render: function() {       this.element.text(this.value());    },    value: function(val) {} });

You'll note that we have to pass self to the increment method or the widget won't actually be able to find itself, but the render method, which was called during initialization, is henceforth always able to correctly reference this (the widget)!


Customized context menu handling with jQuery
December 7, 2009 at 5:26 pm

Can you think of some times you might want to disable the right click context menu? Or better still, insert your own behavior or application specific context menu?

This is a simple and useful trick:

element.bind('contextmenu',function(e){     //Optional customized handling here     return false; });

If you don't return false, the normal context menu will appear, which could actually be desirable, depending on what exactly you want it to do (say, exiting a field and recording it as dirty).

 

This email was sent to ajaxian.ajaxian@gmail.comManage Your Account
Don't want to receive this feed any longer? Unsubscribe here.

Monday, December 7, 2009

12/8 Ajaxian » Front Page

Please add updates@feedmyinbox.com to your address book to make sure you receive these messages in the future.
Ajaxian » Front Page - Cleaning up the web with Ajax Feed My Inbox

Adobe AIR 2 Gets an Updated Engine and Memory Profiling
December 7, 2009 at 9:30 am

Adobe AIR continues to win developers over with it’s ease of leveraging standard web technologies to build cool desktop apps. But it’s not without it’s drawbacks, especially in terms of memory consumption and debugging. Thankfully, Adobe listened and included better CPU and memory profiling in the latest version of the SDK, Adobe AIR 2.

One of the biggest challenges our team continued to hear from JavaScript developers using Adobe AIR 1.5 was that it was too difficult to track down CPU and memory issues within their HTML-based AIR applications. To help JavaScript developers detect and resolve these issues, we have introduced new runtime support for CPU and memory profiling of HTML-based AIR applications in the Adobe AIR 2 beta.

Aptana jumped all over this and updated their AIR plugin to leverage the debugging capabilities. Apatana CEO Paul Colton created a video demonstrating how it works:

Adobe Air 2.0 Plugin – Profiling Apps from Aptana, Inc. on Vimeo.

In addition, AIR product manager, Rob Christensen told me that AIR 2 includes an updated version of WebKit that includes feature support for JavaScript profiling, SquirrelFish Extreme JavaScript engine which performs 50% faster using SunSpider tests, CSS3 Module support (2D transformations, transitions, animations, gradients, zoom and WebKit CSS selectors), styling scrollbars via CSS and Canvas enhancements.

Get a complete round-up of the update via the Adobe blog.


JavaScript Gaining Traction with Game Developers
December 7, 2009 at 8:45 am

We received an email from Joesph Huckaby about his new JS-based game rendering engine and I have to admit that when I first read about it, I was a little skeptical about it mainly because I’ve been disappointed with many that I’ve seen in the past. As I dug into his site, Effectgames.com, my whole opinion changed as I saw some very robust demos that clearly demonstrated the capabilities of this engine.

effectgames

The games are powered by the “Effect Engine”, Joseph’s JavaScript/DHTML library that provides the framework for displaying and animating all the graphics, playing all the sounds & music, handling the keyboard & mouse, and sprite collision detection. It can smoothly render multiple layers of parallax scrolling tiles and sprites using pure DHTML. HTML 5 Audio is used where supported (currently Safari on Mac OS X 10.5 only, 10.6 and Firefox coming soon), and 3rd party extensions used elsewhere. All modern browsers and platforms are supported, including IE 6+, Firefox 3+, Safari 3+, Chrome 1+, and Opera 9+.

The team has also created a suite of online tools to allow developers to prepare and design their game online including managing graphics & audio, creating levels for their games and manipulating graphics in real-time using non-destructive filters (scaling, rotation, and a number of other transforms).

Developers can build their games locally on their Macs or PCs, and don’t have to upload any code until they are ready to publish. Once ready, developers can compile their code automatically using Google Closure, and receive a unique URL and embed code to share the game on their own site, blog, or anywhere they want.

In looking through the documentation, it looks like the whole API is very well laid out clearly documenting the breadth of methods available and the Getting Started guide is very comprehensive.

I didn’t find anything that discussed licensing or a potential pricing model so that’s something that you may want to look into before diving into this but from what I’ve seen, the engine looks very promising.


Underscore.js gets some updates with 0.5
December 7, 2009 at 6:33 am

We posted on the underscore.js initial announcement and we liked what we saw.

Jeremy Ashkenas of underscore.js pinged us to let us know that it is chuggin’ along and the library is now up to 0.5 and has had changes such as:

  • OOP-style wrapping: _([1, 2, 3, 4, 5]).each( ... );
  • OOP wrapping allows you to chain together computations: _([1, 2, 3, 4, 5]).chain().map( ... ).flatten().reduce( ... ).value();
  • Added speed comparisons with jQuery to the test page. Because Underscore delegates to the native implementations whenever available, its “each” function is over 5 times faster than jQuery.each in Safari, and over 3.5 times faster in Firefox. Your mileage may vary, so you can use the test page to check it in your browser of choice.
  • Added reduceRight / foldr, to go along with reduce / foldl.
  • Added first / head, and rest / tail for car and cdr enthusiasts. It turns out that they’re immensely useful on JS arguments objects.
  • Added a “range” function, identical to Python’s range(), for easy array initialization.
  • A slew of other minor improvements, to get Underscore working out-of-the-box on Rhino, to use the native StopIteration object to break out of loops where available, and so on.

The latest Underscore.js 0.5.0 includes a couple of API cleanups, a couple of speedups, and a more comprehensive isEqual() function, with Date, NaN, and RegExp support.

Marcus Irven has ported the commonly-applicable Underscore functions to Lua, and released an Underscore.lua library this weekend.

 

This email was sent to ajaxian.ajaxian@gmail.comManage Your Account
Don't want to receive this feed any longer? Unsubscribe here.

Sunday, December 6, 2009

jQuery Wins .net Magazine’s Open Source Application of the Year

Some very exciting news coming from the jQuery project yesterday. The jQuery JavaScript library won .net Magazine's "Open source application of the Year for 2009″. This was a pretty amazing accomplishment when you consider that both WordPress & Firefox 3.5 were the runner-ups. Simon Willison was on hand to accept the award for the project.

simon

I think the impact of this reaches further than just the jQuery project and validates how important well-managed JavaScript frameworks such as jQuery, Dojo, MooTools et al. have become to application development. With the focus shifting heavily to increasing performance of JavaScript browser engines (V8, TraceMonkey, SquirrelFish) and streamlining the delivery methods for our source code (SPDY, LabJS), the importance of these frameworks to help mitigate the complexities of cross-browser development, DOM nuances and provide best practices is finally becoming recognized and appreciated as the demands for complex features in web applications increases exponentially.

Thursday, October 16, 2008

Say Goodbye to alert()

Blackbird, G. Scott Olson's JavaScript logging library, truly has a catchy slogan. The slogan "Say hello to Blackbird and 'goodbye' to alert()" definitely captures what the Blackbird library aims to do; make logging messages in JavaScript extremely easy. And setup is very easy. By incorporating the following lines of code, you've now added the ability to set checkpoints which will display specific data you're interested in:

HTML:
1.
2.<html>
3. <head>
4. <script type="text/javascript" src="/PATH/TO/blackbird.js"></script>
5. <link type="text/css" rel="Stylesheet" href="/PATH/TO/blackbird.css" />
6. ...
7. </head>
8. </html>

From there, its a simple matter of using Blackbird's methods to send results to the console:
JAVASCRIPT:

1.
2. log.debug( 'this is a debug message' );
3. log.info( 'this is an info message' );
4. log.warn( 'this is a warning message' );
5. log.error( 'this is an error message' );
6.


The nice thing is that each of these public methods uniquely displays the data to make it easy to determine the type of message being sent:


Blackbird has been tested in:

* Internet Explorer 6+
* Firefox 2+
* Safari 2+
* Opera 9.5

Brian Dillard was one of the first to announce this release and has also done a nice writeup of Blackbird.

Using JavaScript to make things work



An interesting top 12 list has been published, on using Javascript to fix 12 common browser headaches:

1. Setting Equal Heights (jQuery example: $("#col1, #col2").equalizeCols();)
2. IE6 PNG Alpha Transperancy support
3. Changing CSS Classes in JavaScript
4. Browser selectors in CSS ($('html').addClass($.browser);)
5. min-/max- height & width support
6. Center Elements Vertically / Horizontally
7. Display Q tags in Internet Explorer
8. Increase the size of click targets and get more call-to-action conversions
9. Lazy loader
10. bgiframe: Helps ease the pain when having to deal with IE z-index issues.
11. ieFixButtons: fixes the buggy behavior of the element in Internet Explorer 6 and 7
12. Fix Overflow

As you will see, most of the solutions are jQuery plugins, but you could roll your own.

Tuesday, October 14, 2008

Open Web Podcast - Episode 5: Ryan Stewart of Adobe

Ryan Stewart of Adobe joined us for episode 5 of the Open Web Podcast. We really want to be pragmatic Open Web citizens, so thought it would be good to hear from Ryan and get his point of view on what Adobe, and he, are thinking with respect to the Web as a-whole.

You can download the podcast directly (OGG format too), or subscribe to the series, including via iTunes).

We had a really fun chat, which had us discussing:

* Adobe's view of the Web
* Silverlight, and Alex's quote of the show: "Microsoft can't write JavaScript." Ah, come on, what about Scott Isaacs!
* Ctrl/Cmd-R is the "Make All" of the Web, and Flex
* ECMAScript, ActionScript, and the path forward
* Video: A huge Flash advantage. Where does the video tag fit in? John pointed us to the experimental vorbis support via haXe
* AIR: Ryan talked about how he sees AIR fitting into the landscape, and how he personally would love to see Geolocation APIs added
* Open Source: Ryan shares his insight on the experience Adobe has gotten from their Open Source projects (Tamarin, Flex, ...)

It was a real pleasure to have Ryan come into the lions den. He is very honest with what he does and doesn't know from within, and doesn't hold back on his own thoughts.

What would you like to ask Adobe?