L-EXP

Most viewed Feeds


      view feed content PastryKit (Top 20 technology world blogs by wikio)   [28 views, last view 15 h, 15 min and 6 secs ago]
languageenvalue

One of the recent themes here has been the topic of iPhone OS web apps — apps for the iPhone and iPod Touch that are built with nothing more than HTML, CSS, and JavaScript. And specifically, the issues of how good an experience iPhone web apps can offer, and how easy they are to develop, compared to native Cocoa Touch apps.

One area in particular where iPhone web apps fall short of native iPhone apps is scrolling. Take for example a long list, such as your full address book in Contacts, or all your songs in the iPod app. When you scroll these lists, you can fling the list, and the list will scroll at high speed after you let go. The effect is sort of like spinning a wheel with very little friction. With iPhone web apps, you can make a list that looks almost, maybe even exactly, like a native iPhone list view. But all web views on the iPhone scroll with almost no momentum. You can’t fling them. iPhone web views feel like they have a lot of scrolling friction.

This friction might make sense for regular web pages rendered on the iPhone’s small screen, where by “regular” I mean “not optimized specifically for display on the iPhone”. But it just feels slow — stuck — on iPhone-optimized apps.

If you’ve never taken notice of it, try it now, comparing something like your Contacts app list with an iPhone web app like Showtime. (In Showtime, tap “Watchlist” and then tap the “+” button to get a nice long list to scroll through.) Another good scrolling comparison: native iPhone Twitter clients like Tweetie and Birdfeed versus iPhone web app Twitter clients like Hahlo and the new Mobile Twitter. The difference is significant, and far more than cosmetic. As Justin Williams recently wrote:

I believe that with the current crop of Web technologies available in MobileSafari, apps like Hahlo, PocketTweets and Showtime could thrive as an alternative to their native counterparts if Apple allowed developers to adjust the scrolling/drag coefficient of Mobile WebKit. If you compare the scrolling speed of your Twitter timeline in Hahlo and Tweetie, the results are drastically different. Tweetie feels like it effortlessly scrolls based on how much momentum you exert in the scroll action, while Hahlo is being constrained by a fifty pound weight on its back.

Scrolling isn’t the only UI/experience issue where web apps seemingly can’t quite match what native iPhone apps can offer. Another is that MobileSafari doesn’t allow for CSS fixed-position elements, which means you can’t make a toolbar that stays put at the very top or bottom of the screen without having it scroll away when you scroll the content.

And that’s just talking about the user experience side of things. The other side is that of development. Last month I wrote:

When you write a Cocoa Touch app for the iPhone, you’re not starting from scratch. You’re starting with the Cocoa Touch framework. As Faruk Ateş astutely points out in his response to Koch, to discount the framework is to discount everything that sets the iPhone apart as a development platform. Not only are native iPhone apps faster and more capable than their web-app equivalents, but they’re easier to write.

Some readers objected to this, arguing, more or less, that no matter how good the Cocoa Touch framework is, native iPhone apps are harder to develop than web apps because one must learn both the app framework (Cocoa) and a new programming language, Objective-C. But that’s not really a fair comparison. It’s like saying it’s easier to run than to bike if you don’t know how to ride a bicycle.

Let’s clarify. Let’s specify that we’re talking about creating iPhone apps with great design and user experiences. Let’s acknowledge that to make anything great — anything at all, software or otherwise — one needs talent, experience, and familiarity and expertise with the necessary tools. If you’re already an expert web developer but have never programmed Cocoa software, then yes, there’s large time-consuming Step Zero in front of you before you can attempt to develop a native iPhone Cocoa Touch app. But, likewise, there are long-time Cocoa Mac (and a handful of even longer-time NeXT) developers who have no idea how to create a modern AJAX-y web app from HTML, CSS, and JavaScript — and who think JavaScript is the weird programming language.

What I’m saying is that talented Cocoa Touch developers have an easier job implementing the same iPhone app than talented web app developers do. The Cocoa Touch framework makes all sort of things free or easy. Things like smooth fast animation between views. Things like buttons and lists and toolbars that look just like other standard iPhone buttons, lists, and toolbars.

There do exist some open source frameworks for iPhone web app developers, so that one need not start from scratch implementing things to mimic Cocoa Touch UI elements. iUI, started by Joe Hewitt just a few weeks after the original iPhone debuted in July 2007, is one. jQTouch, by David Kaneda and based on jQuery, is another. (Showtime is built using jQTouch.)

But these frameworks don’t solve the problem with scrolling speed/friction, or fixed-position elements.

It ends up there is a company, however, that has developed an amazing iPhone web app framework which:

  • Completely hides the address bar, even when running not from a saved-to-the-home app icon, but within a page in MobileSafari itself.

  • Allows for fixed-position toolbars that never budge from the top when you scroll.

  • And: sets its own scrolling friction coefficient, allowing you to fling long lists.

The company behind this web framework is Apple. And the framework is apparently named PastryKit.

The Best iPhone Web App in the World

If you have an iPhone or iPod Touch handy, stop reading this and go here:

http://help.apple.com/iphone/3/mobile/

This is not a secret web site. In fact, it may well already be in your iPhone bookmarks — it’s where you get redirected when you choose the “iPhone User Guide” bookmark that’s included as one of the defaults for MobileSafari. I don’t know when Apple launched this PastryKit-powered version of the site, but it’s been under our noses for a while, with very little notice.1

If you don’t have an iPhone or iPod Touch handy, or if you do and you’re back after trying it out and want to poke at it with Safari’s Web Inspector, you can also load it in Mac or Windows Safari by setting the user agent string to MobileSafari 3.x in Safari’s Develop menu. (Without the MobileSafari user agent string, you’ll get redirected to a different iPhone help page; using a MobileSafari 2.x user agent string, you’ll see last year’s version of the User Guide, which is far less impressive technically.) Shrink your Safari window down to roughly iPhone dimensions before loading the site, because the UI will be laid out to fill the dimensions of the viewport when it loads.

The JavaScript source code has been minimized/optimized, but it’s not obfuscated, per se, so it’s easy to see that the framework is called PastryKit, and even a dilettante JavaScript hacker like me can follow along and see some of what’s going on. PastryKit accomplishes all three of the aforementioned things — hiding the MobileSafari address bar, providing fixed-position toolbars, and providing scrolling with momentum — by disabling regular scrolling and setting up its own view hierarchy and implementing its own scrolling.

From WebKit’s perspective, everything in this iPhone User Guide is in a view that is exactly the size of the viewport, so there’s nothing to scroll. PastryKit handles all of what the user sees as scrollable content. This is how on the iPhone it provides for lower-friction scrolling than provided by MobileWebKit itself — PastryKit does its own scrolling math. And it’s even more noticeable when running the app in desktop Safari with the user agent trick, because you never see Mac scrollbars, and can’t use your mouse scrollwheel to scroll the content. Everything related to scrolling is implemented within the app itself, in JavaScript.

After installing the User Guide app to your home screen and launching it from there, there’s really very little to suggest that it isn’t a native iPhone application. No MobileSafari address bar at the top, no MobileSafari toolbar at the bottom. Scrolling is fast and has momentum. It even works perfectly offline, because the contents of the user guide are stored locally in a database using HTML5.

It’s not perfect. Scrolling is smooth on my iPhone 3GS, but it’s a little janky on my old iPhone 3G and original iPhone. (Still better than the scrolling in any other web app I’ve ever seen, though — just not native-app-smooth.) Taps and gestures sometimes don’t register — this is most noticeable for me when I try to scroll as fast as I can with a quick finger swipe. Super-quick gestures, I suspect, sometimes slip through the JavaScript event filters.

The rubber-band “bounce” scrolling — where if the view is already at the top but you pull down in an attempt to scroll up and you see whitespace and it all just bounces back into place when you let go — breaks if you pull down all the way off the bottom of the display. What happens there is the view gets “stuck” in the position where it’s displaying the stretched-out whitespace at the top of the view; you can unstick it by just tapping somewhere in the content area.

And, lastly, it doesn’t work at all with the iPhone’s system-standard gesture where you can tap the status bar at the top of the screen (the bar that displays the carrier name, signal strength, time, and battery life) to scroll to the top. In MobileSafari, if you tap the status bar while running this app, the entire MobileSafari view scrolls to the top, which exposes the browser address bar. When running the User Guide app from the home screen, tapping the status bar simply has no effect. I presume the problem here is that there is no JavaScript event in mobile WebKit for status bar taps — the event goes to the iPhone app, and the web app running in WebKit inside the iPhone app can’t see it or register a handler to act upon it. From a user’s perspective, an iPhone web app launched from the home screen is just another app. But technically, it’s like a meta app — it’s a JavaScript app running inside a native iPhone app that just presents a full-screen WebKit view and loads the web app.

But on the whole this User Guide app and the PastryKit framework are rather amazing. The $64,000 question, though, is whether PastryKit is something Apple intends (or that a team within Apple hopes) to ship publicly. It seems like a lot of effort to build a framework this rich just for this iPhone User Guide, so I’m hopeful the answer is yes. Perhaps something integrated with the next major release of Dashcode? And, perhaps with integrated UI layout tools, along the lines of Interface Builder?

Here’s to hoping we haven’t heard the last of PastryKit, and that Apple continues work on making mobile WebKit an open alternative to the App Store.

PastryKit / iPhone User Guide Demos

For the sake of posterity and for those of you without access to an iPhone or Safari, I’ve made two screencasts showing the iPhone User Guide web app in action.

  1. There’s a question on Stack Overflow from October 22 asking about PastryKit, and jQTouch developer David Kaneda has mentioned it a few times on Twitter, but those are the only references to it I’ve been able to find. ↩

typetext/htmlbasehttp://daringfireball.net/

Daring Fireball - Top 20 technology world blogs by wikio
View original post|Add to del.icio.us|8 months ago | Share

      view feed content Cluster Resources (Microsoft server and infrastructure technology blogs, news and resources)   [141 views, last view 15 h, 17 min and 20 secs ago]

Hi Cluster Fans,

 

