SKITSANOS FOR RIA

Skitsanos

Saturday, February 06, 2010

Predictive Fetch with jQuery and the ASP.NET Ajax Library

Dino Esposito builds upon his exploration of new data binding features coming in the ASP.NET Ajax Library, explaining how to implement the predictive fetch design pattern.

Last month I discussed the implementation of master-detail views using the new features coming with the ASP.NET Ajax Library. The list of new features includes a syntax for client-side live data binding and a rich rendering component, exemplified by the DataView client control. By putting these features together, you can easily build nested views to represent one-to-many data relationships.

In the ASP.NET Ajax Library, the mechanics of master-detail views are largely defined in the logic of the DataView component and in the way the component handles and exposes its events.

This month I’ll go one step further and discuss how to implement a common and popular AJAX design pattern—predictive fetch—on top of the ASP.NET Ajax Library. Basically, I’ll extend last month’s example—a relatively standard drill-down view into customer details—to automatically and asynchronously download and display related orders, if any exist. In doing so, I’ll touch on some jQuery stuff and take a look at the new jQuery integration API in the ASP.NET Ajax Library.

Continue reading…

Thursday, January 28, 2010

Live Templates in JavaScript/ActionScript/Fle

Source: JetBarins Blog

Writing JavaScript/ActionScript/Flex code becomes easier with upcoming IntelliJ IDEA 9.0.2. New set of live templates (see Settings dialog (Ctrl+Alt+S), Live Templates, JavaScript/ActionScript group), allows to avoid tedious typing when you need to loop over an Array, Vector or anything else. Luckily, some abbreviations are the same as with Java: iter, itar, ritar. Here’s the list of currently available live templates:

Abbreviation
Description

iter
Iterate (for each..in)

itin
Iterate (for..in)

itar
Iterate elements of array

ritar
Iterate elements of array in reverse order

To use a live template, just type its abbreviation anywhere in your code and press Tab.

Ctrl+J shortcut shows you all live templates available for current context.

Tuesday, January 26, 2010

FCC joins FTC in combating robocalls

Source: Connected Planet

The Federal Communications Commission has proposed restrictions on prerecorded outbound calls, also known as robocalls, which would strengthen similar restrictions issued by the Federal Trade Commission last year.

The FCC’s proposed new rules would take the form of revisions to the Telephone Consumer Protection Act and would require telemarketers and other robocallers to get written consent from consumers before making robocalls.

Until now such consent was required only in the absence of an established business relationship. Consumers who previously contacted an organization for information or made a transaction with the organization during a certain time period are considered to have an established business relationship.

The new rules also would require prerecorded telemarketing calls to include an automated mechanism to allow consumers to opt out of receiving future prerecorded messages.

Although the FTC restrictions, issued in August as amendments to its Telemarketing Sales Rule, were similar, they did not include banks, politicians, charities and telephone companies, which are specifically called out in the new rules proposed by the FCC. The FCC noted, however, that its proposed new rules would not apply to emergency calls or to messages that deliver purely “informational” messages, such as those notifying recipients of flight cancellations.

The Commission asked for comments on whether its proposed revisions would benefit consumers and industry by creating greater symmetry between the FCC and FTC regulations and by extending the FTC’s standards to entities that are not currently subject to FTC rules.

What happened to the Windows Mobile 6.5 SDK?

Source: Betanews

Late on Friday, Microsoft published the first Windows Mobile 6.5 software development kit, albeit with no announcement or fanfare. Since the operating system was released last October, the only toolkit for Windows Mobile 6.5 development was released as an add-on component to the Windows Mobile 6 SDK.

The SDK came with images for both "Professional" and "Standard" versions of Windows Mobile 6.5, also known as touch enabled, and non-touch enabled, and it reportedly also included support for the 6.5.3 update and widget development.

However, the SDK was pulled down over the weekend, because it had apparently been posted before it was even finished with testing.

This afternoon, the Windows Mobile Developer Experience team tweeted the succinct answer to questions about what happened to the SDK. "With regards to 6.5 SDK, we prematurely released an untested SDK which was not ready. We pulled it so proper testing can be completed...."

