venerdì, settembre 28, 2007

RSS Feed Creation

mercoledì, settembre 26, 2007

SharePoint/Excel Formulas (Quick Notes for Calculated Fields)

This may be overkill, but I wanted to create a quick set of notes of available “Microsofty” formulas.

 

From an Excel Quick Reference

 

Add, divide, multiply, and subtract

Type an equal sign (=), use math operators, and then press ENTER.

=10+5 to add

=10-5 to subtract

=10*5 to multiply

=10/5 to divide

 

Use more than one math  operator in a formula

If a formula has more than one operator, Excel follows the rules of operator precedence

instead of just calculating from left to right. Multiplication is done before addition:

=11.97+3.99*2 is 19.95. Excel multiplies 3.99 by 2, and then adds the result to 11.97.

Operations inside parentheses take place first: =(11.97+3.99)*2 is 31.92. Excel adds

first and then multiplies the result by 2.

 

Type formulas correctly

Excel needs very precise instructions, which means that formulas must be typed exactly

as shown. Missing a comma or parenthesis, inserting an extra space, or misspelling a

function name, will produce errors.

Start each formula by typing an equal sign (=).

Place parentheses around function arguments.

Separate multiple arguments within parentheses by using a comma or commas.

 

Change capital letters

In cell B1, type =PROPER(A1) to change to initial capitals: Nancy Davolio

In cell B1, type =UPPER(A1) to change case to all capitals: NANCY DAVOLIO

In cell B1, type =LOWER(A1) to change case to no capitals: nancy davolio

 

Delete extra spaces

In cell B1, type =TRIM(A1) to remove all spaces except the one between words.

 

Count characters  in a cell

In cell B1, type =LEN(A1)

 

Combine first and last names in one cell

In cell C1, type =A1&" "&B1. The result is "Nancy Davolio" in cell C1. The space

between the quotation marks in the formula inserts a space between the two names.

To reverse the order of the names, type =B1&", "&A1. The result is "Davolio, Nancy"

in cell C1. The comma and the space between the quotation marks in the formula insert

a comma and a space between the names.

Note You can also combine text by using the CONCATENATE function:

=CONCATENATE(A1," ",B1), but it's faster to just type the ampersands.

 

Compare cells

In cell C1, type =EXACT(A1,B1). Results are TRUE (the cells are identical), or FALSE.

In the example, results are FALSE in cells C1 and C3 because of spelling differences in

the last names.

 

Separate characters on the left

In cell B1, type =LEFT(A1,5). The result, "10249", is the first 5 characters from cell A1.

 

Separate characters on the right

In cell B1, type =RIGHT(A1,6). The result, "$18.60", is the last 6 characters from cell A1.

 

Separate the first word out of two words in one cell

In cell B1, type =LEFT(A1,FIND(" ",A1)-1). The result, "Nancy", is all characters to

the left of the space.

 

Separate the last word out of two words in a cell

In cell B1, type =RIGHT(A1,LEN(A1)-FIND(" ",A1)). The result is "Davolio".

 

From Microsoft’s site

 

Conditional formulas

You can use the following formulas to test the condition of a statement and return a Yes or No value, to test an alternate value such as OK or Not OK, or to return a blank or dash to represent a null value.

 

Check if a number is greater than or less than another number

 

Use the IF function to perform this comparison.

 

Column1 Column2 Formula Description (possible result)

15000 9000 =[Column1]>[Column2] Is Column1 greater than Column2? (Yes)

15000 9000 =IF([Column1]<=[Column2], "OK", "Not OK") Is Column1 less than or equal to Column2? (Not OK)

 

Return a logical value after comparing column contents

 

For a result that is a logical value (Yes or No), use the AND, OR, and NOT functions.

 

Column1 Column2 Column3 Formula Description (possible result)

15 9 8 =AND([Column1]>[Column2], [Column1]<[Column3]) Is 15 greater than 9 and less than 8? (No)

15 9 8 =OR([Column1]>[Column2], [Column1]<[Column3]) Is 15 greater than 9 or less than 8? (Yes)

15 9 8 =NOT([Column1]+[Column2]=24) Is 15 plus 9 not equal to 24? (No)

 

For a result that is another calculation, or any other value other than Yes or No, use the IF, AND, and OR functions.

 

Column1 Column2 Column3 Formula Description (possible result)

15 9 8 =IF([Column1]=15, "OK", "Not OK") If the value in Column1 equals 15, then return "OK". (OK)

15 9 8 =IF(AND([Column1]>[Column2], [Column1]<[Column3]), "OK", "Not OK") If 15 is greater than 9 and less than 8, then return "OK". (Not OK)

15 9 8 =IF(OR([Column1]>[Column2], [Column1]<[Column3]), "OK", "Not OK") If 15 is greater than 9 or less than 8, then return "OK". (OK)

 

Display zeroes as blanks or dashes

 

To display a zero, perform a simple calculation. To display a blank or a dash, use the IF function.

 

Column1 Column2 Formula Description (possible result)