Resources can be hard to find, so every few months we will be publishing an updated list of useful documents, guides and information to this blog (http://blogs.msdn.com/clustering/). 

 

If there is any other useful Microsoft content which you feel is missing, let us know by clicking the 'email' link in the upper right corner of the page and send us the resource and URL.

 

Thanks,
Symon Perriman
Program Manager
Clustering & HA

Microsoft

 

Useful Sources

·         Blog: Cluster Team: http://blogs.msdn.com/clustering/

·         Blog: Ask Core: Clustering

·         Training: Course 6423a: Implementing and Managing WS08 Clustering

·         Website: Cluster Technical Resources

·         Website: Cluster Information Portal

·         Website: Clustering Forum (2008)

·         Website: Clustering Forum (2008 R2)

·         Website: Clustering Newsgroup

 

 

Windows Server 2008 R2

·         Blog Guide: Deploying Cluster Shared Volumes (CSV)

·         Blog Guide: Cluster Shared Volumes (CSV): Disk Ownership

·         Blog Guide: PowerShell for Network Load Balancing (NLB) in Windows Server 2008 R2

·         Blog Guide:  PowerShell for Failover Clustering in Windows Server 2008 R2

·         Blog Guide: Live Migration Traffic

·         Blog Guide: How to manually defrag or ChkDisk a CSV disk

·         TechNet Guide: Using Live Migration in Windows Server 2008 R2

·         TechNet Guide: What??s new in R2 Clustering

·         Webcast: Innovating High Availability with Cluster Shared Volumes (CSV)

·         Webcast: Failover Clustering Feature Roadmap in WS08 R2

·         Whitepaper: Windows Server 2008 R2 & Microsoft Hyper-V Server 2008 R2 - Hyper-V Live Migration Overview & Architecture

·         Webcast: Windows Server 2008 R2 Live Migration

·         Webcast: Clustering in a Virtual World

·         Website: Clustering Forum (2008 R2)

 

 

Architecture

·         Blog Guide: Cluster Virtual Adapter (NetFT)

·         Blog Guide: PlumbAllCrossSubnetRoutes

·         Whitepaper: Failover Cluster Architecture Overview

 

 

Core

·         Guide: Server Core

·         TechNet: Installation

·         Utility: Remote Server Administration Tools (simplifies Server Core configurations)

·         Webcast: How Microsoft does IT: Enhancing High Availability with Server Core in Windows Server 2008

 

 

Deployment / Migration / Upgrade

·         Blog Guide: Migration Options for Hardware

·         Blog Guide: PrintBRM Error 0x80070043 workaround

·         Blog Guide: DHCP Database migration to Windows Server 2008

·         Blog Guide: PrintBRM.exe, 0?80070043 and Print Clusters - A Workaround

·         KB Guide: Exchange 2003: Move Mailbox 

·         KB Article: SQL Server 2008 Rolling Upgrades

·         KB Article: Cluster Nodes as Domain Controllers (DCs)

·         MSDN Guide: SQL Upgrade Paths

·         MSDN Guide: SQL Cluster Upgrade

·         TechNet Guide: Migrating Cluster Settings

·         TechNet Guide: Failover Clustering Deployment

·         TechNet Guide: Validating Hardware for a Failover Cluster

·         TechNet Guide: Installing a Failover Cluster

·         TechNet Guide: Creating a Failover Cluster

·         TechNet Guide: Cluster Requirements

·         TechNet Guide: Validating a cluster

o   Blog Guide: Validation Warning: Teredo

o   Blog Guide: Validation Warning: Patch GUID

 

·         TechNet Guide: Configuring Accounts in Active Directory

·         TechNet Guide: Recommended Clustering Hotfixes (2003)

·         TechNet Guide: Recommended Clustering Hotfixes (2003 SP2)

·         TechNet Guide: Recommended Clustering Hotfixes (2008)

·         TechNet Guide: Exchange 2007 Overview

·         TechNet Guide: Exchange 2007 Cmdlets

·         TechNet Guide: Print Migration Overview

·         TechNet Guide: UI: Print Migration Tool/Wizard

·         Utility: File Server Migration Toolkit (FSMT) (2008)

  • Webcast: TechNet Webcast: Failover Cluster Validation and Troubleshooting with Windows Server 2008  
  • Website: File Server Migration Toolkit (2008) 
  • Whitepaper: File Server Migration Toolkit (2008) 
  • Whitepaper: Configuring and Troubleshooting AD CS (2008)

 

Exchange Server

·         Lab: TechNet Virtual Lab: Exchange Server 2007 Standby Continuous Replication

·         Lab: TechNet Virtual Lab: Using Cluster Continuous Replication (CCR) in Exchange 2007

·         TechNet: Installing Cluster Continuous Replication (CCR) on 2008

·         TechNet: Deploying Exchange 2003 in a Cluster

·         TechNet: Planning for Cluster Continuous Replication (CCR)

·         TechNet: Installing CCR on Windows Server 2008

·         TechNet: How to create an Exchange SCC Failover Cluster with CMD

·         Webcast: How Microsoft IT Implemented New Storage Designs for Exchange Server 2007

·         Webcast: Exchange 2007 High Availability Deep Dive

 

 

File Server

·         Blog Guide: File Share ??Scoping?? in Windows Server 2008 Failover Clusters

·         Blog Guide: Share Subdirectories in Windows Server 2008

·         TechNet Guide: Configuring a Two-Node File Server Failover Cluster

·         TechNet Guide: Creating a Clustered File Server checklist

·         TechNet Guide: Create a Shared Folder in a Clustered File Server

·         WebCast: TechNet Webcast: Prepare Yourself for Windows Server 2008 (Part 5 of 8): New File Server Features

·         WebCast: How Microsoft IT Deploys Windows 2008 Clusters for File Services

·         Webcast: New File Server Features of Windows Server 2008 (Level 200)

 

Hyper-V

·         Blog Guide: Deploying a HA Virtual Machine (2008)

·         Blog Guide: HA Virtual Machine Deployment Considerations (2008)

·         Blog Guide: Network Load Balancing (NLB) and Virtual Machines

·         Blog Guide: Adding a Pass-Through Disk to a HA VM

·         Blog Guide: SCVMM: Intelligent Placement

·         Blog Guide: Monitor Network Traffic for a VM on a Cluster

·         TechNet Case Study: How Microsoft IT Designs the Virtualization Host & Network Infrastructure

·         TechNet Case Study: Best Practices for Deploying VMs using Hyper-V

·         TechNet Guide: Getting Started with Hyper-V

·         TechNet Guide: High-Availability for a Server Running Hyper-V

·         TechNet Guide: Design for a Failover Cluster in Which All Nodes Run Hyper-V

·         TechNet Guide: Requirements and Recommendations for Failover Clusters in Which All Nodes Run Hyper-V

·         TechNet Guide: Failover Cluster in which the Servers run Hyper-V

·         TechNet Webcast: 24 Hours of Windows Server 2008 (Part 24 of 24): High Availability with Hyper-V

·         TechNet Webcast: Creating Business Continuity Solutions Using Windows Virtualization

·         TechNet Webcast: High Availability with Hyper-V

·         Webcast: Top 10 VMWare Myths, including CSV and live migration

·         Webcast: Hyper-V Quick Migration on a Failover Cluster

·         Whitepaper: Quick Migration with Hyper-V

·         Whitepaper: Testing Hyper-V and Failover Clustering

 

 

Miscellaneous Resources

·         Blog Guide: Add a New Disk to a Cluster (2008)

·         Blog Guide: Configuring Auditing for a Cluster (2008)

·         Blog Guide: Cluster Recovery (2003)

·         KB Article: The Microsoft Support Policy for Windows Server 2008 Failover Clusters

·         TechNet Guide: Configuring the Quorum in a Failover Cluster

·         TechNet Guide: Managing a Failover Cluster

·         TechNet Guide: Modifying Settings for a Failover Cluster

·         TechNet Guide: The Failover Cluster Management Snap-In

·         TechNet Guide: Understanding Backup and Recovery Basics for a Failover Cluster

·         TechNet Guide: Support Policy

·         TechNet Guide: Windows Server 2008 Itanium / IA64 support

·         Webcast: Top 10 Windows Server 2008 Failover Clustering Enhancements over Windows Server 2003 Clustering, Based on Best Practices (Level 300)

·         Webcast: Failover Clustering 101

·         Webcast: Achieving High Availability with Windows Server ??Longhorn? Clustering (Level 200)

  • Webcast: Microsoft Webcast: Reducing IT Overhead with Windows Server 2008 Storage Features
  • Webcast: TechNet Webcast: Build High-Availability Infrastructures with Windows Server 2008 Failover Clustering
  • Webcast: IT Manager Webcast: Delivering High Availability to Your Infrastructure
  • Webcast: TechNet Webcast: Failover Clustering and Quorum in Windows Server 2008 Enterprise Storage
  • Webcast: TechNet Virtual Lab: Windows Server 2008 Enterprise Failover Clustering Lab

·         Whitepaper: Microsoft??s HA Strategy

·         Whitepaper: Overview of Failover Clustering

·         Whitepaper: HA with Microsoft MPIO (2003, 2008)

·         Website: Windows Logo site

·         Webcast: Introduction to Failover Clustering

  Multi-Site Clustering

·         Cluster Team Site: http://www.microsoft.com/windowsserver2008/en/us/failover-clustering-multisite.aspx

·         KB Article: Deployment Considerations for Windows Server 2008 failover cluster nodes on different, routed subnets

·         Webcast: TechNet Webcast: Geographically Dispersed Failover Clustering in Windows Server 2008 Enterprise

·         Webcast: How You Can Achieve Greater Availability with Failover Clustering Across Multiple Sites (Level 300) 

·         Whitepaper: Multi-site Clustering

·         Webcast: Multi-Site Clustering in Windows Server 2008

 

 

Network Load Balancing

·         Blog Guide: Network Load Balancing (NLB) and Virtual Machines

·         KB Article: NLB Troubleshooting Overview

·         KB Article: Create/manage/destroy NLB clusters via NLB Manager remotely from another server, or from RSAT client (admin pack) on Vista

·         Presentation: Server Core: Install the NLB feature

·         TechNet Guide: Configuring NLB with Terminal Services

·         TechNet Guide: NLB Deployment Guide

·         TechNet Guide: Implementing a new NLB Cluster

·         TechNet Guide: Verifying the NLB Cluster and Enabling Client Access

·         TechNet Guide: Overview of NLB

·         TechNet Guide: Creating NLB Clusters

·         TechNet Guide: Managing NLB Clusters

·         TechNet Guide: Setting NLB Parameters

·         TechNet Guide: Controlling Hosts on NLB clusters

·         TechNet Guide: Troubleshooting for System Event Messages Related to NLB Cluster

·         TechNet Guide: User Interface: NLB Manager

·         TechNet Guide: Upgrading a NLB Cluster

·         TechNet Guide: Upgrading a Network Load Balancing (NLB) Cluster

·         Webcast: 24 Hours of Windows Server 2008 (Part 23 of 24): Failover Clustering and Network Load Balancing z

 

 

Other Resources / Workloads

·         Blog Guide: Configure Multiple Instances of MSDTC (2008)

·         Blog Guide: Installing MSDTC (2003)

·         Blog Guide: Optimize Print Cluster (2003)

·         Blog Guide: Creating and Configuring a Generic Application Resource

·         TechNet Guide: Configuring Generic Resources

·         TechNet Guide: Configure a Service or Application for High Availability

 

 

Scripting

·         Blog Guide: Creating a Cluster using WMI

·         Blog Guide: CLI: Cluster Resource Groups

·         Blog Guide: CLI: Quorum

·         Blog Guide: CLI: Disk Resources

·</fo
[clustering nlb cluster failover wsfc network load balancing windows server 2008 core exchange symon perriman SQL hyper-v file server r2 windows server 2008 r2 deployment multi-site scripting ]
Clustering and High Availability : Microsoft Blog - Microsoft server and infrastructure technology blogs, news and resources
View original post|Add to del.icio.us|more than one year ago | Share


      view feed content Irssi hacks (Beryl and Compiz for Linux)   [19 views, last view 15 h, 18 min and 50 secs ago]
languageentypetext/htmlvalue

So I’ve been breaking my pidgin IRC habit lately with irssi, and its going pretty well. I’ve been using it for about a week now, and there are a few settings and mods that have been pretty helpful in making it my client of choice.

The Hilight Window

So I’ll be honest, I’m not all that great at scrolling back through the logs that pile up when I’m away, and more specifically, oftentimes I don’t care about what was said, unless its addressed to me, or something that I’m concerned about. This is where the “hilight window comes in handy. Grab this perl script (highlightwin.pl) and put it in your ~/.irssi/scripts/autorun directory. then fire up irssi and run these commands to activate

/run autorun/hilightwin.pl
/window new split
/window name hilight
/window size 6
/hilight <your nick>

After doing all that, you’ll see a window like the one to the left. Any time your name is mentioned, that message will go to that window, along with the room it was mentioned in. Furthermore if you’re interested in things TheoreticalBob says, or any time ‘ffmpeg’ is mentioned, you can just do /hilight TheoreticalBobNow or /hilight ffmpeg respectively. Now you won’t miss messages if you’re chilling in #roomA and you’re needed in #roomB!

Hiding joins/parts

These messages are annoying to me. Personally, I dont care when someone enters or leaves the room, I just care if they’re there at that particular moment. I can look at the currently-present list if I want to talk to someone specific. Join/part messages can also fill up the valuable terminal space you have with information you simply dont care about. Turn off all Join/part/nick change messages with:

/ignore -channels #roomA,#roomB,#etc * JOINS PARTS QUITS NICKS

Screen

This is the primary reason I wanted to run irssi. With pidgin, I’d often leave one computer connected, and have like 4 nicks signed on at once. kdub, kdubois, and kdub_ all get pretty annoying to the other people in the room. If you run ’screen’ you get a terminal that ‘runs in the background’ even when you close the window. You can quit the window, or hit ctrl-a-d to disconnect from the screen session. The sweet part is that irssi is still running in the background, collecting messages, and maintaining your IRC connection. You can reconnect with ’screen -raAd’. This is pretty cool because you can run irssi on one computer, and connect to it from anywhere in the world over ssh. If my desktop is running irssi, i can connect back to my irssi session by ssh-ing in and running the screen command! Pretty handy…

Save

Don’t forget to save your settings with the /save command! this tripped me up for a bit

I’m still tweaking irssi, and if any of you have any hints or tricks that you can’t live without, I would be eager to hear them!

basehttp://planet.compiz-fusion.org/atom.xml

Planet Compiz Fusion - Beryl and Compiz for Linux
View original post|Add to del.icio.us|more than one year ago | Share

      view feed content Cómo Conseguí mi Equipo Strobist Básico por tan solo 80 Euros (Photography technique guides )   [54 views, last view 15 h, 21 min and 57 secs ago]

En un artículo anterior os expliqué en qué consistía la filosofía Strobist y cuales eran los componentes básicos necesarios para iniciarte en la iluminación portátil. En este artículo te explico cómo conseguir tu equipo más básico por muy poco dinero. Por tan solo 80 euros he conseguido juntar mi equipo básico de iluminación, flash incluído. ¿No te lo crees? En este artículo te cuento cómo conseguir cada uno de los elementos del equipo. Verás como al final salen las cuentas.

Introducción Aunque he ido ampliando mi equipo con el tiempo, hoy he querido hacer el ejercicio de reunir los enlaces necesarios para reunir un equipo strobist básico. Como casi siempre, para estas cosas recurro a eBay. Al final es la forma más cómoda que tengo de conseguir material de lo más diverso sin moverme de casa.

Y como de vez en cuando algún amigo me pregunta sobre ideas para regalar a algún amante de la fotografía y me acaba tocando encargarlo a mí, me he decidido a hacer la recopilación para tenerlo a punto si me llega la oportunidad. Y como he hecho otras veces, quería compartirlo contigo.

Todos los artículos encontrados están en la modalidad "Compralo Ya" (el precio mostrado es el final, no se trata de subastas).

Como los productos tienen una duración finita, los enlaces apuntan a las correspondientes búsquedas en eBay. Dependiendo de la cotización del dolar y de las ofertas de los vendedores los precios fluctuarán al alza o a la baja. No olvides marcar la opción "Todo el mundo" en tus búsquedas y ordenar los resultados por "Precio + envío: más bajo primero".

1) Lo primero, el flash

Si ya contáis con un flash os podéis ahorrar este paso (y una buena parte del presupuesto dedicado al equipo de iluminación).

Como vamos a disparar el flash remotamente, no es necesario disponer de un flash TTL, pero si es necesario que tenga la posibilidad de regular la potencia.

En mi caso opté por un Yongnuo YN460, de lo más barato que pude encontrar en el mercado. Lo conseguí nuevo por poco más de 40 euros gastos de envío incluídos, y acabo de ver que se puede conseguir ya por poco más de 30 euros.

En éste artículo te hablo en detalle del flash, donde además hay muchas opiniones y experiencias de usuarios que optaron por uno igual.

2) El trípode para el flash (Light Stand)

De nuevo, eBay es mi referencia. Hay que rebuscar un poco para encontrar lo que uno busca, porque se utiliza un término un tanto genérico para describirlo que coincide con otros productos más baratos. Puedes probar con "studio light stand".

En el momento de escribir estas líneas Next Digital tenía en stock un trípode de 180 cm como el mío por 21 euros gastos de envío incluídos. Un auténtico chollo. Y en Gadget Infinity los tienes por 24, más pequeños, eso si.

3) El soporte para la sombrilla

El soporte para la sombrilla (no se si existe un mejor nombre en español) es la pieza que se fija a la punta del trípode, sosteniendo la sombrilla y a la que se engancha el flash.

Tiene muchos nombres, pero los he podido encontrar muy baratos buscando "Flash Shoe Umbrella Holder Swivel Light Stand Bracket". Tan baratos como que cuestan otros 6 euros.

4) La sombrilla translúcida

La última pieza para montar el flash en el trípode es la sombrilla. Se trata de una sombrilla blanca (translúcida) que permite disparar el flash hacia el objeto y actua a modo de ventana de luz, ampliando la fuente de luz a la vez que la difumina.

Se puede encontrar por tan solo 5 euros con los gastos de envío incluídos, y si te fijas bien, hay vendedores que venden la sombrilla junto con el soporte, con lo que puede que consigas un mayor ahorro.

5) El disparador inalámbrico

Podría haberme ahorrado este elemento para que me saliera más barato el kit, pero creo que es un complemento fundamental.

En su momento adquirí un juego de emisor y receptor PT-04, pero posteriormente ha salido una evolución, el CTR-301, que me parece que cuenta con varias mejoras en su diseño, aunque se necesita un pequeño adaptador para engancharlo al soporte de la sombrilla, ya que por defecto viene con una rosca de trípode.

El PT-04 se puede encontrar por apenas 13 euros y el CTR-301 se puede encontrar por menos de 18 euros en kit de receptor y disparador.

Así que, todo el equipo por tan solo 80 euros

Si no has hecho aún la suma, te ayudaré:

32 euros del flash, 21 del trípode, 6 del adaptador, 5 de la sombrilla y 13 del disparador remoto son exactamente 77 euros. Teniendo en cuenta que siempre que pago por PayPal me acaban subiendo un poco el tipo de cambio, seguro que se queda en los 80.

Parece increíble, ¿verdad? ¿A que al principio no te lo habías creído?

Enlaces Relacionados

  • Foto de portada: My set-up, de Marvin Kuo
  • Cómo Conseguí mi segundo Flash por tan solo 40 Euros
  • Las 11 Claves para Comprar en eBay a Precios Increíbles y Sin Correr Riesgos
  • Strobist: una Interesante Alternativa a la Iluminación de Estudio

Descargas Premium Relacionadas

Para ti si quieres ir más allá, aquí están los contenidos de la Zona Premium relacionados con este artículo...

Versión PDF Este Artículo en Versión PDF Con páginas a todo color y listo para guardar en tu disco duro


El histograma - Photography technique guides
View original post|Add to del.icio.us|more than one year ago | Share

      view feed content VIX API Blog: Managing VM guests using vmrun. (Virtualization software)   [505 views, last view 15 h, 27 min and 10 secs ago]

The easiest way to get started with VIX is by using the vmrun command which is packaged inside of VIX. It's a command-line executable that doesn't require a development environment, and is pretty easy to use once you get the hang of it.

Since I mostly use ESX, I want to take an ESX-centric view of using vmrun in this post, and I'm also going to focus on what you can do to the guest operating system within VMs. Specifically I'm going to address two use cases that I think are pretty important and useful:

  1. Installing an agent within a VM.
  2. Restarting a service on a Windows VM.

First, you'll need to install VIX 1.6.2. On Windows you'll find vmrun in %PROGRAMFILES%\VMware\VMware VIX. On Linux it should be available in your path, so you can just run it from anywhere. Next, make sure you've got an ESX 3.5 update 2 or higher server to run commands against. In addition, you'll need a VM whose operating system is running an up-to-date copy of VMware tools.

If you type vmrun with no arguments you'll get a listing of all the things vmrun can do, but I want to focus on guest operations, which are listed below.

Table 1: Guest operations supported by vmrun.

Operation Description Supported on ESX?
runProgramInGuest Run a program in Guest OS Yes
fileExistsInGuest Check if a file exists in Guest OS Yes
setSharedFolderState Modify a Host-Guest shared folder No
addSharedFolder Add a Host-Guest shared folder No
removeSharedFolder Remove a Host-Guest shared folder No
listProcessesInGuest List running processes in Guest OS Yes
killProcessInGuest Kill a process in Guest OS Yes
runScriptInGuest Run a script in Guest OS Yes
deleteFileInGuest Delete a file in Guest OS Yes
createDirectoryInGuest Create a directory in Guest OS Yes
deleteDirectoryInGuest Delete a directory in Guest OS Yes
listDirectoryInGuest List a directory in Guest OS Yes
copyFileFromHostToGuest Copy a file from host OS to guest OS Yes
copyFileFromGuestToHost Copy a file from guest OS to host OS Yes
renameFileInGuest Rename a file in Guest OS Yes
captureScreen Capture the screen of the VM to a local file No
writeVariable Write a variable in the VM state No
readVariable Read a variable in the VM state No

Use case: Installing an agent in your VM.

Installing agents is an integral part of managing large numbers of systems, whether physical or virtual. Usually you want to bake your agents into your OS image, but occasionally a new agent will come along that needs to be deployed to existing systems. This example shows how you can copy an agent from your desktop to your VM and install it. The only thing you need is an agent that can be installed without user intervention (which is the norm for agents anyway).

Please note: Commands should be entered all on one line, it's split up here just for the sake if fitting it into the blog.

Example 1: Copying an MSI file from your desktop to your VM.

vmrun -T esx -h https://esx.example.com/sdk
  -u root -p secretpw -gu user -gp userpw
copyFileFromHostToGuest "[storage1] Windows/Windows.vmx"
  "c:\program files\my agent software\agent.msi" c:\agent.msi