While we are not certain what Microsoft will be showing at Mobile World Congress in February, we can now at least be certain that the 6.5.3 update will be included in the SDK when it is released.

Friday, January 22, 2010

Editorial: 10 outdated elements of desktop operating systems

Source: Engadget

We've come so very far in the way computer operating systems treat us, and in the way we treat those computer operating systems. They multitask, they animate, they reach into the internet and pull down our favorite parts, they rarely crash and they're always on. It's a far cry from a decade ago, but I think we could go so much further. The advent of the cheap, ubiquitous touchscreen, always-available internet and continually cheaper and more powerful hardware has revolutionized the phone industry, and I think it can also help the desktops and laptops we know and love do more for us. But a laptop isn't a phone: we're supposed to get a lot done on it, under some unrealistic deadlines, and some random company with big ideas can't come along and reinvent the desktop OS in one fell swoop -- that simply isn't practical when we have things to do.
So what's an OS to do? I think there are serious opportunities for evolution available to the Microsofts, Apples and Ubuntus of the world, but they involve embracing new technologies in new ways. And stealing a ton of ideas from phones. A finger on a screen is not a mouse on a pad, an internet browser is not the end-all be-all of the internet, and playing Crysis in a quad HD resolution at 60 fps is not the ultimate expression of gaming for 95% of the population. Join me as I explore a few bits of legacy cruft that need to be addressed before the desktop OS can become as important to this decade as it was to the last one.

1. Windows management

Problem: Spending time hunting for this text editing document under a dozen other windows.

This is at the top of the list, because it's probably my most frequent frustration; I'm always looking for the right window. Sure, you might tell me I can use "Spaces" or command / ctrl+tab or some other wild method of shuffling between my windows, but if tools like that exist to help you shuffle through the clutter, there's probably a deeper problem here. Everybody (my mom) always says that the best way to keep a room clean is to have places for everything and never let it get messy. I can't even count on one hand the features introduced in Windows and Mac OS this decade to help me "manage" my windows, but what if I never wanted to sign up for that job? An operating system is about performing tasks, not juggling. A touch of ADD and what might seem like a logical, modern operating system to some just ties my poor brain in knots looking for what I'm doing or what I'm doing next.

Solution: webOS

A theoretical computer that has a touchscreen just for kicks has room for adding more intuitive gestures into the workflow. Instead of trying to remember a key command or a four finger gesture, a bit of on-screen multitouch could probably rearrange those windows in a jiffy. Some of the Windows 7 snap-to functions are also very intelligent and could aid in this task. A single swipe in webOS puts me in a "card" view that is the overarching metaphor for navigating through the OS, not something tagged on to make it merely livable.
The other thing I would pull from webOS and other phone operating systems is the idea of pushing an app completely off the desktop and out of mind, while allowing it to run a background process to pull in its relevant push information or perform whatever other duty it does (a minimized window or app still remains in the task switcher or in the task bar, and therefore in the way). A nice little touchscreen flick (or maybe a pinch and flick, go wild!), could tell my computer that I don't want to see that entire application anymore -- while staying safe in knowing that Growl will pick up anything I'm missing by not having that window poking through 1/32nd of my screen.
Of course, we still have to multitask, since this is a desktop operating system. That's where things get tough, but I still think there's a way. Take that speed dial view in Chrome and Safari, for instance: it's a natural interface that's self-adjusting to my use of the browser and providing shortcuts in a relevant and organized manner. In the case of webOS, a larger screen could possibly allow for a two-up card view, where you pick two cards to co-exist. For the most part, if I'm doing actively doing more than two operations at once, I'm not really getting anything accomplished. I'd much rather drill through tasks and then send them away than see how many items I can manage to allow to coexist on my desktop before I lose my sanity. I'm frequently afflicted with an overabundance of tabs in my browser, but at least it presents me one at a time. I can read that page or bookmark it, and then I close it and then move on to the next tab. I'd never want to keep a window for Google or Facebook open at all times "just in case" a need for it arises.
Perhaps we've gotten too lazy with our implementation of drag and drop? If I could drag to a virtual target, such as the Start Menu or Spotlight, and then just start typing my desired target (iPhoto, Gmail, Tweetie, Windows Movie Maker, Facebook), which would subsequently launch in a way to deal with what I'm dragging, it would reduce steps and clutter. I want to execute tasks, not operate apps. Something our command line Unix friends know well. Quicksilver users, too.