10 10 =[Column1]-[Column2] Second number subtracted from the first (0)

15 9 =IF([Column1]-[Column2],"-",[Column1]-[Column2]) Returns a dash when the value is zero (-)

 

Hide error values in columns

 

To display a dash, #N/A, or NA in place of an error value, use the ISERROR function.

 

Column1 Column2  Formula Description (possible result)

10 0 =[Column1]/[Column2] Results in an error (#DIV/0)

10 0 =IF(ISERROR([Column1]/[Column2]),"NA",[Column1]/[Column2]) Returns NA when the value is an error

10 0 =IF(ISERROR([Column1]/[Column2]),"-",[Column1]/[Column2]) Returns a dash when the value is an error

 

Date and time formulas

You can use the following formulas to perform calculations that are based on dates and times, such as adding a number of days, months, or years to a date, calculating the difference between two dates, and converting time to a decimal value.

 

Add dates

 

To add a number of days to a date, use the addition (+) operator.

 

 Note   When you manipulate dates, the return type of the calculated column must be set to Date and Time.

 

Column1 Column2 Formula Description (result)

6/9/2007 3 =[Column1]+[Column2] Adds 3 days to 6/9/2007 (6/12/2007)

12/10/2008 54 =[Column1]+[Column2] Adds 54 days to 12/10/2008 (2/2/2009)

 

To add a number of months to a date, use the DATE, YEAR, MONTH, and DAY functions.

 

Column1 Column2 Formula Description (result)

6/9/2007 3 =DATE(YEAR([Column1]),MONTH([Column1])+[Column2],DAY([Column1])) Adds 3 months to 6/9/2007 (9/9/2007)

12/10/2008 25 =DATE(YEAR([Column1]),MONTH([Column1])+[Column2],DAY([Column1])) Adds 25 months to 12/10/2008 (1/10/2011)

 

To add a number of years to a date, use the DATE, YEAR, MONTH, and DAY functions.

 

Column1 Column2 Formula Description (result)

6/9/2007 3 =DATE(YEAR([Column1])+[Column2],MONTH([Column1]),DAY([Column1])) Adds 3 years to 6/9/2007 (6/9/2010)

12/10/2008 25 =DATE(YEAR([Column1])+[Column2],MONTH([Column1]),DAY([Column1])) Adds 25 years to 12/10/2008 (12/10/2033)

 

To add a combination of days, months, and years to a date, use the DATE, YEAR, MONTH, and DAY functions.

 

Column1 Formula Description (result)

6/9/2007 =DATE(YEAR([Column1])+3,MONTH([Column1])+1,DAY([Column1])+5) Adds 3 years, 1 month, and 5 days to 6/9/2007 (7/14/2010)

12/10/2008 =DATE(YEAR([Column1])+1,MONTH([Column1])+7,DAY([Column1])+5) Adds 1 year, 7 months, and 5 days to 12/10/2008 (7/15/2010)

 

Calculate the difference between two dates

 

Use the DATEDIF function to perform this calculation.

 

Column1 Column2 Formula Description (result)

01-Jan-1995 15-Jun-1999 =DATEDIF([Column1], [Column2],"d") Returns the number of days between the two dates (1626)

01-Jan-1995 15-Jun-1999 =DATEDIF([Column1], [Column2],"ym") Returns the number of months between the dates, ignoring the year part (5)

01-Jan-1995 15-Jun-1999 =DATEDIF([Column1], [Column2],"yd") Returns the number of days between the dates, ignoring the year part (165)

 

Calculate the difference between two times

 

To present the result in the standard time format (hours:minutes:seconds), use the subtraction operator (-) and the TEXT function. For this method to work, hours must not exceed 24, and minutes and seconds must not exceed 60.

 

Column1 Column2 Formula Description (result)

06/09/2007 10:35 AM 06/09/2007 3:30 PM =TEXT([Column2]-[Column1],"h") Hours between two times (4)

06/09/2007 10:35 AM 06/09/2007 3:30 PM =TEXT([Column2]-[Column1],"h:mm") Hours and minutes between two times (4:55) 

06/09/2007 10:35 AM 06/09/2007 3:30 PM =TEXT([Column2]-[Column1],"h:mm:ss") Hours, minutes, and seconds between two times (4:55:00) 

 

To present the result in a total that is based on one time unit, use the INT function, or HOUR, MINUTE, or SECOND function.

 

Column1 Column2 Formula Description (result)

06/09/2007 10:35 AM 06/10/2007 3:30 PM =INT(([Column2]-[Column1])*24) Total hours between two times (28)

06/09/2007 10:35 AM 06/10/2007 3:30 PM =INT(([Column2]-[Column1])*1440) Total minutes between two times (1735)

06/09/2007 10:35 AM 06/10/2007 3:30 PM =INT(([Column2]-[Column1])*86400) Total seconds between two times (104100)

06/09/2007 10:35 AM 06/10/2007 3:30 PM =HOUR([Column2]-[Column1]) Hours between two times, when the difference does not exceed 24 (4)

06/09/2007 10:35 AM 06/10/2007 3:30 PM =MINUTE([Column2]-[Column1]) Minutes between two times, when the difference does not exceed 60 (55)

06/09/2007 10:35 AM 06/10/2007 3:30 PM =SECOND([Column2]-[Column1]) Seconds between two times, when the difference does not exceed 60 (0)

 

Convert times

 

To convert hours from the standard time format to a decimal number, use the INT function.

 

Column1 Formula Description (result)

10:35 AM =([Column1]-INT([Column1]))*24 Number of hours since 12:00 AM (10.583333)

12:15 PM =([Column1]-INT([Column1]))*24 Number of hours since 12:00 AM (12.25)

 

To convert hours from a decimal number to the standard time format (hours:minutes:seconds), use the division operator and the TEXT function.

 

Column1 Formula Description (result)

23:58 =TEXT(Column1/24, "hh:mm:ss") Hours, minutes, and seconds since 12:00 AM (00:59:55)

2:06 =TEXT(Column1/24, "h:mm") Hours and minutes since 12:00 AM (0:05)

 

Insert Julian dates

 

A Julian date refers to a date format that is a combination of the current year and the number of days since the beginning of the year. For example, January 1, 2007, is represented as 2007001 and December 31, 2007, is represented as 2007365. This format is not based on the Julian calendar.

 

To convert a date to a Julian date, use the TEXT and DATEVALUE functions.

 

Column1 Formula Description (result)

6/23/2007 =TEXT([Column1],"yy")&TEXT(([Column1]-DATEVALUE("1/1/"& TEXT([Column1],"yy"))+1),"000") Date in Julian format, with a two-digit year (07174)

6/23/2007 =TEXT([Column1],"yyyy")&TEXT(([Column1]-DATEVALUE("1/1/"&TEXT([Column1],"yy"))+1),"000") Date in Julian format, with a four-digit year (2007174)

 

To convert a date to a Julian date that is used in astronomy, use the constant 2415018.50. This formula only works for dates after 3/1/1901, and if you are using the 1900 date system.

 

Column1 Formula Description (result)

6/23/2007 =[Column1]+2415018.50 Date in Julian format, used in astronomy (2454274.50)

 

Show dates as the day of the week

 

To convert dates to the text for the day of the week, use the TEXT and WEEKDAY functions.

 

Column1 Formula Description (possible result)

19-Feb-2007 =TEXT(WEEKDAY([Column1]), "dddd") Calculates the day of the week for the date and returns the full name of the day (Monday)

3-Jan-2008 =TEXT(WEEKDAY([Column1]), "ddd") Calculates the day of the week for the date and returns the abbreviated name of the day (Thu)

 

 

Mathematical formulas

You can use the following formulas to perform a variety of mathematical calculations, such as adding, subtracting, multiplying, and dividing numbers, calculating the average or median of numbers, rounding a number, and counting values.

 

Add numbers

 

To add numbers in two or more columns in a row, use the addition operator (+) or the SUM function.

 

Column1 Column2 Column3 Formula Description (result)

6 5 4 =[Column1]+[Column2]+[Column3] Adds the values in the first three columns (15)

6 5 4 =SUM([Column1],[Column2],[Column3]) Adds the values in the first three columns (15)

6 5 4 =SUM(IF([Column1]>[Column2], [Column1]-[Column2], 10), [Column3]) If Column1 is greater than Column2, adds the difference and Column3. Else add 10 and Column3 (5)

 

Subtract numbers

 

To subtract numbers in two or more columns in a row, use the subtraction operator (-) or the SUM function with negative numbers.

 

Column1 Column2  Column3 Formula Description (result)

15000 9000 -8000 =[Column1]-[Column2] Subtracts 9000 from 15000 (6000)

15000 9000 -8000 =SUM([Column1], [Column2], [Column3]) Adds numbers in the first three columns, including negative values (16000)

 

Calculate the difference between two numbers as a percentage

 

Use the subtraction (-) and division (/) operators and the ABS function.

 

Column1 Column2 Formula Description (result)

2342 2500 =([Column2]-[Column1])/ABS([Column1]) Percentage change (6.75% or 0.06746)

 

Multiply numbers

 

To multiply numbers in two or more columns in a row, use the multiplication operator (*) or the PRODUCT function.

 

Column1 Column2  Formula Description (result)

5 2 =[Column1]*[Column2] Multiplies the numbers in the first two columns (10)

5 2 =PRODUCT([Column1], [Column2]) Multiplies the numbers in the first two columns (10)

5 2 =PRODUCT([Column1],[Column2],2) Multiplies the numbers in the first two columns and the number 2 (20)

 

Divide numbers

 

To divide numbers in two or more columns in a row, use the division operator (/).

 

Column1 Column2  Formula Description (result)

15000 12 =[Column1]/[Column2] Divides 15000 by 12 (1250)

15000 12 =([Column1]+10000)/[Column2] Adds 15000 and 10000, and then divides the total by 12 (2083)

 

Calculate the average of numbers

 

The average is also called the mean. To calculate the average of numbers in two or more columns in a row, use the AVERAGE function.

 

Column1 Column2 Column3 Formula Description (result)

6 5 4 =AVERAGE([Column1], [Column2],[Column3]) Average of the numbers in the first three columns (5)

6 5 4 =AVERAGE(IF([Column1]>[Column2], [Column1]-[Column2], 10), [Column3]) If Column1 is greater than Column2, calculate the average of the difference and Column3. Else calculate the average of the value 10 and Column3 (2.5)

 

Calculate the median of numbers

 

The median is the value at the center of an ordered range of numbers. Use the MEDIAN function to calculate the median of a group of numbers.

 

A B  C D E F Formula Description (result)

10  7 9 27 0 4 =MEDIAN(A, B, C, D, E, F) Median of numbers in the first 6 columns (8)

 

Calculate the smallest or largest number in a range

 

To calculate the smallest or largest number in two or more columns in a row, use the MIN and MAX functions.

 

Column1 Column2  Column3 Formula Description (result)

10  7 9 =MIN([Column1], [Column2], [Column3]) Smallest number (7)

10 7 9 =MAX([Column1], [Column2], [Column3]) Largest number (10)

 

Count values

 

To count numeric values, use the COUNT function.

 

Column1 Column2  Column3 Formula Description (result)

Apple  12/12/2007 =COUNT([Column1], [Column2], [Column3]) Counts the number of columns that contain numeric values. Excludes date and time, text, and null values (0)

$12 #DIV/0! 1.01 =COUNT([Column1], [Column2], [Column3]) Counts the number of columns that contain numeric values, but excludes error and logical values (2)

 

Increase or decrease a number by a percentage

 

Use the percent (%) operator to perform this calculation.

 

Column1 Column2  Formula Description (result)

23 3% =[Column1]*(1+5%) Increases number in Column1 by 5% (24.15)

23 3% =[Column1]*(1+[Column2]) Increases number in Column1 by the percent value in Column2: 3% (23.69)

23 3% =[Column1]*(1-[Column2]) Decreases number in Column1 by the percent value in Column2: 3% (22.31)

 

Raise a number to a power

 

Use the exponentiation operator (^) or the POWER function to perform this calculation.

 

Column1 Column2  Formula Description (result)

5 2 =[Column1]^[Column2] Calculates five squared (25)

5 3 =POWER([Column1], [Column2]) Calculates five cubed (125) 

 

Round a number

 

To round up a number, use the ROUNDUP, ODD, or EVEN function.

 

Column1 Formula Description (result)

20.3 =ROUNDUP([Column1],0) Rounds 20.3 up to the nearest whole number (21)

-5.9 =ROUNDUP([Column1],0) Rounds -5.9 up to the nearest whole number (-5)

12.5493 =ROUNDUP([Column1],2) Rounds 12.5493 up to the nearest hundredth, two decimal places (12.55)

20.3 =EVEN([Column1]) Rounds 20.3 up to the nearest even number (22)

20.3 =ODD([Column1]) Rounds 20.3 up to the nearest odd number (21)

 

To round down a number, use the ROUNDDOWN function.

 

Column1 Formula Description (result)

20.3 =ROUNDDOWN([Column1],0) Rounds 20.3 down to the nearest whole number (20)

-5.9 =ROUNDDOWN([Column1],0) Rounds -5.9 down to the nearest whole number (-6)

12.5493 =ROUNDDOWN([Column1],2) Rounds 12.5493 down to the nearest hundredth, two decimal places (12.54)

 

To round a number to the nearest number or fraction, use the ROUND function.

 

Column1 Formula Description (result)

20.3 =ROUND([Column1],0) Rounds 20.3 down, because the fraction part is less than .5 (20)

5.9 =ROUND([Column1],0) Rounds 5.9 up, because the fraction part is greater than .5 (6)

-5.9 =ROUND([Column1],0) Rounds -5.9 down, because the fraction part is less than -.5 (-6)

1.25 =ROUND([Column1], 1) Rounds the number to the nearest tenth (one decimal place). Because the portion to be rounded is 0.05 or greater, the number is rounded up (result: 1.3)

30.452 =ROUND([Column1], 2) Rounds the number to the nearest hundredth (two decimal places). Because the portion to be rounded, 0.002, is less than 0.005, the number is rounded down (result: 30.45)

 

To round a number to the significant digit above 0, use the ROUND, ROUNDUP, ROUNDDOWN, INT, and LEN functions.

 

Column1 Formula Description (result)

5492820 =ROUND([Column1],3-LEN(INT([Column1]))) Rounds the number to 3 significant digits (5490000)

22230 =ROUNDDOWN([Column1],3-LEN(INT([Column1]))) Rounds the bottom number down to 3 significant digits (22200)

5492820 =ROUNDUP([Column1], 5-LEN(INT([Column1]))) Rounds the top number up to 5 significant digits (5492900)

 

 

Text formulas

You can use the following formulas to manipulate text, such as combining or concatenating the values from multiple columns, comparing the contents of columns, removing characters or spaces, and repeating characters.

 

Change the case of text

 

To change the case of text, use the UPPER, LOWER, or PROPER function.

 

Column1 Formula Description (result)

nina Vietzen =UPPER([Column1]) Changes text to uppercase (NINA VIETZEN)

nina Vietzen =LOWER([Column1]) Changes text to lowercase (nina vietzen)

nina Vietzen =PROPER([Column1]) Changes text to title case (Nina Vietzen)

 

Combine first and last names

 

To combine first and last names, use the ampersand operator (&) or the CONCATENATE function.

 

Column1 Column2 Formula Description (result)

Carlos Carvallo =[Column1]&[Column2] Combines the two strings (CarlosCarvallo)

Carlos Carvallo =[Column1]&" "&[Column2] Combines the two strings, separated by a space (Carlos Carvallo)

Carlos Carvallo =[Column2]&", "&[Column1] Combines the two strings, separated by a comma and a space (Carvallo, Carlos)

Carlos  Carvallo =CONCATENATE([Column2], ",", [Column1]) Combines the two strings, separated by a comma (Carvallo,Carlos)

 

Combine text and numbers from different columns

 

To combine text and numbers, use the CONCATENATE function, the ampersand operator (&), or the TEXT function and the ampersand operator.

 

Column1 Column2 Formula Description (result)

Yang 28 =[Column1]&" sold "&[Column2]&" units." Combines contents above into a phrase (Yang sold 28 units.)

Dubois 40% =[Column1]&" sold "&TEXT([Column2],"0%")&" of the total sales." Combines contents above into a phrase (Dubois sold 40% of the total sales.)

 Note   The TEXT function appends the formatted value of Column2 instead of the underlying value, which is .4.

 

Yang 28 =CONCATENATE([Column1]," sold ",[Column2]," units.") Combines contents above into a phrase (Yang sold 28 units.)

 

Combine text with a date or time

 

To combine text with a date or time, use the TEXT function and the ampersand operator (&).

 

Column1 Column2 Formula Description (result)

Billing Date 5-Jun-2007 ="Statement date: "&TEXT([Column2], "d-mmm-yyyy") Combines text with a date (Statement date: 5-Jun-2007)

Billing Date 5-Jun-2007 =[Column1]&" "&TEXT([Column2], "mmm-dd-yyyy") Combines text and date from different columns into one column (Billing Date Jun-05-2007)

 

Compare column contents

 

To compare one column to another column or a list of values, use the EXACT and OR functions.

 

Column1 Column2 Formula Description (possible result)

BD122 BD123 =EXACT([Column1],[Column2])  Compares contents of first two columns (No) 

BD122 BD123 =EXACT([Column1], "BD122") Compares contents of Column1 and the string "BD122" (Yes) 

 

Check if a column value or a part of it matches specific text

 

To check if a column value or a part of it matches specific text, use the IF, FIND, SEARCH, and ISNUMBER functions.

 

Column1 Formula Description (possible result)

Vietzen =IF([Column1]="Vietzen", "OK", "Not OK") Checks to see if Column1 is Vietzen (OK)

Vietzen =IF(ISNUMBER(FIND("v",[Column1])), "OK", "Not OK") Checks to see if Column1 contains the letter v (OK)

BD123 =ISNUMBER(FIND("BD",[Column1])) Checks to see if Column1 contains BD (Yes)

 

Count nonblank columns

 

To count nonblank columns, use the COUNTA function.

 

Column1 Column2 Column3 Formula Description (result)

Sales 19  =COUNTA([Column1], [Column2])  Counts the number of nonblank columns (2) 

Sales 19  =COUNTA([Column1], [Column2], [Column3]) Counts the number of nonblank columns (2) 

 

Remove characters from text

 

To remove characters from text, use the LEN, LEFT, and RIGHT functions.

 

Column1 Formula Description (result)

Vitamin A =LEFT([Column1],LEN([Column1])-2) Returns 7 (9-2) characters, starting from left (Vitamin) 

Vitamin B1 =RIGHT([Column1], LEN([Column1])-8) Returns 2 (10-8) characters, starting from right (B1)

 

Remove spaces from the beginning and end of a column

 

To remove spaces from a column, use the TRIM function.

 

Column1 Formula Description (result)

  Hello there! =TRIM([Column1]) Removes the spaces from the beginning and end (Hello there!) 

 

Repeat a character in a column

 

To repeat a character in a column, use the REPT function.

 

Formula Description (result)

=REPT(".",3) Repeats a period 3 times (...)

=REPT("-",10) Repeats a dash 10 times (----------)

 

 

lunedì, settembre 24, 2007

Content Aware Image Resizing

From ER:

"At the SIGGRAPH 2007 conference in San Diego, two Israeli professors,
Shai Avidan and Ariel Shamir, have demonstrated a new method to shrink images.
The method is called 'Seam Carving for Content-Aware Image Resizing'
(PDF paper here) and it figures out which parts of an image are less significant.
 This makes it possible to change the aspect ratio of an image without making
the content look skewed or stretched out. There is a video demonstration up on YouTube."

Preloading FLVs?

Here’s something to ponder: it seems you can (sort of) preload a FLV using the bytesLoaded and bytesTotal properties…

 

 

Silverlight First Impressions - From the Blog of Flex and Flash Developer Jesse Warden

This is a long blog entry written by a Flex and Flash Developer (Jesse Warden); I thought his first impressions of Silverlight were definitely interesting.

 

venerdì, settembre 21, 2007

WPF and Silverlight...and a few Flash tidbits

I realized at the meeting yesterday I needed a clear explanation of what WPF is and how it relates to Silverlight. Wikipedia has a nice, straightforward write-up:

The Windows Presentation Foundation (or WPF), formerly code named Avalon, is the graphical subsystem feature of the .NET Framework 3.0 (formerly called WinFX)[1] and is directly related to XAML.[2] It is pre-installed in Vista,[3] the latest version of the Microsoft Windows operating system. WPF is also available for installation on Windows XP SP2 and Windows Server 2003. It provides a consistent programming model for building applications and provides a clear separation between the UI and the business logic. A WPF application can be deployed on the desktop or hosted in a web browser. It also enables richer control, design, and development of the visual aspects of Windows programs. It aims to unify a host of application services: user interface, 2D and 3D drawing, fixed and adaptive documents, advanced typography, vector graphics, raster graphics, animation, data binding, audio and video.

Microsoft Silverlight is a web-based subset of WPF. During development it was named WPF/E, which stood for "Windows Presentation Foundation Everywhere". Silverlight is based on XAML and JScript. The Silverlight subset enables Flash-like web and mobile applications with the same code as Windows .NET applications. 3D features are not supported, but XPS, vector-based drawing and hardware acceleration are included.

*

As long as I’m mentioning Silverlight, here is a blog entry from   Ted Patrick (Flex/MAX Evangelist)

 

“It has been 4 years since Microsoft started talking about "Sparkle" and 2 years since unveiling WPF/E at MIX '06. Microsoft shipped Silverlight 1.0 today. It's great to have such a large company trying to compete with Adobe Flash Player.”

*

One last tangent: Lee Brimelow is joining Adobe as a Platform Evangelist.

 

martedì, settembre 18, 2007

Why we need standards support in HTML email

A good rant in favor of e-mail web standards. I know we can all relate!

This is a post I've been meaning to write for a long time now. I've been delaying it purely because I wanted it to be perfect. I wanted to write with Zeldman-like virtue on why email, just like the web, needs to pay attention to web standards. Sadly, in the time between the idea for this post and actually getting it published, web standards support in email has gone seriously downhill. I can't delay it any longer.

 

Flash Player 9 Update 3, codename "Moviestar"

The 8/21 beta release of Flash Player 9 Update 3, codename “Moviestar”, on Adobe Labs contains new improvements for media, including support for H.264 video and HE-AAC audio and hardware accelerated, multi-core full screen video playback.

Q: What is H.264?
A:H.264 is the next-generation video compression technology in the MPEG-4 standard, also known as MPEG-4 Part 10 (ISO/IEC 14496-10). H.264 delivers excellent video quality across the entire bandwidth spectrum — from 3G (Mobile phones) to HD (Broadcast) and everything in between. H.264 is now mandatory for the HD-DVD and Blu-ray specifications (the two formats for high-definition DVDs) and ratified in the latest versions of the DVB (Digital Video Broadcasters) and 3GPP (3rd Generation Partnership Project) standards. Numerous broadcast, cable, videoconferencing and consumer electronics companies consider H.264 the video codec of choice for their new products and services, including Apple, Sony, Nokia, SanDisk, Palm, Blackberry and even Microsoft.

More

 

lunedì, settembre 17, 2007

AS3: Filtering and formatting data in the DataGrid component

Filtering and formatting data in the DataGrid component

http://www.adobe.com/devnet/flash/quickstart/datagrid_pt3/

 

AIR, AS3 and AS2/AS1 (Oh My)

I’ve run into an issue where Flash 9 files, using ActionScript 3, can run into problems when loading a compiled ActionScript 2 movieclip. (I’m trying to create an AIR application from an existing SWF without having to recode it to ActionScript 3.)

*

A single SWF file cannot combine ActionScript 1.0 or 2.0 code with ActionScript 3.0 code.

ActionScript 3.0 code can load a SWF file written in ActionScript 1.0 or 2.0, but it cannot access the SWF file's variables and functions.

SWF files written in ActionScript 1.0 or 2.0 cannot load SWF files written in ActionScript 3.0. This means that SWF files authored in Flash 8 or Flex Builder 1.5 or earlier versions cannot load ActionScript 3.0 SWF files.

The only exception to this rule is that an ActionScript 2.0 SWF file can replace itself with an ActionScript 3.0 SWF file, as long as the ActionScript 2.0 SWF file hasn't previously loaded anything into any of its levels. An ActionScript 2.0 SWF file can do this through a call to loadMovieNum(), passing a value of 0 to the level parameter.

In general, SWF files written in ActionScript 1.0 or 2.0 must be migrated if they are to work together with SWF files written in ActionScript 3.0. For example, say you created a media player using ActionScript 2.0. The media player loads various content that was also created using ActionScript 2.0. You cannot create new content in ActionScript 3.0 and load it in the media player. You must migrate the video player to ActionScript 3.0.

If, however, you create a media player in ActionScript 3.0, that media player can perform simple loads of your ActionScript 2.0 content.

 

Free Flash Templates

Tips for migrating your Flash applications to ActionScript 3.0

Looks like it’s time to crack open our text books…

Adobe Flash CS3 Professional includes many great new features, including the ActionScript 3.0 programming language and the ActionScript 3.0 FLA file format. This article is a summary of my notes and reflections as I migrated to using ActionScript 3.0. I also provide solutions that address these topics:

  • Changes to handling movie clips
  • Changes to loading data, content, and symbols
  • Changes to building object classes in ActionScript 3.0

 

Adobe AIR update Beta 1 for Flash CS3 Professional

I was about to install Grant Skinner’s AIR Panel, but his site points out that there is now an Adobe AIR update Beta 1 for Flash CS3 Professional.

“The Adobe® Integrated Runtime (AIR) update Beta 1 for Flash® CS3 will allow you to package and preview .air application files directly within Adobe Flash CS3; leveraging your existing Flash development skills to build desktop-enabled distributed applications and experiences with the Adobe AIR™ framework.

System Requirements “

*

You can find Documentation on the Adobe® Integrated Runtime (AIR) update for Flash CS3 Professional at the following links:

 

venerdì, settembre 14, 2007

Animoto Redux

Pretty quick! I generated this in less than 5 minutes…

http://animoto.com/play/ff5e85288e11515a64c3a3566011f5aa

 

Animoto

This seems pretty amazing! Certainly ambitious.

Animoto is a web application that automatically generates professionally produced videos using patent-pending Cinematic Artificial Intelligence technology and high-end motion design. Each video is a fully customized orchestration of user-selected images and music. Produced in widescreen format, Animoto videos have the visual energy of a music video and the emotional impact of a movie trailer.

Animoto is a web application that automatically generates professionally produced videos using patent-pending Cinematic Artificial Intelligence technology and high-end motion design. Each video is a fully customized orchestration of user-selected images and music. Produced in widescreen format, Animoto videos have the visual energy of a music video and the emotional impact of a movie trailer.

Animoto is a web application that automatically generates professionally produced videos using patent-pending Cinematic Artificial Intelligence technology and high-end motion design. Each video is a fully customized orchestration of user-selected images and music. Produced in widescreen format, Animoto videos have the visual energy of a music video and the emotional impact of a movie trailer.

Animoto is a web application that automatically generates professionally produced videos using patent-pending Cinematic Artificial Intelligence technology and high-end motion design. Each video is a fully customized orchestration of user-selected images and music. Produced in widescreen format, Animoto videos have the visual energy of a music video and the emotional impact of a movie trailer.

Animoto is a web application that automatically generates professionally produced videos using patent-pending Cinematic Artificial Intelligence technology and high-end motion design. Each video is a fully customized orchestration of user-selected images and music. Produced in widescreen format, Animoto videos have the visual energy of a music video and the emotional impact of a movie trailer.

The heart of Animoto is its newly developed Cinematic A.I. technology that thinks like an actual director and editor. It analyzes and combines user-selected images and music with the same sophisticated post-production skills and techniques that are used in television and film. The technology takes into account every nuance of a song: the genre, song structure, energy, rhythm, instrumentation, and vocals. Whether it's punk, pop, hip-hop or a classical Stravinsky piece, every Animoto video is totally customized. Even videos generated with an identical set of images and music will each have a completely distinct set of motion design. No two videos are the same. They can be emailed, and embedded in pages on websites including social network sites like Facebook and MySpace.

  * Watch our 60-second Learn More video and a few sample Animoto videos:
      http://animoto.com/
  * Create a new video at animoto.com:
      http://animoto.com/create/
  * Watch the videos that friends have shared with you:
      http://animoto.com/play/friends_videos/

 

 

giovedì, settembre 13, 2007

Powerful Browser-Based WYSIWYG Editor II

I think I like this one even better! Additionally, it’s free:

TinyMCE

TinyMCE is a platform independent web based Javascript HTML WYSIWYG editor control released as Open Source under LGPL by Moxiecode Systems AB. It has the ability to convert HTML TEXTAREA fields or other HTML elements to editor instances. TinyMCE is very easy to integrate into other Content Management Systems.

It even has an example that shows you how TinyMCE can auto convert/cleanup pasted Word content!

*

Here is a neat list of other editors, too. Most of them are not free, however.

 

 

Online Mapping Fun

E pointed out Yahoo! MapMixer today. It’s really fun! Here’s my silly test.

Excerpts from E’s e-mail:

Yahoo! MapMixer

What is MapMixer?

The world is a big place. There are thousands of maps out there that provide unique details about any given destination.
MapMixer is a new site that combines those maps with Yahoo! Maps to give you a better view of the world.

It's easy to mix your own map. Upload an image of your map, use our layering tool to align it with Yahoo! Maps and we'll
do the rest! Your map will have all the features of Yahoo! Maps (zooming, panning). You can also syndicate it on your own
site or blog.

And

From O’Reilly:

Yahoo Launches Map Mixer: Make Your Map

Yahoo! has launched Map Mixer, a cool new mapping site that allows users to upload and share their own maps.
The embedded map above shows an overlay of the Philadelphia Aiport on a Yahoo! map They've also added a nice
community layer on top that makes sharing, rating, and commenting easy. Via Michael Arrington on Techcrunch
I learned that Map Mixer came out of Hack Day. Yahoo's announcement post mentions that they also developed
a Shop By Color app.

*

On the topic of maps, Google Maps has some neat features, too. (Although not as cool as Yahoo’s offering). The best feature it allows that Yahoo should adopt is the polygon tool.

mercoledì, settembre 12, 2007

Powerful Browser-Based WYSIWYG Editor

I’ve been looking for a nice browser-based wysiwyg editor. I found a really COOL one, which I thought I’d pass along. (Unfortunately, it seems to require a license to use for a corporation – although, maybe the Intranet is a different case?)

You’ll have to pardon the name – apparently it stands for the author’s initials Frederico Caldeira Knabben).