One thing to point out here is that, despite the command saying "From Host to Guest" the file is actually being copied from the same system where vmrun is invoked (for example your laptop or workstation).

Next we use runProgramInGuest to install the MSI.

Example 2: Invoke the MSI file we copied above.

vmrun -T esx -h https://esx.example.com/sdk
  -u root -p secretpw -gu user -gp userpw
  runProgramInGuest "[storage1] Windows/Windows.vmx"
  c:\agent.msi

Use case: Restarting a service on Windows.

This one's really easy so I'll just show it without explanation.

Example 3: Restart a service on Windows.

vmrun -T esx -h https://esx.example.com/sdk
  -u root -p secretpw -gu user -gp userpw
  runProgramInGuest "[storage1] Windows/Windows.vmx"
  c:\windows\system32\net.exe restart dhcp

If Linux is more your style, tweak the last part to say something like /etc/init.d/sshd restart and you'll be restarting Linux services just as easily.

How do I get the path to my VMX file?

The hardest part about dealing with vmrun when you're managing ESX is knowing where your VMX file is. To get this you have to either log in to your ESX system and locate the VMX file, or you can use the VI API. Within the VI API, the VirtualMachine object contains a data structure called VirtualMachineFileInfo. The vmPathName property of this structure tells you the path to your VMX file. Not very pretty, but over time you'll see us rolling out some more convenient ways to access the functionality VIX provides. In the meantime there's a lot of really useful stuff you can do with tools like vmrun.



VMware Server - Virtualization software
View original post|Add to del.icio.us|more than one year ago | Share

      view feed content Análisis Snappy Book Offset. Comparativa con Hofmann (Photoblogs)   [982 views, last view 15 h, 29 min and 42 secs ago]


NOTA: Este post está realizado usando un álbum que la gente de Snappy Book me mandó de manera gratuita para que les diera mi opinión, lo dejo claro para evitar posibles problemas. No me pidieron que lo publicase en el blog, pero soy usuario habitual de esta marca, ya hice una review en Abril de 2007 En este caso como no tenía ningún álbum en menté pensé en regalárselo a Maria Figueiras, mi maquilladora habitual por la paciencia que tiene en las sesiones y su buen trabajo. Como no tenía demasiado tiempo libre este álbum está hecho usando la versión Express del software de Snappy Book, en esta versión eliges plantillas, eliges carpeta con fotos y el software monta todo el álbum de manera automática en menos de 1 minuto!. Luego cambié un par de fotos de sitio, cambié la portada y tenía el álbum preparado para enviar en menos de 5 minutos. Alguno me pidió un screencast de como funciona esto, espero poder hacerlo pronto. 

El nombre de el álbum es Snappy Print 21X28 cm
Podéis ver todas las fotos en grande pinchando sobre ellas

Bueno, a lo que íbamos, al igual que el álbum fotográfico que revisé hace unos días, el álbum viene perfectamente empaquetado en una caja de madera, así se evita que las esquinas lleguen dañadas.
En este caso nos encontramos una sorpresa que el álbum de calidad fotográfica no tenía ( y que digo yo que por lo que cuesta podría traer) y es una bolsa de tela con el tamaño perfecto para llevar nuestro libro. Puede parecer un detalle algo superfluo pero a mi me ha gustado, sobre todo porque lo regalé con la bolsa y parece que "viste" mas ¿no?

También nos vien un punto de lectura con la url de la web de Snappy, nada excitante y con una utilidad muy relativa en un álbum de fotos.
 

La calidad de la portada es exactamente igual a la de los álbumes fotográficos, transmitiendo una gran solidez, sin duda un acabado de buena calidad. La posibilidad de personalizar la portada al máximo es de agradecer. La sobriedad en el acabado también.

Como ya he comentado he utilizado plantillas propias del soft y he dejado que este coloque las fotos de manera automática, aquí podéis ver ejemplos de como ha terminado. En este caso usé un acabado "moda" encajando bien con la temática de las fotos, pero hay plantillas de vacaciones, niños, viajes?

Las páginas pueden abrir 180º sin ningún tipo de problema permitiendo ver las fotografías a doble página con todo el esplendor que se merecen?

Aquí podéis ver una comparación del álbum offset (arriba) frente a uno fotográfico de la misma marca (abajo). General y detalle

COMPARACI?N CON ÁLBUM OFFSET DE HOFMANN

Voy a hacer una pequeña comparación de tamaños, acabados, calidades? de este álbum de Snappy frente al equivalente de Hoffman.
Para  empezar la portada, la de Hoffman es brillante y acolchada, frente a la algo mas mate y dura de Snappy. ¿Cúal es mejor? para gustos los colores, a mi los acolchados no me terminan de convencer pero suelen gustar mucho a los profanos en esto A mi me gusta mas la terminación del segundo, pero repito, es una opinión personal, en casa cuando viene alguien les impresiona mas la portada del Hoffman.

Como podéis ver de tamaño son bastante parecidos, el de Snappy es ligeramente más grande (21 X 28 cm) , tanto en alto como en ancho, pero no demasiado. En estas fotos no os fijéis demasiado en el de Hoffman, un día se me cayó al sueo y anda con ese "bollo" culpa mía.

De lomo y cosido son parecidos, aunque el sistema de Snappy parece algo mas resinstente a aperturas completas del álbum, pero ya os diré cuando lleve unos meses de "uso" a ver si aguanta bien, el Hoffman tiene ya mas de 2 años.

Calidad de las fotos, que es lo que nos importa, ¿no? El acabado de Snappy es algo menos brillante que el Hoffman, parece que el Hoffman tenga una lámina protectora brillante por encima de la fotos (en algún caso, en alguna esquina está un pelín tocado) No se como afectará todo esto a la durabilidad porque no tengo ningún álbum de este tipo de mas de 3 años (Hoffman) y no parece que hayan perdido mucha calidad, ya veremos dentro de 50 años (Recordérmelo)

El revelado Offset, que es el de esto álbumes se realiza en impresoras especiales que abaratan costes respecto a un revelado químico "tradicional". En las siguientes fotos podéis ver fotos macros de 3 tipos de álbumes: el primero es un Hoffman Offset, el segundo un Snappy Offset y el tercero es un Snappy de la serie fotográfica.

Se aprecia una trama algo mayor en el primer caso que en el segundo (en el tercero no hay trama visible y se nota que es revelado químico).

Pero ¿Cómo se traduce a la vista? ¿Se nota demasiado? Pues hay que hilar muy fino para encontrar diferencias si uno no es muy observador y perfeccionista, yo sigo con los álbumes fotográficos pero es que soy algo "tiquismiquis" con la calidad y si puedo siempre voy al mejor acabado.
¿Se nota diferencia entre los dos offset? Pues un poco, la verdad, la trama en el primero puede ser muy evidente en algunos casos, sobre todo en fotografías pequeñas. Aunque ya os digo que debe de ser un tema muy sutil porque cuando alguien viene a casa no muestra muchas mas preferencia por uno o por otro.
¿Seguiré haciendo álbumes offset? Pues seguramente, pero solo para temas que no precisen de uan calidad superior, puede ser un álbum idela para guardar fotos más casuales o familiares de uan manera bastante económica (44 ? y metí mas de 200 fotos)



El precio de un Snappy Print 21?28 es a partir de 44 ? siendo 54 ? el precio máximo si nos decidimos a poner 60 páginas, creo que no está nada mal (y mas, si lo comparamos con los fotográficos de las mismas caracteristicas a  75?7175? respectivamente)

Espero que os haya gustado la review y si tenéis dudas los comentarios son todos vuestros


Escrito originalmente en : Fotomaf. Colección de Instantes. Fotoblog. Fotos y noticias.
Compártelo Escrito originalmente en : Fotomaf. Colección de Instantes. Fotoblog. Fotos y noticias.


[Material - Reviews álbum de fotos offset álbum fotográfico álbum-digital fotoalbum hofmann Snappy-Book ]
Fotomaf - Photoblogs
View original post|Add to del.icio.us|more than one year ago | Share

      view feed content Accessing the NetConnection Object in FLVPlayback (Flash, Flex and Air related Blogs)   [61 views, last view 15 h, 39 min and 30 secs ago]
There are situations where it is necessary to call a server side method on FMS. Some CDNs, for example Limelight, used to or maybe still do require you to call the FCSubscribe method in order to request a live stream. This send a signals to the Edge server to pull the live stream from the Origin server if it is not already being delivered to that Edge. While this delivery method and stream setup routine is being phased out across most CDNs I thought it may be useful to post a (slightly hackish) workaround to make this setup work with the FLVPlayback component.
The problem with the FLVPlayback component is that there is no obvious, simple way to obtain a reference to the NetConnection Object it uses under the hood. While you can implement a custom NCManager class, this is not trivial and after all a NetConnection is being maintained already by the component, so why reinvent the wheel?

Note that the following code is not something I am proud of, but it worked at the time when I needed it. It was used to get a live stream working with the FLVPlayback component streaming from Limelight about a year ago.

// listen to player events and kill manual connection once we're streaming player.addEventListener("playing", playListener); player.addEventListener("stateChange", stateListener); player.addEventListener("ready", readyListener); /* this is the hack: check once every frame if the NC has been defined inside the FLVPlayback component */ this.onEnterFrame = function() { if (player.ncMgr.getNetConnection() != undefined) { this.onEnterFrame = null; delete this.onEnterFrame; trace("got NC"); //subscribe(streamName); } } var nc:NetConnection; var serverName:String = "server.llnwd.net"; var appName:String = "account_name/_definst_"; var streamName:String = "live"; var source_Str = "rtmp://" + serverName + "/" + appName + "/" + streamName; // start up by setting the contentPath (now called source in newer versions of the component) player.contentPath = source_Str; function subscribe(name:String) { nc = player.ncMgr.getNetConnection(); nc.onFCSubscribe = function(info:Object) { trace("onFCSubscribe: " + info.code); clearInterval(int_id); if (info.code == "NetStream.Play.StreamNotFound") { // handle error, retry after a few secs or similar } else if (info.code == "NetStream.Play.Start") { // we're successfully subscribed } else { // handle error } }; // not used right now nc.onFCUnsubscribe = function(info:Object) { } trace("subscribing to " + name); nc.call("FCSubscribe",null,name); } // can be used to unsubscribe from stream function unsubscribe(name:String) { nc.call("FCUnsubscribe",null,name); } Hopefully this is helpful to someone.


[Components FMS Videos & Players ]
Flashcomguru.com - Flash, Flex and Air related Blogs
View original post|Add to del.icio.us|more than one year ago | Share

      view feed content Suikoden 6 rumored to be coming at the Tokyo Game Show 2009 (Best video games blogs)   [145 views, last view 15 h, 47 min and 13 secs ago]
languagetypetext/htmlvalue


Suikoden fans will be happy to know that the Suikoden VI may soon be a reality. Or at least, it may soon be an actual product as suggested by several recent clues. Clues that point to a new Suikoden possibly being announced at the TGS 2009.

These clues started with Konami registering a US trademark for the name “Genso Suikoden” (which is the Japanese name for the series). After this, Blue Moons Studio, a Japanese company founded by the creator of the Suikoden series (Yoshitaka Murayama) announced that he was working on a new RPG. But didn’t give a name or title for it. Which means it could be a new Suikoden.

Then in an interview, Muryama said that he could consider returning to Konami to make another Suikoden. The last clue is the fact that Konami is planning on announcing no less than five new games at TGS 09. Meaning that one of these could possibly be Suikoden 6.

The series hasn’t been seen in America since Suikoden V was released for the PS2 back in 2006. Although there was a DS title, Suikoden Tierkreis, that released in December of last year, but it was a spin-off and not a core game in the series.

And since Suikoden does have a cult following, there is a chance that Konami may return to it. It’s all rumor for now though. We’ll just have to wait and see. But I’m sure Suikoden fans everywhere have their fingers crossed.

Via The Game Reviews

basehttp://feeds.feedburner.com/videogamesblogger
[News suikoden 6 suikoden vi rumor speculation konami game videogame sequel series ]
VideoGamesBlogger - Best video games blogs
View original post|Add to del.icio.us|11 months ago | Share

      view feed content Introducing RemoteApp User Assignment (Microsoft server and infrastructure technology blogs, news and resources)   [93 views, last view 15 h, 47 min and 34 secs ago]

We’re pleased to announce a new feature in Windows Server 2008 R2: RemoteApp User Assignment. The RemoteApp User Assignment feature gives administrators the ability to show a customized list of RemoteApp programs specific to the logged-on user in RD Web Access and RemoteApp and Desktop Connections. This has been one of our most requested features since Terminal Services Web Access (TS Web Access) was released in Windows Server 2008.

Why assign Remote App programs to users?

In Windows Server 2008 TS Web Access, if two users with different application usage patterns log on to the website, they will both see the same list of RemoteApp programs. For example, a user from HR and a developer will see the same set of published applications. They will both have to dig through several published applications to access the ones that are relevant to them.

By using RemoteApp User Assignment, Windows Server 2008 R2 provides a solution to filter the applications based on the logged-on user. By using this new feature, the administrator can easily set up the system so that users will only see the applications they use. In our example scenario, the HR user will only see HR applications, and the developer will only see development applications. This feature makes it easy for users to find and run the applications that are relevant to them.

How it works

The RemoteApp User Assignment feature is implemented by adding an access control list (ACL) to every RemoteApp program. When a user logs on to RD Web Access, the list of applications that are viewable to this user is fetched from the RD Session Host (RDSH) servers. As we can see in the diagram below, when RD Web Access is configured to point directly to one or more RD Session Host servers, RD Web Access directly queries the servers and filters the retrieved list of RemoteApp programs based on the ACLs.

When RD Web Access is configured to point to an RD Connection Broker server, the Connection Broker server queries the RD Session Host servers and filters the list of RemoteApp programs, as shown in the diagram below.

When the RemoteApp program is first published, its default ACL allows all users to see the application. Through UI and Windows PowerShell™, the ACL can be configured to allow only certain domain users or entire domain groups to view the application. See the relevant sections later in this post for detailed configuration steps.

Considerations

There are a few considerations when setting up this feature that I’d like to mention briefly.

1. The RemoteApp programs can only be assigned to domain users or domain groups, not local users or local security groups. If a user logs on to RD Web Access with a non-domain account, all RemoteApp programs will be displayed, as with Windows Server 2008 TS Web Access.

2. The computer that is actually performing the check of the user’s credentials against the RemoteApp program’s ACL (see the diagrams in the previous section) must be either a member of the domain’s Windows Authorization Access Group, or be joined to a domain running in Windows 2000 compatibility mode.

NOTE: RemoteApp User Assignment is not intended to be a security mechanism; rather it is a discoverability mechanism. There are already ways to secure access to an RD Session Host server, and the RemoteApp User Assignment feature does nothing to change or improve upon them. This feature only helps reduce the number of unnecessary applications that are otherwise displayed to users.

RemoteApp User Assignment using UI

In RemoteApp Manager UI, a new tab, User Assignment, has been added to the RemoteApp Properties dialog box:

As you can see in the screenshot, this new tab allows administrators to specify which domain users and groups can view the RemoteApp program in RD Web Access and the RemoteApp and Desktop Connection feed.

To filter the applications, select the Specified domain users and domain groups option, and then click Add or Remove to modify the list of assigned domain users and groups. The screenshot below captures a configuration where the application is configured to be shown only to the members of the domain group RDVSTRESS\testgroup.

RemoteApp User Assignment using the Remote Desktop Services module for Windows PowerShell

The feature can also be managed by using the Remote Desktop Services module for Windows PowerShell:

1. Click Start, click Administrative Tools, and then click Windows PowerShell Modules.

2. To switch to the Remote Desktop Services module for Windows PowerShell, type cd RDS:\.

3. Type cd RDS:\RemoteApp\RemoteAppPrograms and then press ENTER. A dir command at this container lists all the applications that are published.

4. Type cd .\<app>\UserAssignment and then press ENTER. A dir command at this container lists all the users and groups to whom the application is assigned.

5. To assign the application to a user 'testdomain\user2', type New-Item -Path RDS:\RemoteApp\RemoteAppPrograms\<app>\UserAssignment -Name user2@testdomain and then press ENTER.

6. To unassign the application to a user 'testdomain\user2', type Remove-Item -Path 'RDS:\RemoteApp\RemoteAppPrograms\<app>\UserAssignment\user2@testdomain' and then press ENTER.

7. Type dir and then press ENTER to see the user removed from the list of users.