Continue reading on Engadget...

Thursday, January 21, 2010

EU Approves $7.4 Billion Deal Between Oracle And Sun

Source: TechCrunch

It’s official: the European Commission has granted regulatory approval for Oracle to acquire Sun Microsystems for approximately $7.4 billion, without further conditions. In a statement released moments ago, Oracle says it expects unconditional approval from China and Russia as well and intends to close the transaction shortly.

Oracle will host an all-day live event for customers, partners, press and analysts on January 27th, 2010 at 9:00 AM Pacific time at its headquarters in Redwood Shores, California.

Just in case you weren’t planning on attending or following the major Apple event.

The approval comes after an in-depth antitrust investigation opened in September amid concerns that Oracle’s acquisition of MySQL would stifle competition in the database market. In August 2009, the Departement of Justice had already given the deal green light.

From the press release:

The Commission’s in-depth investigation showed that although MySQL and Oracle compete in certain parts of the database market, they are not close competitors in others, such as the high-end segment.

Given the open source nature of MySQL, the Commission also assessed Oracle’s ability and incentive to remove the constraint exerted by MySQL after the merger and the extent to which this constraint could, if necessary, be replaced by other actors on the database market.

“I am now satisfied that competition and innovation will be preserved on all the markets concerned. Oracle’s acquisition of Sun has the potential to revitalize important assets and create new and innovative products,” said Neelie Kroes, the European antitrust commissioner.

The database market is highly concentrated with the three main proprietary database vendors – Oracle, IBM and Microsoft – accounting for approximately 85% of the market in terms of revenue, the commission added.

Why NoSQL is Here to Stay...

Source: 10gen

As an alternative to legacy / SQL systems, technologies that are scalable and can better handle non-partitioned data have emerged. It appears that the “NoSQL” moniker has stuck for what simply can be defined as non-relational operational databases. Non-relational operational databases, or operational data stores, tend to have two key attributes across the board. One is that they’re non-relational, so they’re not doing joins on the server. And second, they have light transactional semantics. So complex, long-running, serialized transactions are not part of any of these NoSQL products. Those two differences, put together, allow you to take a very different approach to how databases are created, which means you can make horizontally scalable databases — the kind that run across large clusters of machines.

The list of NoSQL products is long. For the sake of this post, I want to clarify at the highest level how some technologies – namely MongoDB, CouchDB and Cassandra – differ within this NoSQL group. Today, there are two main themes emphasized in the NoSQL space –- scale (as in Google-level scale) and ease of development. I think there’s some general agreement that Cassandra type products deal with scale, while CouchDB and MongoDB deal with ease of development. That being said, you can’t completely separate these spaces because as the space matures, all of the products are going to scale very well. I guess the Holy Grail, or vision, for NoSQL is to provide solutions that make it easier for developers to build web applications or other applications that require a data store behind them.

One reason why NoSQL, or some iteration, is here to stay is that the way computer architectures are heading, having systems that can run across multiple machines is going to be an absolute requirement. The limitations of vertical scaling are going to get worse and worse. You’re going to get new chips that have more and more CPU cores on them, but the speed isn’t much higher. And they’re going to be cheaper too so you can get more computers but you’re not going to be able to get one computer that’s really fast at any price. But you’re going to be able to get 1000 computers that are not terribly fast really cheaply. So the question is, at the data storage layer, can you leverage that? The traditional approach is no, not without a lot of manual effort.  But changing computer architectures, as well as the growth of cloud computing, necessitates a better set of database systems built to achieve scale. These new solutions are going to solve that and it’s going to be critical. We want a new set of tools for the data storage layer that work well with those cloud principles, which are things like infinite scalability, low to 0 configuration, and ease of development without friction.

Webware development dedicated blog by Skitsanos R&D Labs. ASP.NET, XML, RIA, Adobe Flex, ActionScript 3, AIR, AJAX, Web 2.0, Backbase, CGI development with RealBasic and other web development issues.
News
Downloads