<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2595381101272602245</id><updated>2012-01-21T00:05:58.825-04:00</updated><category term='mobile'/><category term='ubiquitous computing'/><category term='calendar'/><category term='media'/><category term='wiki'/><category term='tools'/><category term='iphone sdk'/><category term='apple'/><category term='collaboration'/><category term='development'/><category term='social change'/><category term='mobile apps'/><category term='compact framework'/><category term='im'/><category term='storage'/><category term='real estate'/><category term='fom'/><category term='gadget'/><category term='documentary'/><category term='environment'/><category term='nonprofit'/><category term='photos'/><category term='osx'/><category term='globalization'/><category term='motivation'/><category term='dell'/><category term='firefox'/><category term='location'/><category term='csharp'/><category term='future of mobile'/><category term='iphone'/><category term='ios'/><category term='amazon'/><category term='browser'/><category term='rss'/><category term='nintendo'/><category term='internet'/><category term='sun'/><category term='psx'/><category term='video'/><category term='windows'/><category term='.net'/><category term='windows mobile'/><category term='zdravo'/><category term='database'/><category term='science'/><category term='startups'/><category term='fowa'/><category term='facebook'/><category term='business'/><category term='office'/><category term='ajax'/><category term='semantic web'/><category term='graphics'/><category term='voip'/><category term='music'/><category term='textmate'/><category term='vendasta'/><category term='smartphone'/><category term='memory'/><category term='dashboard'/><category term='microsof'/><category term='cloud'/><category term='blog'/><category term='book'/><category term='networking'/><category term='gps'/><category term='africa'/><category term='android'/><category term='ruby on rails'/><category term='virtualreality'/><category term='energy'/><category term='jobs'/><category term='disaster response'/><category term='sql'/><category term='web2.0'/><category term='future of web apps'/><category term='html'/><category term='delicious'/><category term='mac'/><category term='search'/><category term='microsoft'/><category term='mobile web'/><category term='asp.net'/><category term='design'/><category term='mozilla'/><category term='health'/><category term='gmail'/><category term='management'/><category term='investing'/><category term='google'/><title type='text'>Ideas 2.0</title><subtitle type='html'>There are no impossible problems, only innovative solutions</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default?start-index=101&amp;max-results=100'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>199</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5329441567093692153</id><published>2011-10-29T10:34:00.000-03:00</published><updated>2011-10-29T11:23:26.991-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile apps'/><title type='text'>African App Store</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;You have to admit, the &lt;a href="http://www.apple.com/iphone/from-the-app-store/"&gt;Apple App Store&lt;/a&gt; completely revolutionized how people download and install mobile applications on their phones. The 70-30 model also empowered developers allowing them to easily reach a global market, with developers receiving 70% of the sales while Apple kept the other 30%.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://market.android.com/?hl=en"&gt;Google&lt;/a&gt;, &lt;a href="http://www.windowsphone.com/en-US/marketplace"&gt;Microsoft&lt;/a&gt; and &lt;a href="http://appworld.blackberry.com/webstore/"&gt;Blackberry&lt;/a&gt; were quick to follow with their own mobile application market places. However, we still haven't seen hyperlocal app stores, profiling apps created by developers in your own community. All apps get thrown under categories, but not regions.&lt;br /&gt;&lt;br /&gt;I believe there is &lt;i&gt;huge opportunity&lt;/i&gt; to incorporate geo-location into the market place, celebrating a &lt;i&gt;'shop local'&lt;/i&gt; mentality. Imagine searching for apps based on your location, &lt;i&gt;'show me apps developed within 100km of me' &lt;/i&gt; and allowing you easily contact that developer. This could spur a powerful synergy between developers and local companies looking to hire.&lt;br /&gt;&lt;br /&gt;I also believe that region specific app stores, could celebrate locally developed applications. And rather than 30% going to large corporations like Google, Microsoft or Blackberry, that 30% could instead go to the community in which the app was developed. For example, you buy a mobile game created by a Nairobi developer, 70% goes to the developer and 30% goes to support local organizations like &lt;a href="http://mapkibera.org/"&gt;Map Kibera&lt;/a&gt; or &lt;a href="http://matharevalley.wordpress.com/"&gt;Mathare Valley Group&lt;/a&gt;. Costumers would give back to their community, without even knowing it.&lt;br /&gt;&lt;br /&gt;Supporting local charities was the original goal behind &lt;a href="http://www.apps4good.ca/"&gt;Apps4Good&lt;/a&gt;, &lt;a href="http://www.apps4good.ca/about/"&gt;social good organization that myself and some friends from Halifax&lt;/a&gt; started to give back to the community. Unfortunately the ongoing support and marketing proved a bigger challenge than actually developing the applications. And because Apps4Good is entirely volunteer based, we've struggled to sell the tens of thousands of apps like we had hoped. But the idea is still sound, and I believe there is huge potential to allow consumers to buy products they need, while giving back to their community in the process.&lt;br /&gt;&lt;br /&gt;Thoughts? Ideas? I'd love to hear them :)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5329441567093692153?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5329441567093692153/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5329441567093692153' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5329441567093692153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5329441567093692153'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2011/10/african-app-store.html' title='African App Store'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3608533288878327836</id><published>2011-06-07T09:57:00.013-03:00</published><updated>2011-06-18T05:52:25.387-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='ios'/><title type='text'>Applescript To Export And Import iOS Projects To CSV</title><content type='html'>Two weeks ago I wrote an &lt;a href="http://ideas.dalezak.ca/2011/05/applescript-to-google-translate-ios.html"&gt;Applescript to auto-translate an iOS project&lt;/a&gt; by extracting all phrases, translating them via Google Translate, and then re-importing the translations back into your project. Unfortunately since publishing the script, &lt;a href="http://googlecode.blogspot.com/2011/05/spring-cleaning-for-some-of-our-apis.html"&gt;Google has announced they are deprecating the Translate API&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;So, as an alternative to using &lt;a href="http://translate.google.com/"&gt;Google Translate&lt;/a&gt;, I've updated the Applescript to also export to a CSV file so the phrases can be loaded into a Google Spreadsheet, and then re-imported from CSV file once the spreadsheet has been translated.&lt;code style="font-size:smaller"&gt;&lt;br /&gt;set EXPORT_TO_CSV to "Export To CSV"&lt;br /&gt;set IMPORT_FROM_CSV to "Import From CSV"&lt;br /&gt;set GOOGLE_TRANSLATE to "Google Translate"&lt;br /&gt;set CLASSES_ONLY to "Classes Only"&lt;br /&gt;set CLASSES_AND_NIBS to "Classes And NIBs"&lt;br /&gt;&lt;br /&gt;set question to display dialog "Select Your Activity" buttons {EXPORT_TO_CSV, IMPORT_FROM_CSV, GOOGLE_TRANSLATE} default button 1&lt;br /&gt;set answer to button returned of question&lt;br /&gt;if answer is equal to EXPORT_TO_CSV then&lt;br /&gt;exportToCSV(choose folder with prompt "Select Project Source Folder", ¬&lt;br /&gt;choose folder with prompt "Select Translations Destination Folder", ¬&lt;br /&gt;display dialog "Enter CSV Destination File" default answer "localizations.csv", ¬&lt;br /&gt;display dialog "Enter CSV Language Codes" default answer "fr,es,de,nl,it,pt,pl,ru,sw,zh,ja,ko,ar,cs,el,hi", ¬&lt;br /&gt;display dialog "Export Phrases From" buttons {CLASSES_ONLY, CLASSES_AND_NIBS} default button 1)&lt;br /&gt;else if answer is equal to IMPORT_FROM_CSV then&lt;br /&gt;importFromCSV(choose folder with prompt "Select Project Source Folder", ¬&lt;br /&gt;choose folder with prompt "Select Translations Destination Folder", ¬&lt;br /&gt;choose file with prompt "Enter CSV Source File" of type {"CSV"})&lt;br /&gt;else if answer is equal to GOOGLE_TRANSLATE then&lt;br /&gt;translateProject(choose folder with prompt "Select Project Source Folder", ¬&lt;br /&gt;choose folder with prompt "Select Localization Destination Folder", ¬&lt;br /&gt;display dialog "Enter Destination Language Code" default answer "", ¬&lt;br /&gt;display dialog "Translate Phrases From" buttons {CLASSES_ONLY, CLASSES_AND_NIBS} default button 1)&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;on importFromCSV(projectFolder, localizationFolder, importFile)&lt;br /&gt;set englishFolder to createFolder(localizationFolder, "en.lproj")&lt;br /&gt;set importLines to paragraphs of readFilePath(importFile as text)&lt;br /&gt;&lt;br /&gt;set firstLine to replaceCharacters(item 1 of importLines, "file,key,en,", "")&lt;br /&gt;set firstLine to replaceCharacters(firstLine, "\"file\",\"key\",\"en\",", "")&lt;br /&gt;set firstLine to replaceCharacters(firstLine, "\"", "")&lt;br /&gt;&lt;br /&gt;set languageCodes to itemsFromCSV(firstLine)&lt;br /&gt;repeat with languageCode in languageCodes&lt;br /&gt;repeat with englishFile in filesWithExtension(englishFolder, ".strings")&lt;br /&gt;set languageFileName to getFileName(englishFile)&lt;br /&gt;set languageFolder to createFolder(localizationFolder, (languageCode &amp; ".lproj"))&lt;br /&gt;set languageFile to writeFile(languageFolder, languageFileName, "", false)&lt;br /&gt;end repeat&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;set importLines to items 2 thru -1 of importLines&lt;br /&gt;repeat with importLine in importLines&lt;br /&gt;set importLine to replaceCharacters(importLine, "\"\"\"", "\"")&lt;br /&gt;set lineItems to itemsFromCSV(importLine)&lt;br /&gt;set lineItemsCount to count of lineItems&lt;br /&gt;if lineItemsCount is greater than 3 then&lt;br /&gt;set fileName to item 1 of lineItems&lt;br /&gt;set englishKey to item 2 of lineItems&lt;br /&gt;set englishText to item 3 of lineItems&lt;br /&gt;set translatedItems to items 4 through lineItemsCount of lineItems&lt;br /&gt;&lt;br /&gt;set languageCodeIndex to 1&lt;br /&gt;repeat with translatedItem in translatedItems&lt;br /&gt;if length of translatedItem is greater than 0 then&lt;br /&gt;set languageCode to item languageCodeIndex of languageCodes&lt;br /&gt;set languageFolder to createFolder(localizationFolder, (languageCode &amp; ".lproj"))&lt;br /&gt;set translatedLine to "\"" &amp; englishKey &amp; "\" = \"" &amp; translatedItem &amp; "\";"&lt;br /&gt;writeFile(languageFolder, fileName, translatedLine &amp; return, true)&lt;br /&gt;end if&lt;br /&gt;if (count of languageCodes) is equal to languageCodeIndex then&lt;br /&gt;exit repeat&lt;br /&gt;end if&lt;br /&gt;set languageCodeIndex to languageCodeIndex + 1&lt;br /&gt;end repeat&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;display dialog "Translations Imported From " &amp; importFile&lt;br /&gt;end importFromCSV&lt;br /&gt;&lt;br /&gt;on exportToCSV(projectFolder, localizationFolder, outputFileDialog, languageCodesDialog, phrasesDialog)&lt;br /&gt;set languageCodesString to languageCodesDialog's text returned&lt;br /&gt;if length of languageCodesString is equal to 0 then&lt;br /&gt;display dialog "Language Codes Required"&lt;br /&gt;else&lt;br /&gt;set phrasesAnswer to button returned of phrasesDialog&lt;br /&gt;set languageCodes to itemsFromCSV(languageCodesString)&lt;br /&gt;set outputFile to outputFileDialog's text returned&lt;br /&gt;&lt;br /&gt;set headerLine to "file,key,en," &amp; languageCodesString&lt;br /&gt;writeFile(localizationFolder, outputFile, headerLine &amp; return, false)&lt;br /&gt;&lt;br /&gt;do shell script "find " &amp; quoted form of (POSIX path of projectFolder) &amp; " -name '*.m' " &amp; ¬&lt;br /&gt;" | xargs genstrings -o " &amp; quoted form of (POSIX path of localizationFolder &amp; "en.lproj")&lt;br /&gt;&lt;br /&gt;set englishFolder to createFolder(localizationFolder, "en.lproj")&lt;br /&gt;&lt;br /&gt;if phrasesAnswer is equal to "Classes And NIBs" then&lt;br /&gt;set nibFiles to filesWithExtension(projectFolder, ".xib")&lt;br /&gt;repeat with nibFile in nibFiles&lt;br /&gt;set nibFile to parseNib(nibFile, englishFolder)&lt;br /&gt;end repeat&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;repeat with englishFile in filesWithExtension(englishFolder, ".strings")&lt;br /&gt;set languageFileName to getFileName(englishFile)&lt;br /&gt;set englishLines to paragraphs of readFile(englishFolder, languageFileName)&lt;br /&gt;repeat with englishLine in englishLines&lt;br /&gt;if length of englishLine is greater than 0 then&lt;br /&gt;set englishKey to parseKey(englishLine)&lt;br /&gt;if length of englishKey is greater than 0 then&lt;br /&gt;set newLine to languageFileName&lt;br /&gt;if "\"" is in englishKey then&lt;br /&gt;set newLine to newLine &amp; ",\"\"" &amp; englishKey &amp; "\"\""&lt;br /&gt;else if "," is in englishKey then&lt;br /&gt;set newLine to newLine &amp; ",\"" &amp; englishKey &amp; "\""&lt;br /&gt;else&lt;br /&gt;set newLine to newLine &amp; "," &amp; englishKey&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;set englishText to parseValue(englishLine)&lt;br /&gt;if "\"" is in englishText then&lt;br /&gt;set newLine to newLine &amp; ",\"\"" &amp; englishText &amp; "\"\""&lt;br /&gt;else if "," is in englishText then&lt;br /&gt;set newLine to newLine &amp; ",\"" &amp; englishText &amp; "\""&lt;br /&gt;else&lt;br /&gt;set newLine to newLine &amp; "," &amp; englishText&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;repeat with languageCode in languageCodes&lt;br /&gt;set languageFolder to createFolder(localizationFolder, (languageCode &amp; ".lproj"))&lt;br /&gt;set languageFilePath to (languageFolder as text) &amp; languageFileName as text&lt;br /&gt;if fileExists(languageFilePath) then&lt;br /&gt;set fileLines to paragraphs of readFile(languageFolder, languageFileName)&lt;br /&gt;set hasTranslations to false&lt;br /&gt;repeat with fileLine in fileLines&lt;br /&gt;if "\"" &amp; englishKey &amp; "\" =" is in fileLine then&lt;br /&gt;set languageText to parseValue(fileLine)&lt;br /&gt;if "\"" is in languageText then&lt;br /&gt;set newLine to newLine &amp; ",\"\"" &amp; languageText &amp; "\"\""&lt;br /&gt;else if "," is in languageText then&lt;br /&gt;set newLine to newLine &amp; ",\"" &amp; languageText &amp; "\""&lt;br /&gt;else&lt;br /&gt;set newLine to newLine &amp; "," &amp; languageText&lt;br /&gt;end if&lt;br /&gt;set hasTranslations to true&lt;br /&gt;exit repeat&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;if hasTranslations is false then&lt;br /&gt;set newLine to newLine &amp; ","&lt;br /&gt;end if&lt;br /&gt;else&lt;br /&gt;set newLine to newLine &amp; ","&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;writeFile(localizationFolder, outputFile, newLine &amp; return, true)&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;end repeat&lt;br /&gt;display dialog "Translations Exported To " &amp; localizationFolder &amp; outputFile&lt;br /&gt;end if&lt;br /&gt;end exportToCSV&lt;br /&gt;&lt;br /&gt;on translateProject(projectFolder, localizationFolder, languageCodeDialog, phrasesDialog)&lt;br /&gt;set languageCode to languageCodeDialog's text returned&lt;br /&gt;if length of languageCode is equal to 0 then&lt;br /&gt;display dialog "Language Code Required"&lt;br /&gt;else&lt;br /&gt;set phrasesAnswer to button returned of phrasesDialog&lt;br /&gt;set englishFolder to createFolder(localizationFolder, "en.lproj")&lt;br /&gt;&lt;br /&gt;do shell script "find " &amp; quoted form of (POSIX path of projectFolder) &amp; " -name '*.m' " &amp; ¬&lt;br /&gt;" | xargs genstrings -o " &amp; quoted form of (POSIX path of localizationFolder &amp; "en.lproj")&lt;br /&gt;&lt;br /&gt;set nibFiles to filesWithExtension(projectFolder, ".xib")&lt;br /&gt;if phrasesAnswer is equal to "Classes And NIBs" then&lt;br /&gt;repeat with nibFile in nibFiles&lt;br /&gt;set nibFile to parseNib(nibFile, englishFolder)&lt;br /&gt;end repeat&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;set languageFolder to createFolder(localizationFolder, (languageCode &amp; ".lproj"))&lt;br /&gt;&lt;br /&gt;repeat with englishFile in filesWithExtension(englishFolder, ".strings")&lt;br /&gt;set languageFileName to getFileName(englishFile)&lt;br /&gt;&lt;br /&gt;set languageFilePath to (languageFolder as text) &amp; languageFileName as text&lt;br /&gt;if fileExists(languageFilePath) is false then&lt;br /&gt;set languageFile to writeFile(languageFolder, languageFileName, "", false)&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;set fileLines to paragraphs of readFile(englishFolder, languageFileName)&lt;br /&gt;repeat with fileLine in fileLines&lt;br /&gt;if length of fileLine is greater than 0 then&lt;br /&gt;set englishKey to parseKey(fileLine)&lt;br /&gt;set englishText to parseValue(fileLine)&lt;br /&gt;&lt;br /&gt;if length of englishText is greater than 0 then&lt;br /&gt;if fileContainsText(languageFolder, languageFileName, "\"" &amp; englishKey &amp; "\" = ") is false then&lt;br /&gt;set encodedText to encodeText(englishText, true, true)&lt;br /&gt;&lt;br /&gt;set responseText to GoogleTranslate(encodedText, languageCode)&lt;br /&gt;set translatedText to parseJson(responseText, "translatedText")&lt;br /&gt;&lt;br /&gt;repeat until length of translatedText is greater than 0&lt;br /&gt;set errorMessage to parseJson(responseText, "responseDetails")&lt;br /&gt;if length of errorMessage is greater than 0 then&lt;br /&gt;display dialog "Oops!" &amp; space &amp; errorMessage &amp; space &amp; "(Wait a few minutes, then click OK to continue)"&lt;br /&gt;else&lt;br /&gt;display dialog "Oops!" &amp; space &amp; responseText &amp; space &amp; "(Wait a few minutes, then click OK to continue)"&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;set responseText to GoogleTranslate(encodedText, languageCode)&lt;br /&gt;set translatedText to parseJson(responseText, "translatedText")&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;set translatedLine to "\"" &amp; englishKey &amp; "\" = \"" &amp; (translatedText as Unicode text) &amp; "\";" as Unicode text&lt;br /&gt;writeFile(languageFolder, languageFileName, translatedLine &amp; return, true)&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;if phrasesAnswer is equal to "Classes And NIBs" then&lt;br /&gt;repeat with nibFile in nibFiles&lt;br /&gt;importNib(nibFile, languageFolder)&lt;br /&gt;end repeat&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;display dialog "Translation Complete"&lt;br /&gt;end if&lt;br /&gt;end translateProject&lt;br /&gt;&lt;br /&gt;on itemsFromCSV(csvLine)&lt;br /&gt;set csvItems to {}&lt;br /&gt;if "\"" is in csvLine then&lt;br /&gt;set csvItem to ""&lt;br /&gt;set insideQuotes to false&lt;br /&gt;set previousQuote to false&lt;br /&gt;repeat with c in the characters of csvLine&lt;br /&gt;if insideQuotes then&lt;br /&gt;if c as text is equal to "\"" then&lt;br /&gt;if previousQuote then&lt;br /&gt;set csvItem to csvItem &amp; "\""&lt;br /&gt;set previousQuote to false&lt;br /&gt;else&lt;br /&gt;set previousQuote to true&lt;br /&gt;end if&lt;br /&gt;else if c as text is equal to "," then&lt;br /&gt;if previousQuote then&lt;br /&gt;copy csvItem to the end of csvItems&lt;br /&gt;set csvItem to ""&lt;br /&gt;set insideQuotes to false&lt;br /&gt;set previousQuote to false&lt;br /&gt;else&lt;br /&gt;set csvItem to csvItem &amp; c&lt;br /&gt;set previousQuote to false&lt;br /&gt;end if&lt;br /&gt;else&lt;br /&gt;set csvItem to csvItem &amp; c&lt;br /&gt;set previousQuote to false&lt;br /&gt;end if&lt;br /&gt;else&lt;br /&gt;if c as text is equal to "\"" then&lt;br /&gt;set insideQuotes to true&lt;br /&gt;set previousQuote to true&lt;br /&gt;else if c as text is equal to "," then&lt;br /&gt;copy csvItem to the end of csvItems&lt;br /&gt;set csvItem to ""&lt;br /&gt;set previousQuote to false&lt;br /&gt;else&lt;br /&gt;set csvItem to csvItem &amp; c&lt;br /&gt;set previousQuote to false&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;if length of csvItem is greater than 0 then&lt;br /&gt;copy csvItem to the end of csvItems&lt;br /&gt;set csvItem to ""&lt;br /&gt;set previousQuote to false&lt;br /&gt;end if&lt;br /&gt;else&lt;br /&gt;set AppleScript's text item delimiters to ","&lt;br /&gt;set csvItems to text items of csvLine&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;end if&lt;br /&gt;return csvItems&lt;br /&gt;end itemsFromCSV&lt;br /&gt;&lt;br /&gt;on parseNib(filePath, targetFolder)&lt;br /&gt;set fileName to getFileName(filePath)&lt;br /&gt;set fileNameWithoutExtension to replaceCharacters(fileName, ".xib", "")&lt;br /&gt;set stringsPath to POSIX path of targetFolder &amp; fileNameWithoutExtension &amp; ".strings"&lt;br /&gt;set sourceNib to POSIX path of filePath&lt;br /&gt;do shell script "ibtool --export-strings-file" &amp; space &amp; ¬&lt;br /&gt;quoted form of stringsPath &amp; space &amp; ¬&lt;br /&gt;quoted form of sourceNib&lt;br /&gt;return stringsPath&lt;br /&gt;end parseNib&lt;br /&gt;&lt;br /&gt;on importNib(filePath, targetFolder)&lt;br /&gt;if fileExists(filePath) then&lt;br /&gt;set fileName to getFileName(filePath)&lt;br /&gt;set fileNameWithoutExtension to replaceCharacters(fileName, ".xib", "")&lt;br /&gt;set stringsPath to POSIX path of targetFolder &amp; fileNameWithoutExtension &amp; ".strings"&lt;br /&gt;set targetNib to POSIX path of targetFolder &amp; fileName&lt;br /&gt;set sourceNib to POSIX path of filePath&lt;br /&gt;do shell script "ibtool --strings-file" &amp; space &amp; ¬&lt;br /&gt;quoted form of stringsPath &amp; space &amp; "--write" &amp; space &amp; ¬&lt;br /&gt;quoted form of targetNib &amp; space &amp; ¬&lt;br /&gt;quoted form of sourceNib&lt;br /&gt;end if&lt;br /&gt;end importNib&lt;br /&gt;&lt;br /&gt;on getFileName(filePath)&lt;br /&gt;set {name:fileName} to info for file filePath without size&lt;br /&gt;return fileName&lt;br /&gt;end getFileName&lt;br /&gt;&lt;br /&gt;on filesWithExtension(fileFolder, fileExtension)&lt;br /&gt;set fileList to {}&lt;br /&gt;tell application "Finder"&lt;br /&gt;set filePaths to every file of entire contents of folder fileFolder as list&lt;br /&gt;repeat with filePath in filePaths&lt;br /&gt;if (filePath as text) ends with fileExtension then&lt;br /&gt;set end of fileList to filePath as text&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;end tell&lt;br /&gt;return fileList&lt;br /&gt;end filesWithExtension&lt;br /&gt;&lt;br /&gt;on fileContainsText(fileFolder, fileName, textString)&lt;br /&gt;set fileLines to paragraphs of readFile(fileFolder, fileName)&lt;br /&gt;repeat with fileLine in fileLines&lt;br /&gt;if textString is in fileLine then&lt;br /&gt;return true&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;return false&lt;br /&gt;end fileContainsText&lt;br /&gt;&lt;br /&gt;on createFolder(parentFolder, folderName)&lt;br /&gt;tell application "Finder"&lt;br /&gt;if not (exists folder folderName of parentFolder) then&lt;br /&gt;make new folder at parentFolder with properties {name:folderName}&lt;br /&gt;end if&lt;br /&gt;return folder folderName of parentFolder as text&lt;br /&gt;end tell&lt;br /&gt;end createFolder&lt;br /&gt;&lt;br /&gt;on writeFile(fileFolder, fileName, textString, shouldAppend)&lt;br /&gt;tell application "Finder"&lt;br /&gt;set filePath to (fileFolder as text) &amp; fileName as text&lt;br /&gt;try&lt;br /&gt;set fileAccess to open for access file filePath with write permission&lt;br /&gt;if shouldAppend is false then&lt;br /&gt;set eof of fileAccess to 0&lt;br /&gt;write (ASCII character 254) &amp; (ASCII character 255) to fileAccess starting at eof -- UTF-16 BOM&lt;br /&gt;else&lt;br /&gt;set fileDoesExist to exists file filePath&lt;br /&gt;if fileDoesExist is false then&lt;br /&gt;set eof of fileAccess to 0&lt;br /&gt;write (ASCII character 254) &amp; (ASCII character 255) to fileAccess starting at eof -- UTF-16 BOM&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;write textString to fileAccess starting at eof as Unicode text&lt;br /&gt;close access fileAccess&lt;br /&gt;on error&lt;br /&gt;try&lt;br /&gt;close access file filePath&lt;br /&gt;end try&lt;br /&gt;end try&lt;br /&gt;return filePath as text&lt;br /&gt;end tell&lt;br /&gt;end writeFile&lt;br /&gt;&lt;br /&gt;on readFile(fileFolder, fileName)&lt;br /&gt;set filePath to (fileFolder as text) &amp; fileName as text&lt;br /&gt;return readFilePath(filePath)&lt;br /&gt;end readFile&lt;br /&gt;&lt;br /&gt;on readFilePath(filePath)&lt;br /&gt;tell application "Finder"&lt;br /&gt;try&lt;br /&gt;set fileAccess to open for access file filePath&lt;br /&gt;set textContents to read fileAccess as Unicode text&lt;br /&gt;close access fileAccess&lt;br /&gt;return textContents&lt;br /&gt;on error&lt;br /&gt;display dialog "Unable to read filepath " &amp; filePath&lt;br /&gt;try&lt;br /&gt;close access file filePath&lt;br /&gt;end try&lt;br /&gt;end try&lt;br /&gt;return ""&lt;br /&gt;end tell&lt;br /&gt;end readFilePath&lt;br /&gt;&lt;br /&gt;on fileExists(filePath)&lt;br /&gt;tell application "Finder"&lt;br /&gt;try&lt;br /&gt;if exists file filePath then&lt;br /&gt;return true&lt;br /&gt;else&lt;br /&gt;return false&lt;br /&gt;end if&lt;br /&gt;on error&lt;br /&gt;return false&lt;br /&gt;end try&lt;br /&gt;end tell&lt;br /&gt;return false&lt;br /&gt;end fileExists&lt;br /&gt;&lt;br /&gt;on GoogleTranslate(textString, codeString)&lt;br /&gt;return do shell script "/usr/bin/curl" &amp; space &amp; ¬&lt;br /&gt;"'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&amp;langpair=en|" &amp; codeString &amp; "&amp;q=" &amp; quoted form of textString &amp; "'"&lt;br /&gt;end GoogleTranslate&lt;br /&gt;&lt;br /&gt;on parseKey(textString)&lt;br /&gt;if (textString does not start with "/*") then&lt;br /&gt;set AppleScript's text item delimiters to "="&lt;br /&gt;set textItems to text items of textString&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textItems) &gt; 1 then&lt;br /&gt;set textItem to item 1 of textItems&lt;br /&gt;&lt;br /&gt;set AppleScript's text item delimiters to "\""&lt;br /&gt;set textValue to text items of textItem&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textValue) &gt; 1 then&lt;br /&gt;return trimCharacters((item 2 of textValue), "\"") as Unicode text&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;return ""&lt;br /&gt;end parseKey&lt;br /&gt;&lt;br /&gt;on parseValue(textString)&lt;br /&gt;if (textString does not start with "/*") then&lt;br /&gt;set AppleScript's text item delimiters to "="&lt;br /&gt;set textItems to text items of textString&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textItems) &gt; 1 then&lt;br /&gt;set textItem to item 2 of textItems&lt;br /&gt;&lt;br /&gt;set AppleScript's text item delimiters to "\""&lt;br /&gt;set textValue to text items of textItem&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textValue) &gt; 1 then&lt;br /&gt;set valueString to trimCharacters((item 2 of textValue), ";")&lt;br /&gt;set valueString to trimCharacters(valueString, "\"")&lt;br /&gt;return valueString as Unicode text&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;return ""&lt;br /&gt;end parseValue&lt;br /&gt;&lt;br /&gt;on parseJson(jsonString, jsonElement)&lt;br /&gt;repeat with delimiter1 in {"\":\"", "\": \""}&lt;br /&gt;set AppleScript's text item delimiters to "\"" &amp; jsonElement &amp; delimiter1&lt;br /&gt;set jsonItems to text items of jsonString&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of jsonItems) &gt; 1 then&lt;br /&gt;set jsonValue to item 2 of jsonItems&lt;br /&gt;&lt;br /&gt;repeat with delimiter2 in {"\"}", "\","}&lt;br /&gt;set AppleScript's text item delimiters to delimiter2&lt;br /&gt;set jsonValues to text items of jsonValue&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of jsonValues) &gt; 1 then&lt;br /&gt;return decodeHTML(decodeURL(item 1 of jsonValues as Unicode text))&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;return ""&lt;br /&gt;end parseJson&lt;br /&gt;&lt;br /&gt;on trimCharacters(textString, trimCharacter)&lt;br /&gt;repeat until textString does not start with trimCharacter&lt;br /&gt;set textString to text 2 thru -1 of textString&lt;br /&gt;end repeat&lt;br /&gt;repeat until textString does not end with trimCharacter&lt;br /&gt;set textString to text 1 thru -2 of textString&lt;br /&gt;end repeat&lt;br /&gt;return textString&lt;br /&gt;end trimCharacters&lt;br /&gt;&lt;br /&gt;on replaceCharacters(textString, searchString, replacementString)&lt;br /&gt;set AppleScript's text item delimiters to the searchString&lt;br /&gt;set the itemList to every text item of textString&lt;br /&gt;set AppleScript's text item delimiters to the replacementString&lt;br /&gt;set textString to the itemList as string&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;return textString&lt;br /&gt;end replaceCharacters&lt;br /&gt;&lt;br /&gt;on encodeText(textString, encode_URL_A, encode_URL_B)&lt;br /&gt;set the standardCharacters to "abcdefghijklmnopqrstuvwxyz0123456789"&lt;br /&gt;set the URL_A_chars to "$+!'/?;&amp;@=#%&gt;&lt;{}[]\"~`^\\|*" set the URL_B_chars to ".-_:" set the acceptableCharacters to the standardCharacters if encode_URL_A is false then set the acceptableCharacters to the acceptableCharacters &amp; the URL_A_chars if encode_URL_B is false then set the acceptableCharacters to the acceptableCharacters &amp; the URL_B_chars set the encodedText to "" repeat with charString in textString  if charString is in the acceptableCharacters then   set the encodedText to (the encodedText &amp; charString) as string  else   set the encodedText to (the encodedText &amp; encodeCharacter(charString)) as string  end if end repeat return the encodedTextend encodeTexton encodeCharacter(charString) set the ASCII_num to (the ASCII number charString) set the hex_list to {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"} set x to item ((ASCII_num div 16) + 1) of the hex_list set y to item ((ASCII_num mod 16) + 1) of the hex_list return ("%" &amp; x &amp; y) as stringend encodeCharacteron decodeCharacters(charString) copy charString to {indentifying_char, multiplier_char, remainder_char} set the hexList to "123456789ABCDEF" if the multiplier_char is in "ABCDEF" then  set the multiplier_amt to the offset of the multiplier_char in the hexList else  set the multiplier_amt to the multiplier_char as integer end if if the remainder_char is in "ABCDEF" then  set the remainder_amt to the offset of the remainder_char in the hexList else  set the remainder_amt to the remainder_char as integer end if set the ASCII_num to (multiplier_amt * 16) + remainder_amt return (ASCII character ASCII_num)end decodeCharacterson decodeURL(textString) set flag_A to false set flag_B to false set temp_char to "" set the characterList to {} repeat with charString in textString  set charString to contents of charString  if charString is "%" then   set flag_A to true  else if flag_A is true then   set the temp_char to charString   set flag_A to false   set flag_B to true  else if flag_B is true then   set the end of characterList to my decodeCharacters(("%" &amp; temp_char &amp; charString) as string)   set the temp_char to ""   set flag_A to false   set flag_B to false  else   set the end of characterList to charString  end if end repeat return characterList as stringend decodeURLon decodeHTML(textString) repeat with entities in {{"\\u0026", "&amp;"}, ¬  {"&amp;#32;", " "}, {"&amp;#33;", "!"}, {"&amp;#34;", "\""}, {"&amp;#35;", "#"}, {"&amp;#36;", "$"}, ¬  {"&amp;#37;", "%"}, {"&amp;#38;", "&amp;"}, {"&amp;#39;", "'"}, {"&amp;#40;", "("}, {"&amp;#41;", ")"}, ¬  {"&amp;#42;", "*"}, {"&amp;#43;", "+"}, {"&amp;#44;", ","}, {"&amp;#45;", "-"}, {"&amp;#46;", "."}, ¬  {"&amp;#47;", "/"}, {"&amp;#58;", ":"}, {"&amp;#59;", ";"}, {"&amp;#60;", "&lt;"}, {"&amp;#61;", "="}, ¬  {"&amp;#62;", "&gt;"}, {"&amp;#63;", "?"}, {"&amp;#64;", "@"}, {"&amp;#91;", "["}, {"&amp;#92;", "\\"}, ¬&lt;br /&gt;{"&amp;#93;", "]"}, {"&amp;#94;", "^"}, {"&amp;#95;", "_"}, {"&amp;#96;", "`"}, {"&amp;#123;", "{"}, ¬&lt;br /&gt;{"&amp;#124;", "|"}, {"&amp;#125;", "}"}, {"&amp;#126;", "~"}, {"&amp;#160;", " "}, {"&amp;#161;", "¡"}, ¬&lt;br /&gt;{"&amp;#162;", "¢"}, {"&amp;#163;", "£"}, {"&amp;#164;", "¤"}, {"&amp;#165;", "¥"}, {"&amp;#166;", "¦"}, ¬&lt;br /&gt;{"&amp;#167;", "§"}, {"&amp;#168;", "¨"}, {"&amp;#169;", "©"}, {"&amp;#170;", "ª"}, {"&amp;#171;", "«"}, ¬&lt;br /&gt;{"&amp;#174;", "®"}, {"&amp;#175;", "¯"}, {"&amp;#176;", "°"}, {"&amp;#177;", "±"}, {"&amp;#178;", "²"}, ¬&lt;br /&gt;{"&amp;#179;", "³"}, {"&amp;#180", "´"}, {"&amp;#181;", "µ"}, {"&amp;#182;", "¶"}, {"&amp;#183;", "·"}, ¬&lt;br /&gt;{"&amp;#184;", "¸"}, {"&amp;#185;", "¹"}, {"&amp;#186;", "º"}, {"&amp;#187;", "»"}, {"&amp;#188;", "¼"}, ¬&lt;br /&gt;{"&amp;#189;", "½"}, {"&amp;#190;", "¾"}, {"&amp;#191;", "¿"}, {"&amp;#192;", "À"}, {"&amp;#193;", "Á"}, ¬&lt;br /&gt;{"&amp;#194;", "Â"}, {"&amp;#195;", "Ã"}, {"&amp;#196;", "Ä"}, {"&amp;#197;", "Å"}, {"&amp;#198;", "Æ"}, ¬&lt;br /&gt;{"&amp;#199;", "Ç"}, {"&amp;#200;", "È"}, {"&amp;#201;", "É"}, {"&amp;#202;", "Ê"}, {"&amp;#203;", "Ë"}, ¬&lt;br /&gt;{"&amp;#204;", "Ì"}, {"&amp;#205;", "Í"}, {"&amp;#206;", "Î"}, {"&amp;#207;", "Ï"}, {"&amp;#208;", "Ð"}, ¬&lt;br /&gt;{"&amp;#209;", "Ñ"}, {"&amp;#210;", "Ò"}, {"&amp;#211;", "Ó"}, {"&amp;#212;", "Ô"}, {"&amp;#213;", "Õ"}, ¬&lt;br /&gt;{"&amp;#214;", "Ö"}, {"&amp;#215;", "×"}, {"&amp;#216;", "Ø"}, {"&amp;#217;", "Ù"}, {"&amp;#218;", "Ú"}, ¬&lt;br /&gt;{"&amp;#219;", "Û"}, {"&amp;#220;", "Ü"}, {"&amp;#221;", "Ý"}, {"&amp;#222;", "Þ"}, {"&amp;#223;", "ß"}, ¬&lt;br /&gt;{"&amp;#224;", "à"}, {"&amp;#225;", "á"}, {"&amp;#226;", "â"}, {"&amp;#227;", "ã"}, {"&amp;#228;", "ä"}, ¬&lt;br /&gt;{"&amp;#229;", "å"}, {"&amp;#230", "æ"}, {"&amp;#231;", "ç"}, {"&amp;#232;", "è"}, {"&amp;#233;", "é"}, ¬&lt;br /&gt;{"&amp;#234;", "ê"}, {"&amp;#235;", "ë"}, {"&amp;#236;", "ì"}, {"&amp;#237;", "í"}, {"&amp;#238;", "î"}, ¬&lt;br /&gt;{"&amp;#239;", "ï"}, {"&amp;#240;", "ð"}, {"&amp;#241;", "ñ"}, {"&amp;#242;", "ò"}, {"&amp;#243;", "ó"}, ¬&lt;br /&gt;{"&amp;#244;", "ô"}, {"&amp;#245;", "õ"}, {"&amp;#246;", "ö"}, {"&amp;#247;", "÷"}, {"&amp;#248;", "ø"}, ¬&lt;br /&gt;{"&amp;#249;", "ù"}, {"&amp;#250;", "ú"}, {"&amp;#251;", "û"}, {"&amp;#252;", "ü"}, {"&amp;#253;", "ý"}, ¬&lt;br /&gt;{"&amp;#254;", "þ"}, {"&amp;#255;", "ÿ"}, {"&amp;#338;", "Œ"}, {"&amp;#339;", "œ"}, {"&amp;#352;", "Š"}, ¬&lt;br /&gt;{"&amp;#353;", "š"}, {"&amp;#376;", "Ÿ"}, {"&amp;#402;", "ƒ"}, {"&amp;#8211;", "–"}, {"&amp;#8212;", "—"}, ¬&lt;br /&gt;{"&amp;#8216;", "‘"}, {"&amp;#8217;", "’"}, {"&amp;#8218;", "‚"}, {"&amp;#8220;", "“"}, {"&amp;#8221;", "”"}, ¬&lt;br /&gt;{"&amp;#8222;", "„"}, {"&amp;#8224;", "†"}, {"&amp;#8225;", "‡"}, {"&amp;#8226;", "•"}, {"&amp;#8230;", "…"}, ¬&lt;br /&gt;{"&amp;#8240;", "‰"}, {"&amp;#8364;", "€"}, {"&amp;#8482;", "™"}}&lt;br /&gt;set textString to replaceCharacters(textString, item 1 of entities, item 2 of entities)&lt;br /&gt;end repeat&lt;br /&gt;return textString as string&lt;br /&gt;end decodeHTML&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;You can download the updated Applescript at &lt;a href="http://dl.dropbox.com/u/9326/TranslateiOS.scpt"&gt;TranslateiOS.scpt&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3608533288878327836?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3608533288878327836/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3608533288878327836' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3608533288878327836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3608533288878327836'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2011/06/applescript-to-exportimport-ios.html' title='Applescript To Export And Import iOS Projects To CSV'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-6192102858475635161</id><published>2011-05-27T04:18:00.001-03:00</published><updated>2011-05-27T05:59:24.105-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='ios'/><title type='text'>Applescript To Google Translate iOS Projects</title><content type='html'>Translating your iOS projects can often be a painful process, so I wrote a little Applescript to help me translate the &lt;a href="https://github.com/ushahidi/ushahidi_iphone"&gt;Ushahidi iOS app&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;The script extracts phrases from your project with &lt;i&gt;genstrings&lt;/i&gt; and NIB files with &lt;i&gt;ibtool&lt;/i&gt;, calls the Google Translate service for each phrase, writes the translated text to file and then re-imports those phrases back into NIB files in the target language folder.&lt;br /&gt;&lt;code style="font-size:smaller"&gt;&lt;br /&gt;translateProject(choose folder with prompt "Select Project Source Folder", ¬&lt;br /&gt;choose folder with prompt "Select Localization Destination Folder", ¬&lt;br /&gt;display dialog "Enter Destination Language Code" default answer "")&lt;br /&gt;&lt;br /&gt;on translateProject(projectFolder, localizationFolder, languageCodeDialog)&lt;br /&gt;set languageCode to languageCodeDialog's text returned&lt;br /&gt;if length of languageCode is equal to 0 then&lt;br /&gt;display dialog "Language Code Required"&lt;br /&gt;else&lt;br /&gt;set englishFolder to createFolder(localizationFolder, "en.lproj")&lt;br /&gt;&lt;br /&gt;do shell script "find " &amp; quoted form of (POSIX path of projectFolder) &amp; " -name '*.m' " &amp; ¬&lt;br /&gt;" | xargs genstrings -o " &amp; quoted form of (POSIX path of localizationFolder &amp; "en.lproj")&lt;br /&gt;&lt;br /&gt;set nibFiles to filesWithExtension(projectFolder, ".xib")&lt;br /&gt;repeat with nibFile in nibFiles&lt;br /&gt;set nibFile to parseNib(nibFile, englishFolder)&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;set languageFolder to createFolder(localizationFolder, (languageCode &amp; ".lproj"))&lt;br /&gt;&lt;br /&gt;repeat with englishFile in filesWithExtension(englishFolder, ".strings")&lt;br /&gt;set languageFileName to getFileName(englishFile)&lt;br /&gt;&lt;br /&gt;set languageFilePath to (languageFolder as text) &amp; languageFileName as text&lt;br /&gt;if fileExists(languageFilePath) is false then&lt;br /&gt;set languageFile to writeFile(languageFolder, languageFileName, "", false)&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;set fileLines to paragraphs of readFile(englishFolder, languageFileName)&lt;br /&gt;repeat with fileLine in fileLines&lt;br /&gt;if length of fileLine is greater than 0 then&lt;br /&gt;set englishKey to parseKey(fileLine)&lt;br /&gt;set englishText to parseValue(fileLine)&lt;br /&gt;&lt;br /&gt;if length of englishText is greater than 0 then&lt;br /&gt;if fileContainsText(languageFolder, languageFileName, "\"" &amp; englishKey &amp; "\" = ") is false then&lt;br /&gt;set encodedText to encodeText(englishText, true, true)&lt;br /&gt;&lt;br /&gt;set responseText to googleTranslate(encodedText, languageCode)&lt;br /&gt;set translatedText to parseJson(responseText, "translatedText")&lt;br /&gt;&lt;br /&gt;repeat until length of translatedText is greater than 0&lt;br /&gt;set errorMessage to parseJson(responseText, "responseDetails")&lt;br /&gt;if length of errorMessage is greater than 0 then&lt;br /&gt;display dialog "Oops!" &amp; space &amp; errorMessage &amp; space &amp; "(Wait a few minutes, then click OK to continue)"&lt;br /&gt;else&lt;br /&gt;display dialog "Oops!" &amp; space &amp; responseText &amp; space &amp; "(Wait a few minutes, then click OK to continue)"&lt;br /&gt;end if&lt;br /&gt;&lt;br /&gt;set responseText to googleTranslate(encodedText, languageCode)&lt;br /&gt;set translatedText to parseJson(responseText, "translatedText")&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;set translatedLine to "\"" &amp; englishKey &amp; "\" = \"" &amp; (translatedText as Unicode text) &amp; "\";" as Unicode text&lt;br /&gt;writeFile(languageFolder, languageFileName, translatedLine &amp; return, true)&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;repeat with nibFile in nibFiles&lt;br /&gt;importNib(nibFile, languageFolder)&lt;br /&gt;end repeat&lt;br /&gt;&lt;br /&gt;display dialog "Translation Complete"&lt;br /&gt;end if&lt;br /&gt;end translateProject&lt;br /&gt;&lt;br /&gt;on parseNib(filePath, targetFolder)&lt;br /&gt;set fileName to getFileName(filePath)&lt;br /&gt;set fileNameWithoutExtension to replaceCharacters(fileName, ".xib", "")&lt;br /&gt;set stringsPath to POSIX path of targetFolder &amp; fileNameWithoutExtension &amp; ".strings"&lt;br /&gt;set sourceNib to POSIX path of filePath&lt;br /&gt;do shell script "ibtool --export-strings-file" &amp; space &amp; ¬&lt;br /&gt;quoted form of stringsPath &amp; space &amp; ¬&lt;br /&gt;quoted form of sourceNib&lt;br /&gt;return stringsPath&lt;br /&gt;end parseNib&lt;br /&gt;&lt;br /&gt;on importNib(filePath, targetFolder)&lt;br /&gt;if fileExists(filePath) then&lt;br /&gt;set fileName to getFileName(filePath)&lt;br /&gt;set fileNameWithoutExtension to replaceCharacters(fileName, ".xib", "")&lt;br /&gt;set stringsPath to POSIX path of targetFolder &amp; fileNameWithoutExtension &amp; ".strings"&lt;br /&gt;set targetNib to POSIX path of targetFolder &amp; fileName&lt;br /&gt;set sourceNib to POSIX path of filePath&lt;br /&gt;do shell script "ibtool --strings-file" &amp; space &amp; ¬&lt;br /&gt;quoted form of stringsPath &amp; space &amp; "--write" &amp; space &amp; ¬&lt;br /&gt;quoted form of targetNib &amp; space &amp; ¬&lt;br /&gt;quoted form of sourceNib&lt;br /&gt;end if&lt;br /&gt;end importNib&lt;br /&gt;&lt;br /&gt;on getFileName(filePath)&lt;br /&gt;set {name:fileName} to info for file filePath without size&lt;br /&gt;return fileName&lt;br /&gt;end getFileName&lt;br /&gt;&lt;br /&gt;on filesWithExtension(fileFolder, fileExtension)&lt;br /&gt;set fileList to {}&lt;br /&gt;tell application "Finder"&lt;br /&gt;set filePaths to every file of entire contents of folder fileFolder as list&lt;br /&gt;repeat with filePath in filePaths&lt;br /&gt;if (filePath as text) ends with fileExtension then&lt;br /&gt;set end of fileList to filePath as text&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;end tell&lt;br /&gt;return fileList&lt;br /&gt;end filesWithExtension&lt;br /&gt;&lt;br /&gt;on fileContainsText(fileFolder, fileName, textString)&lt;br /&gt;set fileLines to paragraphs of readFile(fileFolder, fileName)&lt;br /&gt;repeat with fileLine in fileLines&lt;br /&gt;if textString is in fileLine then&lt;br /&gt;return true&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;return false&lt;br /&gt;end fileContainsText&lt;br /&gt;&lt;br /&gt;on createFolder(parentFolder, folderName)&lt;br /&gt;tell application "Finder"&lt;br /&gt;if not (exists folder folderName of parentFolder) then&lt;br /&gt;make new folder at parentFolder with properties {name:folderName}&lt;br /&gt;end if&lt;br /&gt;return folder folderName of parentFolder as text&lt;br /&gt;end tell&lt;br /&gt;end createFolder&lt;br /&gt;&lt;br /&gt;on writeFile(fileFolder, fileName, textString, shouldAppend)&lt;br /&gt;tell application "Finder"&lt;br /&gt;set filePath to (fileFolder as text) &amp; fileName as text&lt;br /&gt;try&lt;br /&gt;set fileAccess to open for access file filePath with write permission&lt;br /&gt;if shouldAppend is false then&lt;br /&gt;set eof of fileAccess to 0&lt;br /&gt;write (ASCII character 254) &amp; (ASCII character 255) to fileAccess starting at eof -- UTF-16 BOM&lt;br /&gt;else&lt;br /&gt;set fileDoesExist to exists file filePath&lt;br /&gt;if fileDoesExist is false then&lt;br /&gt;set eof of fileAccess to 0&lt;br /&gt;write (ASCII character 254) &amp; (ASCII character 255) to fileAccess starting at eof -- UTF-16 BOM&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;write textString to fileAccess starting at eof as Unicode text&lt;br /&gt;close access fileAccess&lt;br /&gt;on error&lt;br /&gt;try&lt;br /&gt;close access file filePath&lt;br /&gt;end try&lt;br /&gt;end try&lt;br /&gt;return filePath as text&lt;br /&gt;end tell&lt;br /&gt;end writeFile&lt;br /&gt;&lt;br /&gt;on readFile(fileFolder, fileName)&lt;br /&gt;tell application "Finder"&lt;br /&gt;set filePath to (fileFolder as text) &amp; fileName as text&lt;br /&gt;try&lt;br /&gt;set fileAccess to open for access file filePath&lt;br /&gt;set textContents to read fileAccess as Unicode text&lt;br /&gt;close access fileAccess&lt;br /&gt;return textContents&lt;br /&gt;on error&lt;br /&gt;try&lt;br /&gt;close access file filePath&lt;br /&gt;end try&lt;br /&gt;end try&lt;br /&gt;return ""&lt;br /&gt;end tell&lt;br /&gt;end readFile&lt;br /&gt;&lt;br /&gt;on fileExists(filePath)&lt;br /&gt;tell application "Finder"&lt;br /&gt;try&lt;br /&gt;if exists file filePath then&lt;br /&gt;return true&lt;br /&gt;else&lt;br /&gt;return false&lt;br /&gt;end if&lt;br /&gt;on error&lt;br /&gt;return false&lt;br /&gt;end try&lt;br /&gt;end tell&lt;br /&gt;return false&lt;br /&gt;end fileExists&lt;br /&gt;&lt;br /&gt;on googleTranslate(textString, codeString)&lt;br /&gt;return do shell script "/usr/bin/curl" &amp; space &amp; ¬&lt;br /&gt;"'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&amp;langpair=en|" &amp; codeString &amp; "&amp;q=" &amp; quoted form of textString &amp; "'"&lt;br /&gt;end googleTranslate&lt;br /&gt;&lt;br /&gt;on parseKey(textString)&lt;br /&gt;if (textString does not start with "/*") then&lt;br /&gt;set AppleScript's text item delimiters to "="&lt;br /&gt;set textItems to text items of textString&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textItems) &gt; 1 then&lt;br /&gt;set textItem to item 1 of textItems&lt;br /&gt;&lt;br /&gt;set AppleScript's text item delimiters to "\""&lt;br /&gt;set textValue to text items of textItem&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textValue) &gt; 1 then&lt;br /&gt;return trimCharacters((item 2 of textValue), "\"") as Unicode text&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;return ""&lt;br /&gt;end parseKey&lt;br /&gt;&lt;br /&gt;on parseValue(textString)&lt;br /&gt;if (textString does not start with "/*") then&lt;br /&gt;set AppleScript's text item delimiters to "="&lt;br /&gt;set textItems to text items of textString&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textItems) &gt; 1 then&lt;br /&gt;set textItem to item 2 of textItems&lt;br /&gt;&lt;br /&gt;set AppleScript's text item delimiters to "\""&lt;br /&gt;set textValue to text items of textItem&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of textValue) &gt; 1 then&lt;br /&gt;set valueString to trimCharacters((item 2 of textValue), ";")&lt;br /&gt;set valueString to trimCharacters(valueString, "\"")&lt;br /&gt;return valueString as Unicode text&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;end if&lt;br /&gt;return ""&lt;br /&gt;end parseValue&lt;br /&gt;&lt;br /&gt;on parseJson(jsonString, jsonElement)&lt;br /&gt;repeat with delimiter1 in {"\":\"", "\": \""}&lt;br /&gt;set AppleScript's text item delimiters to "\"" &amp; jsonElement &amp; delimiter1&lt;br /&gt;set jsonItems to text items of jsonString&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of jsonItems) &gt; 1 then&lt;br /&gt;set jsonValue to item 2 of jsonItems&lt;br /&gt;&lt;br /&gt;repeat with delimiter2 in {"\"}", "\","}&lt;br /&gt;set AppleScript's text item delimiters to delimiter2&lt;br /&gt;set jsonValues to text items of jsonValue&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;&lt;br /&gt;if (count of jsonValues) &gt; 1 then&lt;br /&gt;return decodeHTML(decodeURL(item 1 of jsonValues as Unicode text))&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;end if&lt;br /&gt;end repeat&lt;br /&gt;return ""&lt;br /&gt;end parseJson&lt;br /&gt;&lt;br /&gt;on trimCharacters(textString, trimCharacter)&lt;br /&gt;repeat until textString does not start with trimCharacter&lt;br /&gt;set textString to text 2 thru -1 of textString&lt;br /&gt;end repeat&lt;br /&gt;repeat until textString does not end with trimCharacter&lt;br /&gt;set textString to text 1 thru -2 of textString&lt;br /&gt;end repeat&lt;br /&gt;return textString&lt;br /&gt;end trimCharacters&lt;br /&gt;&lt;br /&gt;on replaceCharacters(textString, searchString, replacementString)&lt;br /&gt;set AppleScript's text item delimiters to the searchString&lt;br /&gt;set the itemList to every text item of textString&lt;br /&gt;set AppleScript's text item delimiters to the replacementString&lt;br /&gt;set textString to the itemList as string&lt;br /&gt;set AppleScript's text item delimiters to ""&lt;br /&gt;return textString&lt;br /&gt;end replaceCharacters&lt;br /&gt;&lt;br /&gt;on encodeText(textString, encode_URL_A, encode_URL_B)&lt;br /&gt;set the standardCharacters to "abcdefghijklmnopqrstuvwxyz0123456789"&lt;br /&gt;set the URL_A_chars to "$+!'/?;&amp;@=#%&gt;&lt;{}[]\"~`^\\|*" set the URL_B_chars to ".-_:" set the acceptableCharacters to the standardCharacters if encode_URL_A is false then set the acceptableCharacters to the acceptableCharacters &amp; the URL_A_chars if encode_URL_B is false then set the acceptableCharacters to the acceptableCharacters &amp; the URL_B_chars set the encodedText to "" repeat with charString in textString  if charString is in the acceptableCharacters then   set the encodedText to (the encodedText &amp; charString) as string  else   set the encodedText to (the encodedText &amp; encodeCharacter(charString)) as string  end if end repeat return the encodedTextend encodeTexton encodeCharacter(charString) set the ASCII_num to (the ASCII number charString) set the hex_list to {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"} set x to item ((ASCII_num div 16) + 1) of the hex_list set y to item ((ASCII_num mod 16) + 1) of the hex_list return ("%" &amp; x &amp; y) as stringend encodeCharacteron decodeCharacters(charString) copy charString to {indentifying_char, multiplier_char, remainder_char} set the hexList to "123456789ABCDEF" if the multiplier_char is in "ABCDEF" then  set the multiplier_amt to the offset of the multiplier_char in the hexList else  set the multiplier_amt to the multiplier_char as integer end if if the remainder_char is in "ABCDEF" then  set the remainder_amt to the offset of the remainder_char in the hexList else  set the remainder_amt to the remainder_char as integer end if set the ASCII_num to (multiplier_amt * 16) + remainder_amt return (ASCII character ASCII_num)end decodeCharacterson decodeURL(textString) set flag_A to false set flag_B to false set temp_char to "" set the characterList to {} repeat with charString in textString  set charString to contents of charString  if charString is "%" then   set flag_A to true  else if flag_A is true then   set the temp_char to charString   set flag_A to false   set flag_B to true  else if flag_B is true then   set the end of characterList to my decodeCharacters(("%" &amp; temp_char &amp; charString) as string)   set the temp_char to ""   set flag_A to false   set flag_B to false  else   set the end of characterList to charString  end if end repeat return characterList as stringend decodeURLon decodeHTML(textString) repeat with entities in {{"\\u0026", "&amp;"}, ¬  {"&amp;#32;", " "}, {"&amp;#33;", "!"}, {"&amp;#34;", "\""}, {"&amp;#35;", "#"}, {"&amp;#36;", "$"}, ¬  {"&amp;#37;", "%"}, {"&amp;#38;", "&amp;"}, {"&amp;#39;", "'"}, {"&amp;#40;", "("}, {"&amp;#41;", ")"}, ¬  {"&amp;#42;", "*"}, {"&amp;#43;", "+"}, {"&amp;#44;", ","}, {"&amp;#45;", "-"}, {"&amp;#46;", "."}, ¬  {"&amp;#47;", "/"}, {"&amp;#58;", ":"}, {"&amp;#59;", ";"}, {"&amp;#60;", "&lt;"}, {"&amp;#61;", "="}, ¬  {"&amp;#62;", "&gt;"}, {"&amp;#63;", "?"}, {"&amp;#64;", "@"}, {"&amp;#91;", "["}, {"&amp;#92;", "\\"}, ¬&lt;br /&gt;{"&amp;#93;", "]"}, {"&amp;#94;", "^"}, {"&amp;#95;", "_"}, {"&amp;#96;", "`"}, {"&amp;#123;", "{"}, ¬&lt;br /&gt;{"&amp;#124;", "|"}, {"&amp;#125;", "}"}, {"&amp;#126;", "~"}, {"&amp;#160;", " "}, {"&amp;#161;", "¡"}, ¬&lt;br /&gt;{"&amp;#162;", "¢"}, {"&amp;#163;", "£"}, {"&amp;#164;", "¤"}, {"&amp;#165;", "¥"}, {"&amp;#166;", "¦"}, ¬&lt;br /&gt;{"&amp;#167;", "§"}, {"&amp;#168;", "¨"}, {"&amp;#169;", "©"}, {"&amp;#170;", "ª"}, {"&amp;#171;", "«"}, ¬&lt;br /&gt;{"&amp;#174;", "®"}, {"&amp;#175;", "¯"}, {"&amp;#176;", "°"}, {"&amp;#177;", "±"}, {"&amp;#178;", "²"}, ¬&lt;br /&gt;{"&amp;#179;", "³"}, {"&amp;#180", "´"}, {"&amp;#181;", "µ"}, {"&amp;#182;", "¶"}, {"&amp;#183;", "·"}, ¬&lt;br /&gt;{"&amp;#184;", "¸"}, {"&amp;#185;", "¹"}, {"&amp;#186;", "º"}, {"&amp;#187;", "»"}, {"&amp;#188;", "¼"}, ¬&lt;br /&gt;{"&amp;#189;", "½"}, {"&amp;#190;", "¾"}, {"&amp;#191;", "¿"}, {"&amp;#192;", "À"}, {"&amp;#193;", "Á"}, ¬&lt;br /&gt;{"&amp;#194;", "Â"}, {"&amp;#195;", "Ã"}, {"&amp;#196;", "Ä"}, {"&amp;#197;", "Å"}, {"&amp;#198;", "Æ"}, ¬&lt;br /&gt;{"&amp;#199;", "Ç"}, {"&amp;#200;", "È"}, {"&amp;#201;", "É"}, {"&amp;#202;", "Ê"}, {"&amp;#203;", "Ë"}, ¬&lt;br /&gt;{"&amp;#204;", "Ì"}, {"&amp;#205;", "Í"}, {"&amp;#206;", "Î"}, {"&amp;#207;", "Ï"}, {"&amp;#208;", "Ð"}, ¬&lt;br /&gt;{"&amp;#209;", "Ñ"}, {"&amp;#210;", "Ò"}, {"&amp;#211;", "Ó"}, {"&amp;#212;", "Ô"}, {"&amp;#213;", "Õ"}, ¬&lt;br /&gt;{"&amp;#214;", "Ö"}, {"&amp;#215;", "×"}, {"&amp;#216;", "Ø"}, {"&amp;#217;", "Ù"}, {"&amp;#218;", "Ú"}, ¬&lt;br /&gt;{"&amp;#219;", "Û"}, {"&amp;#220;", "Ü"}, {"&amp;#221;", "Ý"}, {"&amp;#222;", "Þ"}, {"&amp;#223;", "ß"}, ¬&lt;br /&gt;{"&amp;#224;", "à"}, {"&amp;#225;", "á"}, {"&amp;#226;", "â"}, {"&amp;#227;", "ã"}, {"&amp;#228;", "ä"}, ¬&lt;br /&gt;{"&amp;#229;", "å"}, {"&amp;#230", "æ"}, {"&amp;#231;", "ç"}, {"&amp;#232;", "è"}, {"&amp;#233;", "é"}, ¬&lt;br /&gt;{"&amp;#234;", "ê"}, {"&amp;#235;", "ë"}, {"&amp;#236;", "ì"}, {"&amp;#237;", "í"}, {"&amp;#238;", "î"}, ¬&lt;br /&gt;{"&amp;#239;", "ï"}, {"&amp;#240;", "ð"}, {"&amp;#241;", "ñ"}, {"&amp;#242;", "ò"}, {"&amp;#243;", "ó"}, ¬&lt;br /&gt;{"&amp;#244;", "ô"}, {"&amp;#245;", "õ"}, {"&amp;#246;", "ö"}, {"&amp;#247;", "÷"}, {"&amp;#248;", "ø"}, ¬&lt;br /&gt;{"&amp;#249;", "ù"}, {"&amp;#250;", "ú"}, {"&amp;#251;", "û"}, {"&amp;#252;", "ü"}, {"&amp;#253;", "ý"}, ¬&lt;br /&gt;{"&amp;#254;", "þ"}, {"&amp;#255;", "ÿ"}, {"&amp;#338;", "Œ"}, {"&amp;#339;", "œ"}, {"&amp;#352;", "Š"}, ¬&lt;br /&gt;{"&amp;#353;", "š"}, {"&amp;#376;", "Ÿ"}, {"&amp;#402;", "ƒ"}, {"&amp;#8211;", "–"}, {"&amp;#8212;", "—"}, ¬&lt;br /&gt;{"&amp;#8216;", "‘"}, {"&amp;#8217;", "’"}, {"&amp;#8218;", "‚"}, {"&amp;#8220;", "“"}, {"&amp;#8221;", "”"}, ¬&lt;br /&gt;{"&amp;#8222;", "„"}, {"&amp;#8224;", "†"}, {"&amp;#8225;", "‡"}, {"&amp;#8226;", "•"}, {"&amp;#8230;", "…"}, ¬&lt;br /&gt;{"&amp;#8240;", "‰"}, {"&amp;#8364;", "€"}, {"&amp;#8482;", "™"}}&lt;br /&gt;set textString to replaceCharacters(textString, item 1 of entities, item 2 of entities)&lt;br /&gt;end repeat&lt;br /&gt;return textString as string&lt;br /&gt;end decodeHTML&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;The script is still a work in progress, so any feedback is gladly welcome. You can download the Applescript at &lt;a href="http://dl.dropbox.com/u/9326/Translate.scpt"&gt;Translate.scpt&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-6192102858475635161?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/6192102858475635161/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=6192102858475635161' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6192102858475635161'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6192102858475635161'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2011/05/applescript-to-google-translate-ios.html' title='Applescript To Google Translate iOS Projects'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3650856348711832553</id><published>2011-04-29T16:09:00.022-03:00</published><updated>2011-04-29T16:50:09.648-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='design'/><title type='text'>Logo Design</title><content type='html'>I'm currently in search for a logo for a new project I'm launching called &lt;a href="http://www.repurposedlabs.ca"&gt;Repurposed Labs&lt;/a&gt;, giving a new purpose to old computers. During this process, I've also come to realize the brilliance behind a well designed logo. I've always loved the simple yet meaningful design of &lt;a href="http://www.frontlinesms.com"&gt;FrontlineSMS&lt;/a&gt;, &lt;a href="http://hopephones.org/"&gt;HopePhones&lt;/a&gt;, &lt;a href="http://mobileactive.org"&gt;MobileActive&lt;/a&gt;, &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt;, &lt;a href="http://sigeneration.ca/"&gt;SiGeneration&lt;/a&gt; and &lt;a href="http://swift.ushahidi.com"&gt;SwiftRiver&lt;/a&gt;.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-JyvY8iqKZks/TbsPgTeM9zI/AAAAAAAAsU8/UJuYBJNmXws/s1600/frontinesms-logo.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" width="350" src="http://3.bp.blogspot.com/-JyvY8iqKZks/TbsPgTeM9zI/AAAAAAAAsU8/UJuYBJNmXws/s400/frontinesms-logo.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://www.frontlinesms.com"&gt;FrontlineSMS&lt;/a&gt;, is open source software that uses SMS to empower it's users. Their logo is a speech bubble out of the word SMS, with ascii characters \0/ inside which represents &lt;a href="http://www.kiwanja.net/blog/wp-content/uploads/2010/05/FrontlineSMS-Icons.jpg"&gt;raising your arms up in victory&lt;/a&gt;. The brilliance behind the logo is apparent in the sister projects, &lt;a href="http://medic.frontlinesms.com/"&gt;FrontlineSMS:Medic&lt;/a&gt; \+/, &lt;a href="http://credit.frontlinesms.com/"&gt;FrontlineSMS:Credit&lt;/a&gt; \$/, &lt;a href="http://legal.frontlinesms.com/"&gt;FrontlineSMS:Legal&lt;/a&gt; \=/, &lt;a href="http://learn.frontlinesms.com/"&gt;FrontlineSMS:Learn&lt;/a&gt; \?/ and &lt;a href="http://radio.frontlinesms.com/"&gt;FrontlineSMS:Radio&lt;/a&gt; \~/ which reuse the logo but change the message inside.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-BT2bQslDQCk/TbsPlWQb-kI/AAAAAAAAsVE/tCpg1-gCHT8/s1600/hopephone-logo.png" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" width="350" src="http://2.bp.blogspot.com/-BT2bQslDQCk/TbsPlWQb-kI/AAAAAAAAsVE/tCpg1-gCHT8/s400/hopephone-logo.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://hopephones.org"&gt;HopePhones&lt;/a&gt;, is an initiative to collect used cell phones so they can be repurposed by community healthcare workers in developing countries. Each old phone donated can help save a life in a developing country, thus the angel wings on the phone in their logo.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-s67YI2datNM/TbsPqDdJr9I/AAAAAAAAsVM/mddJ6XygHBY/s1600/mobileactive-logo.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" width="350" src="http://3.bp.blogspot.com/-s67YI2datNM/TbsPqDdJr9I/AAAAAAAAsVM/mddJ6XygHBY/s400/mobileactive-logo.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://mobileactive.org"&gt;MobileActive&lt;/a&gt;, is a global network of people using mobile technology for social impact. Their new logo is pretty ingenius, could be interpreted as four people raising their arms in protest or four mobile devices with antennas.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Bh2YHG0MPYE/TbsPuzCWClI/AAAAAAAAsVU/yCrAnD-sYhw/s1600/ubunut-logo.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" width="350" src="http://3.bp.blogspot.com/-Bh2YHG0MPYE/TbsPuzCWClI/AAAAAAAAsVU/yCrAnD-sYhw/s400/ubunut-logo.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://www.ubuntu.com"&gt;Ubuntu&lt;/a&gt;, is an open source community that provides a free and easy-to-use operating system for the world. The word &lt;i&gt;'ubuntu'&lt;/i&gt; is a Southern African ethical ideology which means &lt;i&gt;'humanity towards others'&lt;/i&gt;. Their logo could be interpreted as six components fitting together or three people of different color united.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-5Gh9vOn4aAY/TbsQOWg4-JI/AAAAAAAAsVk/ioHfTCtpdYE/s1600/sig-logo.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" width="314" src="http://3.bp.blogspot.com/-5Gh9vOn4aAY/TbsQOWg4-JI/AAAAAAAAsVk/ioHfTCtpdYE/s400/sig-logo.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://sigeneration.ca"&gt;Social Innovation Generation (SiG)&lt;/a&gt; is a centre in Toronto whose goal is to use technology to solve serious social problems. Their logo looks like a dandelion flower with the seeds blowing in the wind, which matches their mission to help seed innovation.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-K-nl09CSHWM/TbsWDQmd-lI/AAAAAAAAsVs/9AhmUcp8rnU/s1600/swiftriver-logo.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="98" width="300" src="http://4.bp.blogspot.com/-K-nl09CSHWM/TbsWDQmd-lI/AAAAAAAAsVs/9AhmUcp8rnU/s400/swiftriver-logo.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="http://swift.ushahidi.com"&gt;SwiftRiver&lt;/a&gt; is an open source platform that helps users add context to realtime data. Their logo is one of my favorites; it naturally has a river shape, a visible letter 'S', as well as the thumbs up and thumbs down which is key functionality to the platform.&lt;br /&gt;&lt;br /&gt;So what are your favorite logos? How do their design capture the organization's mission?&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3650856348711832553?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3650856348711832553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3650856348711832553' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3650856348711832553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3650856348711832553'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2011/04/logo-design.html' title='Logo Design'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-JyvY8iqKZks/TbsPgTeM9zI/AAAAAAAAsU8/UJuYBJNmXws/s72-c/frontinesms-logo.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8589333245269435892</id><published>2011-04-03T16:52:00.003-03:00</published><updated>2011-04-03T17:10:24.139-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile web'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile apps'/><title type='text'>The Mobile Web vs Mobile App Debate</title><content type='html'>The mobile web vs mobile app debate has been ongoing. Some argue that the mobile web is the future, others are in favor of mobile apps.&lt;br /&gt;&lt;br /&gt;I personally find this debate somewhat tiresome, it's like asking; what's better, cars or trucks? The answer, they each serve a purpose.&lt;br /&gt;&lt;br /&gt;From a functionality perspective, although HTML5 has made great strides to support offline content with hooks for geo-location and camera capability, it's still tough to rival a well designed native mobile app. Take Google's Gmail mobile web version, it has set the bar as to what's possible via a mobile web browser. Would I choose it over Apple's native Mail app on the iPhone? Not likely, in fact I'm writing this blog post as I fly from Frankfurt to Madrid by emailing myself a draft using the Mail app on my iPhone. As for Amazon's mobile web version, it's a good example of a well designed mobile interface, clean and easy to read with expandable content. In this case, it serves my purpose for comparing book prices while I'm out shopping.&lt;br /&gt;&lt;br /&gt;From a company's perspective, with limited budget and time, you need to ask how you can best utilize your resources. If you want the widest reach and target the most potential users, perhaps mobile web is a good option. But again, that depends on what features you want to provide. Are you offering free or paid content? What is your target audience? How can you best deliver the desired functionality? &lt;br /&gt;&lt;br /&gt;From a user's perspective, I'd actually like to have both options. I appreciate Gmail's mobile web version if I'm checking my email on a friends phone, but still prefer the native Mail app on my own device. It's hard to ignore how easy the App Store has made searching for and installing both free and paid mobile apps. Although searching Google in a mobile web browser is also pretty easy, I don't have the luxury of reading user reviews or viewing screenshots of your search results. You're also left with the uncertainty whether the webpage you visit will be mobile friendly or not. Mobile Safari does offer a rich user experience, but I would still prefer a mobile friendly page over having to pinch and zoom, especially if the site has a lot of unnecessary graphics slowing the page load.&lt;br /&gt;&lt;br /&gt;Another option which is sort of the best of both worlds, is using a cross platform mobile framework like &lt;a href="http://www.appcelerator.com/products/titanium-mobile-application-development/"&gt;Titanium&lt;/a&gt;, &lt;a href="http://www.phonegap.com"&gt;PhoneGap&lt;/a&gt; or &lt;a href="http://rhomobile.com/products/rhodes/"&gt;RhoMobile&lt;/a&gt;. Develop one app and publish it to multiple mobile platforms. It however, is not a silver bullet. Do you want a consistent user experience across all platforms? Or do you want the user experience to be familiar with the target platform? It's an important question to ask. For a company, it would be easier to provide technical support for a consistent design. But for a user, do you really want your iPhone app to look like a scaled Blackberry app? Will the user say, &lt;i&gt;"wow I love how this app looks exactly the same on both my Blackberry and iPhone"&lt;/i&gt;? Or will they say, &lt;i&gt;"this app looks strange and feels different than all my other apps"&lt;/i&gt;? There are also risks with cross platform frameworks. One, its common for them to be behind the native OS development cycle, so you may not be able to support the newest OS features. Two, what happens if that cross platform framework discontinues development? It could mean your next version of the app is a rebuild from scratch.&lt;br /&gt;&lt;br /&gt;If you are just serving content, perhaps exposing the data in a consumable format may be enough. Even though every newspaper company is scrambling to release a mobile version of their site, I personally would rather read that content in my own RSS reader, rather than have a separate mobile app for the New York Times, Globe &amp; Mail and Huffington Post.&lt;br /&gt;&lt;br /&gt;So in the end, what's better, mobile web or mobile apps? &lt;i&gt;That depends ;)&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8589333245269435892?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8589333245269435892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8589333245269435892' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8589333245269435892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8589333245269435892'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2011/04/mobile-web-vs-mobile-app-debate.html' title='The Mobile Web vs Mobile App Debate'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8474352061033566036</id><published>2010-12-12T20:21:00.002-04:00</published><updated>2010-12-12T20:22:44.923-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Smartphone Comparison Chart</title><content type='html'>Smartphone compartion chart for the iPhone, Android, Blackberry and Palm.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k2sK8LXxLSU/TQVmrtpmyoI/AAAAAAAAr7c/zQkUGQ1jbXo/s1600/smartphone_stats_v2.0.jpg" imageanchor="1" style="margin-left:1em; margin-right:1em"&gt;&lt;img border="0" height="400" width="390" src="http://4.bp.blogspot.com/_k2sK8LXxLSU/TQVmrtpmyoI/AAAAAAAAr7c/zQkUGQ1jbXo/s400/smartphone_stats_v2.0.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://cache.gawkerassets.com/assets/images/17/2010/06/smartphone_stats_v2.0.jpg"&gt;Original Image Source&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8474352061033566036?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8474352061033566036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8474352061033566036' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8474352061033566036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8474352061033566036'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2010/12/smartphone-comparison-chart.html' title='Smartphone Comparison Chart'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_k2sK8LXxLSU/TQVmrtpmyoI/AAAAAAAAr7c/zQkUGQ1jbXo/s72-c/smartphone_stats_v2.0.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3908186511055661289</id><published>2010-11-16T12:45:00.004-04:00</published><updated>2010-11-16T12:46:32.562-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>The Mobile Developer Journey</title><content type='html'>Great infographic on &lt;a href="http://www.visionmobile.com/blog/2010/11/infographic-the-mobile-developer-journey/"&gt;The Mobile Developer Journey&lt;/a&gt;.&lt;br /&gt;&lt;a href="http://www.visionmobile.com/blog/2010/11/infographic-the-mobile-developer-journey/" mce_href="http://www.visionmobile.com/blog/2010/11/infographic-the-mobile-developer-journey/"&gt;&lt;img alt="The Mobile Developer Journey" border="0" mce_src="http://www.visionmobile.com/blog/wp-content/uploads/2010/10/VM_Infographic01w600.jpg" src="http://www.visionmobile.com/blog/wp-content/uploads/2010/10/VM_Infographic01w600.jpg" width="100%" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3908186511055661289?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3908186511055661289/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3908186511055661289' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3908186511055661289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3908186511055661289'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2010/11/mobile-developer-journey.html' title='The Mobile Developer Journey'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3942117245393750677</id><published>2010-02-12T17:01:00.002-04:00</published><updated>2010-02-12T17:11:32.541-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Google Starred</title><content type='html'>&lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt; offers an incredible arsenal of services; &lt;a href="http://mail.google.com/"&gt;Gmail&lt;/a&gt;, &lt;a href="http://www.google.com/reader"&gt;GReader&lt;/a&gt;, &lt;a href="http://calendar.google.com/"&gt;Google Calendar&lt;/a&gt;, &lt;a href="http://news.google.com/"&gt;Google News&lt;/a&gt;, &lt;a href="http://books.google.com/"&gt;Google Books&lt;/a&gt;, &lt;a href="http://www.google.com/dictionary"&gt;Google Dictionary&lt;/a&gt; and &lt;a href="http://maps.google.com/"&gt;Google Maps&lt;/a&gt; just to list a few. But one downside to all these services, is that each implements their own&lt;i&gt; "starred"&lt;/i&gt; functionality.&lt;br /&gt;&lt;blockquote&gt;Wouldn't it be great if Google aggregated your starred items across all their services?&lt;/blockquote&gt;Imagine &lt;a href="http://www.google.com/bookmarks"&gt;Google Bookmarks&lt;/a&gt; becoming more than just bookmarking websites, but rather a single place where I can view all my important items; calendar events, blog posts, email conversations, friends photos, search results, nearby restaurants, dictionary entries, news articles.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Now there's an exciting new product idea!&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3942117245393750677?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3942117245393750677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3942117245393750677' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3942117245393750677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3942117245393750677'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2010/02/google-starred.html' title='Google Starred'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1455705035462721116</id><published>2009-05-01T15:40:00.007-03:00</published><updated>2009-05-01T16:19:34.518-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='disaster response'/><title type='text'>Emergency Response Symposium</title><content type='html'>This morning I attended the &lt;i&gt;Emergency Response Symposium&lt;/i&gt; at Dalhousie University. The symposium addressed&lt;i&gt; "emergency response to disasters (e.g. earthquakes, fires, floods, ice storms, epidemics) that require coordination of diverse resources distributed in time and space, where decisions have to made with limited information." &lt;/i&gt;&lt;a href="http://www.cs.utk.edu/%7Eelmore/"&gt;Dr. Mark Elmore&lt;/a&gt; of &lt;a href="http://www.ornl.gov/"&gt;Oak Ridge National Laboratory&lt;/a&gt; was there presenting.&lt;br /&gt;&lt;br /&gt;The first thing I noticed, was that the room was split between&lt;i&gt; university academics&lt;/i&gt; (professors, Ph.D students) and &lt;i&gt;actual disaster response people&lt;/i&gt; (Halifax Fire Response, RCMP, Joint Task Force). I got the impression there was a total disconnect between what the two groups were saying. The academics were talking&lt;i&gt; pure theory&lt;/i&gt; (graph, data, matrices, analysis) and the disaster guys were talking about &lt;i&gt;reality&lt;/i&gt; (gut feeling, life, death, response time). Let's just say, there is a lot to be said for &lt;i&gt;applied-knowledge &lt;/i&gt;vs &lt;i&gt;pure-theory&lt;/i&gt;. Here are some of the key points I took away:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A really fast search doesn't help you, if it gives you the wrong results. When response time is so critical, having the wrong data at the wrong time is matter of life and death.&lt;/li&gt;&lt;li&gt;Past data can be used to make better decisions in future, but how do you capture&lt;i&gt; 'gut feeling' &lt;/i&gt;of a fire fighter that prevents him from going into a room on fire? How can this knowledge be applied to an algorithm for better decision making? Or does this decision need to be left in the hands of the user?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;A big challenge is getting past information like building layouts and maps, combined that with real-time data like weather and position of response teams, and render in&lt;i&gt; 'no user manual required' &lt;/i&gt;interface to allow fast decision making. Response teams don't have time to analyze charts or graphs.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;There is a major problem with data lost when someone retires or quits. Imagine a firefighter retiring after 30 years, all that field experience is lost. How can it be captured? How can it be re-applied to make better decisions in the future?&lt;/li&gt;&lt;li&gt;How can crowd data be verified? In mission critical data, someone needs to be accountable when lives are lost, can we hold the crowd liable?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Public vs Private. There are cases like fires, where public data of the crowd can be used to help make better decisions. One recent example was the &lt;a href="http://search.twitter.com/search?q=&amp;amp;ands=twitpic&amp;amp;phrase=&amp;amp;ors=&amp;amp;nots=&amp;amp;tag=halifaxfire&amp;amp;lang=all&amp;amp;from=&amp;amp;to=&amp;amp;ref=&amp;amp;near=&amp;amp;within=15&amp;amp;units=mi&amp;amp;since=2009-04-30&amp;amp;until=2009-05-01&amp;amp;filter=links&amp;amp;rpp=15" target="_blank"&gt;Halifax Fire, where Twitter was on fire&lt;/a&gt; with activity. But there are private cases like with the military, where public data is not accessible. How can similar decisions be made without access to this public data?&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1455705035462721116?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1455705035462721116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1455705035462721116' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1455705035462721116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1455705035462721116'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/05/emergency-response-symposium.html' title='Emergency Response Symposium'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8337018028037949151</id><published>2009-04-18T09:45:00.007-03:00</published><updated>2009-04-18T09:46:57.244-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zdravo'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><title type='text'>Zdravo Translate for the iPhone</title><content type='html'>This past fall while traveling through eastern Europe, I often had difficulties communicating with locals (as most foreigners would). How much does that cost? Do you have a room available? I thought, there must be an easier way...&lt;br /&gt;&lt;br /&gt;Thus, &lt;a href="http://zdravo.dalezak.ca/"&gt;Zdravo Translate&lt;/a&gt; was born, a powerful multilingual translator for the iPhone and iTouch providing an intuitive and easy-to-use interface to Google's translation service. Some of the key features are:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Fully translated user interface&lt;/li&gt;&lt;li&gt;Full screen translation preview &lt;/li&gt;&lt;li&gt;Customizable translation preview colors&lt;/li&gt;&lt;li&gt;Works on both iPhone and iTouch&lt;/li&gt;&lt;/ul&gt;The application also supports 43 languages:&lt;br /&gt;Albanian, Arabic, Bulgarian, Catalan, Chinese, Chinese Simplified, Chinese Traditional, Croatian, Czech, Danish, Dutch, English, Estonian, Filipino, Finnish, French, Galician, German, Greek, Hebrew, Hindi, Hungarian, Indonesian, Italian, Japanese, Korean, Latvian, Lithuanian, Maltese, Norwegian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swedish, Thai, Turkish, Ukrainian, Vietnamese&lt;br /&gt;&lt;br /&gt;Checkout a &lt;a href="http://www.youtube.com/watch?v=_dL763qsu60"&gt;video of the application in action&lt;/a&gt;.&lt;br /&gt;&lt;center&gt;&lt;object height="385" width="410"&gt;&lt;param name="movie" value="http://www.youtube.com/v/_dL763qsu60&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/_dL763qsu60&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="385" width="410"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;You can download &lt;a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=312278436"&gt;Zdravo Translate in iTunes App Store&lt;/a&gt; or checkout the &lt;a href="http://zdravo.dalezak.ca/"&gt;Zdravo Translate website&lt;/a&gt; for more details.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8337018028037949151?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8337018028037949151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8337018028037949151' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8337018028037949151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8337018028037949151'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/04/zdravo-translate-for-iphone.html' title='Zdravo Translate for the iPhone'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-6890900403836292872</id><published>2009-04-07T15:45:00.002-03:00</published><updated>2009-04-16T19:48:53.200-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='social change'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Mobile Tech 4 Social Change Halifax</title><content type='html'>&lt;p&gt;&lt;a href="http://barcamp.org/MobileTechForSocialChangeHalifax"&gt;Mobile Tech 4 Social Change Halifax&lt;/a&gt; is an open dialog barcamp exploring mobile technologies and new media to help make the world a better place.&lt;br /&gt;&lt;br /&gt;This active conversation of turning ideas into action welcomes nonprofits, software developers or anyone interested in how new technologies can be used to organize, advocate and provide better health, environment, human rights, citizen media and other social services.&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;How can Twitter be used quickly mobilize a group of supporters to rally your cause?&lt;/li&gt;&lt;li&gt;Can geo caching be used to increase tourism to your community?&lt;/li&gt;&lt;li&gt;How can Facebook be used to fund your nonprofit?&lt;/li&gt;&lt;li&gt;Can SMS be used to improve healthcare by providing timely intervention messages to patients?&lt;/li&gt;&lt;li&gt;How do you engage new volunteers to form lasting relationships for your organization?&lt;/li&gt;&lt;li&gt;Can mobile phones be used to gather current environmental information?&lt;/li&gt;&lt;li&gt;How can mobile crowdsourcing provide knowledge and skills to achieve tasks previously not possible?&lt;/li&gt;&lt;/ul&gt;Our goal is to draw together the nonprofit and tech communities to share knowledge, ask interesting questions and spark ideas.&lt;br /&gt;&lt;br /&gt;The one-day event will be hosted at &lt;a href="http://thehubhalifax.ca/"&gt;theHubHalifax&lt;/a&gt; on &lt;a href="http://upcoming.yahoo.com/event/2293638"&gt;Saturday, May 23rd&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;To register visit the &lt;a href="http://mobiletech4socialchangehfx.eventbrite.com/"&gt;Eventbrite&lt;/a&gt; page, checkout &lt;a href="http://barcamp.org/MobileTechForSocialChangeHalifax"&gt;M4ChangeHFX&lt;/a&gt; on &lt;a href="http://www.facebook.com/event.php?eid=59373654308"&gt;Facebook&lt;/a&gt;, &lt;a href="http://www.meetup.com/M4ChangeHFX"&gt;Meetup&lt;/a&gt;, &lt;a href="http://upcoming.yahoo.com/event/2293638"&gt;Upcoming&lt;/a&gt; and &lt;a href="https://twitter.com/m4changehfx"&gt;Twitter&lt;/a&gt; for details, or email &lt;a href="mailto:m4changehfx@gmail.com"&gt;m4changehfx@gmail.com&lt;/a&gt; with questions.&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;iframe src="http://docs.google.com/EmbedSlideshow?docid=acxwwdh8wgd8_335fmr7f8gw" frameborder="0" height="342" width="410"&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-6890900403836292872?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/6890900403836292872/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=6890900403836292872' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6890900403836292872'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6890900403836292872'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/04/mobile-tech-4-social-change-halifax.html' title='Mobile Tech 4 Social Change Halifax'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3914587664058697008</id><published>2009-03-02T00:57:00.006-04:00</published><updated>2009-03-02T15:16:07.002-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cloud'/><category scheme='http://www.blogger.com/atom/ns#' term='mozilla'/><title type='text'>Why Bespin Will Change Everything</title><content type='html'>&lt;a href="http://www.mozilla.org/"&gt;Mozilla&lt;/a&gt; recently announced an excited new project called &lt;a href="https://bespin.mozilla.com/"&gt;Bespin&lt;/a&gt;, an open-source extensible web-based framework that pushes &lt;a href="http://ajaxian.com/archives/bespin-a-new-mozilla-labs-experimental-extensible-code-editor-using-canvas"&gt;code editing in the cloud&lt;/a&gt;.  At first glance, it's like &lt;a href="http://www.eclipse.org/"&gt;Eclipse&lt;/a&gt; that runs in your browser, however there is a hidden potential in Bespin, that I believe, &lt;i&gt;will change everything.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;object height="225" width="400"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=3195079&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=3195079&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" height="225" width="400"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Let's take a step back and examine how &lt;a href="http://docs.google.com/"&gt;Google Docs&lt;/a&gt; has changed the business world.  Prior to GDocs, &lt;a href="http://office.microsoft.com/"&gt;Microsoft Office&lt;/a&gt; (and it's expensive price tag) was the norm.  Collaborating on documents usually meant emailing a Word file and waiting for the reply.  GDocs not only made real-time collaboration possibly, it also made it easy.  Documents no longer lived on your desktop, but rather were accessible from anywhere via the internet.  You could just as easily edit and collaborate on a document from a public terminal in a London coffee shop, as you could from your office.&lt;br /&gt;&lt;br /&gt;Fast forward to &lt;a href="http://labs.mozilla.com/projects/bespin/"&gt;Bespin&lt;/a&gt;, which brings the same benefits as GDocs to the developers world.  Before Bespin, it was incredibly difficult for a developer to work without their own computer.  Hardware specifications and environment settings are no longer important, because now with Bespin you could just as easily develop from a public terminal.  Second, even with version control, video conferencing and instant messaging, pair programming was still painful when done remotely.  Bespin not only makes real-time collaboration possible, and also makes it easy.&lt;br /&gt;&lt;br /&gt;Great, Bespin eliminates the need for expensive hardware, software licenses and makes collaboration a snap, but what's the real impact?&lt;br /&gt;&lt;br /&gt;Let's go one step further, and combine Bespin with Google's powerful yet under-utilized &lt;a href="http://code.google.com/apis/ajaxlanguage/"&gt;translation api&lt;/a&gt;. Imagine, two developers collaborating in real-time to create the next big web app.  Now imagine our two developers, each working from public computers, one at a coffee shop, and the other a library. Now imagine these developers living in different continents, each speaking a different language, perhaps one Swahili, and the other French.  Now imagine an integrated IM sidebar to Bespin which auto translates their dialog similar to &lt;a href="http://blogoscoped.com/archive/2007-12-19-n41.html"&gt;GTalk language bots&lt;/a&gt;.  Now imagine the code comments, being auto translated to every possible language, so the next developer speaking a different language could quickly understand and collaborate on the project.  Now multiple the number of developers by 1000, all collaborating in real-time on same open source project, potentially speaking dozens of different dialects. When you combine Bespin and the power of cloud developing with something as simple as translation api, the possibilities are endless.&lt;br /&gt;&lt;br /&gt;Imagine the potential usage for a nonprofit like &lt;a href="http://www.geekcorps.org/"&gt;Geekcorp&lt;/a&gt;, who already have &lt;a href="http://www.geekcorps.org/category/success-stories/"&gt;incredible success stories&lt;/a&gt; of connecting technical experts to communities in developing countries.&lt;br /&gt;&lt;br /&gt;Or the potential integration with &lt;a href="http://twitter.com/kiwanja"&gt;Ken Bank&lt;/a&gt;'s &lt;a href="http://mobility.kiwanja.net/"&gt;Mobility Project&lt;/a&gt; which "brings together some of the leading academics, technicians, educators and practitioners in the IT and mobile fields with the common goal of developing an exciting and empowering range of tools and resources to unlock  the power of mobile applications development for users in the developing world"&lt;br /&gt;&lt;br /&gt;Multilingual collaborative cloud developing could play a huge role in the bare-foot college innovative to transfer software development skills, reducing development costs, bridging language barriers and providing real-time collaboration.  And with the recent success of &lt;a href="http://kikuyumoja.com/2009/02/26/netbooks-afrigadget/"&gt;netbooks in developing countries&lt;/a&gt;, Bespin has the potential to change everything.&lt;br /&gt;&lt;br /&gt;Thanks to &lt;a href="http://twitter.com/ksjhalla"&gt;Kaushal Jhalla&lt;/a&gt; for inspiring me and sharing these ideas.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3914587664058697008?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3914587664058697008/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3914587664058697008' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3914587664058697008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3914587664058697008'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/03/why-bespin-why-change-everything.html' title='Why Bespin Will Change Everything'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8993629336914455104</id><published>2009-02-26T10:20:00.001-04:00</published><updated>2009-03-01T12:15:15.105-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blog'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Hiding Blogger Top Banner Bar</title><content type='html'>Found a great way to &lt;a href="http://blogger-templates.blogspot.com/2005/01/remove-navbar.html"&gt;hide the Blogger top banner bar&lt;/a&gt; using CSS:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;In the Blogger Dashboard, select &lt;b&gt;Layout&lt;/b&gt; &amp;gt; &lt;b&gt;Template&lt;/b&gt; then click &lt;b&gt;Edit HTML&lt;/b&gt;&lt;/li&gt;&lt;li&gt;In the HTML code, find the line &lt;b&gt;/* Variable definitions&lt;br /&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Add CSS definition &lt;b&gt;#navbar-iframe { display: none !important; }&lt;/b&gt; directly above the &lt;b&gt;/* Variable definitions &lt;/b&gt;line&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;Here's a &lt;a href="http://www.metacafe.com/watch/739548/remove_blogger_navbar/"&gt;video outlining the steps&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8993629336914455104?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8993629336914455104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8993629336914455104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8993629336914455104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8993629336914455104'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/02/hiding-blogger-top-banner-bar.html' title='Hiding Blogger Top Banner Bar'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4858644291823009040</id><published>2009-02-19T17:41:00.004-04:00</published><updated>2009-02-20T00:51:30.067-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gmail'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Powerful Gmail Feature, Adding Suffix To Your UserID</title><content type='html'>&lt;a href="http://mail.google.com/"&gt;Gmail&lt;/a&gt; has an incredibly powerful, yet somewhat unknown feature, that allows you to append a suffix to your userid.  This combined with a &lt;a href="http://mail.google.com/support/bin/answer.py?hl=en&amp;amp;answer=6579"&gt;filter&lt;/a&gt; makes for &lt;i&gt;incredibly powerful spam control!&lt;/i&gt;&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;yourid+suffix@gmail.com&lt;/blockquote&gt;The beauty is that you can use as many suffixes as you like, ideally one for each of your services:&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;yourid+twitter@gmail.com&lt;br /&gt;yourid+flickr@gmail.com&lt;/blockquote&gt;This way (god forbid) if one of these services sell your email address to a 3rd party, it would be very easy to track down the culprit.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4858644291823009040?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4858644291823009040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4858644291823009040' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4858644291823009040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4858644291823009040'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/02/powerful-gmail-feature-adding-suffix-to.html' title='Powerful Gmail Feature, Adding Suffix To Your UserID'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-448792036857530807</id><published>2009-02-16T22:34:00.000-04:00</published><updated>2009-02-16T22:34:43.752-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>Fluid Turns Web Apps Into OSX Desktop Apps</title><content type='html'>Have you ever wished &lt;a href="http://mail.google.com/"&gt;Gmail&lt;/a&gt; or &lt;a href="http://www.facebook.com/"&gt;Facebook&lt;/a&gt; was a standalone desktop app?&amp;nbsp; Enter &lt;a href="http://fluidapp.com/"&gt;Fluid&lt;/a&gt;, a slick OSX application which turns any web app into it's own desktop app.&amp;nbsp; In the spirit of &lt;a href="https://developer.mozilla.org/en/Prism"&gt;Prism&lt;/a&gt;, with &lt;a href="http://fluidapp.com/"&gt;Fluid&lt;/a&gt;&lt;br /&gt;you simply enter the URL, app name, select an icon and like magic your pseudo desktop app is created.&amp;nbsp; Checkout this &lt;a href="http://www.viddler.com/explore/itod/videos/11/"&gt;screencast of Fluid in action&lt;/a&gt;, creating &lt;a href="http://twitter.com/"&gt;Twitter&lt;/a&gt; desktop app.&lt;br /&gt;&lt;center&gt;&lt;object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="437" height="315" id="viddler_46a6569e"&gt;&lt;param name="wmode" value="transparent" /&gt;&lt;param name="movie" value="http://www.viddler.com/player/46a6569e/" /&gt;&lt;param name="allowScriptAccess" value="always" /&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;embed src="http://www.viddler.com/player/46a6569e/" width="437" height="315" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" name="viddler_46a6569e" wmode="transparent"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-448792036857530807?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/448792036857530807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=448792036857530807' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/448792036857530807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/448792036857530807'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/02/fluid-turns-web-apps-into-osx-desktop.html' title='Fluid Turns Web Apps Into OSX Desktop Apps'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-319640311460298772</id><published>2009-02-11T15:59:00.051-04:00</published><updated>2009-02-11T16:18:51.105-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iphone sdk'/><title type='text'>Centering Text In UITableViewCell (iPhone SDK)</title><content type='html'>Unfortunately the iPhone SDK 2.2 has a bug that prevents centering UITableViewCell text using:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;cell.textAlignment = UITextAlignmentCenter;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_k2sK8LXxLSU/SZMwQT6airI/AAAAAAAAdAc/Jcotnh2_eG4/s1600-h/not_centered.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img src="http://1.bp.blogspot.com/_k2sK8LXxLSU/SZMwQT6airI/AAAAAAAAdAc/Jcotnh2_eG4/s320/not_centered.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Here is a &lt;a href="http://discussions.apple.com/thread.jspa?messageID=8926769"&gt;work-around&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center; font-style: italic;"&gt;UILabel* label = [[[cell contentView] subviews] objectAtIndex:0];&lt;br /&gt;label.textAlignment = UITextAlignmentCenter;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k2sK8LXxLSU/SZMwTe5tZMI/AAAAAAAAdA4/G5JPztWG_aE/s1600-h/centered.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img src="http://4.bp.blogspot.com/_k2sK8LXxLSU/SZMwTe5tZMI/AAAAAAAAdA4/G5JPztWG_aE/s320/centered.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-319640311460298772?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/319640311460298772/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=319640311460298772' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/319640311460298772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/319640311460298772'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/02/centering-text-in-uitableviewcell.html' title='Centering Text In UITableViewCell (iPhone SDK)'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_k2sK8LXxLSU/SZMwQT6airI/AAAAAAAAdAc/Jcotnh2_eG4/s72-c/not_centered.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4815376106174284489</id><published>2009-02-11T10:14:00.029-04:00</published><updated>2009-02-11T17:30:33.616-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iphone sdk'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><title type='text'>NSArray vs NSSet, NSDictionary vs NSMapTable (iPhone SDK)</title><content type='html'>Deciding the proper collection type &lt;a href="http://developer.apple.com/DOCUMENTATION/Cocoa/Reference/Foundation/Classes/NSArray_Class/Reference/Reference.html"&gt;NSArray&lt;/a&gt;, &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSSet_Class/Reference/Reference.html"&gt;NSSet&lt;/a&gt;, &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSDictionary_Class/Reference/Reference.html"&gt;NSDictionary&lt;/a&gt; or &lt;a href="http://developer.apple.com/documentation/Cocoa/Reference/NSMapTable_class/Reference/NSMapTable.html"&gt;&lt;span class="fullpost"&gt;&lt;span class="monospace"&gt;NSMapTable&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; is critical to your iPhone application performance.  Luckily &lt;a href="http://cocoawithlove.com/2008/08/nsarray-or-nsset-nsdictionary-or.html"&gt;Matt Gallagher wrote a great article&lt;/a&gt; outlining the differences:&lt;br /&gt;&lt;blockquote&gt;&lt;span class="fullpost"&gt;&lt;span style="font-style: italic;" class="monospace"&gt;NSArray&lt;/span&gt; is faster than &lt;span style="font-style: italic;" class="monospace"&gt;NSSet&lt;/span&gt; for simply holding and iterating. As little as 50% faster for constructing and as much as 500% faster for iterating. Lesson: if you only need to iterate contents, don't use an &lt;span style="font-style: italic;" class="monospace"&gt;NSSet&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Of course, if you need to test for inclusion, work hard to avoid &lt;span style="font-style: italic;" class="monospace"&gt;NSArray&lt;/span&gt;. Even if you need both iteration &lt;em&gt;and&lt;/em&gt; inclusion testing, you should probably still choose an &lt;span style="font-style: italic;" class="monospace"&gt;NSSet&lt;/span&gt;. If you need to keep your collection ordered and also test for inclusion, then you should consider keeping two collections (an &lt;span style="font-style: italic;" class="monospace"&gt;NSArray&lt;/span&gt; and an &lt;span style="font-style: italic;" class="monospace"&gt;NSSet&lt;/span&gt;), each containing the same objects.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;" class="monospace"&gt;NSDictionary&lt;/span&gt; is slower to construct than &lt;span style="font-style: italic;" class="monospace"&gt;NSMapTable&lt;/span&gt; — since it needs to copy the key data. It makes up for this by being faster to lookup. Of course, the two have different capabilities so most of the time, this determination should be made on other factors. - &lt;a href="http://cocoawithlove.com/2008/08/nsarray-or-nsset-nsdictionary-or.html"&gt;Cocoa With Love&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4815376106174284489?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4815376106174284489/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4815376106174284489' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4815376106174284489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4815376106174284489'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/02/nsarray-vs-nsset-nsdictionary-vs.html' title='NSArray vs NSSet, NSDictionary vs NSMapTable (iPhone SDK)'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8872050273447059884</id><published>2009-02-10T14:30:00.051-04:00</published><updated>2009-02-10T14:51:42.207-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='psx'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Clearing DropBox Cache in OSX</title><content type='html'>&lt;a href="https://www.getdropbox.com/"&gt;DropBox&lt;/a&gt; is an incredibly powerful file sharing system, that lets you synchronize files across multiple machines, accessible through web or from your workstation via their &lt;a href="https://www.getdropbox.com/install"&gt;desktop application&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Deleted files can easily be restored because they are cached locally, because they are stored in the hidden folders &lt;i&gt;/Users/username/.dropbox &lt;/i&gt;and &lt;i&gt;~/.dropbox/cache&lt;/i&gt;&lt;code&gt;. &lt;/code&gt;However, these directories can grow incredibly larger &lt;i&gt;(22 gig in my case!!)&lt;/i&gt;, luckily I came across a slick OSX app called &lt;a href="http://www.rudis.net/category/topic/dbcc"&gt;DBCC&lt;/a&gt; that can purge this cache.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.rudis.net/category/topic/dbcc" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img src="http://4.bp.blogspot.com/_k2sK8LXxLSU/SZHL_nf2vcI/AAAAAAAAcnk/DdHojS29KLI/s320/DBCCDesktop.png" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;You can download the &lt;a href="http://www.rudis.net/files/DBCCDesktop-10.4.zip"&gt;app here&lt;/a&gt;, but I recommend visiting &lt;a href="http://www.rudis.net/category/topic/dbcc"&gt;rudis.net for latest version&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8872050273447059884?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8872050273447059884/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8872050273447059884' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8872050273447059884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8872050273447059884'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/02/clearing-dropbox-cache-in-osx.html' title='Clearing DropBox Cache in OSX'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_k2sK8LXxLSU/SZHL_nf2vcI/AAAAAAAAcnk/DdHojS29KLI/s72-c/DBCCDesktop.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3521121416117973287</id><published>2009-02-06T09:20:00.024-04:00</published><updated>2009-02-06T09:42:47.042-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>DTerm: A Command Line Anywhere</title><content type='html'>While browsing through OSX applications with &lt;a href="http://growl.info/applications.php?cat=System+and+Unix"&gt;Growl support&lt;/a&gt;, I stumbled onto &lt;a href="http://www.decimus.net/dterm.php"&gt;DTerm&lt;/a&gt;, a crazy powerful popup command line.&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;DTerm's Philosophy&lt;/i&gt;: Command line work isn't a separate task that should live on its own—it's an integrated part of your natural workflow&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.decimus.net/dterm.php"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 235px;" src="http://1.bp.blogspot.com/_k2sK8LXxLSU/SYw-PZ3NPOI/AAAAAAAAbA0/5bIHIJJOOME/s400/dterm.jpg" alt="" id="BLOGGER_PHOTO_ID_5299679295869631714" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.decimus.net/dterm.php"&gt;http://www.decimus.net/dterm.php&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3521121416117973287?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3521121416117973287/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3521121416117973287' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3521121416117973287'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3521121416117973287'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/02/dterm-command-line-anywhere.html' title='DTerm: A Command Line Anywhere'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_k2sK8LXxLSU/SYw-PZ3NPOI/AAAAAAAAbA0/5bIHIJJOOME/s72-c/dterm.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4670200491189038441</id><published>2009-01-28T13:09:00.003-04:00</published><updated>2009-01-28T13:19:08.819-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><category scheme='http://www.blogger.com/atom/ns#' term='dashboard'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Workbench: Lightweight Text Editor For Dashboard</title><content type='html'>Looking for a simple way to store your snippets in OSX?  Try &lt;a href="http://www.apple.com/downloads/dashboard/developer/workbench.html"&gt;Workbench&lt;/a&gt;, a lightweight text editor for &lt;a href="http://www.apple.com/downloads/dashboard"&gt;Dashboard&lt;/a&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.apple.com/downloads/dashboard/developer/workbench.html"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 382px; height: 302px;" src="http://3.bp.blogspot.com/_k2sK8LXxLSU/SYCSscm_-MI/AAAAAAAAXDE/6bOU68FbSJ8/s400/workbench.jpg" alt="" id="BLOGGER_PHOTO_ID_5296394454079371458" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4670200491189038441?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4670200491189038441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4670200491189038441' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4670200491189038441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4670200491189038441'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/01/workbench-lightweight-text-editor-for.html' title='Workbench: Lightweight Text Editor For Dashboard'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_k2sK8LXxLSU/SYCSscm_-MI/AAAAAAAAXDE/6bOU68FbSJ8/s72-c/workbench.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8095243087109542961</id><published>2009-01-28T12:57:00.031-04:00</published><updated>2009-01-28T13:08:22.562-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby on rails'/><category scheme='http://www.blogger.com/atom/ns#' term='textmate'/><title type='text'>Textmate Not Recognizing Rails html.erb Files</title><content type='html'>&lt;a href="http://rubyonrails.org/"&gt;Ruby on Rails&lt;/a&gt; recently changed &lt;i&gt;.rhtml &lt;/i&gt;files to &lt;i&gt;.html.erb&lt;/i&gt;,&amp;nbsp; unfortunately this file type is not recognized in &lt;a href="http://macromates.com/"&gt;Textmate&lt;/a&gt;.&amp;nbsp; But this is easily fixed:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Textmate &amp;gt; Bundles &amp;gt; Bundle Editor &amp;gt; Show Bundle&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;&lt;/strong&gt;Go to &lt;strong&gt;Ruby on Rails &amp;gt; HTML (Rails)&lt;/strong&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;&lt;strong style="font-weight: normal;"&gt;Replace the line &lt;/strong&gt;&lt;span&gt;&lt;b&gt;&lt;span&gt;fileTypes&amp;nbsp;=&amp;nbsp;(&amp;nbsp;&lt;/span&gt;&lt;span class="string"&gt;'rhtml'&lt;/span&gt;&lt;/b&gt;&lt;span&gt;&lt;b&gt;); &lt;/b&gt;with &lt;b&gt;fileTypes = ( 'rhtml', 'html.erb' );&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span&gt;&lt;span&gt;And once again, &lt;/span&gt;&lt;/span&gt;proper syntax highlighting in &lt;a href="http://macromates.com/"&gt;Textmate&lt;/a&gt;. &lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8095243087109542961?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8095243087109542961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8095243087109542961' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8095243087109542961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8095243087109542961'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/01/textmate-not-recognizing-rails-htmlerb.html' title='Textmate Not Recognizing Rails html.erb Files'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3588584281304109132</id><published>2009-01-16T20:02:00.000-04:00</published><updated>2009-01-16T20:12:17.167-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Jumpcut: Minimalist Clipboard Buffering for OS X</title><content type='html'>Looking for a great light-weight clipboard add-on for OSX?&amp;nbsp; Try &lt;a href="http://jumpcut.sourceforge.net/"&gt;Jumpcut&lt;/a&gt;?&lt;br /&gt;&lt;blockquote&gt;"Jumpcut is an application that provides "clipboard buffering" — that is, access to text that you've cut or copied, even if you've subsequently cut or copied something else. The goal of Jumpcut's interface is to provide quick, natural, intuitive access to your clipboard's history."&lt;/blockquote&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_k2sK8LXxLSU/SXEh8SWbjSI/AAAAAAAAUxM/1PMdF3rFZOA/s1600-h/Jumpcut.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_k2sK8LXxLSU/SXEh8SWbjSI/AAAAAAAAUxM/1PMdF3rFZOA/s320/Jumpcut.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3588584281304109132?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3588584281304109132/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3588584281304109132' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3588584281304109132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3588584281304109132'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2009/01/jumpcut-minimalist-clipboard-buffering.html' title='Jumpcut: Minimalist Clipboard Buffering for OS X'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_k2sK8LXxLSU/SXEh8SWbjSI/AAAAAAAAUxM/1PMdF3rFZOA/s72-c/Jumpcut.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2232472541098012988</id><published>2008-12-17T09:07:00.000-04:00</published><updated>2008-12-17T19:13:07.917-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>iPhone Apps I Can't Live Without</title><content type='html'>Here are some of my favorite iPhone apps I can't live without:&lt;br/&gt;&lt;br/&gt;Facebook - I almost never visit Facebook through a browser anymore, because this little app does everything I need &lt;br/&gt;&lt;br/&gt;Tweetsville - awesome Twitter client, clean interface, fast loading with offline viewing of tweets&lt;br/&gt;&lt;br/&gt;iBlogger - a truly great blog writer; let's you write posts offline and publish once you have a connection, supports several blogging platfroms including Blogger   &lt;br/&gt;&lt;br/&gt;Shovel - slick Digg client with an in-app browser (hopefully they'll add offline browsing support in the future) &lt;br/&gt; &lt;br/&gt;Stanza - fantastic ebook reader with access to Gluttenberg project (over 25,000 free ebooks online) or make purchases from app, all with a highly customizable interface (font size/color, full screen mode, page transitions, etc), auto bookmarking and cover flow&lt;br/&gt;&lt;br/&gt;Google Mobile - the new voice-to-search with results based on your current location is amazing! &lt;br/&gt;&lt;br/&gt;Nimbizz - great IM chat client with Facebook, Skype, MSN and Jabber support&lt;br/&gt;&lt;br/&gt;Night Camera - uses shake detection so you can capture the perfect photo &lt;br/&gt; &lt;br/&gt;Files - easily transfer PDF, images, doc files from desktop to your iPhone for offline viewing&lt;br/&gt;&lt;br/&gt;PayPal - email money transfers to any of your iPhone contacts &lt;br/&gt;&lt;br/&gt;RTM - Remember The Milk client for all your to-do needs&lt;br/&gt;&lt;br/&gt;WritePad - amazing hand writing recognition, great way to compose emails&lt;br/&gt; &lt;br/&gt;Tuner - listen to your favorite streams like Di.FM, Proton Radio, Frisky and KCRW right on your iPhone &lt;br/&gt;&lt;br/&gt;Active Eagle - lightweight Fire Eagle client for updating your location&lt;br/&gt;&lt;br/&gt;Last.FM - stream tunes from Last.FM with other music goodness&lt;br/&gt;&lt;br/&gt;LinkedIn - access to your LinkedIn contacts&lt;br/&gt;&lt;br/&gt;Brightkite - slick Brightkite app&lt;br/&gt;&lt;br/&gt;Wikipanion - great Wikipedia client, content formatted for the iPhone&lt;br/&gt;&lt;br/&gt;Google Earth - Google Earth on your iPhone, enough said&lt;br/&gt;&lt;br/&gt;Shazam - not sure what song is playing on the radio? Just shazam it! &lt;br/&gt;&lt;br/&gt;Flixster Movies - browse upcoming movies, watch trailers and get local showtimes &lt;br/&gt; &lt;br/&gt;Brain Challenge - fun and addictive brain game with dozens of math, logic, visual and memory games&lt;br/&gt;&lt;br/&gt;Frenzic - super addictive puzzle game (you've been warned)&lt;br/&gt;&lt;br/&gt;Touch Physics - very original game where you draw shapes and use the shapes gravity to solve puzzles&lt;br/&gt;&lt;br/&gt;Flick Fishing - visually beautiful and super fun fishing game (best played with a beer in hand)&lt;br/&gt;&lt;br/&gt;Darts - very addicting and beautiful darts game&lt;br/&gt;&lt;br/&gt;Moonlight Mahjong - mahjong game with high points for nice 3D visuals&lt;br/&gt;&lt;br/&gt;Soduko Unlimited - my favorite soduko game with a customizable interface (notepad, newspaper, tech)&lt;br/&gt;&lt;br/&gt;CubicMan - a challenging and addictive puzzle game&lt;br/&gt;&lt;br/&gt;Remote - no iPhone should be without Remote, control nearby iTunes remotely, works great for parties&lt;br/&gt;&lt;br/&gt;Numba - a mindless but fun puzzle game of connecting the sequentially numbered blocks&lt;br/&gt;&lt;br/&gt;Got any iPhone apps you can't live without?&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2232472541098012988?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2232472541098012988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2232472541098012988' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2232472541098012988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2232472541098012988'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/12/iphone-apps-i-can-live-without.html' title='iPhone Apps I Can&amp;#39;t Live Without'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5957403908311037531</id><published>2008-11-30T04:41:00.001-04:00</published><updated>2009-03-11T08:55:34.462-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubiquitous computing'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='development'/><title type='text'>Dear iPhone Developers, Please Make Apps That Work Offline</title><content type='html'>I am currently traveling through eastern Europe armed with my iPhone and dozens of handy travel apps. Sadly, I am finding the majority of these apps become useless without a live internet connection.&lt;br/&gt;&lt;br/&gt;Open wifi hotspots are very limited and using 3G with international roaming charges is totally unaffordable (more expensive than lodging and food combined).&lt;br/&gt;&lt;br/&gt;The recent iPhone developer 'gold rush' has converted traditional web developers to mobile developers overnight. But this transition has resulted in a critical mistake.&lt;br/&gt;&lt;br/&gt;Critical Mistake: Assuming the iPhone is an internet device &lt;br/&gt;&lt;br/&gt;The iPhone is not an internet device, it is a disconnected device with internet capability. &lt;br/&gt;&lt;br/&gt;Developers should not assume the connection is always present. Apps should still function (example, not crash) when the internet is not available.&lt;br/&gt;&lt;br/&gt;Data should be cached intelligently. If I just retrieved data over wifi, closed and then re-opened the app, why is internet necessary? That data should have been cached locally.&lt;br/&gt;&lt;br/&gt;The native iPhone Mail is a good example of a well-behaved disconnected mobile application. I temporarily have wifi and pull down my data. My connection is dropped, but I can still read my mail, great success!&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5957403908311037531?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5957403908311037531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5957403908311037531' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5957403908311037531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5957403908311037531'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/dear-iphone-developers-please-make-apps.html' title='Dear iPhone Developers, Please Make Apps That Work Offline'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2592971760259514483</id><published>2008-11-20T12:25:00.001-04:00</published><updated>2008-11-20T12:42:38.880-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='voip'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><title type='text'>iCall for iPhone?</title><content type='html'>&lt;a href="http://www.icall.com/iphone/"&gt;&lt;/a&gt;Although the &lt;a href="http://www.icall.com/iphone/"&gt;iCall is still in beta for iPhone&lt;/a&gt;, still sounds pretty sweet:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Make and receive calls over WiFi&lt;/li&gt;&lt;li&gt;Transfer inbound calls from a regular cell call to WiFi instantly and seamlessly - save your expensive minutes&lt;/li&gt;&lt;li&gt;Access your same address book&lt;/li&gt;&lt;li&gt;Customize your voicemail options&lt;/li&gt;&lt;/ul&gt;&lt;center&gt;&lt;object height="225" width="400"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=1123274&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=1123274&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" height="225" width="400"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2592971760259514483?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2592971760259514483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2592971760259514483' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2592971760259514483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2592971760259514483'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/icall-for-iphone.html' title='iCall for iPhone?'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5452690402285453996</id><published>2008-11-19T10:56:00.006-04:00</published><updated>2008-11-20T19:51:35.121-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='compact framework'/><category scheme='http://www.blogger.com/atom/ns#' term='csharp'/><title type='text'>Enum.GetValues in Compact Framework</title><content type='html'>Sadly, the &lt;a href="http://en.wikipedia.org/wiki/.NET_Compact_Framework"&gt;Compact Framework&lt;/a&gt; does &lt;i&gt;not &lt;/i&gt;support &lt;a href="http://msdn.microsoft.com/en-us/library/system.enum.getvalues.aspx"&gt;Enum.GetValues&lt;/a&gt; which is a pain if you need to iterate over an enumeration, but it can easily be &lt;a href="http://forums.microsoft.com/msdn/ShowPost.aspx?PostID=1382228&amp;amp;SiteID=1"&gt;accomplished using good ol' Reflection&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-size:85%;" &gt;&lt;span style="font-family: courier new;"&gt;public IEnumerable&amp;lt;Enum&amp;gt; GetValues(Enum enumeration)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;List&amp;lt;Enum&amp;gt; enumerations = new List&amp;lt;Enum&amp;gt;();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;foreach (FieldInfo fieldInfo in enumeration.GetType().GetFields(BindingFlags.Static | BindingFlags.Public))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;enumerations.Add((Enum)fieldInfo.GetValue(enumeration));&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;return enumerations;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And you can call the method as such:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-size:85%;" &gt;foreach (DayOfWeek dayOfWeek in GetValues(new DayOfWeek())) {}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Enjoy!&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5452690402285453996?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5452690402285453996/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5452690402285453996' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5452690402285453996'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5452690402285453996'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/enumgetvalues-in-compact-framework.html' title='Enum.GetValues in Compact Framework'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4437890195930051356</id><published>2008-11-18T05:48:00.003-04:00</published><updated>2008-11-20T12:30:15.983-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='fom'/><category scheme='http://www.blogger.com/atom/ns#' term='future of mobile'/><title type='text'>Future Of Mobile London 2008</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://future-of-mobile.com/2008/london/"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 187px; height: 168px;" src="http://3.bp.blogspot.com/_k2sK8LXxLSU/SSLpE61LGII/AAAAAAAATm4/LuEIrmwLkW0/s400/fom.png" alt="" id="BLOGGER_PHOTO_ID_5270030784697931906" border="0" /&gt;&lt;/a&gt;Once again, &lt;a href="http://www.carsonified.com/"&gt;Carsonified&lt;/a&gt; hosted another fantastic conference in &lt;a href="http://future-of-mobile.com/2008/london"&gt;London&lt;/a&gt;. Although &lt;a href="http://future-of-mobile.com/2008/london"&gt;Future Of Mobile&lt;/a&gt; was not as eventful as &lt;a href="http://ideas20.blogspot.com/search/label/fowa"&gt;FOWA&lt;/a&gt;, the conference still had a number of &lt;a href="http://future-of-mobile.com/2008/london/speakers"&gt;great speakers&lt;/a&gt; talking about the future of the mobile industry.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Doug_Richard"&gt;Doug Richard&lt;/a&gt; from &lt;a href="http://trutap.com/"&gt;Trutap&lt;/a&gt; was my favorite speaker, gave a very strong argument thagt the future of mobile will not come from Silicon Valley, but rather &lt;a href="http://ideas20.blogspot.com/2008/11/future-of-mobile-driven-by-emerging.html"&gt;driven from emerging markets in developing countries&lt;/a&gt;.  These markets are the fastest growing in the world and willing to take risks with new technologies.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.tomiahonen.com/"&gt;Tomi Ahonen&lt;/a&gt; author of &lt;a href="http://www.amazon.com/Mobile-7th-Mass-Media-Cameraphone/dp/0955606950"&gt;Mobile as 7th of the Mass Media&lt;/a&gt;, gave an entertaining talk about global mobile trends, some were &lt;a href="http://www.tomhume.org/2008/11/future-of-mobile-tomi-ahonen.html"&gt;completely shocking&lt;/a&gt;!&lt;br /&gt;&lt;ul&gt;&lt;li&gt;91% of mobile users keep their phones within arms reach 24 hours a day&lt;/li&gt;&lt;li&gt;the mobile book market is worth $82 million in Japan, majority of these books written on actual phones&lt;/li&gt;&lt;li&gt;the Chinese pop song &lt;a href="http://en.wikipedia.org/wiki/Mice_Love_Rice"&gt;Mice Love Rice&lt;/a&gt; which was available free to download, made over $22 million as ringback tone for phones&lt;/li&gt;&lt;li&gt; the Japanese snack brand &lt;a href="http://en.wikipedia.org/wiki/Tohato"&gt;Tohato&lt;/a&gt; created a virtual war between two chip flavours combining multiplayer online gaming with advertising, breaking new ground in advertising with incredible sales&lt;/li&gt;&lt;/ul&gt;Other observations from the conference:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;the mobile industry is worth over $50 billion&lt;br /&gt;&lt;/li&gt;&lt;li&gt;over 3 billion mobile phones worldwide, over 1 billion sold in 2007&lt;/li&gt;&lt;li&gt;mobile devices are: very personal, always connected, always carried, built in payment mechanism, present at creative impulse and can capture social context&lt;/li&gt;&lt;li&gt;the old shotgun approach to advertising does not work, we need to apply location and context to make ads relevant to users&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Prior to App Store, people were not comfortable to installing apps on their mobile.  Now, people demand ability to install mobile apps on their devices&lt;/li&gt;&lt;li&gt;Symbian and Windows Mobile have the most to lose from the success of Android&lt;/li&gt;&lt;li&gt;Android will be to iPhone, what the PC was to Macintosh&lt;/li&gt;&lt;/ul&gt;As usual, the &lt;a href="http://search.twitter.com/search?max_id=1011178850&amp;amp;page=2&amp;amp;q=%23FOM"&gt;&lt;/a&gt;&lt;a href="http://search.twitter.com/search?q=%23FOM"&gt;conference had heavy Twitter traffic&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4437890195930051356?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4437890195930051356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4437890195930051356' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4437890195930051356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4437890195930051356'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/future-of-mobile-london-2008.html' title='Future Of Mobile London 2008'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_k2sK8LXxLSU/SSLpE61LGII/AAAAAAAATm4/LuEIrmwLkW0/s72-c/fom.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-7425723023483681564</id><published>2008-11-17T11:30:00.002-04:00</published><updated>2008-11-20T12:30:15.985-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='fom'/><category scheme='http://www.blogger.com/atom/ns#' term='future of mobile'/><title type='text'>Future of Mobile Driven by Emerging Markets</title><content type='html'>&lt;a href="http://en.wikipedia.org/wiki/Doug_Richard"&gt;Doug Richard&lt;/a&gt; from &lt;a href="http://trutap.com/"&gt;Trutap&lt;/a&gt; gave a great talk at &lt;a href="http://future-of-mobile.com/2008/london/"&gt;FOM&lt;/a&gt; about the future of mobile being driven by emerging markets in developing countries. These markets are the fastest growing user base and also willing to take risks with new technologies.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-7425723023483681564?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/7425723023483681564/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=7425723023483681564' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7425723023483681564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7425723023483681564'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/future-of-mobile-driven-by-emerging.html' title='Future of Mobile Driven by Emerging Markets'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-32398843943603172</id><published>2008-11-07T07:50:00.003-04:00</published><updated>2008-11-07T08:02:47.059-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='social change'/><category scheme='http://www.blogger.com/atom/ns#' term='africa'/><category scheme='http://www.blogger.com/atom/ns#' term='nonprofit'/><title type='text'>SolarNetOne, Solar-Powered Computer Networks For Remote Villages</title><content type='html'>Ok, this is &lt;i&gt;incredible&lt;/i&gt;! &lt;a href="http://gnuveau.net/"&gt;GNUveau Networks&lt;/a&gt; has created &lt;a href="http://vimeo.com/2051295"&gt;SolarNetOne&lt;/a&gt;, a solar-powered, low-energy usage, computer network targeted for remote villages in developing countries.&lt;br /&gt;&lt;center&gt;&lt;object width="400" height="225"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2051295&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=2051295&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;br /&gt;Thanks to &lt;a href="http://whiteafrican.com"&gt;White African&lt;/a&gt; for first &lt;a href="http://whiteafrican.com/2008/11/06/no-connectivity-no-phone-no-electricty-no-problem/"&gt;blogging about this innovation&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-32398843943603172?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/32398843943603172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=32398843943603172' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/32398843943603172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/32398843943603172'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/solarnetone-solar-powered-computer.html' title='SolarNetOne, Solar-Powered Computer Networks For Remote Villages'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1830984189766897663</id><published>2008-11-06T13:35:00.000-04:00</published><updated>2008-11-06T13:38:17.620-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><title type='text'>Need  A Good Color Chart?</title><content type='html'>Well, here's &lt;strike&gt;good&lt;/strike&gt; an &lt;i&gt;incredible &lt;/i&gt;color chart:&lt;b&gt; &lt;a href="http://rgbchart.com/"&gt;http://rgbchart.com&lt;/a&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1830984189766897663?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1830984189766897663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1830984189766897663' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1830984189766897663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1830984189766897663'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/need-good-color-chart.html' title='Need  A Good Color Chart?'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5308100935336322267</id><published>2008-11-06T07:42:00.005-04:00</published><updated>2008-11-06T10:21:01.587-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubiquitous computing'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Mobile Ubiquitous Computing (We're Not There Yet)</title><content type='html'>This past weekend while strolling through the &lt;a href="http://en.wikipedia.org/wiki/Louvre"&gt;Louvre&lt;/a&gt; in Paris, I observed a number of people carrying hand held devices, which the museum provides as a type of guided tour.  They would walk up a painting, glance left and right until they found the reference number, then awkwardly using a stylus, type that number into their device.&lt;br /&gt;&lt;br /&gt;It made me think of &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/stefan-fountain/"&gt;Stefan Fountain's great talk at FOWA&lt;/a&gt;, that mobile computing is not about a device, but about using location and context to improve your experience. During his talk, he made a funny analogy to &lt;a href="http://en.wikipedia.org/wiki/Jean-Luc_Picard"&gt;Captain Picard&lt;/a&gt; starting his journal entries with the current &lt;a href="http://en.wikipedia.org/wiki/Stardate"&gt;stardate&lt;/a&gt;. &lt;i&gt;"Shouldn't the computer already know what the date is?!"&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Requiring the user to enter a reference number into their device, is similar to Picard telling the computer the stardate, the device &lt;i&gt;should just know&lt;/i&gt; what painting its close to. It wouldn't take magic, simply sticking an &lt;a href="http://en.wikipedia.org/wiki/Rfid"&gt;RFID&lt;/a&gt; tag on each painting, a reader on your device and you're in business.&lt;br /&gt;&lt;br /&gt;I think &lt;a href="http://en.wikipedia.org/wiki/Ubiquitous_computing"&gt;ubiquitous computing&lt;/a&gt; is definitely coming, we're just not there yet...&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5308100935336322267?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5308100935336322267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5308100935336322267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5308100935336322267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5308100935336322267'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/mobile-ubiquitous-computing-and-why.html' title='Mobile Ubiquitous Computing (We&apos;re Not There Yet)'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4151921269688976501</id><published>2008-11-03T05:46:00.001-04:00</published><updated>2008-11-03T05:57:55.591-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='voip'/><title type='text'>SayHear, Recording Why American's Vote</title><content type='html'>What hear why and for whom American's are voting?  Checkout &lt;a href="http://sayhear.org/"&gt;SayHear&lt;/a&gt;, developed on &lt;a href="http://www.ribbit.com/"&gt;Ribbit&lt;/a&gt; technology and a great example of applied &lt;a href="http://en.wikipedia.org/wiki/VoIP"&gt;VOIP&lt;/a&gt; in the Web 2.0 world: &lt;a href="http://sayhear.org/"&gt;http://sayhear.org&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4151921269688976501?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4151921269688976501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4151921269688976501' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4151921269688976501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4151921269688976501'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/11/sayhear-recording-why-americans-vote.html' title='SayHear, Recording Why American&apos;s Vote'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1009475898569187605</id><published>2008-10-29T07:36:00.001-03:00</published><updated>2008-10-29T07:48:52.095-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>LinkedIn Launches LinkedIn Apps</title><content type='html'>&lt;a href="http://www.linkedin.com/"&gt;LinkedIn&lt;/a&gt;, your online professional identity has &lt;a href="http://blog.linkedin.com/blog/2008/10/announcing-appl.html"&gt;just launched&lt;/a&gt; &lt;a href="http://learn.linkedin.com/apps/"&gt;LinkedIn Apps&lt;/a&gt;, a way to embed 3rd party applications into your &lt;a href="http://www.linkedin.com/in/dalezak"&gt;profile&lt;/a&gt; and homepage.&lt;br /&gt;&lt;blockquote&gt;The nine applications that you see live today on LinkedIn include productivity enhancing applications from Amazon, Box.net, Google, Huddle, Six Apart, SlideShare, Tripit, and WordPress as well a Company Buzz application developed by LinkedIn. Each of these applications will help you stay current and competitive as a professional in today's rapidly changing business world. - &lt;a href="http://blog.linkedin.com/blog/2008/10/announcing-appl.html"&gt;blog&lt;/a&gt;&lt;/blockquote&gt;&lt;center&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/EnqBKfhknF0&amp;amp;color1=0x6699&amp;amp;color2=0x54abd6&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/EnqBKfhknF0&amp;amp;color1=0x6699&amp;amp;color2=0x54abd6&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1009475898569187605?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1009475898569187605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1009475898569187605' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1009475898569187605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1009475898569187605'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/linkedin-launches-linkedin-apps.html' title='LinkedIn Launches LinkedIn Apps'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4385319529680613620</id><published>2008-10-28T20:47:00.000-03:00</published><updated>2008-10-28T20:52:09.242-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>StumbleUpon Web ToolBar?!</title><content type='html'>&lt;a href="http://www.stumbleupon.com/"&gt;StumbleUpon&lt;/a&gt; can now be accessed without the &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/138"&gt;Firefox extension&lt;/a&gt; by simply visiting &lt;a href="http://www.stumbleupon.com/toolbar"&gt;http://www.stumbleupon.com/toolbar&lt;/a&gt;.&amp;nbsp; And there was much rejoicing!&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4385319529680613620?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4385319529680613620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4385319529680613620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4385319529680613620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4385319529680613620'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/stumbleupon-web-toolbar.html' title='StumbleUpon Web ToolBar?!'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-7113738740147986989</id><published>2008-10-15T08:42:00.006-03:00</published><updated>2008-10-23T08:33:52.970-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>What The Flock?!</title><content type='html'>&lt;a href="http://www.flock.com/"&gt;Flock&lt;/a&gt;, the social web browser is now &lt;a href="http://www.flock.com/node/64027"&gt;out of beta&lt;/a&gt; and based on &lt;a href="http://en.wikipedia.org/wiki/Mozilla_Firefox_3"&gt;Firefox 3&lt;/a&gt; technology.  I used Flock before, but ended up switching back to Firefox due to compatibility with some of my favorite extensions. However, looks like this new version has fixed these issues.&lt;br /&gt;&lt;br /&gt;Flock definitely have some very cool &lt;a href="http://www.flock.com/tour/features.php"&gt;social features&lt;/a&gt;:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://flock.com/user-guide/2.0/advpeop.html"&gt;&lt;span style="font-style: italic;"&gt;People Sidebar&lt;/span&gt;&lt;/a&gt; combines your friends updates into single time line, much like &lt;a href="http://friendfeed.com/"&gt;FriendFeed&lt;/a&gt;, but it also has handy Actions menu which lets you Comment, Poke, Message, Share, etc on an item&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://flock.com/user-guide/2.0/advmdia.html"&gt;&lt;span style="font-style: italic;"&gt;Media Bar&lt;/span&gt;&lt;/a&gt; lets you browse you and your friends photos and videos&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Web Clipboard&lt;/span&gt; lets you drag &amp;amp; drop text, images or videos from any website for easy storage&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://flock.com/user-guide/2.0/advfave.html"&gt;&lt;span style="font-style: italic;"&gt;Social Favorites&lt;/span&gt;&lt;/a&gt; lets you easily bookmark directly to Del.icio.us&lt;/li&gt;&lt;li&gt;&lt;a href="http://flock.com/user-guide/2.0/advblog.html"&gt;&lt;span style="font-style: italic;"&gt;Blog Editor&lt;/span&gt;&lt;/a&gt; is a handy editor, allowing you to drag photos or videos from &lt;span style="font-style: italic;"&gt;Media Ba&lt;/span&gt;r or&lt;span style="font-style: italic;"&gt; Web Clipboard &lt;/span&gt;right into your post&lt;/li&gt;&lt;/ul&gt;If you like &lt;a href="http://www.mozilla.com/en-US/firefox/"&gt;Firefox&lt;/a&gt; and use &lt;a href="http://www.flock.com/tour/services.php"&gt;sites&lt;/a&gt; like &lt;a href="http://www.digg.com/"&gt;Digg&lt;/a&gt;, &lt;a href="http://www.facebook.com/"&gt;Facebook&lt;/a&gt;, &lt;a href="http://www.flickr.com/"&gt;Flickr&lt;/a&gt;, &lt;a href="http://picasaweb.google.com/"&gt;Picasa&lt;/a&gt;, &lt;a href="http://twitter.com/"&gt;Twitter&lt;/a&gt; or &lt;a href="http://www.youtube.com/"&gt;YouTube&lt;/a&gt;, you'll love Flock!&lt;a href="http://picasaweb.google.com/lh/photo/QDU3rbCs9F4VWouEEyRmAw?authkey=ATdFxahvqsI" title="CIMG4008.JPG"&gt; &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-7113738740147986989?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/7113738740147986989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=7113738740147986989' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7113738740147986989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7113738740147986989'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/what-flock.html' title='What The Flock?!'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2833825084212410290</id><published>2008-10-13T09:52:00.005-03:00</published><updated>2008-10-13T10:46:50.617-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='location'/><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>Fire Eagle, Update My Location</title><content type='html'>There's been a lot talk about &lt;a href="http://fireeagle.yahoo.net/"&gt;Fire Eagle&lt;/a&gt; lately, &lt;a href="http://www.yahoo.com/"&gt;Yahoo's&lt;/a&gt; new location aggregator. At the recent &lt;a href="http://upcoming.yahoo.com/event/1087575/"&gt;Mobile Location-Based Services&lt;/a&gt; talk at &lt;a href="http://www.nlondon.bcs.org/"&gt;BCS&lt;/a&gt;, &lt;a href="http://www.linkedin.com/in/garygale"&gt;Gary Gale&lt;/a&gt; demonstrated Fire Eagle's ability of aggregating your location to &lt;a href="http://fireeagle.yahoo.net/gallery"&gt;3rd-party services&lt;/a&gt;.  And at the past &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA&lt;/a&gt;, &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/chris-messina/"&gt;several presenters&lt;/a&gt; used Fire Eagle as the example of a well behaved &lt;a href="http://oauth.net/"&gt;OAuth&lt;/a&gt; site.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://fireeagle.yahoo.net/"&gt;Fire Eagle&lt;/a&gt; is basically a single entry point to update your location, then you decide what granularity &lt;a href="http://fireeagle.yahoo.net/gallery"&gt;3rd-party services&lt;/a&gt; has to that location.  For example, you may embed a &lt;a href="http://geekvault.no5.at/blogloc/"&gt;BlogLoc&lt;/a&gt; map in your blog, but may only want it to display your city rather than exact street address.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you got an iPhone, you should check &lt;a href="http://www.apptism.com/apps/active-eagle/"&gt;Active Eagle&lt;/a&gt;, a free iPhone App which updates Fire Eagle using your current location.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2833825084212410290?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2833825084212410290/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2833825084212410290' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2833825084212410290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2833825084212410290'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/fire-eagle-update-my-location.html' title='Fire Eagle, Update My Location'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4145348675326332332</id><published>2008-10-12T15:18:00.000-03:00</published><updated>2008-11-20T12:30:46.313-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='future of web apps'/><category scheme='http://www.blogger.com/atom/ns#' term='fowa'/><title type='text'>Some FOWA Observations</title><content type='html'>&lt;b&gt;The Twitter Bug!&lt;/b&gt;&lt;br /&gt;I've understood the importance of &lt;a href="http://twitter.com/"&gt;Twitter&lt;/a&gt; as a status updater, micro-blogger even as SMS platform, but experiencing it as a live conversation during &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA&lt;/a&gt; was incredible!  It was like the entire room was engaged in this &lt;a href="http://search.twitter.com/search?q=%23fowa"&gt;silent conversation&lt;/a&gt;, everyone giving their feedback about the current presenter, truly remarkable.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;How Do You Like Them Apples?&lt;br /&gt;&lt;/b&gt;When looking across the audience, I noticed a lot of glowing &lt;a href="http://www.apple.com/"&gt;Apples&lt;/a&gt; in the crowd.  This is pretty significant, considering the conference was filled with some the brightest developers, talking about the future of the industry.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Are You Cloud Computing Yet?!&lt;/b&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Cloud_computing"&gt;Cloud computing&lt;/a&gt; was definitely the buzz word at the &lt;a href="http://london2008.futureofwebapps.com/"&gt;conference&lt;/a&gt;, although some speakers poked fun saying we've been doing it for years, and really it's just a term so non-techies can understand.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Hey, Whats Your Handle?&lt;/b&gt;&lt;br /&gt;Your online presence is becoming so important, people were sharing their handles like business cards,&lt;span class="Apple-style-span" style="font-style: italic;"&gt; "what's your twitter?"&lt;/span&gt; or &lt;span class="Apple-style-span" style="font-style: italic;"&gt;"you on FriendFeed?"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Financial Crisis?! Sell, Sell, Sell!&lt;/b&gt;&lt;br /&gt;Although it's still early to know how the current &lt;a href="http://www.reuters.com/article/euRegulatoryNews/idUSLC69018720081012"&gt;financial crisis&lt;/a&gt; will affect web apps, it definitely was on people's minds, some predicting it could be as bad/worse as the dot-com bubble.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4145348675326332332?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4145348675326332332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4145348675326332332' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4145348675326332332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4145348675326332332'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/some-fowa-observations.html' title='Some FOWA Observations'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8204976996334393339</id><published>2008-10-11T12:41:00.001-03:00</published><updated>2008-11-20T12:30:46.315-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='future of web apps'/><category scheme='http://www.blogger.com/atom/ns#' term='fowa'/><title type='text'>Future Of Web Apps London 2008 - Day Two</title><content type='html'>Day Two of &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA&lt;/a&gt; kicked off with &lt;a href="http://www.tbray.org/ongoing/"&gt;Tim Bray&lt;/a&gt; from &lt;a href="http://www.sun.com/"&gt;Sun&lt;/a&gt; offering many &lt;a href="http://ideas20.blogspot.com/2008/10/fowa-tim-bray-words-of-wisdom.html"&gt;words of wisdom to developers&lt;/a&gt;.  With the looming &lt;a href="http://www.canada.com/cityguides/winnipeg/info/story.html?id=9be246c1-4f50-4d20-949b-725370d403f9"&gt;financial crisis&lt;/a&gt; on everyone's minds, Tim stressed the importance for developers to remain flexible and not limit themselves to a single platform or language.  Also during these tough times, your online presence and business networks will be more important than ever. Here is a &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/tim-bray/"&gt;video of his excellent talk&lt;/a&gt;.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_k2sK8LXxLSU/SPMsu7p2OmI/AAAAAAAAPH8/BTORyhKifAM/s1600-h/FOWA_Sign.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_k2sK8LXxLSU/SPMsu7p2OmI/AAAAAAAAPH8/BTORyhKifAM/s400/FOWA_Sign.JPG" alt="" id="BLOGGER_PHOTO_ID_5256594374870317666" border="0" /&gt;&lt;/a&gt;Following &lt;a href="http://events.carsonified.com/fowa/2008/london/highlights/tim-bray/"&gt;Tim's great talk&lt;/a&gt;, Adam Gross from &lt;a href="http://www.salesforce.com/"&gt;Salesforce&lt;/a&gt; gave a &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/adam-gross/"&gt;quick demo on using cloud computing in the enterprise&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The late morning sessions, I followed the Developer Track listening to &lt;a href="http://factoryjoe.com/"&gt;Chris Messina&lt;/a&gt; from &lt;a href="http://vidoop.com/"&gt;Vidoop&lt;/a&gt; &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/chris-messina/"&gt;talk about importance of OAuth&lt;/a&gt;, then &lt;a href="http://friendfeed.com/bret"&gt;Bret Taylor&lt;/a&gt; from &lt;a href="http://friendfeed.com/"&gt;FriendFeed&lt;/a&gt; talk about the &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/bret-taylor/"&gt;importance of your online presence&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;After lunch, &lt;a href="http://calacanis.com/"&gt;Jason Calacanis&lt;/a&gt; from &lt;a href="http://www.mahalo.com/"&gt;Mahalo&lt;/a&gt; and &lt;a href="http://www.tomnixon.co.uk/"&gt;Tom Nixon&lt;/a&gt; from &lt;a href="http://www.nixonmcinnes.co.uk/"&gt;Nixon McInnes&lt;/a&gt; &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/jason-calcanis-tom-nixon/"&gt;discussed whether a startup can have a work / life balance&lt;/a&gt;.  Tom believes that startups can have a four-day-work-week and still be successful, while Jason argued its better to bust your ass for three years and retire a millionaire.  Jason also gave a pretty compelling argument on &lt;a href="http://ideas20.blogspot.com/2008/10/fire-average.html"&gt;firing the average&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Cloud_computing"&gt;Cloud computing&lt;/a&gt; was definitely the buzz word at the conference.  &lt;a href="http://tonylucas.wordpress.com/"&gt;Tony Lucas&lt;/a&gt; from &lt;a href="http://www.xcalibre.co.uk/"&gt;XCalibre&lt;/a&gt; and &lt;a href="http://www.jeff-barr.com/"&gt;Jeff Barr&lt;/a&gt; from &lt;a href="http://aws.amazon.com/"&gt;Amazon Web Services&lt;/a&gt; talked about the &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/tony-lucas-jeff-barr/"&gt;important aspects of cloud computing&lt;/a&gt;.  Platforms like &lt;a href="http://aws.amazon.com/s3/"&gt;S3&lt;/a&gt; can offer alot of advantages to startups; high reliability, low startup cost, scale down or up as you need, however it's critical that you maintain data portability and don't lock yourself into a single provider.&lt;br /&gt;&lt;br /&gt;In a &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/mark-zuckerberg/"&gt;fireside-style interview&lt;/a&gt;, &lt;a href="http://twitter.com/ryancarson"&gt;Ryan Carson&lt;/a&gt; chatted with &lt;a href="http://en.wikipedia.org/wiki/Mark_Zuckerberg"&gt;Mark Zuckerberg&lt;/a&gt; about the success and future of &lt;a href="http://www.facebook.com/"&gt;Facebook&lt;/a&gt;.  I personally, was very impressed with Mark, even after all the success of Facebook, still remains down to earth and carries a clear vision of Facebook's future; to allow people to easily share their information.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_k2sK8LXxLSU/SPMsjjF1I4I/AAAAAAAAPH0/TQz1IoP-7qQ/s1600-h/Mark_Zuckerberg.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_k2sK8LXxLSU/SPMsjjF1I4I/AAAAAAAAPH0/TQz1IoP-7qQ/s400/Mark_Zuckerberg.JPG" alt="" id="BLOGGER_PHOTO_ID_5256594179298239362" border="0" /&gt;&lt;/a&gt;Thanks to the good people at &lt;a href="http://carsonified.com/"&gt;Carsonified&lt;/a&gt;, the &lt;a href="http://events.carsonified.com/fowa/2008/london/content"&gt;videos from each talk have been posted online&lt;/a&gt;.  Can't wait until &lt;a href="http://future-of-mobile.com/2008/london/"&gt;FOMA&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8204976996334393339?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8204976996334393339/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8204976996334393339' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8204976996334393339'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8204976996334393339'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/future-of-web-apps-london-2008-day-two.html' title='Future Of Web Apps London 2008 - Day Two'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_k2sK8LXxLSU/SPMsu7p2OmI/AAAAAAAAPH8/BTORyhKifAM/s72-c/FOWA_Sign.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8108296135675315198</id><published>2008-10-10T11:40:00.002-03:00</published><updated>2008-11-20T12:30:46.316-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='future of web apps'/><category scheme='http://www.blogger.com/atom/ns#' term='fowa'/><title type='text'>Fire The Average?</title><content type='html'>During one of the talks at &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA&lt;/a&gt;, &lt;a href="http://calacanis.com/"&gt;Jason Calacanis&lt;/a&gt; from &lt;a href="http://www.mahalo.com/"&gt;Mahalo&lt;/a&gt; made an interesting comment about firing even your average developers.&lt;br /&gt;&lt;br /&gt;His point, average people attract other average people; great people will attract other great people. Although maybe people may not agree, it's an interesting idea...&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8108296135675315198?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8108296135675315198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8108296135675315198' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8108296135675315198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8108296135675315198'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/fire-average.html' title='Fire The Average?'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4826859651899933434</id><published>2008-10-10T11:36:00.001-03:00</published><updated>2008-11-20T12:30:46.319-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='future of web apps'/><category scheme='http://www.blogger.com/atom/ns#' term='fowa'/><title type='text'>Tim Bray's Words Of Wisdom</title><content type='html'>&lt;a href="http://www.tbray.org/ongoing/"&gt;Tim Bray&lt;/a&gt; from Sun gave one of the best talks of &lt;a href="http://london2008.futureofwebapps.com"&gt;FOWA&lt;/a&gt;, offering several words of wisdom:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Don't be an&lt;span style="font-style: italic;"&gt; 'X' &lt;/span&gt;developer. People that will only develop for a certain language or platform restrict their hire-ability. This is especially true during the tough times ahead, developers must stay flexible.&lt;/li&gt;&lt;li&gt;Network, Network, Network. The truly great jobs are always filled by friends of friends.&lt;/li&gt;&lt;li&gt;The next worst thing to a company Googling you and discovering you are a pedophile, is finding nothing online. Why would a leading edge company hire a dinosaur who does not have an understanding of web 2.0?&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4826859651899933434?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4826859651899933434/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4826859651899933434' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4826859651899933434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4826859651899933434'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/fowa-tim-bray-words-of-wisdom.html' title='Tim Bray&amp;#39;s Words Of Wisdom'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4962862336824951020</id><published>2008-10-10T10:25:00.002-03:00</published><updated>2008-11-20T12:30:46.321-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='future of web apps'/><category scheme='http://www.blogger.com/atom/ns#' term='fowa'/><title type='text'>FriendFeed's Success?</title><content type='html'>&lt;a href="http://friendfeed.com/bret"&gt;Bret Taylor&lt;/a&gt; from &lt;a href="http://friendfeed.com"&gt;FriendFeed&lt;/a&gt; gave a great talk at &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA&lt;/a&gt; offering some of  their secrets for the increasing problem of too much user created content.&lt;br /&gt;&lt;br /&gt;During questions, I asked what made &lt;a href="http://friendfeed.com/"&gt;FriendFeed&lt;/a&gt; successful over other social aggregators out there. Bret's reply; seeing an opportunity and executing quickly, getting the basics nailed down early, fast reliable service and keeping interface simple &amp;amp; easy to use.&lt;br /&gt;&lt;br /&gt;When it comes down to it, if your page loads slow, users won't come back.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4962862336824951020?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4962862336824951020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4962862336824951020' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4962862336824951020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4962862336824951020'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/friendfeeds-success.html' title='FriendFeed&apos;s Success?'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-979826406624110277</id><published>2008-10-08T23:52:00.005-03:00</published><updated>2008-11-20T12:30:46.323-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='future of web apps'/><category scheme='http://www.blogger.com/atom/ns#' term='fowa'/><title type='text'>Future Of Web Apps London 2008 - Day One</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_k2sK8LXxLSU/SPMtP2lQ1mI/AAAAAAAAPIM/rFS2l1LSOsc/s1600-h/fowa.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_k2sK8LXxLSU/SPMtP2lQ1mI/AAAAAAAAPIM/rFS2l1LSOsc/s320/fowa.png" alt="" id="BLOGGER_PHOTO_ID_5256594940444595810" border="0" /&gt;&lt;/a&gt;The first day at the &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA&lt;/a&gt; was great!  The highlights from the main exhibit area were definitely Adobe's Nintendo wii station, the Microsoft booth with Guitar Heroes, MySpace's double-decker bus with DJ and Sun's mechancial surf board.  The Business Track and Developers Track rooms allowed you to pick &amp;amp; choose which &lt;a href="http://london2008.futureofwebapps.com/schedule"&gt;presenters&lt;/a&gt; you were more interested in hearing, and during the breaks there were additional breakup sessions.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://events.carsonified.com/fowa/2008/london/videos/kevin-rose/"&gt;The Future Of News&lt;/a&gt; - &lt;a href="http://kevinrose.com/"&gt;Kevin Rose&lt;/a&gt;, &lt;a href="http://digg.com/"&gt;Digg&lt;/a&gt;&lt;br /&gt;Kevin gave a great talk about Digg's view of the future of news, focussing on how we can improve.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://events.carsonified.com/fowa/2008/london/videos/edwin-aoki/"&gt;Web Apps Are Dead, Long Live Webg Apps&lt;/a&gt; - Edwin Aoki, AOL&lt;br /&gt;Edwin from AOL apoligized for his previous prediction that web apps would replace desktop apps, with the recent iPhone and Android SDK allowing developers to easily create mobile native apps, which have now surpassed mobile web apps on these devices.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://events.carsonified.com/fowa/2008/london/highlights/blaine-cook-joe-stump/"&gt;Languages Don't Scale&lt;/a&gt; - &lt;a href="http://twitter.com/blaine"&gt;Blaine Cook&lt;/a&gt;, Ex-Chief Engineer &lt;a href="http://www.twitter.com/"&gt;Twitter&lt;/a&gt; &amp;amp; &lt;a href="http://www.crunchbase.com/person/joe-stump"&gt;Joe Stump&lt;/a&gt; - &lt;a href="http://www.digg.com/"&gt;Digg&lt;/a&gt;&lt;br /&gt;Remember the old debate that certain languages don't scale, well Blaine and Joe came right out and said, all languages suck, but really when it comes to scalability, its all about servers and disk IO.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_k2sK8LXxLSU/SPMtg9_pgII/AAAAAAAAPIU/9INZwMz38ho/s1600-h/PHP_Sucks.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_k2sK8LXxLSU/SPMtg9_pgII/AAAAAAAAPIU/9INZwMz38ho/s400/PHP_Sucks.JPG" alt="" id="BLOGGER_PHOTO_ID_5256595234492088450" border="0" /&gt;&lt;/a&gt;&lt;a href="http://events.carsonified.com/fowa/2008/london/videos/stefan-fountain/"&gt;How The Future Of The Mobile Web Is Going To Change Everything&lt;/a&gt; - &lt;a href="http://www.linkedin.com/in/stefanfountain"&gt;Stefan Fountain&lt;/a&gt;, &lt;a href="http://www.soocial.com/"&gt;Soocial&lt;/a&gt;&lt;br /&gt;Definitely my favorite speaker, Stefan rocked the stage giving a great talk about how the future of mobile, is not a device but using location, context, state and visibility to improve our mobile experience.&lt;br /&gt;&lt;br /&gt;Using Jabber To Make Awesome Web Sites - &lt;a href="http://twitter.com/blaine"&gt;Blaine Cook&lt;/a&gt;, Ex-&lt;a href="http://www.twitter.com/"&gt;Twitter&lt;/a&gt;&lt;br /&gt;Another one of my favorite talks, Blaine gave an interesting presentation why HTTP can't make good synchronous sites because of its pull architecture, offering &lt;a href="http://www.jabber.org/"&gt;Jabber&lt;/a&gt; / &lt;a href="http://xmpp.org/"&gt;XMPP&lt;/a&gt; as way to create truly rich web sites.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://events.carsonified.com/fowa/2008/london/highlights/francisco-tomalsky/"&gt;Building Desktop Caliber Web Application&lt;/a&gt; with &lt;a href="http://cappuccino.org/learn/tutorials/objective-j-tutorial.php"&gt;Objective-J&lt;/a&gt; and &lt;a href="http://cappuccino.org/"&gt;Cappuccino&lt;/a&gt; - &lt;a href="http://www.crunchbase.com/person/francisco-tolmasky"&gt;Francisco Tolmasky&lt;/a&gt;, &lt;a href="http://280north.com/"&gt;280 North&lt;/a&gt;&lt;br /&gt;The Ex-Apple developer, now founder of &lt;a href="http://280north.com/"&gt;280 North&lt;/a&gt;, Francisco gave a great talk about developing &lt;a href="http://280north.com/"&gt;280 North&lt;/a&gt;, an online &lt;a href="http://www.apple.com/iwork/keynote/"&gt;Keynote&lt;/a&gt; clone which in the process of building it, ended up creating an entire web framework &lt;a href="http://cappuccino.org/"&gt;Cappuccino&lt;/a&gt; and &lt;a href="http://cappuccino.org/learn/tutorials/objective-j-tutorial.php"&gt;Objective-J&lt;/a&gt; language to allow for rich UI experience.&lt;br /&gt;&lt;br /&gt;Web Will Heal Itself - &lt;a href="http://www.linkedin.com/in/crickwaters"&gt;Crick Waters&lt;/a&gt;, &lt;a href="http://www.bt.com/"&gt;BT&lt;/a&gt;&lt;br /&gt;Crick, the founder of &lt;a href="http://www.ribbit.com/"&gt;Ribbit&lt;/a&gt;, gave a great demo of Ribbit in action and how the future of the phone is on the web.&lt;br /&gt;&lt;br /&gt;The first day wrapped up with a &lt;a href="http://www.bbc.co.uk/dragonsden/"&gt;Dragon's Den&lt;/a&gt; style event where &lt;a href="http://events.carsonified.com/fowa/2008/london/videos/jason-calcanis-ryan-carson-brent-hoberman-mike-butcher/"&gt;four new startups pitched their idea to panel of judges&lt;/a&gt;.  After judges voting, &lt;a href="http://www.erepublik.com/"&gt;Erepublik&lt;/a&gt; an online risk-style multiplayer game came up on top, winning a profile spot on &lt;a href="http://www.techcrunch.com/"&gt;TechCrunch&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It was an excellent first day at &lt;a href="http://london2008.futureofwebapps.com/"&gt;FOWA&lt;/a&gt;! The &lt;a href="http://events.carsonified.com/fowa/2008/london/content"&gt;videos from FOWA are available online at Carsonified&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-979826406624110277?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/979826406624110277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=979826406624110277' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/979826406624110277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/979826406624110277'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/future-of-web-apps-london-2008-day-one.html' title='Future Of Web Apps London 2008 - Day One'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_k2sK8LXxLSU/SPMtP2lQ1mI/AAAAAAAAPIM/rFS2l1LSOsc/s72-c/fowa.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-344888703311954209</id><published>2008-10-08T10:26:00.004-03:00</published><updated>2008-11-20T12:40:08.470-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><category scheme='http://www.blogger.com/atom/ns#' term='im'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Adium And Friends With Multiple IM Accounts</title><content type='html'>I really love &lt;a href="http://www.adiumx.com/"&gt;Adium&lt;/a&gt;, it's a great IM client for OSX which combines your &lt;a href="http://www.google.com/talk/"&gt;GTalk&lt;/a&gt;, &lt;a href="http://get.live.com/messenger"&gt;MSN&lt;/a&gt;, &lt;a href="http://dashboard.aim.com/aim"&gt;AIM&lt;/a&gt;, &lt;a href="http://www.facebook.com/"&gt;Facebook&lt;/a&gt; and &lt;a href="http://messenger.yahoo.com/"&gt;Yahoo!&lt;/a&gt; contacts into a single list.&lt;div&gt;However, I found it a bit annoying having duplicate contacts in my list for friends that use more than one IM account, for example, a friend with both GTalk and MSN would appear twice.&lt;br /&gt;&lt;br /&gt;To fix this, you simply need to add each IM account for that person into your OSX Address Book each with a different type (Home, Work, Other), and magically the duplicates are merged into a single contact.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now, when you first send them a message, you should see a drop down in the chat window which lets you choose which IM account you would like to send message to.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-344888703311954209?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/344888703311954209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=344888703311954209' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/344888703311954209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/344888703311954209'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/adium-and-friends-with-multiple-im.html' title='Adium And Friends With Multiple IM Accounts'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5561933635895868454</id><published>2008-10-06T13:15:00.004-03:00</published><updated>2008-11-20T12:41:21.539-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='compact framework'/><category scheme='http://www.blogger.com/atom/ns#' term='csharp'/><title type='text'>VScrollBar Width in Compact Framework</title><content type='html'>Unfortunately, the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.systeminformation.verticalscrollbarwidth.aspx"&gt;SystemInformation.VerticalScrollBarWidth&lt;/a&gt; member is &lt;span class="Apple-style-span" style="font-style: italic;"&gt;not &lt;/span&gt;available in the &lt;a href="http://en.wikipedia.org/wiki/.NET_Compact_Framework"&gt;.NET Compact Framework&lt;/a&gt;.  Knowing this value is incredibly useful when you want to resize &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.datagrid.aspx"&gt;DataGrid&lt;/a&gt; columns whether the vertical scrollbar is visible or not.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Simply hard-coding the width to 13 pixels is not a good idea, considering devices with higher resolution render the VScrollBar wider.  And using p/invoke calls like &lt;a href="http://msdn.microsoft.com/en-us/library/ms929469.aspx"&gt;GetSystemMetrics&lt;/a&gt; are never very elegant.&lt;br /&gt;&lt;br /&gt;However, I came &lt;a href="http://forums.componentone.com/CS/forums/t/61850.aspx"&gt;across a cool way&lt;/a&gt; to simply search for the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.vscrollbar.aspx"&gt;VScrollBar&lt;/a&gt; in the control and check whether it's visible.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;int GetVerticalScrollBarWidth(Control parent)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;   foreach (Control control in parent.Controls)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;   {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;      if (control is VScrollBar &amp;amp;&amp;amp; control.Visible) &lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;          return control.Width;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;   }&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;   return 0;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-family:'Courier New', Courier, monospace;"&gt;&lt;span class="Apple-style-span"  style="color:#274e13;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This works really slick for &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.datagrid.aspx"&gt;DataGrid&lt;/a&gt; in the Compact Framework. &lt;span class="Apple-style-span" style="font-style: italic;"&gt;And there was great rejoicing!&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5561933635895868454?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5561933635895868454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5561933635895868454' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5561933635895868454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5561933635895868454'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/10/vscrollbar-width-in-compact-framework.html' title='VScrollBar Width in Compact Framework'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-854045437552470962</id><published>2008-09-11T10:29:00.001-03:00</published><updated>2008-09-11T10:47:22.633-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>App Store, Empowering The Developer And Why It Changes Everything</title><content type='html'>The &lt;a href="http://www.apple.com/iphone/appstore/"&gt;App Store&lt;/a&gt; is &lt;span class="Apple-style-span" style="font-style: italic;"&gt;brilliant!&lt;/span&gt;  It has had over &lt;a href="http://www.marketwatch.com/news/story/app-store-downloads-top-100/story.aspx?guid={F71AC837-7EBB-4D86-9E33-801BB11C1810}&amp;amp;dist=hppr"&gt;100 million downloads worldwide&lt;/a&gt; since it opened, incredible!  Sure it's fun for users to browse and download a new application to their iPhone, but the really exciting thing, is that it totally empowers the individual developer.&lt;br /&gt;&lt;br /&gt;A lot of people don't fully grasp how much of a paradigm shift this is. Before App Store, it was difficult for a developer to create an application and reach a wide market. Now, the developer has the potential to create an app in their spare time, publish to App Store and instantly have access to millions of customers.  And the best part, is how incredibly easy it is to monetize.&lt;br /&gt;&lt;br /&gt;The App Store for developers, is doing the same thing that iTunes Store did for independent artists, levels the playing field and empowers the individual.  Let's just say, its a very exciting time to be a developer.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-854045437552470962?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/854045437552470962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=854045437552470962' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/854045437552470962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/854045437552470962'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/09/app-store-empowering-developer-and-why.html' title='App Store, Empowering The Developer And Why It Changes Everything'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-6179773522257637236</id><published>2008-09-11T08:54:00.005-03:00</published><updated>2008-09-11T09:09:32.184-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Apple's iTunes Genius, is Genius!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_k2sK8LXxLSU/SMkJNNRKNnI/AAAAAAAAOeU/_hUeAW9K-3A/s1600-h/Genius_Icon.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_k2sK8LXxLSU/SMkJNNRKNnI/AAAAAAAAOeU/_hUeAW9K-3A/s400/Genius_Icon.gif" border="0" alt="" id="BLOGGER_PHOTO_ID_5244733363554236018" /&gt;&lt;/a&gt;Ok, there hasn't been many new features of &lt;a href="http://www.apple.com/itunes"&gt;iTunes&lt;/a&gt; that have really wow'ed me, but the new &lt;a href="http://www.apple.com/itunes/features/#genius"&gt;Genius&lt;/a&gt; feature, &lt;span class="Apple-style-span" style="font-style: italic;"&gt;WOW!&lt;/span&gt;  &lt;div&gt;I've always loved &lt;a href="http://www.last.fm/"&gt;Last.FM&lt;/a&gt; and their recommendation radio for similiar artists, but having this integrated right into iTunes is awesome! &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Just pick a song you like, click the Genius button and playlist of similar artists and songs is automatically generated for you, and its bang on. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For example, I select a Burial track and the Genius playlist includes songs by Loscil, Stars of the Lid, Cinematic Orchestra, Lamb, Apparat, Amon Tobin, Nightmares on Wax, Trentemoller and The Knife, very nice!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-6179773522257637236?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/6179773522257637236/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=6179773522257637236' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6179773522257637236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6179773522257637236'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/09/apples-itunes-genius-is-genius.html' title='Apple&apos;s iTunes Genius, is Genius!'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_k2sK8LXxLSU/SMkJNNRKNnI/AAAAAAAAOeU/_hUeAW9K-3A/s72-c/Genius_Icon.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5358857496359139759</id><published>2008-09-05T05:53:00.004-03:00</published><updated>2008-09-10T07:11:21.086-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Adding More Searches To Chrome's Omnibar</title><content type='html'>You gotta love &lt;a href="http://www.google.com/chrome"&gt;Chrome's&lt;/a&gt; auto-add search feature of omnibar! But what if you want to do an image search and rather than typing&lt;span class="Apple-style-span" style="font-style: italic; "&gt; "images.google.com kittens"&lt;/span&gt; you want to just be able to type &lt;span class="Apple-style-span" style="font-style: italic; "&gt;"images kittens"&lt;/span&gt;? Well, easy enough, just &lt;span class="Apple-style-span" style="font-style: italic; "&gt;right-click&lt;/span&gt; on&lt;span class="Apple-style-span" style="font-style: italic; "&gt; address bar&lt;/span&gt; and select &lt;span class="Apple-style-span" style="font-style: italic; "&gt;Edit search engines...&lt;/span&gt; Now just change the &lt;span class="Apple-style-span" style="font-style: italic; "&gt;keyword &lt;/span&gt;from &lt;span class="Apple-style-span" style="font-style: italic; "&gt;images.google.com&lt;/span&gt; to &lt;span class="Apple-style-span" style="font-style: italic; "&gt;images&lt;/span&gt; and Bang! you are in business.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here is a list of some of my favorite quick searches (in Name, Keyword, URL ordering):&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Google Maps&lt;/div&gt;&lt;div&gt;map&lt;/div&gt;&lt;div&gt;http://maps.google.com/maps?q=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Images&lt;/div&gt;&lt;div&gt;images&lt;/div&gt;&lt;div&gt;http://images.google.com/images?q=%s&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Video&lt;/div&gt;&lt;div&gt;video&lt;/div&gt;&lt;div&gt;http://video.google.com/videosearch?q=%s&amp;amp;hl=en&amp;amp;sitesearch=&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Books&lt;/div&gt;&lt;div&gt;books&lt;/div&gt;&lt;div&gt;http://www.google.com/books?q=%s&amp;amp;as_brr=0&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Stocks&lt;/div&gt;&lt;div&gt;stocks&lt;/div&gt;&lt;div&gt;http://www.google.com/search?q=stocks:%s&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;YouTube&lt;/div&gt;&lt;div&gt;youtube&lt;/div&gt;&lt;div&gt;http://www.youtube.com/results?search_query=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Music&lt;/div&gt;&lt;div&gt;music&lt;/div&gt;&lt;div&gt;http://www.google.com/musicsearch?q=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Movies&lt;/div&gt;&lt;div&gt;movies&lt;/div&gt;&lt;div&gt;http://www.google.com/search?num=50&amp;amp;hl=en&amp;amp;q=movie%3A+%s&amp;amp;btnG=Search&amp;amp;meta=&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Blogger&lt;/div&gt;&lt;div&gt;blog&lt;/div&gt;&lt;div&gt;http://www.google.com/blogsearch?q=%s&amp;amp;hl=en&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google News&lt;/div&gt;&lt;div&gt;news&lt;/div&gt;&lt;div&gt;http://news.google.com/news?hl=en&amp;amp;lr=&amp;amp;ie=UTF-8&amp;amp;tab=wn&amp;amp;q=%s&amp;amp;btnG=Search+News&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Define&lt;/div&gt;&lt;div&gt;define&lt;/div&gt;&lt;div&gt;http://www.google.com/search?hl=en&amp;amp;q=define%3A+%s&amp;amp;btnG=Search&amp;amp;meta=&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google MP3 Search&lt;/div&gt;&lt;div&gt;mp3&lt;/div&gt;&lt;div&gt;http://www.google.com/search?hl=en&amp;amp;q=intitle%3A%22index.of%22+(mp3%7Cmp4)+%s+-html+-htm+-php+-asp+-aspx+&amp;amp;btnG=Search&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Google Code&lt;/div&gt;&lt;div&gt;code&lt;/div&gt;&lt;div&gt;http://code.google.com/search/#q=%s&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Facebook&lt;/div&gt;&lt;div&gt;facebook&lt;/div&gt;&lt;div&gt;http://www.facebook.com/s.php?src=os&amp;amp;q=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Last.FM&lt;/div&gt;&lt;div&gt;lastfm&lt;/div&gt;&lt;div&gt;http://www.last.fm/music/?q=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Flickr&lt;/div&gt;&lt;div&gt;flickr&lt;/div&gt;&lt;div&gt;www.flickr.com/search/?q=%s&amp;amp;w=all&amp;amp;m=&amp;amp;s=&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;IMDB&lt;/div&gt;&lt;div&gt;imdb&lt;/div&gt;&lt;div&gt;http://www.imdb.com/find?s=all&amp;amp;q=%25s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Del.icio.us&lt;/div&gt;&lt;div&gt;del&lt;/div&gt;&lt;div&gt;http://del.icio.us/search/?p=%s&amp;amp;fr=del_icio_us&amp;amp;type=all&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Digg&lt;/div&gt;&lt;div&gt;digg&lt;/div&gt;&lt;div&gt;http://digg.com/search?search=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Wikipedia&lt;/div&gt;&lt;div&gt;wiki&lt;/div&gt;&lt;div&gt;http://en.wikipedia.org/wiki/Special:Search?search=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thesaurus&lt;/div&gt;&lt;div&gt;thes&lt;/div&gt;&lt;div&gt;http://thesaurus.reference.com/search?q=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Dictionary&lt;/div&gt;&lt;div&gt;dict&lt;/div&gt;&lt;div&gt;http://dictionary.reference.com/search?q=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Metacafe&lt;/div&gt;&lt;div&gt;metacafe&lt;/div&gt;&lt;div&gt;http://www.metacafe.com/#?s=%s&amp;amp;CategoryFilter=&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;W3C School&lt;/div&gt;&lt;div&gt;w3c&lt;/div&gt;&lt;div&gt;http://www.google.com/search?as_q=%s&amp;amp;sitesearch=www.w3schools.com&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;C/Net Reviews&lt;/div&gt;&lt;div&gt;review&lt;/div&gt;&lt;div&gt;http://www.search.com/redirect?query=%s&amp;amp;tag=srch&amp;amp;target=&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Newsvine&lt;/div&gt;&lt;div&gt;newsvine&lt;/div&gt;&lt;div&gt;http://www.newsvine.com/_vine/search?q=%s&amp;amp;searchIn=t&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EBay&lt;/div&gt;&lt;div&gt;ebay&lt;/div&gt;&lt;div&gt;http://search.ebay.ca/search/search.dll?GetResult&amp;amp;?satitle=%s&amp;amp;sofocus=unknown&amp;amp;sbrftog=1&amp;amp;fcl=4&amp;amp;fnu=1&amp;amp;from=R10&amp;amp;fcd=2&amp;amp;sacat=-1%26catref%3DC6&amp;amp;sargn=-1%26saslc%3D3&amp;amp;sadis=200&amp;amp;fpos=ZIP/Postal&amp;amp;ftrt=1&amp;amp;ftrv=1&amp;amp;saprclo=&amp;amp;saprchi=&amp;amp;fsop=1%26fsoo%3D1&amp;amp;fgtp=&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Amazon&lt;/div&gt;&lt;div&gt;amazon&lt;/div&gt;&lt;div&gt;http://www.amazon.ca/s/ref=nb_ss_gw/702-4824911-3659260?field-keywords=%s&amp;amp;url=search-alias%3Daps&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;WikiHow&lt;/div&gt;&lt;div&gt;how&lt;/div&gt;&lt;div&gt;http://www.wikihow.com/Special:LSearch?search=%s&amp;amp;fulltext=Search&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;TechCrunch&lt;/div&gt;&lt;div&gt;tech&lt;/div&gt;&lt;div&gt;http://www.techcrunch.com/?s=%s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mashable&lt;/div&gt;&lt;div&gt;mashable&lt;/div&gt;&lt;div&gt;http://mashable.com/search-results/?cx=partner-pub-9942038924324175:lhvsj5-dt4y&amp;amp;cof=FORID:11&amp;amp;q=%s&amp;amp;sa=Search&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Koders&lt;/div&gt;&lt;div&gt;koders&lt;/div&gt;&lt;div&gt;http://www.koders.com/default.aspx?s=%s&amp;amp;btn=&amp;amp;la=*&amp;amp;li=*&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5358857496359139759?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5358857496359139759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5358857496359139759' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5358857496359139759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5358857496359139759'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/09/adding-more-searches-to-chromes-omnibar.html' title='Adding More Searches To Chrome&apos;s Omnibar'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8128488615935748169</id><published>2008-09-02T18:34:00.004-03:00</published><updated>2008-10-23T08:36:13.493-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>Google Chrome Is Out, But Look Whats Missing</title><content type='html'>&lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt; just announced their new open source web browser, &lt;a href="http://www.google.com/chrome"&gt;Chrome&lt;/a&gt;. So far, I'm lovin' it! By far the fastest browser out there and looks like it's &lt;a href="http://news.cnet.com/8301-17939_109-10030962-2.html"&gt;out performing IE8 and FF3 in Acid3 test&lt;/a&gt;.  Dragging tabs works so well, especially dragging outside to make a new browser window, and you gotta love the icoginto mode.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Besides all the great features and clean interface, there still is a lot missing which hopely will be added in the next version:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;No Extensions&lt;/span&gt; - one of the great features of FireFox and Opera is the extendability, sadly, Chrome currently does not support extensions&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;No Live Bookmark&lt;/span&gt;s - RSS support in &lt;a href="http://www.mozilla.com/en-US/firefox/livebookmarks.html"&gt;Live Bookmarks&lt;/a&gt; has sort of become standard, strange this is missing from Chrome&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;No Social Bookmarking&lt;/span&gt; - I thought for sure &lt;a href="http://www.google.com/bookmarks/"&gt;Google Bookmarks&lt;/a&gt; would be baked into Chrome, but nope, all bookmarks are stored locally&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-style: italic;"&gt;No OSX Support&lt;/span&gt; - Windows only? Where's my OSX version?&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8128488615935748169?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8128488615935748169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8128488615935748169' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8128488615935748169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8128488615935748169'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/09/google-chrome-is-out-but-look-whats.html' title='Google Chrome Is Out, But Look Whats Missing'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1005370428809128485</id><published>2008-08-28T07:23:00.002-03:00</published><updated>2008-11-20T12:31:47.473-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gmail'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Use Gmail Notifier On OSX With Multiple Accounts</title><content type='html'>Came across a way of using Gmail Notifier on OSX over multiple Gmail accounts:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;   Duplicate the Google Notifier application.&lt;/li&gt;&lt;li&gt;Select the duplicate, control-click on its icon, and choose &lt;span style="font-weight: bold;"&gt;Show Package Contents&lt;/span&gt; from the pop-up menu.&lt;/li&gt;&lt;li&gt;Navigate into Contents, and then open&lt;span style="font-weight: bold;"&gt; Info.plist&lt;/span&gt; in an editor.&lt;/li&gt;&lt;li&gt;There is a property in that file called &lt;span style="font-weight: bold;"&gt;CFBundleIdentifier&lt;/span&gt;, with the value &lt;span style="font-weight: bold;"&gt;com.google.GmailNotifier&lt;/span&gt;. Change the property's value to &lt;span style="font-weight: bold;"&gt;com.google.GmailNotifierTwo&lt;/span&gt; instead.&lt;/li&gt;&lt;li&gt;Save your change and quit the editor. &lt;/li&gt;&lt;/ol&gt;Thanks to &lt;a href="http://www.macosxhints.com/article.php?story=20061117161341318"&gt;Mac OX Hints for orginally posting this&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1005370428809128485?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1005370428809128485/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1005370428809128485' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1005370428809128485'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1005370428809128485'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/08/use-gmail-notifier-on-osx-with-multiple.html' title='Use Gmail Notifier On OSX With Multiple Accounts'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5936012325929669796</id><published>2008-08-21T05:33:00.002-03:00</published><updated>2008-10-23T08:45:11.571-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendasta'/><category scheme='http://www.blogger.com/atom/ns#' term='startups'/><title type='text'>Video Conferencing</title><content type='html'>Ok, this is pretty funny &lt;span style="font-style: italic;"&gt;(and slightly embarrassing)&lt;/span&gt;.  During our regular morning scrum meeting, with &lt;a href="http://www.lostinloc.com/"&gt;Ryan&lt;/a&gt; in Regina, myself in London and rest of team in Saskatoon, &lt;a href="http://www.orthodrome.ca/"&gt;Allan&lt;/a&gt; captured a video of me and Ryan chatting while the rest of the team stepped out for a coffee.&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/p6tvl67nQmk&amp;color1=11645361&amp;color2=13619151&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/p6tvl67nQmk&amp;color1=11645361&amp;color2=13619151&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" wmode="transparent" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5936012325929669796?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5936012325929669796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5936012325929669796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5936012325929669796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5936012325929669796'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/08/video-conferencing.html' title='Video Conferencing'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4747293177890307286</id><published>2008-08-19T18:35:00.003-03:00</published><updated>2008-08-19T18:45:51.672-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='globalization'/><title type='text'>The World Is Flat 3.0</title><content type='html'>If you haven't already watched it, &lt;a href="http://www.thomaslfriedman.com/"&gt;Thomas Friedman&lt;/a&gt; gives an impressive &lt;a href="http://en.wikipedia.org/wiki/The_World_is_Flat"&gt;The World Is Flat 3.0&lt;/a&gt; lecture at &lt;a href="http://mitworld.mit.edu/video/519/"&gt;MIT&lt;/a&gt;.  You can find the 48min lecture on iTunes U or watch it &lt;a href="http://mitworld.mit.edu/play/517/noreal/"&gt;on Real Player here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4747293177890307286?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4747293177890307286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4747293177890307286' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4747293177890307286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4747293177890307286'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/08/world-is-flat-30.html' title='The World Is Flat 3.0'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-9026520930405143954</id><published>2008-08-07T18:25:00.006-03:00</published><updated>2008-10-23T08:45:11.572-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendasta'/><category scheme='http://www.blogger.com/atom/ns#' term='startups'/><title type='text'>VendAsta Gets Funding</title><content type='html'>&lt;span style="font-style: italic;"&gt;&lt;/span&gt; &lt;span style="font-style: italic;"&gt;Big news!&lt;/span&gt; &lt;a href="http://vendasta.com/"&gt;VendAsta&lt;/a&gt; gets $3 million of funding to develop &lt;a href="http://www.myfrontsteps.com/"&gt;MyFrontSteps&lt;/a&gt; and &lt;a href="http://myfrontsteps.com/steprep/"&gt;StepRep&lt;/a&gt;.&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://hubcanada.com/breakingnewsArticle.php?pid=396"&gt;"After recently acquiring $3 million in funding from Victoria Park Capital, Saskatoon’s VendAsta Technologies Inc. is ready to make some headway with their MyFrontSteps.com social software project."&lt;/a&gt;&lt;/blockquote&gt;Read more about the exciting news &lt;a href="http://hubcanada.com/breakingnewsArticle.php?pid=396"&gt;here&lt;/a&gt;, &lt;a href="http://pulse2.com/2008/08/07/vendasta-raises-3-million-from-victoria-park-capital-to-build-niche-home-improvement-social-network/"&gt;here&lt;/a&gt; or &lt;a href="http://www.ibtimes.com/prnews/20080807/vendasta-myfrontsteps.htm"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-9026520930405143954?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/9026520930405143954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=9026520930405143954' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/9026520930405143954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/9026520930405143954'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/08/vendasta-gets-funding.html' title='VendAsta Gets Funding'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3663043917133349676</id><published>2008-06-18T05:58:00.002-03:00</published><updated>2008-10-23T08:36:13.494-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>Help Spread Firefox Day</title><content type='html'>&lt;span style="font-style: italic;"&gt;Help spread Firefox! &lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;"Sounds like a good deal, right? All you have to do to help us set the record for the most software downloaded in 24 hours is get Firefox 3 now – it’s that easy. We're not asking you to swallow a sword or to balance 30 spoons on your face, although that would be kind of awesome.             Please download Firefox 3 by 11:16 a.m. PDT (18:16 UTC) on June 18, 2008. That's 11:16 a.m. in Mountain View, 2:16 p.m. in Toronto, 3:16 p.m. in Rio de Janeiro, 8:16 p.m. in Paris, Madrid, Berlin, Rome and Warsaw, 10:16 p.m. in Moscow, and June 19, 2008 at 2:16 a.m. in Beijing and 3:16 a.m. in Tokyo."&lt;/blockquote&gt;&lt;a href="http://www.spreadfirefox.com/en-US/worldrecord"&gt;http://www.spreadfirefox.com/en-US/worldrecord&lt;/a&gt;&lt;br /&gt;&lt;div class="inner-wrapper"&gt;&lt;p&gt;&lt;/p&gt;              &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3663043917133349676?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3663043917133349676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3663043917133349676' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3663043917133349676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3663043917133349676'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/06/help-spread-firefox-day.html' title='Help Spread Firefox Day'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4337287325694618636</id><published>2008-05-04T19:05:00.004-03:00</published><updated>2008-11-20T12:33:02.351-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='rss'/><title type='text'>My Google Reader Public Feeds</title><content type='html'>&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/web-20"&gt;Web 2.0&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/web-20"&gt;RSS&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/tech"&gt;Tech&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/tech"&gt;RSS&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/google"&gt;Google&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/google"&gt;RSS&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/apple"&gt;Apple&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/apple"&gt;RSS&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/startup"&gt;Startup&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/startup"&gt;RSS&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/rails"&gt;Rails&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/rails"&gt;RSS&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/dotnet"&gt;DotNet&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/dotnet"&gt;RSS&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/mobile"&gt;Mobile&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/mobile"&gt;RSS&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/developer"&gt;Developer&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/developer"&gt;RSS&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/geek"&gt;Geek&lt;/a&gt; - &lt;a href="http://www.google.com/reader/public/atom/user/02145143757808402091/label/geek"&gt;RSS&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/web-20" target="_blank"&gt;&lt;/a&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/startup" target="_blank"&gt;&lt;/a&gt;&lt;a href="http://www.google.com/reader/shared/user/02145143757808402091/label/geek" target="_blank"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4337287325694618636?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4337287325694618636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4337287325694618636' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4337287325694618636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4337287325694618636'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/05/my-google-reader-public-feeds.html' title='My Google Reader Public Feeds'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8235094980370315413</id><published>2008-04-15T06:48:00.006-03:00</published><updated>2008-10-23T08:45:11.572-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendasta'/><category scheme='http://www.blogger.com/atom/ns#' term='startups'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>It's A Mac, Mac World!</title><content type='html'>At &lt;a href="http://www.vendasta.com/"&gt;VendAsta&lt;/a&gt;, one of our core beliefs is that a developer should have the freedom to choose their own tools which help make them productive.  So what happens when a group of talented developers have the freedom to choose their operating system?  Well, they choose &lt;a href="http://www.apple.com/macosx/"&gt;OSX&lt;/a&gt; of course.&lt;br /&gt;&lt;br /&gt;This &lt;a href="http://blog.vendasta.com/2008/01/18/vendasta-is-born/"&gt;new Saskatoon software company&lt;/a&gt; originally decked everyone out with Dell's running Vista. Luckily Dell has a good return policy, because after &lt;a href="http://janakk.wordpress.com/2008/04/11/vista-a-work-in-progress/"&gt;numerous problems&lt;/a&gt; with networking, applications not running, the shiny new Vista soon became &lt;span style="font-style: italic;"&gt;unreliable annoying&lt;/span&gt; Vista. Since then, majority of us have &lt;span style="font-style: italic;"&gt;upgraded &lt;/span&gt;to OSX.  &lt;a href="http://squeeville.com/2008/03/29/jason-gets-a-mac/"&gt;Jason&lt;/a&gt; and Kevin are both kicking it with new &lt;a href="http://www.apple.com/macbookpro/features.html"&gt;multi-touch&lt;/a&gt; MacBook Pro's, &lt;a href="http://blog.vendasta.com/2008/02/07/new-arrivals-at-vendasta/"&gt;Allan is floating on Air&lt;/a&gt; and I have been packing a MacBook Pro since January '07.&lt;br /&gt;&lt;br /&gt;For the times that we need to use Windows, we simply fire up &lt;a href="http://www.microsoft.com/windows/products/windowsxp/default.mspx"&gt;XP&lt;/a&gt; on &lt;a href="http://www.vmware.com/products/fusion/"&gt;VMWare Fusion&lt;/a&gt; or &lt;a href="http://www.parallels.com/en/products/desktop/"&gt;Parallels&lt;/a&gt;. Some will argument that we are still using Windows, but there is a fundamental difference; &lt;span style="font-style: italic;"&gt;Windows is&lt;/span&gt;&lt;span style="font-style: italic;"&gt; no longer our primary operating system&lt;/span&gt;, it has simply become a tool like Photoshop or Adobe Reader.  Running XP inside Parallels on 1 gig of allocated ram, I find that everything runs pretty fast, including Visual Studio. And the beauty is that when Explorer shell crashes&lt;span style="font-style: italic;"&gt; (as it often does) &lt;/span&gt;I can simply &lt;a href="http://en.wikipedia.org/wiki/Expos%C3%A9_%28Mac_OS_X%29"&gt;Exposé&lt;/a&gt; out into OSX and restart my instance of Windows.&lt;br /&gt;&lt;br /&gt;I still have a number of pro-PC friends that argue, &lt;span style="font-style: italic;"&gt;"a Mac is nice for my mom because she doesn't know how to use a computer"&lt;/span&gt;. Well, this may have been the case a few years back, but since the release of &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X_v10.4"&gt;Tiger&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Mac_OS_X_v10.5"&gt;Leopard&lt;/a&gt;, OSX has become the world's most advanced operating system, with powerful features like &lt;a href="http://en.wikipedia.org/wiki/Automator"&gt;Automator&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Expos%C3%A9_%28Mac_OS_X%29"&gt;Expose&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Spaces_%28software%29"&gt;Spaces&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Time_Machine_%28Apple_software%29"&gt;Time Machine&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Time_Machine_%28Apple_software%29"&gt;Spotlight&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Preview_%28software%29"&gt;Preview&lt;/a&gt;, and most of all, is incredibly stable.&lt;br /&gt;&lt;br /&gt;There was a great article yesterday, &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;amp;articleId=9076698"&gt;Windows Is 'Collapsing'&lt;/a&gt; which outlined the massive failure of Vista to innovative and impress the consumer.  The reality is that many enterprises are not making the switch to Vista and simply sticking with XP.&lt;br /&gt;&lt;blockquote&gt;"This is a large part of the reason [why] Windows Vista delivered primarily incremental improvements," they said. In turn, that became one of the reasons why businesses pushed back Vista deployment plans. "Most users do not understand the benefits of Windows Vista or do not see Vista as being better enough than Windows XP to make incurring the cost and pain of migration worthwhile." &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;amp;articleId=9076698"&gt;ComputerWorld&lt;/a&gt;&lt;/blockquote&gt;This is exactly the case here at VendAsta, because as more of the typical desktop apps are pushed onto the web, using Windows as your primary operating system is becoming less and less important.&lt;span name="intelliTxt" id="intelliTXT"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8235094980370315413?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8235094980370315413/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8235094980370315413' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8235094980370315413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8235094980370315413'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/04/its-mac-mac-world.html' title='It&apos;s A Mac, Mac World!'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-6630906661164541344</id><published>2008-03-27T07:27:00.004-03:00</published><updated>2008-03-27T07:39:37.565-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='graphics'/><title type='text'>Adobe Photoshop Express Launches</title><content type='html'>I remember at the start of the Web 2.0 boom, when traditional desktop application were starting to migrate to the web, Photoshop has one of those applications that many skeptics argued would never make it to the web. &lt;span style="font-style: italic;"&gt;'Sure, the web is good for basic stuff, but you'll never see Photoshop online.'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Well, today is a landmark because &lt;a href="http://www.adobe.com/aboutadobe/pressroom/pressreleases/200803/032708PhotoshopExpress.html"&gt;Adobe releases a web version&lt;/a&gt; of their massive graphic application, &lt;a href="https://www.photoshop.com/express"&gt;Photoshop Express&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-6630906661164541344?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/6630906661164541344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=6630906661164541344' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6630906661164541344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6630906661164541344'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/adobe-photoshop-express-launches.html' title='Adobe Photoshop Express Launches'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-870634805181484094</id><published>2008-03-18T14:13:00.002-03:00</published><updated>2008-03-18T14:16:05.850-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>Online Social Identity and Reputation</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/v4DnJ7rOSsE&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/v4DnJ7rOSsE&amp;rel=0" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://blog.nomoredoorknocking.com/"&gt;http://blog.nomoredoorknocking.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-870634805181484094?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/870634805181484094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=870634805181484094' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/870634805181484094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/870634805181484094'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/online-social-identity-and-reputation.html' title='Online Social Identity and Reputation'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1851043148283592798</id><published>2008-03-17T18:52:00.004-03:00</published><updated>2008-03-17T19:04:10.430-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='microsoft'/><title type='text'>VisualSVN : SVN Plugin for Visual Studio</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_k2sK8LXxLSU/R97pAhAViNI/AAAAAAAAJg4/9RyIkhWTzW0/s1600-h/visualsvn.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_k2sK8LXxLSU/R97pAhAViNI/AAAAAAAAJg4/9RyIkhWTzW0/s320/visualsvn.png" alt="" id="BLOGGER_PHOTO_ID_5178832816591702226" border="0" /&gt;&lt;/a&gt;Looking for a good &lt;a href="http://subversion.tigris.org"&gt;Subversion&lt;/a&gt; plugin for Visual Studio? Well, &lt;a href="http://www.visualsvn.com/"&gt;VisualSVN&lt;/a&gt; might be just what you are looking for:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;icon status lets you know which files are modified&lt;br /&gt;&lt;/li&gt;&lt;li&gt;delete, rename and adding of files inside Visual Studio are automatically updated in SVN&lt;/li&gt;&lt;li&gt;quick access to SVN operations like Show Changes and Commit from context menu&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1851043148283592798?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1851043148283592798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1851043148283592798' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1851043148283592798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1851043148283592798'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/visualsvn-svn-plugin-for-visual-studio.html' title='VisualSVN : SVN Plugin for Visual Studio'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_k2sK8LXxLSU/R97pAhAViNI/AAAAAAAAJg4/9RyIkhWTzW0/s72-c/visualsvn.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2819775983251243047</id><published>2008-03-16T15:18:00.005-03:00</published><updated>2008-03-16T15:31:15.485-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><title type='text'>PicLens : Amazing Full-Screen Photo Viewer In Firefox</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_k2sK8LXxLSU/R91mfRAViJI/AAAAAAAAJgk/JvqUUOT2AjQ/s1600-h/piclens.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp1.blogger.com/_k2sK8LXxLSU/R91mfRAViJI/AAAAAAAAJgk/JvqUUOT2AjQ/s320/piclens.png" alt="" id="BLOGGER_PHOTO_ID_5178407833872730258" border="0" /&gt;&lt;/a&gt;I remember reading about &lt;a href="http://www.piclens.com/"&gt;PicLens&lt;/a&gt; when it &lt;a href="http://www.techcrunch.com/2006/10/20/piclens-super-size-your-slide-shows/"&gt;first came out&lt;/a&gt;, but sort of forgot about it until recently when a friend sent me a link, and &lt;span style="font-style: italic;"&gt;WOW is it amazing! &lt;/span&gt; This &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/5579"&gt;add-on&lt;/a&gt; turns Firefox into a full-screen 3D photo viewer for your online photo galleries like Picasa, Flickr, Facebook, Google Images and more.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/FjetHe-DTVs&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/FjetHe-DTVs&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/5579"&gt;https://addons.mozilla.org/en-US/firefox/addon/5579&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2819775983251243047?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2819775983251243047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2819775983251243047' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2819775983251243047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2819775983251243047'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/piclens-amazing-full-screen-photo.html' title='PicLens : Amazing Full-Screen Photo Viewer In Firefox'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_k2sK8LXxLSU/R91mfRAViJI/AAAAAAAAJgk/JvqUUOT2AjQ/s72-c/piclens.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1429439886591350846</id><published>2008-03-13T10:28:00.002-03:00</published><updated>2008-03-13T10:31:51.083-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>12 Future Apps For iPhone</title><content type='html'>&lt;a href="http://www.readwriteweb.com"&gt;ReadWriteWeb&lt;/a&gt; had a great article today about the &lt;a href="http://www.readwriteweb.com/archives/12_future_apps_for_your_iphone.php"&gt;12 Future Apps For Your iPhone&lt;/a&gt;.  Definitenly worth a read, pretty interesting ideas of the potential impact the iPhone may have on society and technology.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1429439886591350846?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1429439886591350846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1429439886591350846' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1429439886591350846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1429439886591350846'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/12-future-apps-for-iphone.html' title='12 Future Apps For iPhone'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8212019911147233528</id><published>2008-03-12T18:51:00.000-03:00</published><updated>2008-03-12T18:53:09.561-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Microsoft Windows 1.0, Only $99!!</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/GL4hyATkQ74&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/GL4hyATkQ74&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8212019911147233528?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8212019911147233528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8212019911147233528' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8212019911147233528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8212019911147233528'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/microsoft-windows-10-only-99.html' title='Microsoft Windows 1.0, Only $99!!'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3282104646436711221</id><published>2008-03-11T22:09:00.004-03:00</published><updated>2008-10-23T08:36:13.494-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>Firefox Speed Dial?!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_k2sK8LXxLSU/R9cuqBAVh-I/AAAAAAAAJcI/La29biG5oqw/s1600-h/firefox_speeddial.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp2.blogger.com/_k2sK8LXxLSU/R9cuqBAVh-I/AAAAAAAAJcI/La29biG5oqw/s200/firefox_speeddial.png" alt="" id="BLOGGER_PHOTO_ID_5176657596044904418" border="0" /&gt;&lt;/a&gt;I have to give &lt;a href="http://www.opera.com/"&gt;Opera&lt;/a&gt; credit for coming up with &lt;a href="http://www.opera.com/products/desktop/features/"&gt;Speed Dial&lt;/a&gt;, pretty powerful browser feature.  But being a Firefox guy, it was a feature I  longed for but learned to live without. That was, until I discovered the &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/4810"&gt;Firefox Speed Dial Add-On&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This extension is totally customizable, letting you change refresh rate of thumbnails, the number of dials to even use your own thumbnail images.  And the best part, it's incredibly quick loading.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/4810"&gt;Speed Dial&lt;/a&gt; has now tied &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/3615"&gt;Del.icio.us Bookmarks&lt;/a&gt; as my #1 favorite extension.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3282104646436711221?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3282104646436711221/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3282104646436711221' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3282104646436711221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3282104646436711221'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/firefox-speed-dial.html' title='Firefox Speed Dial?!'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_k2sK8LXxLSU/R9cuqBAVh-I/AAAAAAAAJcI/La29biG5oqw/s72-c/firefox_speeddial.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8355560566547764974</id><published>2008-03-11T21:40:00.004-03:00</published><updated>2008-03-11T21:51:52.181-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='.net'/><title type='text'>LINQPad : Powerful LINQ Editor</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_k2sK8LXxLSU/R9cn8RAVh8I/AAAAAAAAJbk/CMMq--mtFSs/s1600-h/linqpadscreen.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_k2sK8LXxLSU/R9cn8RAVh8I/AAAAAAAAJbk/CMMq--mtFSs/s200/linqpadscreen.png" alt="" id="BLOGGER_PHOTO_ID_5176650212996122562" border="0" /&gt;&lt;/a&gt;&lt;a href="http://en.wikipedia.org/wiki/Language_Integrated_Query"&gt;LINQ&lt;/a&gt;, is one of the most exciting new .NET features to come of late; incredibly powerful way to query SQL, XML and Objects using the same SQL-like syntax.&lt;br /&gt;&lt;br /&gt;And just as exciting as LINQ, is &lt;a href="http://www.linqpad.net/"&gt;LINQPad&lt;/a&gt;; a simple editor that lets you interactively query SQL  databases, xml files or objects.  Not to mention over 200 examples and code snippets built right in and at your disposal.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.linqpad.net/"&gt;http://www.linqpad.net&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8355560566547764974?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8355560566547764974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8355560566547764974' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8355560566547764974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8355560566547764974'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/linqpad-powerful-linq-editor.html' title='LINQPad : Powerful LINQ Editor'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_k2sK8LXxLSU/R9cn8RAVh8I/AAAAAAAAJbk/CMMq--mtFSs/s72-c/linqpadscreen.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-7434017357037553013</id><published>2008-03-04T08:35:00.003-04:00</published><updated>2008-03-04T08:45:40.700-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft'/><title type='text'>Windows Mobile 7 Sneak Peak</title><content type='html'>Here is a &lt;a href="http://microsoft.blognewschannel.com/archives/2008/01/06/exclusive-windows-mobile-7-to-focus-on-touch-and-motion-gestures/"&gt;great sneak peak of the new Windows Mobile 7&lt;/a&gt;, which will incorporate a lot of new interface features like touch and motion gestures.  For example, you can awake your device from sleep mode by simply shaking it. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://microsoft.blognewschannel.com/archives/2008/01/06/exclusive-windows-mobile-7-to-focus-on-touch-and-motion-gestures/"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://static.zooomr.com/images/4073018_715c006911_o.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-7434017357037553013?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/7434017357037553013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=7434017357037553013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7434017357037553013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7434017357037553013'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/windows-mobile-7-sneak-peak.html' title='Windows Mobile 7 Sneak Peak'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2894375968926586713</id><published>2008-03-04T07:20:00.006-04:00</published><updated>2008-03-04T11:06:06.276-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Google Gears on Mobile Devices</title><content type='html'>Google just released a &lt;a href="http://code.google.com/apis/gears/mobile.html"&gt;mobile version&lt;/a&gt; of &lt;a href="http://gears.google.com/"&gt;Google Gears&lt;/a&gt;, which would allow your mobile web application to continue to function even &lt;span style="font-style: italic;"&gt;without &lt;/span&gt;network connection.&lt;br /&gt;&lt;blockquote&gt;"Mobile devices are, by their nature, often disconnected from the network. Even when connected, the latencies in data connections in mobile networks can make web applications sluggish. Google Gears gives developers the tools to overcome these obstacles.&lt;br /&gt;&lt;br /&gt;Google Gears works in exactly the same way on a Windows Mobile 5 or 6 device as it does on a desktop PC. If you've already written an application that uses Google Gears, your application will also work on a Windows Mobile 5 or 6 device."&lt;/blockquote&gt;Checkout the video on &lt;a href="http://google-code-updates.blogspot.com/2008/03/power-up-your-mobile-web-applications.html"&gt;Google Gears offline capabilities for mobile devices&lt;/a&gt;.&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/wZJbidoQg30&amp;amp;rel=1&amp;amp;border=0"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/wZJbidoQg30&amp;amp;rel=1&amp;amp;border=0" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2894375968926586713?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2894375968926586713/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2894375968926586713' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2894375968926586713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2894375968926586713'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/03/google-gears-on-mobile-devices.html' title='Google Gears on Mobile Devices'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-6478435404104152478</id><published>2008-02-28T14:56:00.002-04:00</published><updated>2008-02-28T15:21:52.015-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tools'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Great Screen Capture App for Windows</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://wisdom-soft.com/images/sh/sh_free_from.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px;" src="http://wisdom-soft.com/images/sh/sh_free_from.gif" alt="" border="0" /&gt;&lt;/a&gt;I found a really great free &lt;a href="http://wisdom-soft.com/products/screenhunter_free.htm"&gt;screen capture application&lt;/a&gt; browsing through the list of &lt;a href="http://ideas20.blogspot.com/2008/02/best-freeware-utilities-for-windows.html"&gt;best freeware utilities&lt;/a&gt;.  I've tried lots of other screen capture apps, but always found them annoying having to open to the them whenever I needed to grab a screenshot.  &lt;a href="http://wisdom-soft.com/products/screenhunter_free.htm"&gt;ScreenHunter&lt;/a&gt; on the other hand, let's you define a hotkey, default folder and filename, and whether you want full screen, active window or drag for specific area. &lt;br /&gt;&lt;br /&gt;For example, I got CTRL+F12 as hotkey, Desktop as my default folder, Screenshot_ as default filename and Rectangle Area capture. So now I tap the hotkey, a crosshairs pops up, lets me drag around section of screen I want to capture, then simply click mouse button, and the file Screenshot_1 is automatically saved to my Desktop.&lt;br /&gt;&lt;br /&gt;If you are looking for a good screen capture app, checkout &lt;a href="http://wisdom-soft.com/products/screenhunter_free.htm"&gt;ScreenHunter&lt;/a&gt;, it's a solid little app and it's free.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-6478435404104152478?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/6478435404104152478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=6478435404104152478' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6478435404104152478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6478435404104152478'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/02/great-screen-capture-app-for-windows.html' title='Great Screen Capture App for Windows'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1666712280898016361</id><published>2008-02-28T06:48:00.016-04:00</published><updated>2008-02-28T11:36:58.700-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Our Wait Is Over...Jotspot Arrives!</title><content type='html'>It's been a long time coming, 16 months since Google acquired the &lt;a href="http://www.jotspot.com/"&gt;online wiki service JotSpot&lt;/a&gt;. And since that time, has been &lt;a href="http://www.itworld.com/Tech/2987/070518jotspot/"&gt;much rumored&lt;/a&gt; when it would finally be integrated into the &lt;a href="http://www.google.com/a/"&gt;Google Apps&lt;/a&gt; suite.  Well, the wait is now over, &lt;span style="font-style: italic;"&gt;JotSpot finally arrives!&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://sites.google.com/"&gt;Google Sites&lt;/a&gt; is the easiest way to make information accessible to people who need quick, up-to-date access. People can work together on a Site to add file attachments, information from other Google applications (like &lt;a href="http://docs.google.com"&gt;Google Docs&lt;/a&gt;, &lt;a href="http://www.google.com/calendar"&gt;Google Calendar&lt;/a&gt;, &lt;a href="http://www.youtube.com/"&gt;YouTube&lt;/a&gt; and &lt;a href="http://picasaweb.google.com"&gt;Picasa&lt;/a&gt;), and new free-form content. Creating a site together is as easy as editing a document, and you always control who has access, whether it's just yourself, your team, or your whole organization. You can even publish Sites to the world. The &lt;a href="http://sites.google.com"&gt;Google Sites&lt;/a&gt; web application is accessible from any internet connected computer.&lt;/blockquote&gt;&lt;span style="font-style: italic;"&gt;Wow!&lt;/span&gt; If that's not enough, checkout the &lt;a href="http://www.youtube.com/watch?v=X_KnC2EIS5w"&gt;features video&lt;/a&gt;.&lt;center&gt;&lt;object width="355" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/X_KnC2EIS5w&amp;rel=1&amp;border=0"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/X_KnC2EIS5w&amp;rel=1&amp;border=0" type="application/x-shockwave-flash" wmode="transparent"width="355" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1666712280898016361?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1666712280898016361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1666712280898016361' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1666712280898016361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1666712280898016361'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/02/our-wait-is-overjotspot-arrives.html' title='Our Wait Is Over...Jotspot Arrives!'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-54395388410366694</id><published>2008-02-24T09:27:00.002-04:00</published><updated>2008-02-24T09:46:13.823-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Best Freeware Utilities For Windows</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family: arial;"&gt;In a recent re-install of Windows XP, I came across good site with a &lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.techsupportalert.com/best_46_free_utilities.htm"&gt;great collection&lt;/a&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm"&gt;&lt;span style="font-family: arial;"&gt; &lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: arial;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm"&gt;of the best freeware utilities for Windows&lt;/a&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family: arial;"&gt;(&lt;/span&gt;&lt;a style="font-family: arial;" href="http://www.techsupportalert.com/rss/best46.rss"&gt;rss&lt;/a&gt;&lt;span style="font-family: arial;"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family: arial;"&gt;.  &lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;ol style="font-family: arial;"&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt; &lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#1"&gt;Best Free Web                 Browser&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#2"&gt;Best Free                 Anti-Virus Software&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#3"&gt;Best                 Free Adware/Spyware/Scumware                 Remover&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#4"&gt;Best                 Free Browser Protection                 Utility&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#5"&gt;Best                 Free Firewall&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#6"&gt;Best Free Trojan Scanner/Trojan                 Remover&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#7"&gt;Best Free                 Rootkit                 Scanner/Remover&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#8"&gt;Best Free                 Intrusion Detection Utility&lt;/a&gt; &lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#9"&gt;Best Free                 Anonymous Surfing Service&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#10"&gt;Best Free Software                 Suite&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#11"&gt;Best Free File                 Manager&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#12"&gt;Best Free Email                 Client&lt;/a&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt;&lt;/span&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#13"&gt;Best Free Web                 Mail Accessory&lt;/a&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#14"&gt;Best Free Clipboard                 Replacement Utility&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#15"&gt;Best Free HTML                 Editor&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#16"&gt;Best Free Spam                 Filter for the Average User&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#17"&gt;Best Free Spam                 Filter for Experienced Users&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#18"&gt;Best Free Popup                 Stopper&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#19"&gt;Best Free Desktop                 Search Utility&lt;/a&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#20"&gt;Best Free Digital                 Image Viewer&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#21"&gt;Best Free Digital                 Editor&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#22"&gt;Best Free Digital                 Photo Organizer&lt;/a&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#23"&gt;Best Free Notepad                 Replacement&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#24"&gt;Best File Archiver/Zip                 Utility&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#25"&gt;Best Free Hotkey /                 Macro Recorder Utility &lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#26"&gt;Best Free                 Registry Cleaner&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#27"&gt;&lt;strong style="font-weight: 400;"&gt;Best Free BitTorrent                 Client&lt;/strong&gt; &lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style6"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#28"&gt;&lt;span style="font-weight: 400;"&gt;Best Free FTP Client&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#29"&gt;Best Free                 Bookmark Cleaner&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#30"&gt;Best Free Folder                 Synchronization Utility&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#31"&gt;Best Free Screen                 Capture Utility &lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#32"&gt;Best Free Search                 Toolbar&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#33"&gt;Best Free                 Download Manager&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#34"&gt;Best Free Web                 Site Ripper&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#35"&gt;Best Free                 Download/Upload Meter&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;/strong&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;strong style="font-weight: 400;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#36"&gt;Best Free TCP                 Settings Tweaker&lt;/a&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#37"&gt;Best Free File                 Cleaner&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#38"&gt;Best Free                 Resource Meter&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#38"&gt;Best Free                 Resource Meter&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#40"&gt;Best Free Secure                 Erase Utility&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#41"&gt;&lt;strong style="font-weight: 400;"&gt;Best Free Registry                 Editor&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#42"&gt;Best Free Process                 Viewer&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="style3"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#43"&gt;&lt;strong style="font-weight: 400;"&gt;B&lt;/strong&gt;est Free System Information                 Utility&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#44"&gt;Best Free Search and                 Replace Utility &lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#45"&gt;Best Free                 Outliner&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.techsupportalert.com/best_46_free_utilities.htm#46"&gt;Best Free Rename                 Utility&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-54395388410366694?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/54395388410366694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=54395388410366694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/54395388410366694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/54395388410366694'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/02/best-freeware-utilities-for-windows.html' title='Best Freeware Utilities For Windows'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4208027029947629557</id><published>2008-02-07T17:17:00.000-04:00</published><updated>2008-02-07T18:19:46.084-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='environment'/><title type='text'>Fast Food, Bad For The Environment</title><content type='html'>&lt;a href="http://www.celsias.com"&gt;Celsias&lt;/a&gt; had a good posting today about the environment impact of fast food.  A recent &lt;a href="http://www.cse.polyu.edu.hk/%7Eactivi/BAQ2002/BAQ2002_files/Proceedings/PosterSession/43.pdf"&gt;Hong Kong study&lt;/a&gt; shows that a fast food restaurant making four hamburgers emits same amount of &lt;a href="http://en.wikipedia.org/wiki/Volatile_organic_compound"&gt;volatile organic compounds&lt;/a&gt; as &lt;span style="font-style: italic;"&gt;driving a car for 1,000 miles! &lt;/span&gt; The article also mentions &lt;a href="http://openthefuture.com/cheeseburger_CF.html" target="_blank"&gt;cheeseburger footprint calculator&lt;/a&gt; which calculates that the greenhouse gas emissions that arise every year from production and consumption of cheeseburgers is equivalent to that produced from &lt;span style="font-style: italic;"&gt;6.5 million to 19.6 million SUVs.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I've previously posted about &lt;a href="http://ideas20.blogspot.com/2007/12/save-planet-skip-drive-through.html"&gt;idling vehicles in drive-throughs&lt;/a&gt;, but skipping fast food all together is probably an even better idea.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4208027029947629557?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4208027029947629557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4208027029947629557' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4208027029947629557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4208027029947629557'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2008/02/fast-food-bad-for-environment.html' title='Fast Food, Bad For The Environment'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-531220177193153172</id><published>2007-12-30T17:08:00.000-04:00</published><updated>2007-12-30T21:02:41.946-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='environment'/><title type='text'>Save The Planet, Skip The Drive-Through?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_k2sK8LXxLSU/R3gQsrRL1JI/AAAAAAAAHro/hWsqlEqtIYQ/s1600-h/drive-through_cars.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_k2sK8LXxLSU/R3gQsrRL1JI/AAAAAAAAHro/hWsqlEqtIYQ/s400/drive-through_cars.jpg" alt="" id="BLOGGER_PHOTO_ID_5149884533613253778" border="0" /&gt;&lt;/a&gt;If &lt;a href="http://ideas20.blogspot.com/2007/12/ups-saved-3-million-gallons-of-gas-by.html"&gt;UPS can save 3 million gallons of gas a year by not turning left&lt;/a&gt;, how much &lt;a href="http://en.wikipedia.org/wiki/C02"&gt;CO2&lt;/a&gt; emissions can be reduced if we skipped the &lt;a href="http://en.wikipedia.org/wiki/Drive-up_teller_window"&gt;drive-through&lt;/a&gt;?&lt;br /&gt;&lt;br /&gt;Since the 1940's, the &lt;a href="http://en.wikipedia.org/wiki/Drive-up_teller_window"&gt;drive-through&lt;/a&gt; has become a defining characteristic of our vehicle-centric society.  From fast food to banking to liquor stores to even marriage chapels, we are addicted to the convenience of being served through our vehicle window.&lt;br /&gt;&lt;br /&gt;But there is a reason why &lt;a href="http://en.wikipedia.org/wiki/World_population#The_17_most_populous_nations"&gt;North America with only 5% of the world population&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/World_oil_consumption#Petroleum_by_country"&gt;uses 25% of the world's oil supply&lt;/a&gt;.  It's not because we are incredibly advanced, &lt;a href="http://www-personal.umich.edu/%7Emejn/cartograms/greenhouse1024x512.png"&gt;it's because we are incredibly wasteful&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;At what point do we start questioning the society norm and ask whether things like drive-throughs are &lt;a href="http://en.wikipedia.org/wiki/Sustainable"&gt;sustainable&lt;/a&gt;? Does it make sense to leave your vehicle idling in a twelve car lineup waiting to order from the drive-through window?&lt;br /&gt;&lt;br /&gt;I'd highly recommend the documentaries &lt;a href="http://www.oilcrashmovie.com/"&gt;Crude Awakening&lt;/a&gt; and &lt;a href="http://www.endofsuburbia.com/"&gt;End Of Suburbia&lt;/a&gt;, both offering interesting perspectives on the depleting global oil supply.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-531220177193153172?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/531220177193153172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=531220177193153172' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/531220177193153172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/531220177193153172'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/save-planet-skip-drive-through.html' title='Save The Planet, Skip The Drive-Through?'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_k2sK8LXxLSU/R3gQsrRL1JI/AAAAAAAAHro/hWsqlEqtIYQ/s72-c/drive-through_cars.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-7776329123544325022</id><published>2007-12-24T16:32:00.000-04:00</published><updated>2007-12-24T16:39:06.944-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='networking'/><title type='text'>Default Router Password List</title><content type='html'>I &lt;a href="http://windpower.stumbleupon.com/review/14234288/"&gt;stumbled&lt;/a&gt; across a massive online spreadsheet with the &lt;a style="font-weight: bold;" href="http://spreadsheets.google.com/pub?key=pO4WlLiTR2PtP3rLRdRUVcQ"&gt;default passwords for almost every router&lt;/a&gt;,&lt;span style="font-style: italic;"&gt; enjoy!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-7776329123544325022?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/7776329123544325022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=7776329123544325022' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7776329123544325022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7776329123544325022'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/default-router-password-list.html' title='Default Router Password List'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8703655227649452054</id><published>2007-12-24T12:12:00.001-04:00</published><updated>2007-12-24T12:23:02.354-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><title type='text'>Expert Exchange, View Posts Without Membership</title><content type='html'>I despise sites that require memberships to view content like &lt;a href="http://www.experts-exchange.com/"&gt;Expert Exchange&lt;/a&gt;.  The little trick they do to blur content from non-members is annoying to say the least.   But here is an easy way to view all post content without a membership.&lt;br /&gt;&lt;br /&gt;If you notice that one of your &lt;a href="http://www.google.com/search?hl=en&amp;amp;lr=&amp;amp;as_qdr=all&amp;amp;q=generics+vb.net+site%3Aexperts-exchange.com&amp;amp;btnG=Search"&gt;Google search results is from Expert Exchange&lt;/a&gt;, rather than clicking the actual link, instead click the &lt;a href="http://72.14.205.104/search?q=cache:dgtzedOPcpUJ:www.experts-exchange.com/Programming/Languages/.NET/Visual_Basic.NET/Q_22894415.html+generics+vb.net+site:experts-exchange.com&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;cd=1"&gt;Cached link&lt;/a&gt; at bottom of item.  And surprise, the once blurred post results are now visible again!&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8703655227649452054?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8703655227649452054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8703655227649452054' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8703655227649452054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8703655227649452054'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/expert-exchange-view-posts-without.html' title='Expert Exchange, View Posts Without Membership'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5030848386759530851</id><published>2007-12-20T15:41:00.000-04:00</published><updated>2007-12-20T15:51:02.512-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='motivation'/><title type='text'>Stephen Covey : The First Step To Reach Your Goals</title><content type='html'>A few years back I was very fortunate to be able to attend a &lt;a href="http://learntolead.usask.ca/"&gt;leadership conference in Saskatoon&lt;/a&gt; where &lt;a href="http://en.wikipedia.org/wiki/Stephen_Covey"&gt;Stephen Covey's&lt;/a&gt; presented his &lt;a href="http://www.amazon.ca/Habits-Highly-Effective-People-Powerful/dp/0743269519/ref=pd_bbs_sr_1?ie=UTF8&amp;s=books&amp;qid=1198180087&amp;sr=8-1"&gt;7 Habits of Highly Effective People&lt;/a&gt;, truly inspirational. &lt;br /&gt;&lt;object width="425" height="373"&gt;&lt;param name="movie" value="http://www.youtube.com/v/0EmxgfopJnk&amp;rel=1&amp;border=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/0EmxgfopJnk&amp;rel=1&amp;border=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="373"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5030848386759530851?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5030848386759530851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5030848386759530851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5030848386759530851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5030848386759530851'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/stephen-covey-first-step-to-reach-your.html' title='Stephen Covey : The First Step To Reach Your Goals'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2595648036821182356</id><published>2007-12-20T11:44:00.000-04:00</published><updated>2007-12-20T12:03:02.290-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gmail'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Remember The Milk, Hot New Gmail Integration</title><content type='html'>Oh man, I've been waiting for this, &lt;a href="http://www.rememberthemilk.com"&gt;Remember The Milk&lt;/a&gt; just launched &lt;a href="http://www.rememberthemilk.com/services/gmail/"&gt;Firefox Add-On&lt;/a&gt; which adds a slick right sidebar into Gmail with all your RTM Tasks.&lt;br /&gt;&lt;blockquote&gt;"Remember The Milk for Gmail is a Firefox extension that allows you to manage your tasks in &lt;a href="http://mail.google.com/mail/"&gt;Gmail&lt;/a&gt; (complete, postpone, and edit tasks), add new tasks (and connect them with your emails, contacts, and &lt;a href="http://www.google.com/calendar"&gt;Google Calendar&lt;/a&gt; events), automatically add tasks for starred messages or specific labels, and &lt;a href="http://www.rememberthemilk.com/services/gmail/#features"&gt;much more&lt;/a&gt;!"&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_k2sK8LXxLSU/R2qOSbRL1AI/AAAAAAAAHnI/63NBwesmdB0/s1600-h/ss_gmail.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_k2sK8LXxLSU/R2qOSbRL1AI/AAAAAAAAHnI/63NBwesmdB0/s400/ss_gmail.png" alt="" id="BLOGGER_PHOTO_ID_5146081971432838146" border="0" /&gt;&lt;/a&gt;If you haven't used Remember The Milk, you should totally check it out! &lt;a href="http://www.rememberthemilk.com/services/igoogle/"&gt;IGoogle gadget&lt;/a&gt;, &lt;a href="http://www.rememberthemilk.com/services/iphone/"&gt;iPhone interface&lt;/a&gt;, &lt;a href="http://www.rememberthemilk.com/services/googlegears/"&gt;Offline with Google Gears&lt;/a&gt;, &lt;a href="http://www.rememberthemilk.com/services/twitter/"&gt;Twitter support&lt;/a&gt;, &lt;a href="http://www.rememberthemilk.com/services/googlecalendar/"&gt;Google Calendar integration&lt;/a&gt;, &lt;a href="http://www.rememberthemilk.com/services/netvibes/"&gt;Netvibes&lt;/a&gt;, &lt;a href="http://www.rememberthemilk.com/help/answers/locations/"&gt;mapping&lt;/a&gt;, &lt;a href="http://www.rememberthemilk.com/help/answers/quickadd/"&gt;quick add bookmarklet&lt;/a&gt;,  &lt;a href="http://jott.com/jott-links/"&gt;Jott support&lt;/a&gt;, &lt;a href="http://www.people.cornell.edu/pages/yi38/rtm/"&gt;OS X Dashboard widget&lt;/a&gt;, and the list just keeps on growing!&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2595648036821182356?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2595648036821182356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2595648036821182356' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2595648036821182356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2595648036821182356'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/remember-milk-hot-new-gmail-integration.html' title='Remember The Milk, Hot New Gmail Integration'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_k2sK8LXxLSU/R2qOSbRL1AI/AAAAAAAAHnI/63NBwesmdB0/s72-c/ss_gmail.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2094192073352221572</id><published>2007-12-18T18:09:00.000-04:00</published><updated>2007-12-30T17:18:15.951-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='business'/><title type='text'>UPS Saved 3 Million Gallons Of Gas, By Not Turning Left</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_k2sK8LXxLSU/R2hIKbRL0-I/AAAAAAAAHkE/XQawy45EPg0/s1600-h/ups_logo.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp2.blogger.com/_k2sK8LXxLSU/R2hIKbRL0-I/AAAAAAAAHkE/XQawy45EPg0/s200/ups_logo.gif" alt="" id="BLOGGER_PHOTO_ID_5145441918226519010" border="0" /&gt;&lt;/a&gt;Wow, here is an &lt;a href="http://thinkinnovate.blogspot.com/2007/12/ups-saved-3-million-gallons-of-gas-by.html"&gt;idea worth mentioning&lt;/a&gt;, &lt;a href="http://www.ups.com/"&gt;UPS&lt;/a&gt; realized their trucks wasted a lot of time idling in left lane waiting to turn.&lt;br /&gt;&lt;br /&gt;The solution, they decided to map routes that reduced the number of left turns.&lt;br /&gt;&lt;br /&gt;The result, last year they &lt;span style="font-style: italic;"&gt;reduced &lt;/span&gt;&lt;span style="font-style: italic;"&gt;31,000 metric tonnes of Co2 emissions&lt;/span&gt;.&lt;br /&gt;&lt;blockquote&gt;"Last year, according to Heather Robinson, a U.P.S. spokeswoman, the software helped the company shave 28.5 million miles off its delivery routes, which has resulted in savings of roughly three million gallons of gas and has reduced CO2 emissions by 31,000 metric tons." -&lt;a href="http://www.nytimes.com/2007/12/09/magazine/09left-handturn.html?_r=1&amp;amp;oref=slogin"&gt;NY Times&lt;/a&gt;&lt;/blockquote&gt;&lt;a href="http://www.nytimes.com/2007/12/09/magazine/09left-handturn.html?_r=1&amp;amp;oref=slogin"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2094192073352221572?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2094192073352221572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2094192073352221572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2094192073352221572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2094192073352221572'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/ups-saved-3-million-gallons-of-gas-by.html' title='UPS Saved 3 Million Gallons Of Gas, By Not Turning Left'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_k2sK8LXxLSU/R2hIKbRL0-I/AAAAAAAAHkE/XQawy45EPg0/s72-c/ups_logo.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2104054347962346109</id><published>2007-12-14T18:21:00.000-04:00</published><updated>2007-12-20T12:45:41.133-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='calendar'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Embedded Google Calendar</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_k2sK8LXxLSU/R2LusLRL08I/AAAAAAAAHhg/TcV6-QJOWRo/s1600-h/embed_promo.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5143936167117050818" style="FLOAT: right; MARGIN: 0pt 0pt 10px 10px; CURSOR: pointer" alt="" src="http://bp3.blogger.com/_k2sK8LXxLSU/R2LusLRL08I/AAAAAAAAHhg/TcV6-QJOWRo/s320/embed_promo.gif" border="0" /&gt;&lt;/a&gt;&lt;a href="http://www.google.com/calendar"&gt;Google Calendar&lt;/a&gt; is definitely one of my favorite Google Apps, so simple to use yet incredibly powerful. Subscribing to other's calendars lets you easily coordinate events among friends. The &lt;a href="http://www.google.com/support/calendar/bin/answer.py?answer=37242&amp;amp;ctx=sibling"&gt;text message notifications&lt;/a&gt; are incredible, free reminders sent to my cell phone prior to an event including the time and location. The interface is clean, with toggling between week, month and day views. And of course we can't forget subscribing to outside sources like &lt;a href="http://www.wunderground.com/"&gt;Weather&lt;/a&gt;, &lt;a href="http://www.last.fm/dashboard/events"&gt;Last.FM&lt;/a&gt;, &lt;a href="http://upcoming.yahoo.com/"&gt;Upcoming&lt;/a&gt;, &lt;a href="http://eventful.com/"&gt;Eventful&lt;/a&gt; and &lt;a href="http://www.fbcal.com/"&gt;Facebook&lt;/a&gt;, which &lt;a href="http://ideas20.blogspot.com/2007/10/weather-upcoming-lastfm-eventful-and.html"&gt;I've blogged about in the past&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Besides consuming outside resources, I think another major feature most people don't utilize is &lt;span style="FONT-STYLE: italic"&gt;syndicating public calendars&lt;/span&gt; and &lt;span style="FONT-STYLE: italic"&gt;embedding HTML calendar snippets&lt;/span&gt;. Both these features are incredibly powerful.&lt;br /&gt;&lt;br /&gt;Being a guy who loves chicken wings, awhile ago I posted a public calendar for cheap chicken wing nights in Saskatoon (&lt;a href="http://www.google.com/calendar/ical/tcmcd58i2dit5lsidb33seg3fg%40group.calendar.google.com/public/basic.ics"&gt;iCal&lt;/a&gt;, &lt;a href="http://www.google.com/calendar/feeds/tcmcd58i2dit5lsidb33seg3fg%40group.calendar.google.com/public/basic"&gt;RSS&lt;/a&gt;, &lt;a href="http://www.google.com/calendar/embed?src=tcmcd58i2dit5lsidb33seg3fg%40group.calendar.google.com&amp;amp;ctz=America/Regina"&gt;HTML&lt;/a&gt;). Here is that calendar embedded in this posting:&lt;br /&gt;&lt;center&gt;&lt;iframe style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" src="http://www.google.com/calendar/embed?showDate=0&amp;amp;showCalendars=0&amp;amp;mode=AGENDA&amp;amp;height=400&amp;amp;wkst=1&amp;amp;bgcolor=%23FFFFFF&amp;amp;src=tcmcd58i2dit5lsidb33seg3fg%40group.calendar.google.com&amp;amp;color=%230D7813&amp;amp;ctz=America%2FRegina" frameborder="0" width="400" scrolling="no" height="400"&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;br /&gt;I think there are many existing sites that could really benefit from an embedded Google Calendar.&lt;br /&gt;&lt;br /&gt;For example, the &lt;a href="http://www.broadwaytheatre.ca/"&gt;Saskatoon Broadway Theatre&lt;/a&gt; shows foreign, independent and documentary films, I love going to these movies, but I never know when they are playing. Rather than having a &lt;a href="http://www.broadwaytheatre.ca/calendar.html"&gt;single JPG image with calendar information&lt;/a&gt;, wouldn't it be great if they embedded a Google Calendar into their site? Similar to the chicken wing calendar, others could then easily subscribe to iCal feed and receive text message with movie notifications. I'll add that to my Christmas list.&lt;br /&gt;&lt;br /&gt;If you digged this article,&lt;em&gt; &lt;/em&gt;&lt;a href="http://digg.com/programming/Embedded_Google_Calendar"&gt;&lt;em&gt;then why not Digg it&lt;/em&gt;&lt;/a&gt;&lt;em&gt;?&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2104054347962346109?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2104054347962346109/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2104054347962346109' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2104054347962346109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2104054347962346109'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/embedded-google-calendar.html' title='Embedded Google Calendar'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_k2sK8LXxLSU/R2LusLRL08I/AAAAAAAAHhg/TcV6-QJOWRo/s72-c/embed_promo.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2461389728127818877</id><published>2007-12-14T10:46:00.000-04:00</published><updated>2007-12-14T11:28:13.650-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Easiest Way To Turn A Dell Into A Mac</title><content type='html'>My current contractor shipped me a laptop yesterday, knowing that I've been a mac-guy for past year now, they thought a few alterations would be helpful to make the transition back to a Dell, &lt;span style="font-style: italic;"&gt;thanks guys! :)&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_k2sK8LXxLSU/R2KYpbRL05I/AAAAAAAAHhI/6lGq7zPQKzU/s1600-h/dell_to_mac2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_k2sK8LXxLSU/R2KYpbRL05I/AAAAAAAAHhI/6lGq7zPQKzU/s400/dell_to_mac2.jpg" alt="" id="BLOGGER_PHOTO_ID_5143841561872421778" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_k2sK8LXxLSU/R2KYjrRL04I/AAAAAAAAHhA/bao6uKdpskw/s1600-h/dell_to_mac1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_k2sK8LXxLSU/R2KYjrRL04I/AAAAAAAAHhA/bao6uKdpskw/s400/dell_to_mac1.jpg" alt="" id="BLOGGER_PHOTO_ID_5143841463088173954" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_k2sK8LXxLSU/R2Kg57RL07I/AAAAAAAAHhY/yxw38g_e6NA/s1600-h/dell_to_mac3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_k2sK8LXxLSU/R2Kg57RL07I/AAAAAAAAHhY/yxw38g_e6NA/s400/dell_to_mac3.jpg" alt="" id="BLOGGER_PHOTO_ID_5143850641433285554" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2461389728127818877?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2461389728127818877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2461389728127818877' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2461389728127818877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2461389728127818877'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/easiest-way-to-turn-dell-into-mac.html' title='Easiest Way To Turn A Dell Into A Mac'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_k2sK8LXxLSU/R2KYpbRL05I/AAAAAAAAHhI/6lGq7zPQKzU/s72-c/dell_to_mac2.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1440454335124589152</id><published>2007-12-13T23:21:00.000-04:00</published><updated>2007-12-13T23:29:39.960-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>How Google Works</title><content type='html'>Here is a great &lt;a href="http://www.portfolio.com/images/site/editorial/Flash/google/google.swf?go=play"&gt;flash video on how Google search works&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1440454335124589152?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1440454335124589152/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1440454335124589152' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1440454335124589152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1440454335124589152'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/how-google-works.html' title='How Google Works'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8147681209562005093</id><published>2007-12-13T16:39:00.001-04:00</published><updated>2007-12-13T16:41:09.947-04:00</updated><title type='text'>Moving Past Procrastination...</title><content type='html'>I came across a great posting &lt;a href="http://www.positivityblog.com/index.php/2006/10/12/7-ways-to-move-beyond-procrastination/"&gt;7 ways to move beyond &lt;/a&gt;&lt;span style="color: rgb(53, 53, 53);" lang="EN-GB"&gt;&lt;a href="http://www.positivityblog.com/index.php/2006/10/12/7-ways-to-move-beyond-procrastination/"&gt;procrastination&lt;/a&gt;, the first thing I thought was, &lt;span style="font-style: italic;"&gt;'oh, this looks good, I'll read it later...'&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8147681209562005093?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8147681209562005093/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8147681209562005093' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8147681209562005093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8147681209562005093'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/moving-past-procrastination.html' title='Moving Past Procrastination...'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3393106751012214166</id><published>2007-12-12T21:04:00.000-04:00</published><updated>2007-12-12T21:10:08.520-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='design'/><title type='text'>Good Web Form Design PDF</title><content type='html'>I stumbled across an &lt;a href="http://www.lukew.com/resources/articles/WebForms_LukeW.pdf"&gt;amazing 112 page PDF on good web form design&lt;/a&gt;, filled with great examples of good and bad web forms. If you are a web developer, you should definitely take a look at this awesome documents: &lt;a href="http://www.lukew.com/resources/articles/WebForms_LukeW.pdf"&gt;http://www.lukew.com/resources/articles/WebForms_LukeW.pdf&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3393106751012214166?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3393106751012214166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3393106751012214166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3393106751012214166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3393106751012214166'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/good-web-form-design-pdf.html' title='Good Web Form Design PDF'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4825278888290859576</id><published>2007-12-12T19:06:00.000-04:00</published><updated>2007-12-12T19:11:53.213-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>Did You Know? 2.0</title><content type='html'>&lt;center&gt;&lt;iframe src="http://dotsub.com/api/smallplayer.php?filmid=1178&amp;filminstance=1180&amp;language=none" frameborder="0" width="320" height="272"&gt;&lt;/iframe&gt;&lt;/center&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://dotsub.com/films/didyouknow20/"&gt;http://dotsub.com/films/didyouknow20&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://shifthappens.wikispaces.com"&gt;http://shifthappens.wikispaces.com&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4825278888290859576?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4825278888290859576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4825278888290859576' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4825278888290859576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4825278888290859576'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/did-you-know-20.html' title='Did You Know? 2.0'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5748520049776613520</id><published>2007-12-12T13:41:00.000-04:00</published><updated>2007-12-12T14:17:37.970-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nintendo'/><title type='text'>Using Nintendo Wii Contoller To Make Your Own Multi-touch Whiteboard</title><content type='html'>&lt;object height="355" width="425"&gt;&lt;embed src="http://www.youtube.com/v/5s5EvhHy7eQ&amp;amp;rel=1&amp;amp;border=0" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.wiili.org/index.php/DarwiinRemote"&gt;http://www.wiili.org/index.php/DarwiinRemote&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5748520049776613520?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5748520049776613520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5748520049776613520' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5748520049776613520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5748520049776613520'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/using-nintendo-wii-contoller-to-make.html' title='Using Nintendo Wii Contoller To Make Your Own Multi-touch Whiteboard'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1909060116265457951</id><published>2007-12-08T00:44:00.001-04:00</published><updated>2007-12-08T00:44:40.183-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dell'/><title type='text'>I Love My Dell...</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/AS3UbRdQh9Q&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/AS3UbRdQh9Q&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1909060116265457951?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1909060116265457951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1909060116265457951' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1909060116265457951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1909060116265457951'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/i-love-my-dell.html' title='I Love My Dell...'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4134145604295240444</id><published>2007-12-07T16:51:00.001-04:00</published><updated>2007-12-07T16:51:39.235-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Skypop on Android</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/PyxWnIalDcY&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/PyxWnIalDcY&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4134145604295240444?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4134145604295240444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4134145604295240444' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4134145604295240444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4134145604295240444'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/skypop-on-android.html' title='Skypop on Android'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-7448340889101780781</id><published>2007-12-05T21:31:00.000-04:00</published><updated>2007-12-05T21:32:41.515-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><title type='text'>The Next Big Thing : The Internet</title><content type='html'>&lt;embed style="width:400px; height:326px;" id="VideoPlayback" type="application/x-shockwave-flash" src="http://video.google.com/googleplayer.swf?docId=-160820776386465403&amp;hl=en" flashvars=""&gt; &lt;/embed&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-7448340889101780781?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/7448340889101780781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=7448340889101780781' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7448340889101780781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7448340889101780781'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/next-big-thing-internet.html' title='The Next Big Thing : The Internet'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8261947672703575168</id><published>2007-12-05T00:12:00.000-04:00</published><updated>2007-12-08T20:23:20.101-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='management'/><title type='text'>How Not To Run A Company</title><content type='html'>My previous employer had a bit of a falling-out this week.  Staff members were apparently upset with the way top execs were running the show, finally coming to a breaking point with many senior members walking out, including top management, lead architects and head designers.  I believe there were key principles that were neglected, and hopefully by sharing these mistakes, they can be avoided by others in positions of authority.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Keep Your Key Players Happy&lt;/span&gt; - like a great sports team, there are key players of your company. These people are your innovators keeping you leading edge, the goal scorers.  These are your motivators who lead others by example, the assist makers.  It is critical that these key players are rewarded and stay happy.  If you take away your starting lineup, you no longer have a team.  Remember; don't ever gamble with something you are not willing to lose.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Avoid Keeping Secrets&lt;/span&gt; - for various reasons, there were many secrets throughout the company.  Top execs kept secrets from upper management, and management kept secrets from staff.  But this attitude spread throughout the entire company and the result was an unhealthy environment which brewed lack of trust. For example there was a hush-hush attitude towards salaries, and when you got a raise, you were told not to tell others but the result was suspicion and jealousy. If you don't want others to spread rumors or keep secrets from you, then don't keep secrets yourself.  Like a good parent, you should teach through example, you can't tell your kids not to smoke with a cigarette in your other hand.&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Reward Individual Accomplishment&lt;/span&gt; - if you want people to give 110%, they must be rewarded for their individual efforts. People work for two reasons&lt;span style="font-style: italic;"&gt;, money&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;acknowledgment&lt;/span&gt;.  If you realize this and reward employees in both ways, they will happily go above and beyond what is required, but neglect these two simple facts and you will have very unhappy employees.  For my first project I was part of a small team, it took a lot of extra work to get deployed.  When it was finally released, rather than giving a small bonus to each of us, the company threw a fancy lunch for all staff.  And during the lunch, an announcement was made&lt;span style="font-style: italic;"&gt; 'we'd like thank everyone involved in this project'  &lt;/span&gt;we thought, &lt;span style="font-style: italic;"&gt;'wait, that's us, how come they didn't even say our names?' &lt;/span&gt; This is a perfect example of failure on both parts where we were not rewarded or acknowledged for our hard work.&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Clear Sense Of Direction &lt;/span&gt;- there was a lot of talk about keeping your eye on the goal and chasing the big prize, but this message was vague, and most staff didn't know what the big prize even was, or whose goal they were chasing.  It is important to have clear company-wide direction, which all employees share.&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Pay For Overtime&lt;/span&gt; - if you are expecting or demanding that employees work overtime, then they should be paid for overtime.  Unrealistic goals and deadlines were placed upon staff members who required they work on weekends and late into the evenings.  And yet this forced-volunteer work went unrewarded time and time again.  Management's reasoning was that your hard work would not go unnoticed and when raises were handed out, you'll be first in line.  Well, you can only dangle a carrot for so long before the rabbit realizes they'll never get it, and simply stops running. Turn the tables for one second, how would management feel about paying you for hours you didn't work?  A healthy relationship needs to be mutual.&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Ideas Reward System&lt;/span&gt; - in an industry where your ideas make or break your company, it is critical that a reward system be in place to promote innovation. I could propose an idea which could potentially revolutionize the industry, but unless I know I'll be acknowledged for my idea, why would I even mention it?   As mentioned in #3, unless you know you'll be rewarded for your extra effort, might as well keep the idea to yourself in hopes to someday launch your own startup. Second, when ideas are proposed, it is crucial they are fully heard. Ideas are like a little spark, unless they are nurtured when they are forming, they will never ignite into a flame.&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Regular Scheduled Raises&lt;/span&gt; - although many companies don't offer scheduled raises, I believe it should become a standard policy. In fact, if you are not receiving a regularly scheduled raise, you are actually taking a pay cut due to inflation. Housing and living expenses rise, and your salary must also rise with that.&lt;/li&gt;&lt;/ol&gt;The goal of this posting was to help promote a positive change towards more open and rewarding environment. I also intended for the principles to be generic enough they could benefit any company. When I noticed a war was erupting in the comments and that other &lt;a href="http://www.phoenixrealestateguy.com/is-something-shaking-at-point2-agent"&gt;bloggers&lt;/a&gt; were following the conversation, I feared the result would have the opposite effect for those involved.  This is why I decided it was best to hide the comments.&lt;br /&gt;&lt;br /&gt;Having worked for the company for several years, I know for a fact that they are filled with incredibly sharp and talented people.  I also know those who left were very dedicated to the company and I believe they had very good reasons for leaving. I wish all those involved the very best and hope the outcome results in a change for the better.&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;When one door of happiness closes, another opens; but often we look so long at the closed door that we do not see the one which has been opened for us.&lt;/span&gt; - Helen Keller&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8261947672703575168?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8261947672703575168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8261947672703575168' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8261947672703575168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8261947672703575168'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/how-not-to-run-company.html' title='How Not To Run A Company'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-7125641853675441972</id><published>2007-12-04T19:44:00.000-04:00</published><updated>2007-12-04T19:47:35.683-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>I Could Always Use Another Toolbar...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_k2sK8LXxLSU/R1XmjYEtFcI/AAAAAAAAHdA/b1-EKFzBaBE/s1600-h/windows.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_k2sK8LXxLSU/R1XmjYEtFcI/AAAAAAAAHdA/b1-EKFzBaBE/s400/windows.jpg" alt="" id="BLOGGER_PHOTO_ID_5140268045145281986" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-7125641853675441972?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/7125641853675441972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=7125641853675441972' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7125641853675441972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7125641853675441972'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/i-could-always-use-another-toolbar.html' title='I Could Always Use Another Toolbar...'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_k2sK8LXxLSU/R1XmjYEtFcI/AAAAAAAAHdA/b1-EKFzBaBE/s72-c/windows.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2955223462209927330</id><published>2007-12-04T15:36:00.000-04:00</published><updated>2007-12-04T15:37:51.182-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>Bubble 2.0: The Video</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/fi4fzvQ6I-o&amp;rel=1&amp;border=0"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/fi4fzvQ6I-o&amp;rel=1&amp;border=0" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2955223462209927330?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2955223462209927330/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2955223462209927330' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2955223462209927330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2955223462209927330'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/bubble-20-video.html' title='Bubble 2.0: The Video'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-7610963498158704681</id><published>2007-12-03T14:39:00.000-04:00</published><updated>2007-12-03T15:04:35.064-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Windows Vista : Better go get yourself a cup of coffee, this may take a while...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.istartedsomething.com/20071201/vista-slow-cd-copy/"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_k2sK8LXxLSU/R1RNn4EtFbI/AAAAAAAAHcQ/p-PZqf2annI/s400/vista.jpg" alt="" id="BLOGGER_PHOTO_ID_5139818422198932914" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-7610963498158704681?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/7610963498158704681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=7610963498158704681' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7610963498158704681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/7610963498158704681'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/windows-vista.html' title='Windows Vista : Better go get yourself a cup of coffee, this may take a while...'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_k2sK8LXxLSU/R1RNn4EtFbI/AAAAAAAAHcQ/p-PZqf2annI/s72-c/vista.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1847530557490501227</id><published>2007-12-02T21:18:00.001-04:00</published><updated>2007-12-02T21:18:58.815-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='development'/><title type='text'>If Programmers Made Planes</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/UZq4sZz56qM&amp;rel=0&amp;border=0"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/UZq4sZz56qM&amp;rel=0&amp;border=0" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1847530557490501227?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1847530557490501227/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1847530557490501227' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1847530557490501227'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1847530557490501227'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/12/if-programmers-made-planes.html' title='If Programmers Made Planes'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8755034902186046991</id><published>2007-11-29T17:23:00.001-04:00</published><updated>2008-03-03T07:19:14.373-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Google's Android Architecture</title><content type='html'>Androidology - Part 1 of 3 - Architecture Overview&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/QBGfUs9mQYY&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/QBGfUs9mQYY&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Androidology - Part 2 of 3 - Application Lifecycle&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/fL6gSd4ugSI&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/fL6gSd4ugSI&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Androidology - Part 3 of 3 - APIs&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/MPukbH6D-lY&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/MPukbH6D-lY&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8755034902186046991?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8755034902186046991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8755034902186046991' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8755034902186046991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8755034902186046991'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/11/googles-android-architecture.html' title='Google&apos;s Android Architecture'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-6481417261051005940</id><published>2007-11-29T17:20:00.001-04:00</published><updated>2008-03-03T07:19:31.856-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Google's Android Demo</title><content type='html'>Google's Android Demo&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/1FJHYqE0RDg&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/1FJHYqE0RDg&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Skypop on Android&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/PyxWnIalDcY&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/PyxWnIalDcY&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;A first hand look at building an Android application&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/I6ObTqIiYfE&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/I6ObTqIiYfE&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-6481417261051005940?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/6481417261051005940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=6481417261051005940' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6481417261051005940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/6481417261051005940'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/11/googles-android-demo.html' title='Google&apos;s Android Demo'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8331269224950881194</id><published>2007-11-28T21:44:00.000-04:00</published><updated>2007-11-28T22:21:31.367-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>And Here's Another Reason Why I Love Google...</title><content type='html'>While other companies like Yahoo and Microsoft are scrambling to keep up, with Yahoo still trying to re-invent the portal and &lt;a href="http://hardware.slashdot.org/hardware/07/11/23/187218.shtml"&gt;Microsoft sadly can't admit defeat to iPod, still pushing the long failed Zune&lt;/a&gt;, Google is charging forward into brave new areas proving they are much more than search engine and advertisement company.  First, thanks to the heavy Google funding, the recently launched &lt;a href="https://www.23andme.com/"&gt;23AndMe.com&lt;/a&gt; bringing genetics to the average household&lt;br /&gt;&lt;blockquote&gt;Welcome to 23andMe, a web-based service that helps you read and understand your DNA. After providing a saliva sample using an at-home kit, you can use our interactive tools to shed new light on your distant ancestors, your close family and most of all, yourself -&lt;a href="https://www.23andme.com/"&gt; 23andMe&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;Although it's been &lt;a href="http://blogs.zdnet.com/BTL/?p=5123"&gt;argued the real motivation may be the fact that Google's president Sergey Brin wive Wojcicki&lt;/a&gt; works for the company, it's still very cool they are bringing a science previously only available to laboratories to the average person.  &lt;a href="http://en.wikipedia.org/wiki/Gattaca"&gt;Gattaca&lt;/a&gt; here we come...&lt;br /&gt;&lt;br /&gt;Secondly, Google is taking global warming and the environmental issues very seriously.  At a &lt;a href="http://www.google.com/intl/en/press/pressrel/20071127_green.html"&gt;press conference today Google announced $10 million towards&lt;/a&gt; the &lt;a href="http://www.google.org/recharge/"&gt;RechargeIT.org&lt;/a&gt; program, &lt;a href="http://www.thedailygreen.com/environmental-news/latest/google-renewable-energy-47112801"&gt;pledging to make solar, wind and other alternative energies cheaper than coal&lt;/a&gt;. &lt;blockquote&gt;Google has been working hard on energy efficiency and making its business environmentally sustainable.  Last spring the company announced its intention to be carbon neutral for 2007, and is on track to meet that goal. To this end, the company has taken concrete steps to reduce its carbon footprint and accelerate improvements in green technology, including:&lt;br /&gt;  * Developing cutting-edge energy efficiency technology to power and cool its data centers in the U.S. and around the world.&lt;br /&gt;  * Generating electricity for its Mountain View campus from a 1.6 Megawatt corporate solar panel installation, one of the largest in the U.S.&lt;br /&gt;  * Accelerating development and adoption of plug-in vehicles through the &lt;a href="http://www.google.org/recharge/"&gt;RechargeIT&lt;/a&gt; initiative, including a $10 million request for investment proposals&lt;br /&gt;  * Joining with other industry leaders in 2007 to form the &lt;a href="http://www.climatesaverscomputing.org/"&gt;Climate Savers Computing Initiative&lt;/a&gt;, a consortium that advocates the design and use of more energy-efficient computers and servers.&lt;br /&gt;  * Working on policies that encourage renewable energy development and deployment, such as a U.S. Renewable Energy Standard, through Google.org.&lt;/blockquote&gt;Don't believe me that Google is serious about the environment? Well just goto &lt;a href="http://www.google.org"&gt;www.google.org&lt;/a&gt; and see for yourself.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8331269224950881194?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8331269224950881194/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8331269224950881194' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8331269224950881194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8331269224950881194'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/11/and-heres-another-reason-why-i-love.html' title='And Here&apos;s Another Reason Why I Love Google...'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5795015521504138524</id><published>2007-11-11T12:19:00.000-04:00</published><updated>2007-11-11T13:10:27.331-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Google Hacks</title><content type='html'>&lt;a href="http://en.wikipedia.org/wiki/Google_Hacks"&gt;Google Hacks&lt;/a&gt;, entering specific searches into Google that return some pretty interesting results. Here are some great videos by &lt;a href="http://www.youtube.com/user/systemerror11"&gt;systemerror11&lt;/a&gt; from &lt;a href="http://informationleak.com/"&gt;InformationLeak&lt;/a&gt;, enjoy:&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/YF024HYU36I&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/YF024HYU36I&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Unprotected Web Cams: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;q=inurl%3A%22ViewerFrame%3FMode%3Drefresh%22&amp;amp;btnG=Google+Search&amp;amp;meta="&gt;inurl:"ViewerFrame?Mode=refresh"&lt;/a&gt;&lt;br /&gt;Downloadable MP3's: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;q=%22intitle%3Aindex.of%22+radiohead+mp3&amp;amp;btnG=Search&amp;amp;meta="&gt;intitle:index.of radiohead mp3&lt;/a&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/bOU_0Q6-hqw&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/bOU_0Q6-hqw&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Website Disallowed Directories: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;q=%22robots.txt%22+%22disallow%22+filetype%3Atxt&amp;amp;btnG=Search&amp;amp;meta="&gt;robots.txt disallow filetype:txt&lt;/a&gt;&lt;br /&gt;Find FTP Login Accounts: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;q=intitle%3Aindex.of+ws_ftp.ini&amp;amp;btnG=Search&amp;amp;meta="&gt;intitle:index.of ws_ftp.ini&lt;/a&gt;&lt;br /&gt;Linux Passwords: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;q=intitle%3A%22Index+of%22++passwd.bak&amp;amp;btnG=Search&amp;amp;meta="&gt;intitle:"Index of"  passwd.bak&lt;/a&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/YhOy7dUEJA0&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/YhOy7dUEJA0&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;FrontPage Hack: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;q=inurl%3A_vti_pvt+%22service.pwd%22&amp;amp;btnG=Search&amp;amp;meta="&gt;inurl:_vti_pvt "service.pwd"&lt;/a&gt;&lt;br /&gt;PHP Photo Album: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;q=inurl%3A%22phphotoalbum%2Fupload%22&amp;amp;btnG=Search&amp;amp;meta="&gt;inurl:"phphotoalbum/upload"&lt;/a&gt;&lt;br /&gt;VNC Login: &lt;a href="http://www.google.ca/search?hl=en&amp;amp;sa=X&amp;amp;oi=spell&amp;amp;resnum=0&amp;amp;ct=result&amp;amp;cd=1&amp;amp;q=%22vnc+desktop%22+inurl:5800&amp;amp;spell=1"&gt;"vnc desktop" inurl:5800&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5795015521504138524?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5795015521504138524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5795015521504138524' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5795015521504138524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5795015521504138524'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/11/google-hacks.html' title='Google Hacks'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-1428471782807761788</id><published>2007-11-09T08:50:00.000-04:00</published><updated>2007-11-09T11:59:50.838-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>The Un-official GoogleOS (The End Of Microsoft)</title><content type='html'>I've been preaching the idea of a &lt;a href="http://www.thinkgos.com/"&gt;GoogleOS&lt;/a&gt; for years now, a lite-weight operating system which really is just a container for running your web apps. I also said it would be the beginning of the end for Microsoft, which financially depends heavily on profits from Windows.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_k2sK8LXxLSU/RzR9KINZd1I/AAAAAAAAHOM/1SfzxqIgv8Y/s1600-h/gos.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_k2sK8LXxLSU/RzR9KINZd1I/AAAAAAAAHOM/1SfzxqIgv8Y/s400/gos.jpg" alt="" id="BLOGGER_PHOTO_ID_5130863488437679954" border="0" /&gt;&lt;/a&gt;Windows is Microsoft's foundation for everything. It's the reason why &lt;a href="http://www.w3schools.com/browsers/browsers_stats.asp"&gt;IE has ~90% market share&lt;/a&gt;, not because its a better browser but because it comes bundled with Windows and the average person doesn't have know-how to install an alternative. The same goes for Office, the other big money-maker for Microsoft. Short while ago, Office was the required industry standard, you needed Office to open a Word document, but along comes &lt;a href="http://docs.google.com/"&gt;Google Documents&lt;/a&gt; which now lets you open Word, Excel and Powerpoint, and guess what, &lt;span style="font-style: italic;"&gt;its free&lt;/span&gt;. And look at their development environment, Visual Studio, ASP.NET, IIS, C#/VB.NET and SQL Server, all dependent to run on Windows. Windows is their entire core foundation, you take Windows away, everything else collapses.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.appleinsider.com/articles/07/10/30/apple_sells_2_million_copies_of_mac_os_x_leopard_in_first_weekend.html"&gt;Mac OS X has been gaining a lot of steam lately&lt;/a&gt;, many people making the switch over from Windows. I myself, has made the switch because hey, &lt;span style="font-style: italic;"&gt;'it works so well with my iPod'&lt;/span&gt;. &lt;a href="http://blogs.zdnet.com/hardware/?p=876"&gt;Leopard has been taking a lot of the hot press away from Vista&lt;/a&gt;, and will continue to do so especially with &lt;a href="http://www.appleinsider.com/articles/07/01/11/unofficial_mac_tablet_draws_record_crowd_at_macworld_high_res_photos.html"&gt;much rumored Mac Tablet&lt;/a&gt; and the &lt;a href="http://www.apple.com/pr/library/2007/09/10iphone.html"&gt;success of iPhone&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Besides OS X, Linux is another real threat that has potential to choke out Windows. But Linux is just not user-friendly enough for average person, but &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt; made great strides in giving it a friendly UI. And the press has already been talking about &lt;a href="http://community.zdnet.co.uk/blog/0,1000000567,10006214o-2000331758b,00.htm"&gt;moving from Vista to Ubuntu&lt;/a&gt;. But the reality is, unless Ubuntu comes bundled with cheap computers, it will not break into main stream. Well, thats about the change...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogoscoped.com/archive/2007-11-09-n49.html"&gt;News this morning&lt;/a&gt;, the un-official Google OS called &lt;a href="http://www.thinkgos.com/"&gt;gOS&lt;/a&gt;, it exactly what I've been preaching about. A version of Ubuntu with pre-configured Google applications like GMail, GDesktop, GTalk, GDocs, GToolbar and GMaps they are calling it &lt;span style="font-style: italic;"&gt;"an alternative operating system for the masses"&lt;/span&gt;&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;"We recommend Google for just about everything... Gmail, Gtalk, Calendar, Maps, Docs and Spreadsheets, and more. We'd like to welcome you to the idea that Google already is your "operating system.'"&lt;/blockquote&gt;Here's the real kicker, &lt;a href="http://www.walmart.com/catalog/product.do?product_id=7754614"&gt;Walmart has been bundling it with $200 desktop&lt;/a&gt;.&lt;br /&gt;&lt;blockquote style="font-style: italic;"&gt;"We're creating an OS ecosystem that is complete. We come with all the software you need to browse the web, email, instant message... play movies, music, and connect to iPods... create and edit documents, spreadsheets, presentations, databases, images... out of the box. Plug and play!"&lt;/blockquote&gt;Now this is a big deal, offer consumers a cheap $200 easy-to-use alternative to Windows running &lt;a href="http://www.thinkgos.com/about.html"&gt;gOS&lt;/a&gt; which does everything average person needs to do; send email, browser internet, write documents, listen to music and play movies. Then prove to them that they don't need a super fast leading-edge computer when they are doing majority of your activities online, &lt;span style="font-style: italic;"&gt;and you will shake the very foundations at Microsoft&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Checkout &lt;a href="http://blogoscoped.com/archive/2007-11-09-n49.html"&gt;Google Blogoscoped for a great post about gOS&lt;/a&gt; or visit the &lt;a href="http://www.thinkgos.com/"&gt;gOS homepage&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-1428471782807761788?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/1428471782807761788/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=1428471782807761788' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1428471782807761788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/1428471782807761788'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/11/un-official-googleos-end-of-microsoft.html' title='The Un-official GoogleOS (The End Of Microsoft)'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_k2sK8LXxLSU/RzR9KINZd1I/AAAAAAAAHOM/1SfzxqIgv8Y/s72-c/gos.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-8654523993090778182</id><published>2007-10-17T20:19:00.000-03:00</published><updated>2007-10-17T20:43:43.114-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Painful Lesson About SKIN Files</title><content type='html'>I just learned a very valuable, yet painful lesson about &lt;a href="http://msdn2.microsoft.com/en-us/library/de93t31k.aspx"&gt;ASP.NET SKIN files&lt;/a&gt;.  My goal is define ASP.NET controls in .Skin file using the CssClass attribute to reference the CSS class in stylesheet, allowing the ability for user to upload their own stylesheet.  I had the following block of code defined in my .Skin file:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&amp;lt;asp:Table runat="server" CssClass="table"&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;  &amp;lt;asp:TableCell &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt; runat="server" &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;CssClass="tableCell" /&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&amp;lt;asp:TableHeaderRow runat="server" CssClass="tableHeaderRow"/&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&amp;lt;asp:TableRow runat="server" CssClass="tableRow"/&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt; &amp;lt;asp:TableFooterRow runat="server" CssClass="tableFooterRow"/&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&amp;lt;/asp:Table&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Notice that the Table tag wraps around the TableHeaderRow, TableRow, &lt;span style="color: rgb(0, 0, 0);"&gt;TableCell  and &lt;/span&gt;TableFooterRow tags, just as it would on normal page.  Looks OK right right?  Well, the problem is that when SKIN is applied to page, this definition will actually override the Table of my page, creating an empty TableRow&lt;span style="font-style: italic;"&gt;, the result an empty table!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Apparently &lt;a href="http://forums.asp.net/t/665106.aspx"&gt;others had the same problem&lt;/a&gt;, and although the compiler complains with warnings, this is how you need to define a Table in .Skin file:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&amp;lt;asp:Table runat="server" CssClass="table" /&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&amp;lt;asp:TableCell &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt; runat="server" &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;CssClass="tableCell" /&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&amp;lt;asp:TableHeaderRow runat="server" CssClass="tableHeaderRow"/&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&amp;lt;asp:TableRow runat="server" CssClass="tableRow" /&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;&lt;br /&gt;&amp;lt;asp:TableFooterRow runat="server" CssClass="tableFooterRow"/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Notice how TableHeaderRow, TableRow, &lt;span style="color: rgb(0, 0, 0);"&gt;TableCell and &lt;/span&gt;TableFooterRow   tags are NOT nested inside Table tag, and everything is now displayed fine.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Craziness!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-8654523993090778182?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/8654523993090778182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=8654523993090778182' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8654523993090778182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/8654523993090778182'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/10/painful-lesson-about-skin-files.html' title='Painful Lesson About SKIN Files'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-3664106841750192818</id><published>2007-10-17T12:06:00.001-03:00</published><updated>2007-10-24T12:56:02.448-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><title type='text'>Naming Convention: LabelAddress Or lblAddress?</title><content type='html'>Naming convention is always a much heated debate,  and has been the cause of many broken marriages.  Doing a &lt;a href="http://www.google.com/search?q=.net%20naming%20convention&amp;amp;source=ig&amp;amp;hl=en"&gt;search for .NET naming conventions&lt;/a&gt; you'll tonnes of pages &lt;a href="http://www.irritatedvowel.com/Programming/Standards.aspx"&gt;outlining&lt;/a&gt; &lt;a href="http://www.akadia.com/services/naming_conventions.html"&gt;industry&lt;/a&gt; &lt;a href="http://msdn2.microsoft.com/en-us/library/sh9ywfdk.aspx"&gt;standard&lt;/a&gt; and I agree with about 95% of them:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Class Names&lt;/span&gt; - MainForm&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Class Members / Properties&lt;/span&gt; - FirstName&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Interfaces &lt;/span&gt;- IPerson&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Private Class Variables&lt;/span&gt; - _FirstName&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Local Variables&lt;/span&gt; - mailingAddress&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Parameters &lt;/span&gt;- postalCode&lt;/li&gt;&lt;/ul&gt;So far, things look good, I'm happy.   The one that bothers me, is the convention for ASP.NET controls.  &lt;a href="http://www.akadia.com/services/naming_conventions.html"&gt;Many&lt;/a&gt; sites say that ASP.NET controls should start with control abbrev prefix starting in lowercase, then followed by CamelCase describing the control.  For example, a Label that stores an address would be called &lt;span style="font-style: italic;"&gt;lblAddress&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Gross! &lt;/span&gt;This goes against the rest of other .NET conventions, suddenly now we are abbrev and starting class variables with lowerCase, why?.  To follow the other conventions, this variable should really be called &lt;span style="font-style: italic;"&gt;LabelAddress&lt;/span&gt;.  Here are my arguments why:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Visual Studio Default &lt;/span&gt;- Dragging a Label onto a page, the default name is &lt;span style="font-style: italic;"&gt;Label1&lt;/span&gt;, and not &lt;span style="font-style: italic;"&gt;lbl1&lt;/span&gt;. Why would be go against the default format that Visual Studio uses?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Abbrev Can Be Confusing&lt;/span&gt; -&lt;span style="font-style: italic;"&gt; "I can't remember, did I name my Panel pnlAddress or was it panAddress?"&lt;/span&gt; It's easy for different developers to use a slightly different abbrev for same controls, creating inconsistency through your code.&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;All Other Class Members Area Uppercase &lt;/span&gt;- A quick IntelliSense on Page shows that the rest of it's members start with UpperCase&lt;/li&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Easier To Read&lt;/span&gt; - A capitalizes full name of control is easier to read and understand&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Here is the general rule I believe:&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;"Abbrev should be avoided when possible and all names should be UpperCamelCase; except for parameters and local variables which should be lowerCamelCase, or private class members which should start with _Underscore"&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;span&gt;I think that statement holds true, because ClassNames, MethodNames, ClassVariables, PropertyNames, FileNames and InterfaceNames should all be UpperCamelCase.&lt;br /&gt;&lt;br /&gt;Finally, for code to be easily maintainable by others, you have to ask yourself:&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;blockquote&gt;"If someone reads only this snippet, will they be able to understand what these variables are and what this code does?"&lt;/blockquote&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;Thoughts? Arguments? Rants?&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-3664106841750192818?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/3664106841750192818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=3664106841750192818' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3664106841750192818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/3664106841750192818'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/10/naming-convention-labeladdress-or.html' title='Naming Convention: LabelAddress Or lblAddress?'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-2474807078124428933</id><published>2007-10-15T17:35:00.000-03:00</published><updated>2007-10-15T17:53:17.348-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virtualreality'/><category scheme='http://www.blogger.com/atom/ns#' term='sun'/><title type='text'>Sun's Virtual Reality Interface Demo</title><content type='html'>Ok, this is cool, Sun demos their new &lt;a href="http://www.builderau.com.au/program/java/soa/Meet-the-Sun-SPOT/0,339024620,339282931,00.htm"&gt;SPOT (Small Programmable Object Technology)&lt;/a&gt; combined with &lt;a href="http://www.sun.com/software/looking_glass/"&gt;Project Looking Glass&lt;/a&gt; to create virtual reality interface right out of Minority Report:&lt;br /&gt;&lt;object width="400" height="330"&gt;&lt;param name="movie" value="http://www.builderau.com.au/video/embed/22429776"&gt;&lt;/param&gt;&lt;/param&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.builderau.com.au/video/embed/22429776" type="application/x-shockwave-flash" allowfullscreen="true" width="400" height="330"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/results?search_query=Sun+Project+Looking+Glass&amp;search=Search"&gt;Here are some more videos of Sun's Project Looking Glass on YouTube.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-2474807078124428933?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/2474807078124428933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=2474807078124428933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2474807078124428933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/2474807078124428933'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/10/suns-virtual-reality-interface-demo.html' title='Sun&apos;s Virtual Reality Interface Demo'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-5211095026000108832</id><published>2007-10-14T17:14:00.001-03:00</published><updated>2007-10-14T17:29:50.239-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Stop Dashboard Widget and Script</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_k2sK8LXxLSU/RxJ5JYL6P4I/AAAAAAAAFNU/_M9equLtFpQ/s1600-h/stopdashboard.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp3.blogger.com/_k2sK8LXxLSU/RxJ5JYL6P4I/AAAAAAAAFNU/_M9equLtFpQ/s400/stopdashboard.png" alt="" id="BLOGGER_PHOTO_ID_5121288928291864450" border="0" /&gt;&lt;/a&gt;Although I love &lt;a href="http://www.apple.com/macosx/features/dashboard/"&gt;OS X Dashboard,&lt;/a&gt; there are times when I'm just not using it and don't want it sucks up resources. Here is a &lt;a href="http://www.natal.be/index.php/2005/10/stopdashboard-widget/"&gt;great widget that will kill Dashboard and free its resources&lt;/a&gt;.&lt;br /&gt;&lt;blockquote&gt;"All this widget does is kill the Dock process (which Dashboard is a part of). MacOSX will automatically restart the Dock but without Dashboard in memory. Press F12 to start it up again."&lt;/blockquote&gt;The only draw back is that if Dashboard is not completely loaded, opening Dashboard to use this widget sort of defeats the purpose.  So, an alternative is to use this Apple Script:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;tell application "Dock"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;quit&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;launch&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;end tell&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;And then fire off the script using Quicksilver:&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_k2sK8LXxLSU/RxJ7VIL6P5I/AAAAAAAAFNc/fjW6IOXPrXk/s1600-h/stop.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_k2sK8LXxLSU/RxJ7VIL6P5I/AAAAAAAAFNc/fjW6IOXPrXk/s400/stop.jpg" alt="" id="BLOGGER_PHOTO_ID_5121291329178582930" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-5211095026000108832?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/5211095026000108832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=5211095026000108832' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5211095026000108832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/5211095026000108832'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/10/stop-dashboard-widget-and-script.html' title='Stop Dashboard Widget and Script'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_k2sK8LXxLSU/RxJ5JYL6P4I/AAAAAAAAFNU/_M9equLtFpQ/s72-c/stopdashboard.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2595381101272602245.post-4527983760102122113</id><published>2007-10-14T15:39:00.000-03:00</published><updated>2007-10-14T15:46:39.105-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photos'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Picasa Web Albums Widget Creator</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_k2sK8LXxLSU/RxJkBoL6P3I/AAAAAAAAFNM/BuM7p7AqxJo/s1600-h/picasa.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://bp0.blogger.com/_k2sK8LXxLSU/RxJkBoL6P3I/AAAAAAAAFNM/BuM7p7AqxJo/s400/picasa.gif" alt="" id="BLOGGER_PHOTO_ID_5121265705403694962" border="0" /&gt;&lt;/a&gt;Currently &lt;a href="http://picasaweb.google.com/"&gt;Picasa&lt;/a&gt; only let's you embed a single album into your blog, which is a bit of a drag if you wanted to show all your public albums.  Luckily, &lt;a href="http://phydeauxredux.googlepages.com/Phydeaux_PWA_Widget_Creator.html"&gt;phdeaux3&lt;/a&gt; developed a handy little page which lets you select all your public albums, customize slideshow settings and easily embed widget into your blog.  You can &lt;a href="http://phydeauxredux.googlepages.com/Phydeaux_PWA_Widget_Creator.html"&gt;create your own slideshow here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;br/&gt;&lt;a href="http://ideas20.blogspot.com/"&gt;Ideas 2.0&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2595381101272602245-4527983760102122113?l=ideas.dalezak.ca' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ideas.dalezak.ca/feeds/4527983760102122113/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2595381101272602245&amp;postID=4527983760102122113' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4527983760102122113'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2595381101272602245/posts/default/4527983760102122113'/><link rel='alternate' type='text/html' href='http://ideas.dalezak.ca/2007/10/picasa-web-albums-widget-creator.html' title='Picasa Web Albums Widget Creator'/><author><name>Dale</name><uri>http://www.blogger.com/profile/15519348455607092362</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://4.bp.blogspot.com/_k2sK8LXxLSU/Sh2gB-6F3KI/AAAAAAAAiHI/0yulIJqEgjg/S220/dale_m4change.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_k2sK8LXxLSU/RxJkBoL6P3I/AAAAAAAAFNM/BuM7p7AqxJo/s72-c/picasa.gif' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