http://www.fckeditor.net/

“Adobe has chosen FCKeditor as one of the great new features of its next major release of ColdFusion, code-named Scorpio. Some reviews of it can be found on the web.”

They also have a control for .NET.

FCKeditor.Net is anASP.Net Control to easily integrate FCKeditor on .Net web pages.”

 

martedì, settembre 11, 2007

SharePoint: using if/then behavior in calculated fields

I thought this was neat: I discovered that it’s possible to use if/then behavior in calculated fields.

In the example below a calculated field is determining the following:

If the field “Expiration Date” contains a date, then the calculated field’s date will be the same date. If it does not, then the field will perform a different calculation: it will be the value of another date, “Live Date,” plus 90 days.

=IF([Expiration Date]>0,[Expiration Date],[Live Date]+90)

FavIcon Generator

DriveSavers

Sometimes spam works! I received a brochure from DriveSavers. Seems like a neat company, actually. I’ll save this in case my drive decides to implode one day.

 

lunedì, settembre 10, 2007

Two articles

Adobe Flash Player Administration Guide

Adobe Flash Player Administration Guide

“This Adobe Flash Player Administration Guide covers Adobe Flash Player 8 and Flash Player 9. It describes Flash Player, how it's installed, how it works, and how you can control it to suit the needs of a specific network environment. This document is intended for IT or administrative professionals who manage the installation or use of Flash Player for multiple users in a controlled environment.”