[RemoteApp RemoteApp and Desktop Connections Author: Travis Howe Author: Nagarjun Guraja ]
Terminal Services Team Blog - Microsoft server and infrastructure technology blogs, news and resources
View original post|Add to del.icio.us|more than one year ago | Share

      view feed content A week of symfony #168 (15->21 March 2010) (PHP MVC Web Frameworks)   [1 views, last view 15 h, 52 min and 24 secs ago]

This week Symfony 2 started the conversion of its unit tests from lime to PHPUnit. In addition, an RFC about controllers in Symfony 2 was published.

Development mailing list

  • Discussions about Symfony 2 and I18n, easy migration from Symfony 1.x to 2.0 and RFC: Controllers in Symfony 2

Development highlights

Symfony 1.X branch:

  • r28606: [tools] adjustments for icu 4.4/cldr 1.8
  • r28625: [1.3, 1.4] fixed broken reference to response in the cache filter when a page cache is found
  • r28640: [1.3, 1.4] fixed overflow for settings in the dev exception page
  • r28641: [1.3, 1.4] fixed typos in the PHPDocs

Symfony 2.X branch:

  • 13ed..9e01, d4f7..e5ce: [Tests] converted unit tests from lime to PHPUnit for the following components: Console, DependencyInjection, EventDispatcher, OutputEscaper, and Yaml
  • c46b..cf24, 9d60..4f3a, 39aa..cdf1: [Tests] added a global phpunit.xml file
  • 2dc3..84b1: [Tests] fixed assertEquals() calls arguments order

sfDoctrinePlugin:

  • r28633: [1.3, 1.4] fixed call to custom accessor

sfPropelPlugin:

  • r28632: [1.3, 1.4] fixed call to doCount
  • r28642: [1.3, 1.4] added Persian Translation of admin generator

...and many other changes

Development digest: 127 changesets, 22 bugs reported, 12 bugs fixed, 2 enhancements suggested, 1 enhancement closed, 3 documentation defects reported, 2 documentation defects fixed, and 8 documentation edits.

Documentation

New symfony bloggers

  • David Castelló (feed) (Spanish)
  • Real World Development (feed) (English)

Plugins

  • New plugins
    • twSblamPlugin: antispam validator plugin which use Sblam antispam system to validate message.
    • sfCouchPlugin: a symfony plugin for the CouchDB. Makes it easy to store documents and to define map/reduce views.
    • sfDoctrineAutoCompleteRelationPlugin: allows you to search via an autocomplete input for related object and remove them easilly from a list.
    • sfSuperablePlugin: rateble doctrine behavior. For rate any objects of models.
    • sfForkedDoctrineApplyPlugin: forked version of sfDoctrineApplyPlugin. This fork stripped all dependencies from Zend Framework, introduced Profile model inheritance, small structural changes and few usability changes as well.
  • Updated plugins
    • sfUnobstrusiveWidgetPlugin: fixed swf upload JS, fixed script tag render, added 'active_class' and 'active_tag' options in sfUoWidgetMenu.class.php
    • sfPHPUnit2Plugin: added phpunit.xml hint for default PHPUnit options
    • sfTrafficCMSPlugin: added hasAccess function, removed hasAccess function as it needs to be in the sfGuardUser class
    • mgI18nPlugin: removed schema, avoid to enable i18n if the application does not require any i18n
    • sfjQueryDoctrineAdminPlugin: helper and template updates
    • swFormExtraPlugin: avoid calling autoload function
    • sfJqueryReloadedPlugin: added 1.4.2 to plugin but 1.3.2 is still the default package used
    • sfImageTransformExtraPlugin: created routing.yml to replace sf_image route that was formerly added by code, removed the route generating code from sfImageTransformExtraPluginConfiguration, removed the unit test for the route generation as it is now obsolete, added a comment to the upcomming release in package.xml.tmpl, refactored image sources and routing, parameter preparation in action no longer necessary, sfImageTransformRoute now excepts objects for generating URLs (url_for()), sfImageTransformRoute can now assign a value to the :type parameter from a passed object, sfImageTransformRoute can now assign a value to the :path parameter from a passed :id parameter, sfImageTransformRoute can now assign a value to the :sf_format parameter from the passed :format parameter, sfSourceImageTemplate is now removed as it became obsolete, routing.yml now has an attribute for sf_image_doctrine route, sfImageTransformManager now holds the parameter prepatation method for the overlay transformation
    • dcSwishPlugin: added highlighting capabilities
    • sfUserOnlinePlugin: added some changes
    • sfDoctrine2Plugin: added support for user defined (multiple) class dirs, made cli return status codes
    • sfMinifyTSPlugin: improved the regular expression that finds css/js tags
    • sfSolrPlugin: updated view.yml, the sfLucene instance is now passed as argument in the validator callback
    • swCombinePlugin: tweaked console message, fixed wrong type hinting
    • sfApplePushNotificationServicePlugin: added custom message
    • sfSocialPlugin: added spanish and catalan translations
    • sfFacebookConnectPlugin: added streamPublish and showPermissionsDialog in js
    • sfExtjs3Plugin: added TwinDateField, TwinComboBox, and MultiSelect ux definitions
    • sfPropel15Plugin: added experimental query-based theme for the admin generator, allowed non-standard fields to be sortable in admin generator list
    • csSettingsPlugin: added support for CSRF Token in the admin form, fixed a cache bug when load data is done, made plugin compatible with sf 1.4
    • sfImageTransformPlugin: added two transforms from sfImageTransformExtraPlugin, fixed bug with Fileinfo mime detection with PHP 5.3, added support for floodFillPaintImage as this has replaced the depricated colorFloodfillImage in recent versions
    • apostropheFormBuilderPlugin: tweaked fixtures, proper changes for fieldset vs. layout
    • apostrophePlugin: added some strings that can't be sniffed in i18nDummy methods, all __() internationalization calls in Apostrophe now use the 'apostrophe' catalog to make it easier to separately internationalize your main site in the 'messages' catalog, form choices and other strings that can't be safely sniffed but need to be i18n, all forms and __() strings now use the 'apostrophe' translation catalog for easier management of translations, admin generator modules are now ready to act as part of the same i18n catalogue Global buttons have names as well as labels, global buttons now have a 'name' parameter, moved the culture check from the WHERE clause to the ON clause, added code to getDescendantsInfo to supply a temporary title based on the page slug for pages that don't have translated titles yet, fixed assets.php bugs, recreated blog pagination controls with CSS to make them easier to style, added aFormSignin.class.php that subclasses sfGuardFormSignin and sets the apostrophe I18N catalogue so we can have full I18N of the login form in our translations, no mandatory params to language form, security fix related to sessions
    • apostropheBlogPlugin: initial ui fanciness, changes to blog template layouts, added tag dropdown for blog administrator, fixed filter to allow an associative parameter to be passed for tag values, switched published_at to be a JQuery widget, changed event module to only show upcomming events unless user is filtering, added more dropdown filters for various fields
    • sfSympalPlugin: removed some excess options, made our web/css cache clear report more gracefully on failures
  • New symfony powered websites

    • ValGames: (French) platform for exchange and sale video games among members. Geolocation, syndication and more.
    • Hipposeo: (English) free and unlimited analysis of the performance of your website in Google
    • Gospel-on.pl: (Polish) community website of a gospel choir

    They talked about us

    • Why Not To Want 100% Code Coverage
    • bestwebdesignagencies.com Releases The March 2010 Rankings of the Best Symfony Development Firms
    • Symfony 2. Routing. Что новенького?
    • update sfSimplePagePlugin
    • Les salaires en berne en 2010 dans l’informatique
    • admin generator validation - validating integer input
    • Using Doctrine 2 with symfony 1.x [Part 1]
    • Symfony Form widget for many-to-many relationship: UI considerations - part I
    • Doctrine Behavior на примере собственного плагина
    • Using Symfony with Google App Engine?
    • sfWidget rendu via un composant Symfony
    • Ocari, nouvelle solution de gestion de contenu dédiée au monde de la Presse
    • sfSCMIgnoresTaskPlugin for Symfony released, windows compatible!
    • Find symfony requested module/action quickly
    • Agregar campos virtuales a tu modelo para mejor el rendimiento de symfony
    • Using helpers within an action in symfony
    • Imagemagick sfThumbnail Plugin Fix for Scaling under Symfony
    • Apostrophe: A CMS so easy even your mom could use it.
    • How to successfully deploy a fully working php/symfony environment in Snow Leopard III: Apache+PHP5
    • Unexpected form field in Symfony application
    • CakePHP Alternative
    • Comenzar un proyecto Symfony 1.2 desde un Sandbox
    • Symfony kiskérdések
    • Symfony Plug-in for MapFish works with Symfony 1.4
    • Integrating jqGrid with symfony & propel
    • Symfony框架简介
    • symfony のview.ymlネタ。というかyamlネタ。
    • Doctrine のMaster&Slaveのコネクションを操作するクラスを作成する方法
    • Is Apostrophe the best CMS written in PHP?
    Be trained by symfony experts - Apr 12 Paris - Apr 21 Paris - Apr 28 Online

    Symfony - PHP MVC Web Frameworks
    View original post|Add to del.icio.us|5 months ago | Share

          view feed content Fabian Arrotin: CentOS 5.3 on Neoware e90 Thin Client (CentOS - The community Enterprise Operating System ( Linux Distro))   [4 views, last view 15 h, 56 min and 4 secs ago]

    As Hp acquired Neoware several months ago, customers are searching for new thin clients .. and I received a Neoware e90 thin client. What could I do with it ? … hmm, let’s try to use it at home as a small appliance to host a USB HDD that can be shared . Advantage is that it doesn’t consume a lot of electricity (in comparison with my Asus Barebone with a AMD x2 64) and doesn’t produce noise at all .. which is also a good thing. The thin client I received has a Via Nehemiah cpu @ 800mghz and 128Mb ram. It also has a small IDE-DiskOnChip disk (32mb) but that is obviously too small to setup CentOS on it. I decided to dedicate a small 1Gb USB stick gift I received from a “well-known hypervisor” company (aka Vmware) and use it for / and swap.

    I disconnected the DiskOnChip module from the motherboard and configured the bios to boot in pxe as first device and local usb-hdd for the second one (if you need a password, it’s likely to be either ‘dogbites’ or ‘DOGBITES’) and i started a CentOS 5.3 setup. But that didn’t work on first try : the embedded NIC (VIA Technologies, Inc. VT6102 [Rhine-II] (rev 74) ) refused to aquire an IP address . Switching to VT3/VT4 showed me that even if via-rhine.ko kernel module was loaded, it was impossible to have a network connection. (message was related to “netdev watchdog transmit timed out” and some IRQ messages too). I then decided to add the kernel parameter ‘irqpoll’ and then the setup was able to work on the network. One problem solved … Second problem is that with 128mb ram, CentOS 5.x normally isn’t installable. Well, if you use text mode (anyway graphical mode will even refuse to start …) and use disk-druid to create the swap partition, anaconda will use it directly to simulate the missing RAM. Other thing is that I *had* to use NFS based setup : I tried http based setup and it always died on me (maybe because it had to fetch stage2.img while with NFS it just loop-mounts it …). Anyway it installed succesfully on the USB stick (minimal install, so every component removed from the software selection, took 29 minutes to complete) and it rebooted normally. Don’t forget also to add the irqpoll kernel parameter in grub.conf so that you’ll have network connection after reboot … And as an image talks more than a long sentence .. :



    Planet CentOS - CentOS - The community Enterprise Operating System ( Linux Distro)
    View original post|Add to del.icio.us|11 months ago | Share

          view feed content Muchos juegos y aplicaciones para tu iPhone en descarga directa (Blogs sobre el iPhone)   [2265 views, last view 15 h, 58 min and 40 secs ago]
    languagetypetext/htmlvalue

    -4seasons 1.0-drQ[C4PDA]
    -Accounts 2.9.1-kidmoneys
    -AirCoaster 3D 2.4.1-kidmoneys
    -Airfare 1.6-TheGoonies
    -Allure 1.3-kidmoneys
    -American Presidents 2 in 1 2.3.0-D2[C4iD]
    -Anytime Golf - Magic Touch 1.1-kidmoneys
    -Aqualution - The Beginning 2.1-neppyfx
    -Astronauts 1.0.3-drQ[C4PDA]
    -Banner Deluxe 1.2.8-kidmoneys
    -Battle Field 1.1-kidmoneys

    102 MB
    http://rapidshare.com/files/235248597/05-22-09-1.rar

    -CongressPro 3.1-kidmoneys
    -CozyQuest 1.0.15-kidmoneys
    -Dead Words 1.2.1-D2&C4PDA
    -DinoSmash Online 1.0.patched-C4PDA
    -DOCUMENTS 2 1.1-kidmoneys
    -Earth Scenery 1.0.1-alibaba
    -Euro Radio 1.5-alibaba
    -feX - Friend Exchange for Facebook 2.0-COREPDA
    -Files (Email, Document Viewer, File Storage) 1.3.1-kidmoneys
    -Flashback 1.1.patched-C4PDA
    -GL Golf Deluxe 1.07-kidmoneys
    -Glide Factor 1.1-kidmoneys
    -Handwriting Typewriter ‘Notes’ 1.2.0-kidmoneys
    -HDR Camera 1.4.0-kidmoneys
    -HydroTilt 2.2.1-kidmoneys

    97 MB
    http://rapidshare.com/files/235250281/05-22-09-2.rar


    -Grand Pro 1.1.4.patched-COREPDA
    -i Sniper 0.2.1-kidmoneys
    -iBear Money 2.6.2-kidmoneys
    -iBody 1.7.2-kidmoneys
    -iBrawl 1.1-kidmoneys
    -iDrone 1.3-kidmoneys
    -iFare Finder 1.7-heyyouguys
    -IndyCar Mobile 1.0-alibaba
    -iStudent 1.11-drQ[C4PDA]
    -iStyle 1.2-kidmoneys
    -iXpenselT 2.4.1-kidmoneys
    -J Admin Mobile 1.2.1-kidmoneys
    -jfControl - Allround Remote Control 2.0-kidmoneys
    -Keeper 3.0-kidmoneys
    -Mazetrix 1.1-kidmoneys

    97 MB
    http://rapidshare.com/files/235251978/05-22-09-3.rar

    -Monkey Flight 1.10-kidmoneys
    -Pee Monkey Jungle Fire 1.1.4-kidmoneys
    -PhotoForge 1.2-kidmoneys
    -Pinch ‘n Pop! 1.3.4-kidmoneys
    -Platypus 1.20-kidmoneys
    -Pocket God 1.16-chazzy
    -Radio (91 norske kanaler) 2.0-touch_94
    -RadioTimes 1.0.3-bellbrie
    -Randgrid synthesizer and drum machine 1.0.4-kidmoneys
    -RiverMote 1.4-kidmoneys
    -Robotco 1.2.1-kidmoneys
    -Ruben & Lullaby 1-Aloware
    -Shift 001.patched-C4PDA
    -Super Hangman Pro 1.1-kidmoneys
    -Tower of Witch 1.1-kidmoneys

    102 MB
    http://rapidshare.com/files/235253600/05-22-09-4.rar

    -Smokeless 1.4-most_uniQue
    -StockAdvisor 1.1.0-D2[C4iD]
    -StudioApp 1.2-kidmoneys

    104 MB
    http://rapidshare.com/files/235255145/05-22-09-5.rar

    -Metro Maximus 1.5-kidmoneys
    -StockWatch 4.01-alibaba
    -Todo 2.0.1-kidmoneys
    -Trixel 1.1-kidmoneys
    -Twitterrific Premium 2.0.1-kidmoneys
    -Unit Converter 1.0.24-iphoniak
    -Upcoming Events 4.1.1.patched-C4PDA
    -WarShip 1.1-kidmoneys
    -XAtomic Ultimate 1.0.2-kidmoneys

    79 MB
    http://rapidshare.com/files/235256344/05-22-09-6.rar

    -AC-130 iSniper from the sky! 1.1-kidmoneys
    -Acupoints Ultimate 2.0-kidmoneys
    -Ancient Legion 1.1-kidmoneys
    -Assault on Mafia 1.1.1-kidmoneys
    -Asso piglia tutto 1.1-ITALIA
    -Autovelox 1.2-ITALIA
    -Birdie 1.5.1-antdell
    -Bones TestPeds 09 1.0-esi
    -Cam 3D 1.0.2-mega4i
    -Card Shark Solitaire Deluxe 3.5-dodoburd
    -CatzEye 1.1-kidmoneys
    -Convertbot 1.3.patched-C4PDA
    -Credit Card Expense Manager 2.1-kidmoneys
    -Currency FX 1.0-kidmoneys
    -Diamond Hunter 1.2-kidmoneys
    -Disneyland Resort Trivia 1.0-kidmoneys
    -Downhill Bowling 1.0.6-kidmoneys

    98 MB
    http://rapidshare.com/files/235624282/05-23-09-1.rar

    -FlickFlak 1.0-Mgssidley
    -Free SMS 1.04-kidmoneys
    -Friki Tricks 1.1-most_uniQue
    -Fruited 1.02-kidmoneys
    -GravSynth 1.0-kidmoneys
    -Guitarist’s Reference 2.8.1-kidmoneys
    -Human Atlas 1.0-kidmoneys
    -i-c-LiveCams (IP-PTZ Webcam Streaming Video) 2.31-Mauro84
    -i41CX+ RPN Calculator with Printer 2.1-kidmoneys
    -iBot Sumo 1.2.0-Mgssidley
    -iDcrm 1.0-kidmoneys
    -Imagine Poker Touch 1.5.1-chazzy
    -iSpadez - A Spades Game 2.2.1-meta
    -iSébastien 1.0-esi

    99 MB
    http://rapidshare.com/files/235625627/05-23-09-2.rar

    -iSpeak French 1.2-haxor133t
    -iStudent 1.11-drQ[C4PDA]
    -iText - Free SMS-MMS Texting 1.2-kidmoneys
    -J Admin Mobile 1.2.1-kidmoneys
    -Karate Terms 1.0-esi
    -Keeper Password & Data Vault 3.0-kidmoneys
    -LCube 1.30-COREPDA
    -Les Blondes - Episode 10.6 1.0-esi
    -Lexulous 1.0-alibaba
    -LifeTicker 1.7.0-kidmoneys

    102 MB
    http://rapidshare.com/files/235627323/05-23-09-3.rar

    -London Bus, Tube & Rail Journey Planner 1.1-alibaba
    -Magic Filler 1.1-most_uniQue
    -miWall Wallpaper-Backgrounds + 1.2kidmoneys
    -MotivationalQuotes 1.35-alibaba
    -Mouse Menace 1.0-esi
    -My Secrets 1.2-alibaba
    -myMovies 1.4.1-kidmoneys
    -NBC’s The Office Challenge 1.1.2-kidmoneys
    -Packing (+TO DO!) 4.3-topche
    -ParaJumping 1.1-bteamer
    -Parking App 2.0.2-kidmoneys
    -PathBuilder 1.0-kidmoneys
    -Peekababe 1.1-kidmoneys
    -Photo Touch Purikura 1.3-kidmoneys
    -PhotoCooker 1.0.3-kidmoneys
    -Pirate Master III 1.12-kidmoneys
    -Pirate Panic 1.0-isa
    -politicoTracker 1.0-kidmoneys
    -ProcessAway Credit Card Terminal 2.1-kidmoneys
    -Property Evaluator 2.4-iont
    -PsychMeds 1.0-esi
    -Public Radio 1.5-kidmoneys
    -Revelations1 1.7-esi
    -Robot Wars 3D 1.1-kidmoneys
    -Server Admin Remote 1.2.3-kidmoneys
    -Sonic the Hedgehog 1.0.0-CX

    90 MB
    http://rapidshare.com/files/235629286/05-23-09-4.rar

    -StepStones 1.0.1-kidmoneys
    -Sticky Balls 1.0-esi
    -Super Hangman Pro 1.1-most_uniQue
    -Super Pender 1.5-esi
    -Sushipedia 1.0.1-meta
    -Terminator - Salvation Graphic Novel 1.0-esi

    95 MB
    http://rapidshare.com/files/235631448/05-23-09-5.rar

    -The Quest- Islands of Ice and Fire 2.0-kidmoneys
    -Trading Faces 1.0-alibaba
    -TV Shows 1.3.0-kidmoneys
    -USing Karaoke 1.0-isa
    -Why all monkeys are long-armed 1.0-esi
    -Wiki! pro 1.0.0-alibaba
    -Wine Enthusiast Guide 1.3-kidmoneys
    -World Countries and Leaders 1.0-alibaba
    -ZAGAT TO GO ‘09 1.2.102-meta
    -Terminator 1.0-D2[C4iD]

    75 MB
    http://rapidshare.com/files/235632592/05-23-09-6.rar

    Talking Latin American Spanish to English Phrasebook 2.0-macosmovil (464MB):
    http://www.megaupload.com/?d=UCRT2NCA

    Talking Latin American Spanish to French Phrase Book 2.0.1-macosmovil (170MB):
    http://www.megaupload.com/?d=9V22LAKS

    -4 Tracks DX Pocket Studio 1.1-D2[C4PDA]
    -a World of Lullabies - Lullaby your Kids 2.1-itaintrite
    -ABCRacer 1.1-esi
    -AlcoholCalc 1.0-alibaba
    -Amateur Surgeon 1.0.1
    -Arvale - Ocean of Time 1.0-Dheed
    -aSmart HUD+Speedcams 1.3
    -Atomic Clock (Gorgy Timing) 2.10-JackTrav

    98 MB
    http://rapidshare.com/files/235992786/05-24-09-1.rar

    -Attack 1-attack
    -Aw’ Shugs 1.1-kidmoneys
    -Bark ‘n’ Woof ( Doggy Sounds ) 1.3-itaintrite
    -Barzellette! 1.1.6-ITALIA
    -Beijing Opera 1.0-esi
    -Bellum - Tactics 1.0-esi
    -Bird Tweets ( Tweeting Birds ) 1.1-itaintrite
    -Brave Dwarves 1.1-kidmoneys
    -BurgerBurger 1.0-esi
    -CaloriesUS 1.00-alibaba

    99 MB
    http://rapidshare.com/files/235994244/05-24-09-2.rar

    -Cambridge Advanced English-Chinese Dictionary 2.1-kidmoneys
    -Camera Plus 2 2.1.1.patched-Calku
    -Cams Ahoy ! Europe 2.0.1-ITALIA
    -Carpenter’s Helper 1.0-kidmoneys
    -Chimp Adventure 1.0-esi
    -Clean My Screen - The Ultimate Screen Cleaner 1.0-Dheed
    -Construction Site - Men at Work 1.3-itaintrite
    -Cooking Star 1.1-WYSE

    102 MB
    http://rapidshare.com/files/235995572/05-24-09-3.rar

    -Dave Matthews Band Revenge 1.0-most_uniQue
    -Dillo! - Italiano - Loquendo Voice Dialer 1.1-ITALIA
    -Easy DrumMachine 1.1.1-esi
    -EdiMon+ 1.0-kidmoneys
    -fantaFootball Serie A 08-09 1.1.1-ITALIA
    -FiC - Filipino iPhone Community 1.0-D2[C4iD]
    -FillCircle 1.0-esi
    -Fleurs de Montagne 1.0-esi
    -Fortune Cat 1.0-esi
    -French History threw Kings, Emperors and Presidents 1.0-polk
    -Friki Tricks 1.1-kidmoneys
    -G-Park 2.4-ITALIA
    -Gears 1.0-kidmoneys
    -Gears 1.0-PhaseII
    -Guimbarde 1.0.1-esi

    90 MB
    http://rapidshare.com/files/235996964/05-24-09-4.rar

    -Hidden Music - Prank Box1.8-itaintrite
    -Hungarian Wines 1.0-esi
    -iBusiness News 2.1.1-alibaba
    -iChainsawX 1.3-drQ[C4iD]
    -iCorps - USMC Pocket Reference 3.0.0-esi
    -iDownload 1.1-alibaba
    -iNapkin 1.2-kidmoneys
    -Inspirational Quotes 1.0-most_uniQue
    -iPearl 1.0-esi
    -iSmiley 1.0-esi
    -Jellyfishes 1.0-esi
    -Jisho Touch (Multilingual Japanese English Dictionary) 1.5-kidmoneys
    -Johnny Crash 1.0.0-esi
    -Join the Dots 1.0-esi
    -Keyboard Shortcuts 1.0-esi
    -Kitty (Meow ‘n’ Purr Kittens) 1.2-itaintrite
    -Lange Biochemistry and Genetics Flash Cards 1.1

    95 MB
    http://rapidshare.com/files/235998442/05-24-09-5.rar

    -Laughter 1.2-drQ[C4iD]
    -Man United Anthems 1 1.0-esi
    -Man United Heroes 1 1.0-esi
    -Measures - Unit Converter 1.2.7-COREPDA
    -MovieBase 1.0-kidmoneys
    -MyReef 3D 1.01-kidmoneys
    -Mystique. chapter 1 - foetus 1.0-esi
    -Ninja Shadow 1.6.2-kidmoneys
    -OzSlang 1.0
    -Period Tracker 5.0-alibaba
    -Phone Rings 1.1-itaintrite
    -Pigskin Pass 1.0-esi
    -Pipe 1.2-most_uniQue
    -Port Defender - Tower Defense 1.0.6-kidmoneys
    -Port Defender 1.0.6.patched-COREPDA
    -Puzzle Ball 1.0-esi
    -RateWatch Pro 1.0-alibaba
    -RECalc - Real Estate Mortgage Loan Calculator 1.4.2-alibaba
    -ReflexTest 1.1-drQ[C4iD]
    -Romeo and Juliet 3.1-alibaba

    75 MB
    http://rapidshare.com/files/235999994/05-24-09-6.rar

    -ScaryCastle 1.7-drQ[C4iD]
    -Scoops 1.6-itaintrite
    -Scream Illusions - Prank Box 1.8-itaintrite
    -Sexy Sudoku 1.0-kidmoneys
    -Shuffled 1.0-esi
    -Sick Guy 1.1-itaintrite
    -Sleuth 1.0-esi
    -SomaFM Player 1.0-esi
    -Speed Muscles MD 1.0-esi
    -SpeedSurfer 1.0-esi
    -SpiritWriter Trick 1.1-drQ[C4iD]
    -Squeaky the Duck 1.1-itaintrite
    -Stella GTD 1.0-esi
    -StressTest 1.7-drQ[C4iD]
    -SuccessIts! Motivational Poster Creator 1.0–most_uniQue
    -Sugar Buzz 1.0-kidmoneys
    -Super Marble Roll 1.0-kidmoneys
    -SuperEnal8LE 1.2.0-ITALIA
    -TanZen 1.5.4-lightmaster
    -Taxiball 1.0-esi
    -Tea Round 1.0-esi

    75 MB
    http://rapidshare.com/files/236001436/05-24-09-7.rar

    -The Chemical Touch 1.5.1-lightmaster
    -The Chemical Touch 1.5.1.patched-C4PDA
    -The Gun - Ultimate Sound Box 1.4-itaintrite
    -TheGun 1.3-drQ[C4iD]
    -Tides of War 1-kidmoneys
    -Toki Tori 1.0-VNMagicTeam
    -Totem Quest Slot 1.0-esi
    -Virtual Pool Online 1.97-dNaPOD
    -WAR (Machine Gun, Bomb, Explosion, etc) 1.3-itaintrite
    -YXflash.v1.0.rar
    -ZOOZbeat Rock 1.0-kidmoneys

    75 MB
    http://rapidshare.com/files/236002472/05-24-09-8.rar

    -25 Things Guys wish Girls Knew 1.0-phil
    -3D Tunnel Vision 1.1.1-T_Z
    -A Robo Riot! 1.0-phil
    -A seXy nurse 1.0-F-14
    -Absalt Alarm Clock 2.5.2-itaintrite
    -Ambiance Classic 1.5.5-kopimi
    -Apache HTTPD Directives 1.00-herewe
    -aWake!Simply - 7 Day alarm and bedside clock 2.0.1-most_uniQue
    -Barcelona 1.0-F-14

    102 MB
    http://rapidshare.com/files/236356232/05-25-09-1.rar

    -Beer Opener 1.0.1-most_uniQue
    -Blocks 1.3-most_uniQue
    -Box of Sox 1.0-MeUp
    -BSDMan 1.0-herewe
    -CalcsPro - Mortgage Calculators 1.31-alibaba
    -China (Travelto) 1.6-alibaba
    -Clopy 1.0-esi
    -Converted 1.6.2-alibaba
    -Darkness - Sun, Moon, Clock 2.01-liddokun
    -Deca Sudoku 1.0-herewe
    -Doodle Jump 1.2.1-Isnt_me
    -Dzikir and Doa Collections 1.0-alibaba
    -Emailer - Wide SMTP Emailing 1.6-most_uniQue
    -English Premier League Live 1.3.1-dNaPdA
    -Faby - Air City 1.0-phil
    -Flight Update 3.0-alibaba
    -Food Observer 1.0.1-phil
    -France (TravelTo) 1.6-alibaba
    -Galactica 1.2-MeUp
    -GameBox Arcade ( Oldschool SFX ) 1.3-itaintrite
    -Geek Test 1.0-phil
    -Germany (Travelto) 1.6-alibaba
    -Hearing Test - Prank Box 1.9-itaintrite

    97 MB
    http://rapidshare.com/files/236357814/05-25-09-2.rar

    -G-Park 2.5-most_uniQue
    -Goaaal! 1.0-F-14
    -Good Food 1.0-phil
    -HomeBudget 1.1.2-alibaba
    -iCab Mobile (Web Browser) 1.5-liddokun
    -iCash 1.2-drQ[C4iD]
    -iSwineFlu 1.0-F-14
    -iTradeAnalysis - Improve Trading1.4-alibaba
    -Kitty (Meow ‘n’ Purr Kittens) 1.3-itaintrite
    -Kryzer Prologue 1.0-Dheed
    -Mart Bingo 1.02-most_uniQue
    -Math King 1.2-most_uniQue
    -MegaHolidays 1.01-alibaba
    -Microbiology Pronunciations 1.1-most_uniQue
    -Morphing-Animal 1.0-herewe
    -Most Addictive Game 1.0-phil
    -Night Shift - Maids 2.0-herewe
    -Night Shift - Nurses 2.0-herewe
    -Night Shift - Secretaries 2.0-herewe
    -Nombre Clef 2.0
    -p-i-m Studies For Guitar 1.0.1-phil
    -Palavras Cruzadas 1.0.1-brazzas
    -Phone Rider 1.1-rickth64
    -Pichirp Pro 1.0-most_uniQue

    103 MB
    http://rapidshare.com/files/236359324/05-25-09-3.rar

    -Puzzle Bubble 1.0-F-14
    -Reflexo 1.0-herewe
    -Rise of Atlantis 1.0.0-herewe
    -Robot Rover 1.0-herewe
    -Russian English Dictionary 1.0-drQ[C4iD]

    101 MB
    http://rapidshare.com/files/236360918/05-25-09-4.rar

    -Scotch 1.0-phil
    -Sexy Game 2.0-alibaba
    -Sherlock Holmes complete collection 3.1-herewe
    -Social Butterfly 1.0-phil
    -Sonic the Hedgehog - Sonic 2 MOD 1.0.0-DMI
    -Space Shuttle 9.10-MeUp
    -SpeedSurfer 1.0-esi
    -Stupid Cloud! 1.0-phil
    -SWIRL - 3D Arcade Racing 1.0-jerrymaguire
    -SyncSing 1.0
    -texTure MMS 1.3-most_uniQue
    -Tough Topics 1.0-phil
    -Turbo Subs 1.1.6-phil
    -US President Quotes 1.65-alibaba
    -Vegas Mate 1.5.3-phil
    -Video Game Updates 1-herewe
    -World View Live 1.3.2-luxbut
    -Zip Codes 1.1-alibaba

    82 MB
    http://rapidshare.com/files/236362398/05-25-09-5.rar

    Artículos relacionados


    basehttp://feeds.feedburner.com/eiphone
    [Noticias descarga gratis jailbreak juegos ]
    EstudioiPhone - Blogs sobre el iPhone
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content Failover Clustering & NLB Documents and Resources (Microsoft server and infrastructure technology blogs, news and resources)   [261 views, last view 15 h, 59 min and 31 secs ago]

    Hi Cluster Fans,

     

    Resources can be hard to find, so every few months we will be publishing an updated list of over 300 useful documents, guides, information and utilities to this blog (http://blogs.msdn.com/clustering/).  If there is any other useful Failover Clustering or Network Load Balancing content which you feel is missing, let us know by clicking the 'email' link in the upper right corner of the page and send us the resource and URL so we can share it.

     

    Thanks,
    Symon Perriman
    Program Manager
    Clustering & HA

    Microsoft

    Resources

    Useful Sources

    Windows Server 2008 R2

    Core

    Deployment, Migration & Upgrades

    Exchange Server

    File Server, DFS-R, DFS-N & NFS

    Hyper-V

    Miscellaneous

    Multi-Site Clustering

    Network Load Balancing

    Other Resources & Workloads

    PowerShell, Cluster.exe & Scripting

    Print Clustering

    SQL Server

    Utilities
     

     

     

    Useful Sources

    ·         Blog: Cluster Team: http://blogs.msdn.com/clustering/

    ·         Blog: Ask Core: Clustering

    ·         Training: Course 6423a: Implementing and Managing WS08 Clustering

    ·         Website: Cluster Information Portal

    ·         Website: Clustering Forum (2008)

    ·         Website: Clustering Forum (2008 R2)

    ·         Website: Clustering Newsgroup

    ·         Website: Cluster Technical Resources

     

     

    Windows Server 2008 R2

    ·         R2 Evaluation Build: http://www.microsoft.com/windowsserver2008/en/us/try-it.aspx

    ·         Blog: Adding Features via PowerShell

    ·         Blog: Cluster Shared Volumes (CSV): Disk Ownership

    ·         Blog: Deploying Cluster Shared Volumes (CSV)

    ·         Blog: How to manually defrag or ChkDisk a CSV disk

    ·         Blog: Hyper-V Export and Import (2008 R2)

    ·         Blog: Live Migration Traffic

    ·         Blog: Network Load Balancing (NLB) and Virtual Machines

    ·         Blog: PowerShell for Failover Clustering in Windows Server 2008 R2

    ·         Blog: PowerShell for Network Load Balancing (NLB) in Windows Server 2008 R2

    ·         Blog: SCVMM Quick Storage Migration

    ·         KB Article: Hyper-V R2 Upgrades

    ·         TechNet: Exchange 2010 Move Local Legacy Mailbox

    ·         TechNet: Migration to Windows Server 2008 R2 Failover Clusters

    ·         TechNet: Using Live Migration in Windows Server 2008 R2

    ·         TechNet: What’s new in R2 Clustering

    ·         Webcast: Building a Hyper-V R2 Cluster

    ·         Webcast: Clustering in a Virtual World

    ·         Webcast: Deploying Clusters for Live Migration

    ·         Webcast: Failover and Live Migration

    ·         Webcast: Failover Clustering Feature Roadmap in WS08 R2

    ·         Webcast: Getting started with Hyper-V in R2 videos

    ·         Webcast: Getting Started with Live Migration 

    ·         Webcast: High Availability Basics with Windows Server 2008 R2 Hyper-V (Level 200)

    ·         Webcast: High-Availability in Exchange 2010 – Part 1

    ·         Webcast: High-Availability in Exchange 2010 – Part 2

    ·         Webcast: High-Availability in Exchange 2010 – Part 3

    ·         Webcast: High-Availability in Exchange 2010 – Part 4

    ·         Webcast: Hyper-V Quick Migration on a Failover Cluster

    ·         Website: Hyper-V Server (2008 R2)

    ·         Webcast: Innovating High Availability with Cluster Shared Volumes (CSV)

    ·         Webcast: Introducing Cluster Shared Volumes (CSV)

    ·         Webcast: Making Highly-Available VMs (2008 R2)

    ·         Webcast: Server Virtualization Webcast Videos

    ·         Webcast: Top 10 VMWare Myths, including CSV and live migration

    ·         Webcast: Top 10 VMWare Myths, including CSV and live migration

    ·         Webcast: Server Virtualization Webcast Videos

    ·         Webcast: Windows Server 2008 R2 Live Migration

    ·         Website: Clustering Forum (2008 R2)

    ·         Whitepaper: Hyper-V Live Migration Overview & Architecture

     

     

    Core

    For PowerShell, Cluster.exe & Scripting see that section.

    ·         TechNet: Server Core

    ·         TechNet: Installation

    ·         Utility: Remote Server Administration Tools (simplifies Server Core configurations)

    ·         Webcast: How Microsoft does IT: Enhancing High Availability with Server Core in Windows Server 2008

     

     

    Deployment, Migration & Upgrades

    For deployment guides for a specific resource (Exchange, File Server, Hyper-V, Print, SQL, Other) or for deployment using PowerShell, Cluster.exe or scripting, please visit that section.

    ·         Blog: Configuring Auditing

    ·         Blog: Migration Options for Hardware

    ·         Blog: Rolling Upgrade to Windows Server 2008 SP2 Failover Clustering

    ·         KB Article: Cluster Nodes as Domain Controllers (DCs)

    ·         KB Article: Failover behavior on large clusters (preferred owner, possible owner)

    ·         TechNet: Add a Server to a Failover Cluster

    ·         TechNet: Cluster Requirements

    ·         TechNet: Clustering with multiple active resources

    ·         TechNet: Configuring Accounts in Active Directory

    ·         TechNet: Creating a Failover Cluster

    ·         TechNet: Failover Clustering Deployment

    ·         TechNet: Installing a Failover Cluster

    ·         TechNet: Migrating Cluster Settings

    ·         TechNet: Migration to Windows Server 2008 R2 Failover Clusters

    ·         TechNet: Recommended Clustering Hotfixes (2003)

    ·         TechNet: Recommended Clustering Hotfixes (2003 SP2)

    ·         TechNet: Recommended Clustering Hotfixes (2008)

    ·         TechNet: Validating a cluster

    o   Blog: Validation Warning: Teredo

    o   Blog: Validation Warning: Patch GUID

    ·         TechNet: Validating Hardware for a Failover Cluster

    ·         Utility: Cluster Configuration Validation Wizard (ClusPrep) (2003)

    ·         Webcast: Configuring Failover Clustering

    • Webcast: TechNet Webcast: Failover Cluster Validation and Troubleshooting with Windows Server 2008

     

     

    Exchange Server

    ·         KB Article: Exchange 2003: Move Mailbox 

    ·         Lab: TechNet Virtual Lab: Exchange Server 2007 Standby Continuous Replication

    ·         Lab: TechNet Virtual Lab: Using Cluster Continuous Replication (CCR) in Exchange 2007

    ·         TechNet: Deploying Exchange 2003 in a Cluster

    ·         TechNet: Deploying Forefront Security with Exchange Clusters

    ·         TechNet: Exchange 2007 Cmdlets

    ·         TechNet: Exchange 2007 Move Mailbox Scenarios

    ·         TechNet: Exchange 2007 Overview

    ·         TechNet: Exchange 2010 Move Local Legacy Mailbox

    ·         TechNet: How to create an Exchange SCC Failover Cluster with CMD

    ·         TechNet: Installing Cluster Continuous Replication (CCR) on 2008

    ·         TechNet: Planning for Cluster Continuous Replication (CCR)

    ·         Webcast: Exchange 2007 High Availability Deep Dive

    ·         Webcast: Exchange Webcast Videos

    ·         Webcast: High-Availability in Exchange 2010 – Part 1

    ·         Webcast: High-Availability in Exchange 2010 – Part 2

    ·         Webcast: High-Availability in Exchange 2010 – Part 3

    ·         Webcast: High-Availability in Exchange 2010 – Part 4

    ·         Webcast: How Microsoft IT Implemented New Storage Designs for Exchange Server 2007

    ·         Webcast: Installing Exchange 2007 SP1 CCR on Windows Server 2008

    ·         Webcast: Installing Exchange on WS08 Failover Clustering using UI Wizard

    ·         Webcast: Upgrading Exchange CCR Clusters from 2007 to 2007 SP1

     

     

    File Server, DFS-R, DFS-N & NFS

    ·         Blog: Deploying DFS-R on a 2008 R2 Failover Cluster – Part 1 of 3

    ·         Blog: Deploying DFS-R on a 2008 R2 Failover Cluster – Part 2 of 3

    ·         Blog: Deploying DFS-R on a 2008 R2 Failover Cluster – Part 3 of 3

    ·         Blog: File Share ‘Scoping’ in Windows Server 2008 Failover Clusters

    ·         Blog: Share Subdirectories in Windows Server 2008

    ·         TechNet: Configuring a Two-Node File Server Failover Cluster

    ·         TechNet: Create a Shared Folder in a Clustered File Server

    ·         TechNet: Creating a Clustered File Server checklist

    ·         Utility: File Server Migration Toolkit (FSMT) (2008)

    ·         Webcast: How Microsoft IT Deploys Windows 2008 Clusters for File Services

    ·         Webcast: New File Server Features of Windows Server 2008 (Level 200)

    ·         Webcast: Prepare Yourself for Windows Server 2008 (Part 5 of 8): New File Server Features

    ·         Website: File Server Migration Toolkit (2008)

    ·         Whitepaper: File Server Migration Toolkit (2008)

     

     

    Hyper-V

    ·         Blog: Adding a Pass-Through Disk to a HA VM

    ·         Blog: Deploying a HA Virtual Machine (2008)

    ·         Blog: HA Virtual Machine Deployment Considerations (2008)

    ·         Blog: Hyper-V Export and Import (2008 R2)

    ·         Blog: Monitor Network Traffic for a VM on a Cluster

    ·         Blog: Network Load Balancing (NLB) and Virtual Machines

    ·         Blog: SCVMM: Intelligent Placement

    ·         Blog: SCVMM: Quick Storage Migration

    ·         Blog: VM Scale with Clustering: Physical Memory Reservations

    ·         KB Article: Hyper-V R2 Upgrades

    ·         TechNet: Design for a Failover Cluster in Which All Nodes Run Hyper-V

    ·         TechNet: Failover Cluster in which the Servers run Hyper-V

    ·         TechNet: Getting Started with Hyper-V

    ·         TechNet: High-Availability for a Server Running Hyper-V

    ·         TechNet: Requirements and Recommendations for Failover Clusters in Which All Nodes Run Hyper-V

    ·         TechNet Case Study: Best Practices for Deploying VMs using Hyper-V

    ·         TechNet Case Study: How Microsoft IT Designs the Virtualization Host & Network Infrastructure

    ·         Training: Configuring Hyper-V in Windows Server 2008

    ·         Training: eBook: Understanding Microsoft Virtualization Solutions

    ·         Webcast: 24 Hours of Windows Server 2008 (Part 24 of 24): High Availability with Hyper-V

    ·         Webcast: Building a Hyper-V R2 Cluster

    ·         Webcast: Creating Business Continuity Solutions Using Windows Virtualization

    ·         Webcast: Deploying Clusters for Live Migration

    ·         Webcast: Failover and Live Migration

    ·         Webcast: Failover and Quick Migration of VMs

    ·         Webcast: Getting Started with Live Migration 

    ·         Webcast: Getting started with Hyper-V in R2 videos

    ·         Webcast: High Availability Basics with Windows Server 2008 R2 Hyper-V (Level 200)

    ·         Webcast: High Availability with Hyper-V

    ·         Webcast: Hyper-V Quick Migration on a Failover Cluster

    ·         Webcast: Introducing Cluster Shared Volumes (CSV)

    ·         Webcast: Making Highly-Available VMs (2008 R2)

    ·         Webcast: Server Virtualization Webcast Videos

    ·         Webcast: Top 10 VMWare Myths, including CSV and live migration

    ·         Website: Hyper-V Server (2008)

    ·         Website: Hyper-V Server (2008 R2)

    ·         Whitepaper: Testing Hyper-V and Failover Clustering

    ·         Whitepaper: Quick Migration with Hyper-V

     

     

    Miscellaneous

    ·         Blog: Add a New Disk to a Cluster (2008)

    ·         Blog: Cluster Recovery (2003)

    ·         Blog: Cluster Virtual Adapter (NetFT)

    ·         Blog: Configuring Auditing for a Cluster (2008)

    ·         Blog: DNS Registration with the Network Name Resource

    ·         Blog: PlumbAllCrossSubnetRoutes

    ·         Blog: Resource Group Management Enhancements in 2008 R2 Failover Clustering – Part 1

    ·         Blog: Resource Group Management Enhancements in 2008 R2 Failover Clustering – Part 2

    ·         Blog: RHS and what does it does

    ·         Blog: Stop 0x9E Error

    ·         KB Article: Microsoft Support Policy for Windows Server 2008 Failover Clusters

    ·         TechNet: Configuring the Quorum in a Failover Cluster

    ·         TechNet: Failover Cluster Management Snap-In

    ·         TechNet: Managing a Failover Cluster

    ·         TechNet: Modifying Settings for a Failover Cluster

    ·         TechNet: Support Policy

    ·         TechNet: Understanding Backup and Recovery Basics for a Failover Cluster

    ·         TechNet: Windows Server 2008 Itanium / IA64 support

    ·         Webcast: Achieving High Availability with Windows Server “Longhorn” Clustering (Level 200)

    • Webcast: Build High-Availability Infrastructures with Windows Server 2008 Failover Clustering
    • Webcast: Delivering High Availability to Your Infrastructure

    ·         Webcast: Failover Clustering 101


          view feed content RIA: Data Source Control (Silverlight: All about this web plugin and framework)   [41 views, last view 16 h, 2 min and 31 secs ago]

    Turing Project Page: [Novice: 11 | Advanced: 8 ]   
    FAQ | Table of Contents | Definitions

    What is this and where do I start?

      Part 3 of 3

    This is the last of a three part sub-series on using Entity Frameworks and RIA Data Services to move data from our Sql Server database to our Silverlight Application’s DataGrid.

    In Part 2, we explored returning an object graph by using the Entity Frameworks and by decorating the metadata for the RIA Services with the properties we wanted to retrieve from the contained object.

    Until now, however, all of our code has instantiated via RIA Services context programmatically, invoked the query function programmatically, and assign the returned collection to the items source property of the data grid programmatically. In this post, I’ll look at a declarative approach.

    Using the RIA Services DomainDataSource Control

    We’ll begin with the program as we left it after the previous blog post, but we’ll immediately remove the three lines in blogs.xaml.cs that manipulates the data context.

    1: public partial class Blogs : Page 2: { 3: // private readonly BlogsContext bc = new BlogsContext(); 4: public Blogs() 5: { 6: InitializeComponent(); 7: // bc.Load( bc.GetBlogsQuery() ); 8: // this.blogsDataGrid.ItemsSource = bc.Blogs; 9: }

     

    Having removed the programmatic interface to the data context, let's now open up blogs.xaml  and provide it with information about the data context by way of teh DomainDataSource  control, which we must first add to the toolbox. To do so, right-click on the Silverlight Xaml Controls tab, and then click on Choose Items.

    Within the Choose Toolbox Items dialog box click on the Silverlight Components tab, and then click the browse button. Navigate to your program files ->Microsoft SDKs -> RIA Services, pick the folder for the latest version, within that:  Libraries-> Silverlight.  Double-click on System.Windows.RIA Controls.dll 

    You should find that the DomainDataSource control has been added to the bottom of your list of controls; you may want to right-click and choose to sort them alphabetically.

    Drag a DomainDataSource control onto the Xaml page just above the DataGrid.  By dragging it on rather than writing it yourself Visual Studio will create the namespace for you set up your using statement and your references.

    The four attributes you'll typically want to set, if no others, are the Name , LoadSize, QueryName, and the AutoLoad property. We will examine each of these in turn below.

    You will also want to set the domain context property which you will do it explicitly as shown in the code that follows:

    1: <riaControls:DomainDataSource x:Name="BlogsDataSource" 2: LoadSize="15" 3: QueryName="GetBlogs" 4: AutoLoad="True"> 5: <riaControls:DomainDataSource.DomainContext> 6: <ds:BlogsContext /> 7: </riaControls:DomainDataSource.DomainContext> 8: </riaControls:DomainDataSource>

     

    The LoadSize property instructs the DomainDataSource control as to how many records to get for each query to the database.  This allows you to fine tune the performance of your application (too small load size, and you are making many calls to the database, to larg a load size and there will be a noticeable wait for the data to arrive).

    The QueryName parameter references the query We created in the RIA Services class, you will remember setting GetBlogs to include bloggers. Notice that here you use the name of the method (GetBlogs ).  Rather than "GetBlogsQuery()" as you did in C#.

    Setting Autoload to true tells the DomainDataSource control to load the first set of data when it is initialized.

    Note that the namespace for BlogsContext is DS as opposed to RIAControls the namespace for the DomainDataSource.  DS is a namespace that refers to the Web project (you’ll need to add that to the top of the file)

    Build and run the application.  The results, that is the running application, are identical to what you had before.  However now you are not creating this programmatically but rather declaratively in the Xaml.

    Sorting

    Is relatively straightforward to add sorting declaratively as well. You do so by adding a sort descriptor to your DomainDataSource control.  In the case shown below (Lines 9 through 11), we are setting the SortDescriptor property explicitly, and having it sort on BlogName.

      1: <riaControls:DomainDataSource x:Name="BlogsDataSource" 2: LoadSize="20" 3: QueryName="GetBlogs" 4: AutoLoad="true"> 5: <riaControls:DomainDataSource.DomainContext> 6: <ds:BlogsContext /> 7: </riaControls:DomainDataSource.DomainContext> 8: <riaControls:DomainDataSource.SortDescriptors> 9: <riaData:SortDescriptor PropertyPath="BlogName" 10: Direction="Ascending" /> 11: </riaControls:DomainDataSource.SortDescriptors> 12: </riaControls:DomainDataSource>

    Sending the sort column in this way it causes the data grid to open with that column sorted.  The user, of course, can sort on any column by clicking on the column header.

    Filtering

     

    Before we leave the DomainDataSource control, let's take a quick look at filtering, which works much like sorting.  In this case rather than explicitly putting into our filter what it is we are filtering on, we will instead set the "Control Parameter" to point to another control on the same page that will provide the text on which to sort.

    To begin, we'll add a text box into which the user can type the desired filter.

    <StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Margin="0,-16,0,0"> <TextBlock VerticalAlignment="Center" Text="Name Contains Filter" /> <TextBox x:Name="filterText" Width="75" FontSize="11" Margin="4" Text="Silverlight" /></StackPanel>

     

    This code can be placed directly above the DomainDataSource, and as you can see it provides a textblock with a prompt and a text box, which will gather in the desired filter. Next We'll add a FilterDescriptors element to the DomainDataSource control, and tell it to get its value from that text box:

    1: <riaControls:DomainDataSource x:Name="BlogsDataSource" 2: LoadSize="20" 3: QueryName="GetBlogs" 4: AutoLoad="true"> 5: <riaControls:DomainDataSource.DomainContext> 6: <ds:BlogsContext /> 7: </riaControls:DomainDataSource.DomainContext> 8: <riaControls:DomainDataSource.SortDescriptors> 9: <riaData:SortDescriptor PropertyPath="BlogName" 10: Direction="Ascending" /> 11: </riaControls:DomainDataSource.SortDescriptors> 12: <riaControls:DomainDataSource.FilterDescriptors> 13: <riaData:FilterDescriptorCollection> 14: <riaData:FilterDescriptor PropertyPath="BlogName" 15: Operator="Contains"> 16: <riaData:ControlParameter ControlName="filterText" 17: PropertyName="Text" 18: RefreshEventName="TextChanged" /> 19: </riaData:FilterDescriptor> 20: </riaData:FilterDescriptorCollection> 21: </riaControls:DomainDataSource.FilterDescriptors> 22: </riaControls:DomainDataSource>

     

    The filter descriptors begin online 12 and run through line 21.  Notice on lines 14 and 15 that you are indicating which property is being filtered on and that you have your choice of operators such as contains, is, etc.  On lines 16 through 18, you indicate the name of the control that has the filter, the name of the property of the control from which to extract the filter, and the event on which you will update the filter.

    N.B.: the code is showing updates each time a letter is typed in the text box.  This will cause a call to the database for every letter that's typed.  You can solve this by using the Load Delay parameter.  Of course having a low delay will make the page initially load more slowly, so you may want to add the load delay programmatically after you initialize the page.

    Finally to give it a bit of polish, let's add a DataPager, just below the DataGrid.  Note that the binding for the DataPager is identical to that for the DataGrid, and that the DataPager retrieves 10 records at a time; we'll go up so that and change the DomainDataSource load size to 30, so that it will retrieve 3 pages-worth at a time.

    <data:DataPager PageSize="10" Source="{Binding Data, ElementName=BlogsDataSource}" />


    (Click on image for full size)


    [Data Binding Mini-Tutorial Building Apps Project Turing RIA Services ]
    Jesse Liberty's Blog about Silverlight .NET - Silverlight: All about this web plugin and framework
    View original post|Add to del.icio.us|11 months ago | Share

          view feed content HTTParty Divorces ActiveSupport (Best Ruby on Rails Blogs )   [104 views, last view 16 h, 6 min and 25 secs ago]

    In which I describe how HTTParty has gotten lighter and more awesome since its initial release.

    Right off the bat I would like to say that the divorce was completely amicable. I love ActiveSupport and use it with almost every project, even when haters complain. Originally, HTTParty??s parsing of JSON and XML just used ActiveSupport??s built in mechanisms and it worked great.

    A few people brought up issues with ActiveSupport and I rolled my eyes. Then, once the roll was complete I thought about it and decided if I could use the JSON gem and find something comparable to ActiveSupport??s Hash#from_xml, I would be ok with removing it. I did some research and stumbled across extlib??s Hash#from_xml and liked it, so I ganked to power the XML de-serialization in HTTParty 0.2.0.

    I removed ActiveSupport as a dependency and added the JSON gem. I then added a few core extensions, swapped out the de-serialization and HTTParty was free to date again.

    But Wait, There Is More

    So that update alone would probably be worth a blog post, but it is not the only thing that has changed since I first posted about HTTParty. Since it was suggested, I??m going to show a few of the updates here as well.

    Proxy Support

    Thanks to francxk, you can now use proxies.

    class MyProxyParty include HTTParty http_proxy 'proxyaddress.com', 80 end

    Using the http_proxy method, you can set the address and the port of the proxy you would like to use. I??ve never needed a proxy personally but I think this was a worth addition.

    Format Detection Based on Content Type

    When HTTParty was released, you had to declare a format if you wanted the response to be parsed in some way. For example, the old way of parsing the Twitter public timeline was the following:

    class Twitter include HTTParty format :json end Twitter.get('http://twitter.com/statuses/public_timeline.json')

    With the response content type detection, the new way is one less line of code and one less thing to remember.

    class Twitter include HTTParty end Twitter.get('http://twitter.com/statuses/public_timeline.json')

    Much thanks to Jay Pignata for adding this initially.

    Automatically Follow Redirects

    Alex Vollmer snuck into HTTParty like a thief in the night and added automatic following of redirects. With his addition HTTParty automatically follows up to 5 redirects, after which it will raise an HTTParty::RedirectionTooDeep exception. Feel free to bump up or down the redirect limit like this:

    class RedirectFollower include HTTParty base_uri 'http://someurlthatredirects.com' end RedirectFollower.get('/foo', :limit => 2) HTML format

    A few people mentioned that they would like a way to not automatically parse the response based on the content type. The simple fix for that was allowing an html format and making sure that format can optionally be passed in with an request.

    class Twitter include HTTParty end puts Twitter.get('http://twitter.com/statuses/public_timeline.json', :format => :html)

    Even though the request above returns the JSON content type, it will not be parsed as JSON, but instead will just return the JSON as plain text/html.

    HTTParty.get/post/put/delete

    One of my favorite additions was by Eli Miller, just a few days ago. We were chatting and he mentioned how he liked using HTTParty as a simple net/http wrapper. A few minutes later he sent me a pull request with a nifty addition that allows using HTTParty as a sane wrapper around net/http, without even making a new class and including HTTParty. You can now turn the Twitter public timeline into a ruby hash in one line thanks to Eli??s addition:

    HTTParty.get('http://twitter.com/statuses/public_timeline.json')

    Yep, that is it. It will fetch the response, detect that it is JSON and use JSON.parse to turn the response into a Ruby hash. It really doesn??t get any easier.

    Conclusion

    Ok, so now all you hold outs who haven??t used HTTParty yet have absolutely no reason. Use it with Rails, Merb, Sinatra or whatever the heck other framework you use, with no worries about including all of ActiveSupport.


    [Gems gems httparty web services ]
    RailsTips Blog - Best Ruby on Rails Blogs
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content Importing VMDK file created on ESX2.5 to ESX3i (VMware virtualization: products, resources, news and information)   [44 views, last view 16 h, 6 min and 37 secs ago]

    Yes you can import the VMDK.

     

    First export the disk using vmkfstools with the 2gbsparse option, then import the disk in your ESXi.

     

    Once the disk is imported, run vmkfstools -M

     

    This will convert the VMDK from v2 to v3



    VMWare VIOPS - VMware virtualization: products, resources, news and information
    View original post|Add to del.icio.us|9 months ago | Share

          view feed content SMS Media Group Launches Storefront in the Etelos Marketplace (Best web 2.0 productivity applications)   [105 views, last view 16 h, 38 min and 42 secs ago]
    New application gives businesses a Web-based interface for managing mobile distributions. Published on: 06/19/08 8:00:40 AM

    New application gives businesses a Web-based interface for managing mobile distributions. 

    Aliso Viejo, CA ?? SMS Media Group, a developer of text messaging applications, announces the launch of its online storefront in the Etelos Marketplace? to distribute its SMSdelivery? mobile messaging platform.

    The Etelos Marketplace is a fast growing marketplace for distributing web-based applications. It provides businesses a wide selection of SaaS (Software as a Service) and Web 2.0 applications such as collaboration, sales and marketing, and spreadsheet software.

    SMS Media Group is currently offering its SMSdelivery Hosted Platform that gives any size business the ability to send text messages to its customers' cell phones. It's an easy-to-use, Web-based system that manages mobile subscriber lists, broadcasting and reporting of text messaging campaigns.

    "Being in the Etelos Marketplace is a great way for us to reach business and technology buyers seeking out SaaS applications," says Sheri Wells, head of strategic relationships for SMS Media Group. "Our storefront on the Etelos Marketplace was very easy to set up, and we plan to add new applications to the storefront as they become available."

    SMS Media Group is also showcasing its SMS Gateway in the marketplace for enterprises and software developers that wish to build their own text messaging applications and need to connect to wireless carriers. SMSdelivery connects to every wireless carrier in the United States and more than 400 carriers globally.

    "Having solutions such as the SMSdelivery platform in the Etelos Marketplace ensures that businesses will find the solution they're looking for," said Shelley Symonds, Etelos VP and chief marketing officer. "By offering a diverse selection of Web applications, we are able to offer the benefit of quality solutions in addition to central billing, central support and a secure hosting strategy."

    You can learn more about the SMSdelivery platform by visiting the Etelos Marketplace.
     
    About SMS Media Group
    http://smsmediagroup.com

    Founded in 2002, SMS Media Group (SMSMG) is a leading mobile media company that specializes in permission-based SMS communications to cell phones. SMSMG's web-based mobile messaging solution, SMSdelivery, is a Web 2.0 platform designed for any size business to send mobile communications. It allows businesses to create, deliver and track text messages. Customers include small, medium, and large businesses, organizations, educational institutions, and government agencies worldwide.
     
    About Etelos, Inc.

    Etelos, Inc. (OTC Bulletin Board: ETLO) provides on-demand browser-based applications on the hosting environment that you choose. Etelos? technology for developing and deploying on-demand applications is revolutionizing the world of software distribution. The Etelos Marketplace? gives developers an easy way to license, distribute and host their applications, and businesses a wide selection of fully customizable, on-demand applications. Etelos, Etelos CRM?, Etelos Projects?, and Etelos Marketplace are trademarks of Etelos, Inc.; other trademarks are the property of their respective owners. For more information about Etelos, please visit: http://www.etelos.com.
     



    Etelos online application development - Best web 2.0 productivity applications
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content GreenSock Transform Manager (AS3) (Flash, Flex and Air related Blogs)   [474 views, last view 16 h, 51 min and 39 secs ago]

    I was working on a project recently, where I wanted to offer the user some fine grained control over transformation of display objects. A quick search led me to Green Sock, run by Jack Doyle. What can I say other than that Jack has tweening libraries for every flavor project and task. He also has a transform manager library, which at the time was only ActionScript 2. After an email exchange, Jack graciously provided me with an advance copy of his ActionScript 3 code base. That ActionScript 3 version is now done and you can purchase a license by heading over to the Green Sock web site.
    (more?)


    [Flash ActionScript ]
    Kevin Hoyt - Flash, Flex and Air related Blogs
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content ThirtyTwo-Base - Temas WinterBoard - Cydia / Icy - iPhone / iPod Touch (Blogs sobre el iPhone)   [113 views, last view 16 h, 53 min and 32 secs ago]
    languagetypetext/htmlvalue

    Tema: ThirtyTwo-Base

    Compatible con Firmware 3.0

    Requisitos: Jailbreak

    Aplicación para la instalación: WinterBoard

    Descarga: Cydia / Icy

    Repositorio: SOS iPhone


    basehttp://feeds.feedburner.com/ActualidadiPhone
    [Cydia Icy Personalizar iPhone cydia iPhone iPod Touch temas ThirtyTwo-Base winterboard ]
    Actualidad iPhone - Blogs sobre el iPhone
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content ERROR: gitosis.serve.main:Repository read access denied (Best Ruby on Rails Blogs )   [336 views, last view 16 h, 56 min and 17 secs ago]

    Use Unfuddle? If you do and you see this error trying to clone a repository, it may be because:

    This error looks to be happening because you are not explicitly involved in the project with which this repository is associated. You should note that even account administrators will need to be "involved" in a project in order to receive permissions to repositories associated with that project. In other words, if you add yourself to the project you should be able to connect to the repository.

    Thanks to Unfuddle founder David Croswell for the solution. Worked like a charm.



    Elc Tech Blog - Best Ruby on Rails Blogs
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content Animated Visual State Transitions with the Transitioning Content Control (Silverlight: All about this web plugin and framework)   [115 views, last view 17 h, 1 min and 47 secs ago]

    The Silverlight Toolkit is innovative in many ways, not least of which is that controls are released in one of four quality bands:

    • Mature: ready for release
    • Stable: suitable for most scenarios
    • Preview: suitable for most basic usage scenarios, may have moderate number of breaking changes as the control is developed.
    • Experimental: intended for evaluation purposes

    The control I??ll be considering today was developed (and described here) by Ruurd Boeke and is currently in the Experimental band. You can expect that the API will change quite a bit, but that said, it is an enormously useful control right now; and thus I??ve submitted a video and this write-up.

    What??s It For?

    The goal of the Transitioning Content control is to make it easy to add animation when you are changing content within a control as demonstrated here. [You??ll need to click on DomainUpDown on the left (and surprisingly, not on TransitioningContent!) and Animations on top. The following cropped image illustrates where to click, but provides only a shadow of the impact

    Getting There In 3 Steps

    To make this crystal clear, and to show how easy it really is to use this control, we??ll build the example three times: first with a Content Control, then with a Transitioning Content Control, and finally, adding data binding and the ability to transition more complex objects.

    Starting Simple

    Version 0 begins with a grid with two columns. The left column contains a ContentControl and the right a button. Here is the complete Xaml:

    <UserControl x:Class="tccDemo.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Width="300" Height="150">
    <StackPanel Background="Bisque">

    <ContentControl x:Name="cc1"
    Content="Click button to change."
    HorizontalAlignment="Center"
    Margin="20"
    FontSize="18" />

    <Button x:Name="doChange"
    Content="Change"
    Width="80"
    Height="30"
    HorizontalAlignment="Center"
    FontSize="14"/>

    </StackPanel>
    </UserControl>

    The job of the ContentControl is to hold a single piece of content: in this case a string. The button??s job is to cause that content to change, which we do programmatically in the button??s click event handler in MasterPage.xaml.cs, shown in full:

    using System;
    using System.Windows;
    using System.Windows.Controls;

    namespace tccDemo
    {
    public partial class MainPage : UserControl
    {
    public MainPage()
    {
    InitializeComponent();
    doChange.Click += new RoutedEventHandler( doChange_Click );
    }

    void doChange_Click( object sender, RoutedEventArgs e )
    {
    Random random = new Random();
    cc1.Content = random.NextDouble().ToString();
    }
    } // end class
    } // end namespace

    Each time the button is clicked, a new value is displayed.

    [ Demo here ?? visible only if you are running Silverlight 3 ]

    Changing from Content to TransitioningContent

    The TransitioningContent control is, essentially, a skinnable custom control that derives from content control.

    For more on Skinnable Custom Controls, see the blog series that starts here, or consider these videos (click on the image to go to the video):

    Before we dive into the TransitioiningContent control and how it does its work, let??s look at how to use it. We start by replacing the ContentControl with a TransitioningContentControl, but to do this we need to add a reference to System.Windows.Controls.Layout.Toolkit in the references and a namespace to the top of the Xaml file

    xmlns:layout="clr-namespace:System.Windows.Controls;
    assembly=System.Windows.Controls.Layout.Toolkit"

    With that in place we can modify MainPage.xaml to replace the ContentControl with the TransitioningContentControl and replace the Change button with two buttons: one for Up and one for down. Here is the complete Xaml:

    <UserControl x:Class="tccDemo.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:layout="clr-namespace:System.Windows.Controls;
    assembly=System.Windows.Controls.Layout.Toolkit"
    Width="400" Height="200">
    <StackPanel Background="Bisque">
    <layout:TransitioningContentControl x:Name="tcc"
    HorizontalAlignment="Center"
    Margin="30"
    FontSize="18"
    Content="Click buttons to change content" />

    <Button x:Name="UpButton"
    Content="Up"
    Width="100"
    Height="30"
    Margin="10"
    FontSize="14"/>
    <Button x:Name="DownButton"
    Content="Down"
    Width="100"
    Height="30"
    Margin="10"
    FontSize="14"/>
    </StackPanel>
    </UserControl>

    The code is modified only to set the Transition property of the TransitioningContentControl.  Here is the complete code behind file:

    using System;
    using System.Windows;
    using System.Windows.Controls;

    namespace tccDemo
    {
    public partial class MainPage : UserControl
    {
    public MainPage()
    {
    InitializeComponent();
    UpButton.Click += new RoutedEventHandler( UpButton_Click );
    DownButton.Click += new RoutedEventHandler( DownButton_Click );
    }

    void DownButton_Click( object sender, RoutedEventArgs e )
    {
    tcc.Transition = "DownTransition";
    Random random = new Random();
    tcc.Content = random.NextDouble().ToString();
    }

    void UpButton_Click( object sender, RoutedEventArgs e )
    {
    tcc.Transition = "UpTransition";
    Random random = new Random();
    tcc.Content = random.NextDouble().ToString();
    }

    }
    }

    Here is the effect:

    Adding DataBinding and Objects

    In both of the examples so far, the content has been a simple string. It is possible, however, to provide a more complex object, by modifying the TransitioningContentControl and using an explicit ContentTemplate.

    <layout:TransitioningContentControl
    x:Name="tcc"
    Margin="20"
    FontSize="18"
    HorizontalAlignment="Center"
    Content="Use buttons...">
    <layout:TransitioningContentControl.ContentTemplate>
    <DataTemplate>
    <StackPanel >
    <TextBlock Text="{Binding Title }"
    FontFamily="Georgia"
    FontSize="14" />
    <TextBlock Text="{Binding Author }"
    FontFamily="Georgia"
    FontSize="14" />
    </StackPanel>
    </DataTemplate>
    </layout:TransitioningContentControl.ContentTemplate>
    </layout:TransitioningContentControl>

    This follows all the normal conventions of using a ContentTemplate. We fill it with a DataTemplate which holds a StackPanel, allowing us to place two TextBlocks, both of which use binding syntax to indicate that they are going to bind to the Title and Author properties of whatever object they are given, respectively.

    The rest of the Xaml file is unchanged.

    We need a data object, and so we create as simple a data object as possible to illustrate this idea; noting that of course you can get your data from a database, from an XML file, etc.  Here is the complete contents of Book.cs including the static property we??ll use to obtain some pre-created data,

    using System.Collections.Generic;

    namespace tccDemo
    {
    public class Book
    {
    public string Title { get; set; }
    public string Author { get; set; }

    public static List<Book> Books
    {
    get
    {
    List<Book> theBooks = new List<Book>();
    theBooks.Add( new Book()
    { Title = "The Raw Shark Texts", Author = "Steven Hall" } );
    theBooks.Add( new Book()
    { Title = "Columbine", Author = "Dave Cullen" } );
    theBooks.Add( new Book()
    { Title = "Unfriendly Fire", Author = "Dr. Nathaniel Frank" } );
    theBooks.Add( new Book()
    { Title = "The Inheritance", Author = "Dave Sanger" } );
    theBooks.Add( new Book()
    { Title = "Sir Gawain and the Green Knight",
    Author = "Simon Armitage" } );
    theBooks.Add( new Book()
    { Title = "The Superorganism", Author = "Holldobler and Wilson" } );
    return theBooks;
    }
    }
    }
    }

     

    MainPage.xaml.cs is modified somewhat more significantly, to hold a membervariable of type List<Book> (thus avoiding having to ??get? the data repeatedly) and a counter as a convenience so that we can cycle through our somewhat meager collection.  Here is the complete MainPage.xaml.cs

    using System.Collections.Generic;
    using System.Windows;
    using System.Windows.Controls;

    namespace tccDemo
    {
    public partial class MainPage : UserControl
    {

    private List<Book> books = Book.Books;
    private int counter = 0;

    public MainPage()
    {
    InitializeComponent();
    tcc.Transition = "Normal";
    tcc.Content = books[counter++];
    UpButton.Click += new RoutedEventHandler( UpButton_Click );
    DownButton.Click += new RoutedEventHandler( DownButton_Click );
    }

    void UpButton_Click( object sender, RoutedEventArgs e )
    {
    tcc.Transition = "UpTransition";
    tcc.Content = GetBook();
    }

    void DownButton_Click( object sender, RoutedEventArgs e )
    {
    tcc.Transition = "DownTransition";
    tcc.Content = GetBook();
    }

    public Book GetBook()
    {
    if ( ++counter >= books.Count )
    counter = 0;
    return books[counter];
    }
    }
    }

    The constructor sets the initial visual state to Normal and sets the content of the TransitioningContentControl to the first book in the collection. It then sets up the two event handlers. The job of each is to set the Transition state and then call the helper method that gets the next book in the collection. Here it is in action:

    Visual State Ambivalence

    The TransitioningContent is a bit ambivalent about its visual states. There are four states that are hardwired into the control as it is currently written:

    • Default
    • Normal
    • UpTransition
    • DownTransition

    However, if you examine the attributes at the top of the class (used to signal, for example, both the Visual State Manager and tools like Blend what visual states the class supports) you??ll find this:

    [TemplateVisualState(GroupName = PresentationGroup,
    Name = NormalState)]
    [TemplateVisualState(GroupName = PresentationGroup,
    Name = DefaultTransitionState)]
    [TemplatePart(Name = PreviousContentPresentationSitePartName,
    Type = typeof(ContentControl))]
    [TemplatePart(Name = CurrentContentPresentationSitePartName,
    Type = typeof(ContentControl))]
    public class TransitioningContentControl : ContentControl

    There are precisely two visual states made visible to Blend and the VSM.  The net effect is that you can certainly use the UpTransition and DownTransition, but they were added as examples of how you can freely extend this class with any transitions you like.

    Here??s how it works. The TransitioningContentControl consists of two parts both of type ContentControl: PreviousContentPresentationSitePartName and CurrentContentPresentationSitePartName. 

    To add an animated transition from content A to content B you need only hand the two to this control and tell it, by passing in a string, what storyboard to invoke.  If you pass in the string TransitionUp or TransitionDown then it already knows what storyboard to invoke, as Ruurd Boeke wrote those and put them in the Resources section of TransitioningContentControl.xaml.  Here, for example, is his UpTransition:

    <vsm:VisualState x:Name="UpTransition">
    <Storyboard>
    <DoubleAnimationUsingKeyFrames
    BeginTime="00:00:00"
    Storyboard.TargetName="CurrentContentPresentationSite"
    Storyboard.TargetProperty="(UIElement.Opacity)">
    <SplineDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
    <SplineDoubleKeyFrame KeyTime="00:00:00.300" Value="1"/>
    </DoubleAnimationUsingKeyFrames>

    <DoubleAnimationUsingKeyFrames
    BeginTime="00:00:00"
    Storyboard.TargetName="CurrentContentPresentationSite"
    Storyboard.TargetProperty="(UIElement.RenderTransform).
    (TransformGroup.Children)[3].(TranslateTransform.Y)">
    <SplineDoubleKeyFrame KeyTime="00:00:00" Value="30"/>
    <SplineDoubleKeyFrame KeyTime="00:00:00.300" Value="0"/>
    </DoubleAnimationUsingKeyFrames>

    <DoubleAnimationUsingKeyFrames
    BeginTime="00:00:00"
    Storyboard.TargetName="PreviousContentPresentationSite"
    Storyboard.TargetProperty="(UIElement.Opacity)">
    <SplineDoubleKeyFrame KeyTime="00:00:00" Value="1"/>
    <SplineDoubleKeyFrame KeyTime="00:00:00.300" Value="0"/>
    </DoubleAnimationUsingKeyFrames>

    <DoubleAnimationUsingKeyFrames
    BeginTime="00:00:00"
    Storyboard.TargetName="PreviousContentPresentationSite"
    Storyboard.TargetProperty="(UIElement.RenderTransform).
    (TransformGroup.Children)[3].(TranslateTransform.Y)">
    <SplineDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
    <SplineDoubleKeyFrame KeyTime="00:00:00.300" Value="-30"/>
    </DoubleAnimationUsingKeyFrames>
    </Storyboard>
    </vsm:VisualState>

    The effect of this is to target first the opacity of the current content, which will go from 0 to 1 over 3/10 of a second. During that same time period it will move up the Y axis from 30 to 0 (remember that the Y axis counts up as it moves down the screen).  In the second half of the animation the targetproperty is the opacity of the previous content which fades away from 1 to 0 over that same 3/10 of a second, while the content itself moves up from 0 to ??30.

    Notice that the storyboard is within the VisualState whose name is UpTransition.

    The class itself has a public property named Transition:

    /// <summary>
    /// Gets or sets the name of the transition to use.
    /// These correspond directly to the VisualStates inside
    /// the PresentationStates group.
    /// </summary>
    public string Transition
    {
    get { return GetValue(TransitionProperty) as string; }
    set { SetValue(TransitionProperty, value); }
    }

    This acts as a front for the Dependency Property which is registered immediately below

    public static readonly DependencyProperty TransitionProperty =
    DependencyProperty.Register(
    "Transition",
    typeof(string),
    typeof(TransitioningContentControl),
    new PropertyMetadata(OnTransitionPropertyChanged));

    A quick review of the Silverlight documentation reveals the meaning of each of the four parameters:

    Notice that the type of the TransitionProperty is string, and parenthetically, notice that the final parameter, typeMetadata,  is explicitly noted for usage with a PropertyChangedCallback, which is what is done here.

    OnTransitionPropertyChanged is overloaded in the implementation, but the net effect is to set the source of the content control and to set the string representing the new transition and then to call ChangeTransition whose job is to make sure it is safe to set a new transition, and then to obtain the PresentationState Visual State group and then to look to see if there is a state for the string passed in. If so, that transition is set as the new value for the transition.

    Thus, with this somewhat unusual control,  you can modify the visual states within the PresentationGroup) without subclassing, and by doing so (and providing a storyboard) you can add any transition you like, which you can then invoke by passing in its name!

    Caveat! As noted earlier, this control is in the experimental band, and this API is very likely to change.

    I hope you found this bit of control spelunking as interesting as I did sorting it out; and it is just fine to set all of the details aside and just use the control in conjunction with other controls to create animated transitions without over-worrying about how it is doing its magic.


    [XAML Data Binding Animation Templates Custom Controls Dependency Properties User Interface Silverlight Toolkit Mini-Tutorial RIA Silverlight 3 Cool Stuff Coding ]
    Jesse Liberty's Blog about Silverlight .NET - Silverlight: All about this web plugin and framework
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content Java 6 y tu dni electrónico (Conferencia Rails Hispana '07)   [355 views, last view 17 h, 7 min and 11 secs ago]

    Ahora que han pasado unos meses desde el lanzamiento de Java 6 y que en casi en cualquier provincia puedes expedir un dni electrónico ya podemos empezar a pensar como hacer uso de ambos.

    Dentro de nuestro dnie se encuentran varios certificados digitales para firma electrónica o autenticación, para acceder a ellos necesitamos es un lector de tarjetas que acepte nuestro documento.

    Una de las nuevas incorporaciones en java 6, y de las menos publicitadas, es el soporte nativo para acceder al almacen de claves de windows. Hasta ahora teníamos que usar complejas DLLs de windows para acceder a este almacen, pero con esta nueva release es tan fácil como esto:

    KeyStore keyStore = KeyStore.getInstance("Windows-MY"); keyStore.load(null, null);

    Como no todos en este mundo usamos ese sistema operativo, dentro de nuestro dnie también podremos encontrar los certificados dentro de una librería PKCS#11 llamada opensc-pkcs11.so que podremos usar en cualquier otro sistema. El proceso de acceder a una librería PKCS#11 es un poco más tedioso pero hay muy buenos artículos en la red que lo explican . Una aproximación rápida podría ser que tenemos que añadir esta librería como un proveedor de certificados a nuestro almacen de claves PKCS#11 y luego acceder a este para recuperar los certificados. Para añadir la librería a nuestro almacén necesitaríamos algo como esto:

    String pkcs11config = "name = DNIE\nlibrary = opensc-pkcs11.so "; InputStream confStream = new ByteArrayInputStream(pkcs11config.getBytes()); Class sunPkcs11Class = Class.forName("sun.security.pkcs11.SunPKCS11"); Constructor pkcs11Constr = sunPkcs11Class.getConstructor(InputStream.class); Provider pkcs11Provider = (Provider) pkcs11Constr.newInstance( confStream ); Security.addProvider(pkcs11Provider);

    para acceder a este almacén:

    KeyStore keyStore = KeyStore.getInstance("PKCS11"); keyStore.load(null, password);

    Una vez cargado nuestro almacén de claves correspondiente podríamos acceder a todos los certificados que contiene a través de sus alias:

    keyStore.load(null, null);
    [Desarrollo Java ]
    Thinkincode.net : David Calavera Palacio - Conferencia Rails Hispana '07
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content Doblando la esquina a tu página web con jQuery (40 blogs a seguir en el 2009)   [32 views, last view 17 h, 16 min and 23 secs ago]

    Cuando hablamos de diseño web, sobre todo en la fase propiamente de diseño en programas de edición de gráficos, es relativamente frecuente observar un efecto conocido como ??page curl? o pliegue de página.

    Para entendernos todos, es el efecto que observamos cuando pasamos las páginas de un libro por ejemplo.

    Si quieres agregar un toque curioso a tu sitio web y agregar una esquina que se doble para mostrar el contenido de debajo te vendrá bien este plugin libre para jQuery creado por Elliott Kember.

    Para hacerlo funcionar sólo necesitarás usar jQuery y jQuery UI (preferiblemente la versión 1.5) con el módulo resizable. Luego con un par de líneas de código y creando un elemento con id ??target, que contendrá lo que quieras que se vea tras la página, estarás listo.

    The Sexy Curls jQuery plugin: http://www.elliottkember.com/sexy_curls.html

    Vía Ajaxian

    Otras entradas que pueden interesarte:
    • A Site a Day: Un showcase de sitios web con las miras altas
    • Limpia y Optimiza tus Hojas de Estilo
    • links for 2008-11-05
    • Alexa contra Statsaholic: Abusones en la web 2.0
    • 10 cosas que cualquier desarrollador de PHP debe saber

    [Javascript ]
    Webmaster Libre - 40 blogs a seguir en el 2009
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content Re: [android-developers] Cannot download. The content is not supported on the phone. (Developing with Google Android)   [279 views, last view 17 h, 30 min and 36 secs ago]
    Make sure your server is reporting the correct mime-type for the
    files. You may have to add the type manually, putting this line in an
    .htaccess file works:

    AddType application/vnd.android.packag e-archive apk

    j

    --
    Jeff Sharkey
    jshar...@android.com



    Google Android Community - Developing with Google Android
    View original post|Add to del.icio.us|more than one year ago | Share

          view feed content Creating a show effect on a Spark Panel container in Flex 4 (Starting with Flex web framework)   [120 views, last view 17 h, 31 min and 18 secs ago]
    The following example shows how you can create a simple transition effect when the visibility is toggled on the Spark Panel container in Flex 4 by specifying the showEffect and hideEffect effects. Full code after the jump. <?xml version="1.0" encoding="utf-8"?> <!-- http://blog.flexexamples.com/2009/06/30/creating-a-show-effect-on-a-spark-panel-container-in-flex-4/ --> <s:Application name="Spark_Panel_showEffect_test" xmlns:fx="http://ns.adobe.com/mxml/2009" [...]
    [Flex,Adobe Feeds ]
    Flex - Starting with Flex web framework
    View original post|Add to del.icio.us|more than one year ago | Share