Handy AIR Links

venerdì, settembre 07, 2007

Website Grader

(From PC Magazine’s special report on the Top 100 Undiscovered Websites)
Want to find out how effective your blog or Web site is at snaring all-important search traffic and inbound links? Submit your URL (and your competitors' URLs) to Website Grader, which gives you some basic feedback on how your site is doing and in what areas it can improve. It's a free way to get advice on optimizing your site for search engines, which can drastically boost your traffic. Just enter in the URLs and Website Grader will do a quick (but thorough) analysis.

www.websitegrader.com

 

 

mercoledì, settembre 05, 2007

HTML E-mail Guidelines

it’s best to cater to lower forms of HTML as outlined in these lists of tips:

·         E-mail Labs

·         SitePoint

 

 

 

martedì, settembre 04, 2007

The man who collects Apples

(From RR)

The man who collects Apples

  • Story Highlights
  • Jeremy Mehrle collects Apple computers -- at least 100 at last count
  • Many in the collection were purchased from schools
  • Collection includes a rare Apple Lisa and 20th anniversary Mac

 

Spreading the word on biz

A nice article by the WSJ. I’ll definitely have to check out hubspot.com.

 

Using The Hidden Flight Simulator in Google Earth

I thought this was amusing and possibly cool – didn’t an older version of Microsoft Excel have a hidden flight simulator, too?

Using The Hidden Flight Simulator in Google Earth
A working (albeit first version) flight simulator is included in the just-released Google Earth 4.2. (Google Tutor Aug 31 2007)

 

Searching based on the content of audio and media files

I was just reading about these sites in Pandia:

EveryZing creates a text index of the audio data from audio and video files, using the industry’s leading speech-to-text technology from BBN Technologies, to enable search within the spoken words of media, not just within the metadata.”

In this respect it is a bit similar to blinkx. Both blinkx and Everyzing analyze the content of the audio track of media files.